Dev&Ops es el espacio donde hablamos de cultura tech, compartimos anécdotas reales y damos consejos prácticos para todo entusiasta del mundo del desarrollo y la tecnología. Acompáñanos a descubrir las últimas tendencias, aprender de nuestras experiencias y recibir tips que te ayudarán a destacar en este entorno digital en constante evolución.
Douglas (00:00)
Pero es tedioso, porque te toca abrir un ticket,
esperar a que se le asigne a un SRE o a un DevOps Engineer y que la persona lo trabaje y lo pruebe y lo mande a todo el mundo. Y a veces, el programador quiere rápido sacar sus nuevos features, su nueva funcionalidad y es tedioso.
Quiero recalcar que para ellos es esto importante. toca a nosotros encajar en ese sistema, en ese sentido, y nos toca ver que sí existen, una vez que encajamos en el ambiente corporativo, pero nos toca ver los beneficios que trae, reconocer los retos y aprender a ver los beneficios que trae.
Juan (00:20)
Ok
Bienvenidos amigos, amigas, ¿cómo están? Yo me encuentro muy bien de estar nuevamente aquí con un nuevo episodio de nuestro show Devin Ops, aquí con mi amigo Douglas, me acompaña nuevamente. Como siempre nos da mucha confianza poder preguntarle de todo a Douglas. Siento que tiene conocimiento de como por el equivalente de 10 personas, solamente él.
¿Dulas? ¿Qué tal, Dulas? ¿Cómo has estado?
Douglas (01:11)
Juan, ¿qué tal? No, mira, muy bien, gracias a Dios, muy bien, gracias a Dios y agradezco tu comentario, verdad, y tus palabras hacia mí. Y creo que faltó agregarte también que a lo largo de mi carrera he tenido la carga de 10 personas. No todo es tan bonito como suena, ¿verdad? Yo soy muy agradecido con Dios por la oportunidad que me ha dado, la experiencia que me dado, pero también es una carga, ha sido un trabajo arduo, pero bueno, aquí estamos y la intención es tratar de
compartir ese valor con las personas, aquellas que nos ven y nos escuchan y que tal vez no tengan que sufrir tanto como nos tocó a nosotros Juan, sino que en esta época, en esta era donde la información es más accesible pues no sé, que se pueda beneficiar.
Juan (01:52)
Mm-hm.
Sí, sí, ojalá que no tuvieran que pasar por muchas cosas.
Pero a veces pareciera que es inevitable. Y creo que eso es un punto interesante, Douglas. A veces solo vemos el lado bonito, solo vemos los resultados. Como dicen, detrás de un ganador hay muchas derrotas que no ves, muchas historias que se cayeron y no tuvieron que levantarse.
Douglas (02:31)
exacto.
Juan (02:31)
Y sí, son cosas que probablemente solo nosotros sabemos que hay por detrás de todo lo que hay actualmente, pero pues ni modo, es lo que hay.
Douglas (02:42)
Sí es.
Juan (02:43)
bien nuevamente te agradezco le agradezco a la gente que nos está viendo y que comparten gracias por las interacciones que estamos teniendo en las redes sociales si nos está viendo en otras redes sociales como lo que es apple podcast spotify youtube muchas gracias te agradeceríamos te agradeceríamos si nos regalas un follow una suscripción porque
nos ayuda a ir creciendo y que el algoritmo nos vaya beneficiando para poder llegar a más personas así que ojalá que nos puedan regalar un like exacto el día de hoy vamos vamos de lleno Douglas porque hoy tenemos un tema que me llama mucho la atención
Douglas (03:26)
Así es, síganlos.
Juan (03:37)
Debo admitir que no era muy fanático de este tema y últimamente me has hablado de él, me has comentado algunas cosas.
lo he estado probando y ahora tengo una opinión un poco más positiva. Sin embargo, es de esas cosas que no las encontrás tan fácil, ya sea en internet, en videos, en opiniones, no se suele hablar porque ya vamos a ir viendo el por qué. ⁓
y para los que nos están viendo en el video largo, en YouTube o en estas plataformas, ya vieron el título, vamos a hablar sobre lo que son los ambientes de desarrollo en la nube.
Douglas (04:21)
Mm-hmm.
Juan (04:21)
no confundirnos, porque eso me pasó mí, con trabajar con servidores en la nube. No es lo mismo. No es tampoco lo mismo que trabajar con servidores que irónicamente se llaman serverless, servicios serverless tampoco. Y creo que es de esos, como te decía, es de esos temas y de estos conceptos que los hemos escuchado mucho, o al menos a mí me ha pasado, los escucho en diferentes lados, lo mencionan.
pero nunca había profundizado en ello, nunca había tomado el costo de dedicarle una tarde, dedicarle un tiempo y empezar a explorarlo.
Ya nos has hablado anteriormente, tal vez la gente no lo ha captado, pero ya nos has hablado de esto en episodios anteriores. Entonces, por eso me va a encantar que empieces a compartir un poco sobre tu experiencia. Y ya vamos a seguir hablando, Y ir desminuzando todo esto. Pero bueno, vamos a empezar Douglas y me gustaría que nos dieras...
Empecemos con lo más básico ¿no? ¿Qué es? ¿Qué son los ambientes de desarrollo en la nube? Ya dijimos, no son serverless, no son servidores que están por ahí. Entonces, ¿qué es? Y me gustaría que nos dieras como una explicación simple ¿no? No tan estructurada, no tan de libro, como solemos hacerlo.
Douglas (05:49)
Si, si, bueno la respuesta mas sencilla Juan es, un ambiente de desarrollo en la nube es tu ambiente de desarrollo local el que estas acostumbrado a levantar en tu local ya sea que trabajes en Node.js y lo haces con tenedores, con Docky Compose o directamente instalaste Node.js en tu sistema operativo y lo conectaste con VS Code o con el editor de tu preferencia o si trabajas con PHP, las diferentes versiones de PHP
etcétera, ese ambiente local que tenés en tu desarrollo, correrlo en una instancia en la nube, esa es la respuesta más simple, verdad, porque en realidad eso es lo que es, qué tecnologías corre detrás, pues lo podemos ir hablando en el camino, pero básicamente es eso.
tu ambiente de desarrollo, todas las herramientas, servicios que necesitas para desarrollar una aplicación, en lugar de tenerlo en tu ambiente local, en tu laptop, tu pc, está en la nube y ya vamos a ver los pros y contras de esto a medida avanzamos, pero en una respuesta bien simplificada eso es y quisiera aclarar verdad que este el tema de esta semana
va a ser mayormente informativo para todas aquellas personas que nos ven y nos escuchan, sobre todo para los que están en programación, ya sea front end o back end. Yo anticipo que tal vez muchas personas no le van a encontrar mucho la gracia, o no le van a encontrar mucho el interés. Sin embargo, a medida entran al mundo corporativo,
donde la seguridad es sumamente importante, donde la protección y la privacidad de los datos es sumamente importante, es un requerimiento en muchas corporaciones grandes.
Juan (07:36)
Gracias.
Douglas (07:47)
dentro de la industria, trabajar con ambientes de desarrollo en la nube, entonces creemos que va a aportar mucho valor que conozcan del tema y tal vez aportamos la curiosidad en algunos para que vayan haciendo, vayan probando, verdad, en su tiempo libre un poquito sobre ambientes de desarrollo en la nube y porque también tiene beneficios en mi opinión.
para un developer, para sus proyectos propios y personales. Pero bien, ahí lo vamos a ir abordando, ahí lo vamos a ir hablando. Pero quería hacer esa aclaración.
Juan (08:14)
Sí.
Me parece muy bien que hagas la aclaración porque probablemente alguien está empezando a ver el video y se va echar para atrás pero no aguantennos un poco y vamos a ir explorando el tema y vamos a ir viendo los diferentes pros y contras y nuestras opiniones de por qué deberías o por qué no deberías utilizarlo
Douglas (08:45)
Mm-hmm.
Juan (08:47)
Básicamente Douglas, por lo que veo entonces es como si yo me conectara a un servidor y en ese servidor tengo todos mis archivos del proyecto y trabajo ahí. Entonces me conecto desde cualquier computadora a ese servidor y listo. Digamos que en palabras simples. ⁓
Douglas (09:04)
tenés no solo tus archivos, también los servicios y las herramientas instaladas
ahí en ese servidor y no están consumiendo recursos en tu ambiente local, sino que están en ese servidor.
Juan (09:14)
excelente, excelente de entrada yo te diré que como desarrollador como developer normalmente digo developer la palabra developer porque como que es más fácil para mí que me enredo a veces la palabra desarrollador es un poco complicado sí pero como developer si varios puntos positivos de entrada también
Douglas (09:32)
muy complejo.
Juan (09:42)
se me vienen a la mente puntos negativos, pero ya vamos a ir hablando de eso. Así que ya teniendo el concepto un poco claro, o más o menos claro, me gustaría que habláramos entonces sobre qué herramientas existen para eso. ¿Solo me conecto mediante SSH? ¿Solo copio los archivos por FTP? O...
¿Qué herramientas o servicios tal vez existen? Yo conozco uno, yo solamente conozco uno, te seré sincero, que es GitHub Codespaces.
Y para ser muy honesto, tampoco lo he utilizado en las empresas donde he trabajado, lo he estado explorando por mi cuenta, así que es un poco complicado ir identificando ciertos puntos. Pero ese es el único que yo tengo, del que tengo conocimiento. Vos has utilizado otros.
Douglas (10:46)
Sí, Realmente que el más común en cuestión de open source y que lo podés hostear o hospedar por tu propia cuenta sin tener que pagar a nadie por el servicio como tal, porque GitHub Codespaces tienen una versión gratis.
pero si querés ya meterle más poder y correr una aplicación más compleja, tenés que pagar. Y básicamente si vos ves los diferentes planes, ellos te van dando instancias de AWS con diferentes tamaños y la instancia tiene su costo más el que ellos le ponen por administrarlo resulta a veces bien caro, ¿verdad? Pero este que podés hostear por vos mismo se llama Coder.
Juan (11:15)
Sí.
Sí.
Douglas (11:35)
que es básicamente una versión de... para simplificarlo, Es como el VS Code, el editor VS Code, pero que corre desde un navegador web, que levanta un web server y corre VS Code desde tu navegador web. Obviamente si esto lo tenés en la nube tenés que pagar por la instancia donde está corriendo, pero puedes probarlo de manera local.
Este es como el más popular a nivel de la comunidad, de nuevo por ser open source, porque entonces también le da la libertad al developer que lo está probando de controlar qué corre, ¿verdad?
Juan (12:16)
Mm-hmm, mm-hmm.
Douglas (12:17)
de correrlo en base a
su criterio, en base a qué permisos, qué puertos abre, etc. Mientras que en soluciones como GitHub Codespaces, que es muy buena, úsenla si pueden usarla o si les piden que las usen, pues háganlo. Pero estos ambientes, aunque son muy buenos y más fáciles porque no tengo que estarlo yo manualmente configurando, obviamente me da limitante y tengo que existir dentro de...
dentro de ese ecosistema, ¿verdad?
Ahora, ese es como el servicio y vamos a poner el enlace en la descripción del video en YouTube y en el blog post en nuestra página web con el enlace a Coder para que lo puedan bajar y lo puedan probar. Pero también donde mayormente se usan los ambientes de desarrollo en la nube, que es en el ambiente corporativo, muchas veces a nivel corporativo se crean soluciones internas, ¿verdad? Que aprovechan otros servicios, aprovechan Docker, que es lo que hace
Juan (12:59)
Sí.
Douglas (13:19)
GitHub Codespaces por cierto, ¿verdad? Aprovechan Coder para darles interfase de ese IDE a los programadores para que puedan codificar y aprovechan otras herramientas, pero al final usando este set de herramientas prehechas crean su solución in-house.
Juan (13:21)
Sí.
Douglas (13:37)
su solución interna para darle a los developers los diferentes ambientes de desarrollo. Obviamente esto es con fines de seguridad como lo hemos mencionado antes pero esas son como las herramientas o los ejemplos más comunes donde se usa, ¿verdad? Hay muchos más servicios y nuestra intención no es ponernos a dar...
la lista de servicios y cuál es más usado, es más barato. es esta nuestra intención. De nuevo, la intención de esta charla es informar sobre los ambientes de desarrollo en la nube y que sepan más o menos por dónde encaminar sus propias pruebas y su propia investigación.
Juan (14:23)
sí yo definitivamente recomendaría que prueben github code spaces porque hay una versión gratis entonces como que ya nos empieza a
a exponer a esta forma de trabajar porque definitivamente te cambia toda la es la mentalidad, cambia tu flujo de trabajo desde el hecho de, ok, ahora necesito tener internet para conectarme, necesito pues conectarme y que cargue y ahora si yo instalo algo, no se está instalando en mi computadora.
todas estas cosas como que te cambian y bueno yo recomendaría a GitHub Codespaces porque con las soluciones in-house obviamente necesitas tener el conocimiento para poder configurarlas, necesitas infraestructura.
Douglas (15:16)
Pero aquellas personas
que son control freaks, les dicen en inglés, que les gusta tener el control y que tienen mayor conocimiento, personas como vos tal vez, o programadores más, con mayor experiencia, que les gusta tener ese control de qué instalan, yo les recomiendo que prueben Coder.
Juan (15:23)
Mm-hmm.
Ok, ok.
Douglas (15:37)
que es esta versión de Code Server, de VS Code,
porque le va a esa libertad de instalar sus propios temas y sus propios plugins. Code Space yo sé que te deja hacer eso, ¿verdad? Pero te deja escoger si desarrollas instalando directo en el servidor o si desarrollas en contenedores y te da esa libertad y esa personalización.
Juan (16:00)
Mm-hmm.
Douglas (16:01)
en
todo sentido, entonces aquellas personas que son más curiosas y que tienen el mayor tiempo, de hecho les recomiendo Coder, verdad, pero concuerdo con vos si lo que quieren es como solamente hacerse la idea y como que ir viendo de qué trata, ir viendo cómo es que es esa cosa de ambientes de desarrollo en la nube, la versión gratis de GeoCode Spaces en minutos.
Juan (16:11)
Ok
Douglas (16:26)
están corriendo, minutos están desarrollando y comitiendo código entonces váyanse por esa ruta, verdad, pero quiero dejar claro que aquellas personas que tienen esa mayor curiosidad y ese mayor deseo de controlar qué corre exactamente, prueben Coder.
Juan (16:37)
Uh-huh.
interesante. Sí, creo que yo lo estaba viendo más desde el punto de vista de pues que es más fácil, En GitHub ya tenemos nuestros repos, le das click, pero sí, muy interesante tu punto de vista. Creo que voy a probar cuando encuentre el tiempo libre. Ya habíamos hablado, ¿no? De cómo organizar el tiempo para aprender diferentes temas nuevos.
Muy curioso, muy curioso, estas soluciones in-house utilizan, bueno, tal vez más adelante nos puedes ir dando como no un paso a paso, pero tal vez como una idea más general de cómo funciona, cómo se configura, qué hay que hacer, Tal vez podremos irlo hablando un poco más a fondo. Ahorita me gustaría como tal vez ir mencionando los beneficios, porque...
como recapitulando yo tengo mi vamos a decir Visual Studio Code creo que VS Code es como el más fácil el IDE más fácil para trabajar de esta forma no sé con NeoVim como sería pero con VS Code es como que más simple entonces yo tendría VS Code me conecto a un servidor o a una instancia y trabajo ahí entonces
De entrada, se escucha un poco raro de hacer, pero tal vez podríamos empezar a hablar de los beneficios. Me gustaría que empezáramos, tal vez desde tu punto de vista como un SRE, un personal de operaciones, el SISADME, la persona que nos está proveyendo o que está a cargo de administrar los ambientes en la nube.
desde tu punto de vista como que nos dieras los beneficios que encontrás de trabajar así.
Douglas (18:42)
Fijate que probablemente Juan uno de los beneficios más grandes es el simple hecho de saber nosotros cuál es el stack completo de desarrollo y es que nos ocurre muchas veces que nos contacta el programador y nos dice fíjate que estoy probando un nuevo feature, una nueva funcionalidad ⁓
en mi local funciona, pero cuando publico al ambiente de prueba me da este error, me ayudan y entonces comienza uno a platicar, preguntarles de verlo, pero ok, ¿qué hace esto nuevo? ¿qué dependencias tiene? ¿a dónde se conecta? y empezás a preguntar y a veces como no se acuerdan o... ⁓
Juan (19:24)
a donde se conecta, qué tiene.
Douglas (19:32)
o dan por centado y creen que yo conozco su código y su estat de desarrollo y resulta que después de media hora o a veces horas, indagando, es que instaló una dependencia en su local, no nos dijo, por ende esa dependencia, esa librería no está en los servidores de prueba y no corre, ¿verdad?
Juan (19:34)
se
ok ok
ok
Douglas (19:55)
Entonces ya ven,
tenemos que venir e instalarla, crear un nuevo estándar, instalar la dependencia, la librería en el ambiente de prueba y ya corre. Entonces eso se vuelve tedioso con los programadores muchas veces cuando una empresa por motivos de seguridad, de privacidad obligan a que los programadores trabajen en ambientes de desarrollo en la nube y somos nosotros los de operaciones los que...
creamos y configuramos y entregamos estos ambientes de desarrollo a los programadores, conocemos cuál es el stack de desarrollo, conocemos cuáles son las herramientas que están instaladas en el ambiente de desarrollo, porque si el programador quiere una nueva dependencia, la puede instalar libremente, pero si quiere que se replique para todos, nos lo tiene que decir para que la repliquemos a todos los demás programadores la nueva dependencia.
Juan (20:31)
Gracias.
Douglas (20:50)
Por ende, en ese momento, a ese punto, la vamos a saber y comenzamos con un plan para publicar esas dependencias en los diferentes ambientes. ¿Verdad? Entonces, ese simple hecho de que...
Juan (20:59)
No,
Douglas (21:04)
los obliga a los programadores a hacernos saber cuál es el stack completo de desarrollo porque incluso como nosotros proveemos los ambientes de estos ambientes de desarrollo hasta nos dicen qué plugins de code server quieren instalados por defecto, verdad, hasta eso nos dicen de nuevo eso nos facilita, eso es una información valiosísima para nosotros y nos alivia un montón de tiempo el simple hecho de conocer
todo el stack de desarrollo, la versión exacta del lenguaje de programación, la versión exacta de las librerías o los paquetes que corren en ambientes de desarrollo y que podemos replicar en los diferentes herramientas de prueba, preproducción, producción, etcétera.
Juan (21:44)
Uh-huh.
Sí, se me había de la mente.
Esto básicamente lo que hace es que mejora la comunicación y el trabajo en equipo. Yo recuerdo en cierto momento quería utilizar SQL Lite para como correr unos unit tests y recuerdo que estuvimos hablando con vos de cómo hacerlo, cómo montarlo en un volumen pero empezamos a, si no recuerdo mal creo que eras, me empezaste a mencionar, bueno pero
esto se va correr en un ambiente donde se está destruyendo y reconstruyendo el contenedor y qué pasa cuando no hay múltiples réplicas. yo como desarrollador, pues lo veía solo como desde mi punto de vista, bueno, en mi local y sí, estoy utilizando Docker, pues me funciona. Pero ya cuando lo empezás a compartir con la persona que ya tiene un conocimiento más amplio de la infraestructura.
te puede aportar información valiosa de las limitantes que pueden surgir. Bueno, en este caso, pues ya sabes todo lo que va tener, eso me parece muy bueno, me parece muy bien. Me imagino que en cierto punto también te ayuda ⁓ a poder replicar, bueno, creo que lo mencionabas, ¿no? A replicar esto para diferentes perfiles.
Douglas (23:03)
Sí es.
Juan (23:25)
de desarrolladores. Si viene alguien nuevo, es más fácil proveerle una instancia. ⁓ Ya lo tenés como configurado y solo es de replicarlo.
Douglas (23:37)
Sí, sí, que tal vez aquí para aclarar, por si alguien no ha seguido la línea, a este punto estamos hablando de un ambiente de desarrollo, pero una solución in-house, una solución interna, no estamos hablando de Codespaces, ejemplo, y otros servicios similares a GitHub Codespaces, una solución interna.
Juan (23:49)
⁓ mhm.
Douglas (23:58)
a nivel corporativo para darle a un programador el ambiente de desarrollo en la nube. Entonces claro, a ese punto Juan, tenemos diferentes formas de automatizar.
la creación de estos ambientes normalmente con herramientas como Terraform para crear la infraestructura necesaria porque se necesita más que solo en la instancia ocupas crear DNS records, ocupas crear security groups, ocupas crear IPs públicas, ¿verdad? Entonces, tenés infrastructure as code, tenés algo como Terraform que te está creando
Juan (24:24)
Eso.
Sí.
Douglas (24:41)
de esa
infraestructura porque no lo vamos a ir a hacer manual cada vez que viene un programador, tenemos eso automatizado y te...
Juan (24:46)
Un bash script?
Douglas (24:49)
Exacto, sí, imagínate que los Bash Groups funcionan, cuando te da un error, Dios mío.
E igual, una vez que ya está la infraestructura creada, hay que instalar estas herramientas, como te decía, normalmente Coder para la parte del IDE, para la parte del editor de texto, Docker para correr los diferentes ambientes de manera Dockerizada y no tener problemas con dependencia, ya hemos hablado de Docker en episodios anteriores,
instalamos estas cosas y se usa Configuration Management, mayormente yo uso Ansible pero se puede usar herramientas como Chef o Puppet, que lo que hacen es que instalan todo este tipo de herramientas y las instalan y las configuran, verdad. Entonces cuando viene un nuevo programador la bondad de esto es, y vos mencionaste algo importante, fuerza a la comunicación.
Juan (25:28)
Uh-huh.
Douglas (25:46)
la bondad de esto es que cuando viene un nuevo programador le creo la instancia y le replico lo que hasta el momento todos los demás programadores están haciendo, trabajando porque la nueva instancia va a traer los plugins que están usando todos, va a traer las configuraciones que están usando todos, va a traer la versión de paquetes que están usando todos y los ambientes quedan
corriendo de un solo y listo para que el programador comience a trabajar y no tenga que estar más bien invirtiendo tiempo en levantar su propio ambiente de desarrollo.
Juan (26:21)
que eso me ha pasado a mí bastante seguido donde
me ha pasado que un compañero de trabajo o yo arreglamos un pequeño errorcito que tal vez, digamos, hay un conflicto con la nueva versión del AWS CLI y tal vez no lo comitíamos, nadie lo sube al repositorio y al siguiente le vuelve a pasar lo mismo y tal vez no dice nada y hasta que ya el tercero... ⁓
pregunta, ¿no? Ey, me pasó esto y ya empezamos a decir, sí, yo lo solucioné así, yo lo solucioné de esta otra forma, lo cual...
Claro, deberíamos haberlo subido y todo, pero de esta forma que de la que nos estás hablando, automáticamente se genera este ambiente, el ambiente bases podríamos decir, que ya trae todas las dependencias que necesitan y si es necesario actualizar algo, se actualiza y ya todos pueden tener la nueva versión. Me surge la duda Douglas, en este caso hablando,
me generaste un ambiente de desarrollo, yo estoy trabajando ahí, ¿qué pasa cuando sucede algo como esto? Necesitadas actualizar una dependencia que se replique en todos. ¿Tendrías que volver a generarme un ambiente a mí o yo puedo como actualizarlo? ¿Cuál sería el procedimiento normal?
Douglas (27:52)
Fíjate que va a variar y yo no sé Juan, fíjate si te parece que debemos que hablemos un poco de las razones para usar los ambientes de desarrollo en la nube porque siento que de eso depende esta respuesta y tal vez aquí voy a incluir la razón principal por la cual se utiliza a nivel corporativo y es la seguridad y la privacidad, o sea...
Juan (28:02)
No,
Douglas (28:21)
Hemos mencionado seguridad y privacidad antes, pero ahorita lo quiero dejar claro como el motivo principal por el cual muchas veces las empresas lo hacen. Las empresas normalmente o te mandan vos estás trabajando remoto para la empresa X o te mandan una laptop, mande.
Juan (28:36)
para Twitter.
para empresa X,
Douglas (28:40)
No, no, sí, X no Twitter, la empresa con nombre X, no es el nuevo Twitter,
pero vos trabajas para una empresa y te mandan una laptop que viene protegida y asegurada de tal manera porque son empresas que sus clientes son...
son críticos, ¿verdad? interesados por la seguridad o la misma empresa es muy preocupada por la seguridad entonces te dan una laptop que viene bien protegida de tal manera que si vos reportas que te robaron la laptop la bloquean de manera remota y nadie la puede usar o si hoy te despiden o hoy renuncias al minuto está totalmente bloqueado y no lo puedes usar, ¿verdad? entonces así han trabajado por muchos años
Juan (28:59)
sí sí sí
Sí.
Douglas (29:24)
Pero
eso es tedioso, es caro, hay que estar comprando equipos, que estarlo renovando, hay que estar haciendo el envío de ese equipo y cuando ya no trabajas por ellos que se los regrese este tedioso. están empezando a girar muchos de estos a los ambientes de desarrollo en la nube. De esa manera el ambiente es controlado y tiene las mismas ventajas para la empresa en cuestión de seguridad.
no sacas el código del ambiente de desarrollo y si la persona deja de trabajar a los minutos está bloqueado, solo se accesa por medio de los VPN de la empresa, etc. Entonces esa es una de las razones o la razón casi principal a nivel corporativo, hay otras a nivel personal que las podemos hablar más adelante, pero a nivel corporativo por la cual se usa ambiente de desarrollo, no es que quieran complicarse la vida.
No es que yo como alguien de operaciones me encanta Juan estar preparándote también de desarrollo, verdad. Si me preguntás a mí, que cada quien trabaje a su libertad porque eso incentiva la creatividad, verdad, incluso incentiva la productividad, pero por cuestiones de seguridad es que lo hacen. Entonces, habiendo aclarado ese motivo,
Juan (30:43)
Mm-hmm.
Douglas (30:46)
viene a cerrar la pregunta que vos hacías de cuál es el proceso a la hora de instalar una nueva dependencia, un nuevo sitio y cómo hacerlo para replicarlo a todos los ambientes y va a depender de esas políticas de seguridad y políticas de privacidad. A veces la política dependiendo del cliente o dependiendo de la empresa no quieren que el desarrollador tenga libertad de instalar nada, ¿verdad?
Juan (31:01)
Ok.
Douglas (31:12)
Si quieren probar algo de entrada, tienen que pedirle a la gente de operaciones, queremos probar estos nuevos requerimientos y entonces nosotros por medio de, en mi caso, que mayormente es lo que uso, es como Configuration Management. Configuration Management son estas herramientas que controlan la configuración en...
múltiples servidores, pueden ser dos o pueden ser miles, verdad. Entonces usando Configuration Management mandamos la nueva versión o el nuevo paquete que quieren a todos los ambientes de desarrollo, verdad. Algunas políticas son un poco más flexibles y si le dejan al desarrollador instalar esos paquetes y hacer la prueba, entonces vos querés por haber una nueva dependencia, que requiere una nueva librería, vos la instalás en tu local y lo empezás a trabajar, verdad.
Juan (31:36)
Ok.
Douglas (32:02)
Pero al momento de comitear ese código al repositorio hay una lista de chequeos que hay que seguir y una de esas listas es si hay que reportar algo a la gente de operaciones para que se instalen dependencias a todas las computadoras, a todos los ambientes de desarrollo de la nube, perdón. Entonces a ese punto...
lo reportas a la gente de operaciones y de nuevo por medio de la herramienta de configuration management se mandan a todos los ambientes de desarrollo entonces no hay necesidad de volverlos a hacer por eso se tiene la parte de infraestructuras code
infraestructura como código que genera la infraestructura, la instancia de AWS o cualquier proveedor que estén trabajando, security groups, elastic IPs y todo eso. Y también está la parte de configuration management que instala y configura las aplicaciones. Pero entonces, dependiendo de las políticas de la empresa, ese es el flujo a la hora de instalar nuevas librerías, nuevas dependencias, nuevas versiones.
Juan (32:47)
y pronto.
Interesante, se escucha complicado, definitivamente se escucha un poco complicado, pero también me gusta el hecho de tener algo más estandarizado. Porque de entrada te diría que como desarrollador o como developer un beneficio que le encuentro es ese, de entrada. Yo estoy acostumbrado a tener que levantar muchas dependencias cuando estoy trabajando.
y el hecho de que ya estén número 1, precargadas o 2, tener exactamente la misma configuración que tienen todos mis compañeros, me ayuda a compartir mejor entre ellos, entre nosotros.
si sucede algo entonces como developer yo le veo ese punto positivo a pesar de que si también no voy a negar que suena un poco tedioso más que todo cuando toca hacer algo nuevo y como decías no me gusta tener el control de mi computadora por eso mismo suelo utilizar utilizo linux pero
No, estamos hablando de un ambiente corporativo donde hay que regirnos por lo que dicta la empresa que no se está pagando. Entonces hay que acoplarnos, creo yo.
Douglas (34:36)
Sí,
y mira, y es tedioso, o sea, no vamos a mentir, es tedioso, es tedioso, cuando entendés los roles de cada quien, empezás a ver el beneficio y vos decís, como programador, un beneficio que le miro es que me quito la carga de estar instalando esas dependencias y al mismo tiempo asegurarme de que los demás programadores adopten esa dependencia,
¿verdad? Pero es tedioso, porque te toca abrir un ticket,
esperar a que se le asigne a un SRE o a un DevOps Engineer y que la persona lo trabaje y lo pruebe y lo mande a todo el mundo. Y a veces, el programador quiere rápido sacar sus nuevos features, su nueva funcionalidad y es tedioso. Sin embargo, vos dijiste algo clave. Recordemos que estamos hablando de este tema porque lo consideramos muy buena información que tengan.
para el ambiente corporativo, la seguridad y la privacidad es muy importante en la mayoría de empresas.
que se preocupan por la seguridad tenemos que estar haciendo entrenamiento de seguridad cada tres o seis meses y es el mismo entrenamiento donde nos enseñan un correo de phishing no darle clic a cualquier cosa y cómo identificar si a alguien se le cayó su carnet en la entrada y proteger la entrada del edificio y son los mismos entrenamientos cada tres o seis meses, ¿verdad? Y aún así cae mucha gente, es cierto, pero...
Juan (36:01)
y que me hagas ir caen.
Douglas (36:07)
Quiero recalcar que para ellos es esto importante. toca a nosotros encajar en ese sistema, en ese sentido, y nos toca ver que sí existen, una vez que encajamos en el ambiente corporativo, pero nos toca ver los beneficios que trae, reconocer los retos y aprender a ver los beneficios que trae.
Juan (36:11)
Ok
Douglas (36:28)
Y es por eso que vos decís, ¿verdad? El quitarte la carga como programador de...
tener que instalarlo y tener que hacerle saber a todos lo ves como algo bueno a nivel corporativo pero a nivel personal vos quisieras ser quien lo controle y cualquier developer que se apasiona por lo que hace quisiera ser el quien lo controle y yo les quiero agregar un beneficio más para los desarrolladores en mi opinión y es que se libran de culpa por así decirlo o se libran de carga
Juan (36:39)
jajaja
Uhum.
Sí.
Douglas (37:06)
al momento de cuestiones de seguridad porque tener en su propia máquina a veces creemos que es algo bueno que yo antes de irme a la empresa voy a copiar el código de tal cliente y a veces creemos que eso es algo bueno realmente eso es una carga que puede en algún punto hasta incurrir en demandas o multas es un delito realmente es un delito entonces
Juan (37:27)
Sí, es un delito. Muchas
veces firmamos múltiples contratos y no sé si los leen, pero ahí está estipulado que no podemos hacer nada de eso.
Douglas (37:41)
Ajá, imagínate que te roban porque, y esto la gente cree que no pasa, créanme que pasa seguido, imagínate que si la empresa no tiene estas políticas, te roban la computadora, por medio de tu computadora encontraron código o claves importantes y hackearon a toda la empresa, esa carga cae sobre vos como programador porque fue un descuido tuyo.
Juan (38:04)
Sí.
Douglas (38:08)
Pero si tenés ambientes de desarrollo en la nube, vos te lavas las manos. Y no es lavarte las manos, en realidad creo que es una expresión incorrecta. O sea, no es tu responsabilidad. No tenés esa carga. Y es ahí donde voy. Creemos que tener copias del código que le hicimos al cliente, a la empresa es algo bueno. En realidad es una carga, es una responsabilidad seria. Entonces, a nivel corporativo, para los programadores...
en mi opinión esa es una gran ventaja. Se quitan la carga y la responsabilidad de mantener la seguridad de toda la empresa, ¿verdad? Bajo sus hombros porque no están en sus ambientes locales, ni código, ni API Keys si siguen las reglas. Si no siguen las reglas, créanme, pudieran llegar a meterse un problema serio, pero queremos que vean estas cosas.
Juan (38:39)
Sí.
Uh-huh.
Sí, un gran poder conlleva una gran responsabilidad, ya lo decía el tío Ben. Y me gusta que lo aclarés, creo que no lo mencionamos, pero definitivamente ese es un motivo por el que decidimos hablar de esto.
Esto es más que todo enfocado 100 % a un entorno corporativo y cada vez yo noto que pareciera que las empresas están empezando a empujar más esta iniciativa. ¿Cómo lo he notado yo? Al menos yo personalmente que no...
no estoy trabajando de esa manera. mi empresa no trabajamos así. Sin embargo, yo he notado como en GitHub cada vez hay más botones, más opciones que nos permiten trabajar de esa manera. Entonces, pareciera que GitHub se está acoplando a lo que las empresas están pidiendo. Entonces, no está de más empezar a al menos saber cómo funciona y poder prepararnos.
mencionado muchas veces, es importante estar preparados para mantenernos actualizados con lo que está pasando en industria.
Douglas (40:18)
Mm-hmm.
Juan (40:18)
Otro beneficio que me saltó a la vista Douglas mientras probaba esta metodología, esta forma de trabajar, es el onboarding. Cuando llegamos nuevos o nos toca darle el onboarding a un nuevo desarrollador, a veces nos tardamos todo un día o más de un día en setear el ambiente, porque a veces es mucho contenido, es mucho trabajo.
y no estamos familiarizados con cómo funciona.
de esta forma pues ya está todo seteado ya está todo listo para simplemente empezar a explorar el código me imagino que tendríamos que ejecutar uno que otro comando pero ya está todo configurado así que ese es otro beneficio que le encuentro yo como developer que a pesar de que es, como ya dijiste, tedioso también creo que tiene sus puntos a favor
notar. A mí me gusta esa parte, la verdad.
Douglas (41:27)
No te ha pasado, que normalmente en el readme del repositorio está como preparar tu ambiente local de desarrollo. llegas nuevo al proyecto y corres el readme y te empieza a dar un error. Y le preguntas al otro developer, ya sea el senior o algo, y, ah, sí, no, mirá que eso no está documentado. Y te pasan las notitas que él tiene, personales.
Juan (41:46)
si
Douglas (41:51)
que no está
dando comentadas en ningún lugar, solo la tiene. No, mira, ve, sí, eso da, porque la versión y te pasa a los comandos que corres y te funciona. Y luego seguís trabajando y te da otro error. Y entonces el otro programador tiene otras notitas. No, sí, mira, que como el otro no trabaja en esa área, por eso él no sabe, pero mira, aquí está y estos son los comandos. Y es justo lo que está diciendo del on-boarding, ¿verdad?
Juan (42:03)
Sí.
A mi me pasó eso.
Douglas (42:18)
cuando una corporación tiene los ambientes de desarrollo en la nube, se le entrega a un programador nuevo que se está uniendo al equipo un ambiente ya funcional.
ya listo para trabajar y las instrucciones que tiene son para correr comandos de mantenimiento si quiere refrescar la base de datos en su ambiente local, si quiere correr refrescar el código, etcétera, son como comandos de mantenimiento pero el ambiente ya está corriendo, justo lo que es CC y yo no lo había mencionado y me llama la atención que vos lo notés, definitivamente ese es un gran beneficio para los programadores, el on-boarding, el acoplarse
Juan (42:48)
Correcto.
Douglas (43:00)
nuevo proyecto, en realidad que desde que recibe su ambiente de desarrollo ya está todo listo y en cuestión de horas ya está preparado para empezar a trabajar en el código.
Juan (43:11)
sí sí que bueno sí definitivamente en un boarding es un gran un gran beneficio ya mencionamos que esté dioso y creo que lo hemos mencionado varias veces que otras digamos problemas o limitantes has encontrado o consideras que hay
porque yo que lo he probado muy poco como te decía he hecho pruebas, he experimentos pero realmente no he trabajado en algo grande y lo primero que me pareció es más allá de lo tedioso es que era un poco lento y pues dependiendo del internet pero no sé si tal vez era mi conexión o...
o no sé si era algún otro factor que estaba incurriendo. En lo que has tenido experiencia, ¿qué consideras que puede ser un limitante o un problema el trabajar así?
Douglas (44:20)
Fíjate que justo ese es problema más grande Juan, la latencia. Sobre todo de nuevo a nivel corporativo en empresas 100 % remotas o con gente remota y con personal en diferentes países o diferentes continentes, tal vez alguien que está en Asia, hay que buscar crear la...
Juan (44:38)
Mm-hmm.
Douglas (44:44)
la instancia de desarrollo de la nube lo más cerca de Asia posible, pero aparte de eso, este tipo de ambientes de desarrollo en la nube para corporaciones están protegidos tal vez por un VPN, entonces no solo la instancia está retirada donde estoy, pero también tengo que pasar por un VPN.
Juan (44:59)
Sí.
Douglas (45:05)
y eso genera latencia, lentitud al momento de trabajar dependiendo del ancho de banda de cada desarrollador. A veces en Latinoamérica no tenemos los mejores anchos de banda, si eso pudiera afectar, pero...
Juan (45:14)
Uhum.
Sí.
Douglas (45:21)
Sin, honestamente nos toca estar constantemente tratando de lidiar con desarrolladores con problemas de latencia y entonces empezar a buscar opciones y decir ok, mirá ve, te vamos a mover la instancia en tal región que va a estar un poco más cerca y te vamos a dar un nuevo endpoint de VPN para que pases lo más cerca posible o se han dado casos donde,
donde un desarrollador se movió de país, ¿verdad? Se movió, vivía en Sudamérica y ahora está viviendo en Europa. Entonces nos toca cambiarle la instancia a esa región. Entonces definitivamente la latencia es como que el más crítico. Y el segundo son las quejas de que...
Juan (45:54)
Ok.
Douglas (46:07)
no funciona como ambiente local en cuestión de la libertad que tiene el programador para decidir lo que va a hacer y yo creo que ese es más un problema de mentalidad de nuevo si la empresa lo requiere mejor adaptémonos a la mentalidad verdad pero para los programadores ese resulta ser una de ventaja grande sentirse atados a no tener la libertad de instalar lo que desean verdad
Juan (46:22)
Mm-hmm.
Douglas (46:34)
a su antojo, yo creo que también esa es una limitante para developers. De nuevo, bloquea muchas veces la creatividad, sentís como que por ratos te sentís como que no vale la pena querer pensar fuera de la caja porque pues total tengo que abrir un ticket para que me instalen en la dependencia, verdad, entonces, pero de nuevo la idea es tratemos de entender por qué está, metamos más al tren.
Juan (46:44)
Ok.
Sí.
Douglas (47:03)
para que le saquemos provecho y trabajemos con lo que hay al final del día.
Juan (47:09)
Sí, porque por ejemplo ⁓ yo suelo hacer eso, que...
están todo el stack de desarrollo en local, pero a veces encuentro alguna herramienta en internet, etcétera, que me llamó la atención y la instalo y la pruebo. No sé si va a ser beneficioso todavía, solo quiero probar. En este caso, creo que eso queda descartado porque habría que abrir un ticket, habría que ver cómo se hace, habría que instalarlo.
Algo que me saltó a la vista Douglas, pero realmente no sé si sucedería. Me da la impresión que si bien el on-boarding sería bastante fácil, también hace que las personas nuevas empiecen a... ⁓
a perder el conocimiento de cómo realmente funciona todo el stack o tal vez les sea más difícil encontrar cada uno de esos pequeños servicios que tal vez son necesarios porque solamente los usan nunca se han detenido a configurarlos y tal vez aquí estoy siendo tal vez muy muy tiquismiquis como dicen pero
Por ejemplo, mi caso yo tengo que levantar RabbitMQ, bases de datos de Postgres, MariaDB, Elasticsearch, Kibana y muchas cosas. Si bien tenemos scripts que los levantan, si yo puedo revisar esos scripts, puedo cambiar partes de esto y bueno, yo no quiero que la data se guarde en este folder, quiero que se guarde aquí y puedo hacer muchos cambios.
porque puedo ser lo que está corriendo me da la impresión de las que con estos ambientes como ya están configurados eso como que se pierde un poco no sé si pero de nuevo tal vez es un prejuicio mío puede ser
Douglas (49:17)
Siente que yo creo que no estás del todo equivocado, o sea, es más fácil acomodarte, creo yo. Es más fácil acomodarte porque como no vas a ser el encargado de corregir un problema si tenés redis en tu ambiente local y estás dando un error, ¿verdad? Porque...
Juan (49:24)
Acomodarte, correcto.
Douglas (49:38)
hay un equipo que se encarga de ello, es más fácil acomodarte. Sin embargo, Juan, yo creo que siempre ha sido así. Vos mencionaste algo importante, que normalmente hay scripts que corren y levantan los diferentes procesos. O a veces hay un make file, ¿verdad? El make file que facilita, uno le da make install. Y ese make install corre una serie de comandos que instala las dependencias. Y make run, y luego me corre el servidor.
Juan (49:49)
Sí.
Douglas (50:05)
Si alguien es un programador de front-end, por ejemplo, el ambiente del API, el ambiente de desarrollo del API, solo lo pone a correr para que le devuelve información y pruebe su front-end y hasta ahí, ¿verdad? Entonces, solo las personas que tienen la mentalidad senior son las que siempre han ido a entender más allá.
Juan (50:17)
No.
Douglas (50:30)
De nuevo, vos dijiste algo importante, tal vez si no tenés esa mentalidad, pero vos levantás tu ambiente local, te enterás sí o sí que corre Redis, te enterás sí o sí que, versión de Node.js, verdad, o qué versión de cualquier lenguaje que estés utilizando, porque a vos te toca correrlo y sabés que ahí está.
Juan (50:39)
Jajaja
Douglas (50:49)
Pero en estos ambientes de desarrollo en la nube siempre puedes estar encima de ellos aunque vos no lo instalés. Yo tengo todo el tiempo y llegan los programadores senior a darme, a veces hasta me dan que comando de Docker correr para trabajar. Yo creo unas herramientas específicas para facilitar la interacción con el CLI.
Juan (51:05)
Ok.
Douglas (51:15)
de la terminal para facilitar la interacción con la terminal de estos ambientes de desarrollo y corren en ambientes de Docker y como el 30 % de las funcionalidades vienen de los programadores Senior que ellos mismos me dan los comandos que ellos probaron en su local y es algo muy bueno y lo implementamos, ¿verdad? Entonces, si tenés razón, sí lo facilita para aquellas personas que son más acomodadas.
Sin embargo, aquellos programadores que tienen la mentalidad senior pueden ver siempre que está corriendo, lo pueden ver en el código, aunque no tenga quiza la redis, ves que en el código está el driver o la conectividad con redis, la librería como dependencia y ves todos los demás elementos, entonces aquellos que tienen la mentalidad senior no lo va a limitar.
Juan (51:53)
Correcto. Sí.
Mm-hmm.
Douglas (52:13)
no los va a limitar,
pero aquellos que solamente corren, sí facilita la comodidad.
Juan (52:19)
Sí, creo que ya lo habías mencionado antes y creo que te mencioné en cierto momento que lo he pensado, lo he analizado y estoy de acuerdo en que a veces los developers, como que cuando encontramos algo que es muy diferente, nos echamos para atrás y ponemos trabas y no queremos hacer el cambio y creo que esto, este es un tema que probablemente va a generar mucho, fricción con muchas personas.
Douglas (52:48)
Sí.
Juan (52:50)
porque
es que si cambia cambia totalmente la manera en que trabajamos como decíamos no necesito conectarme de entrada necesito tener internet qué pasa si no tengo internet creo que eso va ser uno de los de las quejas o que podría poner alguien de entrada pero la verdad es que yo he pensado en eso dublas y ya en el día de hoy aunque yo tengo todo en local cuando yo vuelvo a
hacer el build de un Dockerfile tengo que descargar cosas entonces de todas maneras cuando no tenemos internet el desarrollo es bien complejo es bien difícil que ahora podamos funcionar sin internet pero bueno son sí sí
Douglas (53:26)
Sí.
Y si no mirarlo como otro beneficio, bueno, sea, me agarré el día libre porque no es mi culpa, no tengo internet. ¿Verdad? Pero al
final, si trabajamos de manera remota, somos responsables de estar conectados, ¿verdad? No podemos buscar trabajo remoto. Ya hablamos de ese tema hace poco, ¿verdad? Pero no podemos buscar trabajo remoto y decir a los reclutadores, mire, el internet a veces me funciona, a veces no. Entonces...
Juan (53:56)
Ajá.
Douglas (54:07)
es quien piense que se puede hacer un pero, sí, considérenlo, pero seamos responsables de que eso es algo que yo tengo que buscar solucionar, independientemente de que tenga mi ambiente local o en la nube, reconozcamos cuál es nuestra responsabilidad fuera de esto y evitemos mezclar las cosas que nos pasan.
Juan (54:21)
sí
Douglas (54:29)
como persona en tecnología y yo he mencionado pues por mi experiencia trabajando con programadores que a veces les pasa bastante. aprendamos a separar y de nuevo las corporaciones piden este tipo de forma de trabajo entonces conozcámosla y aprendamos a trabajar alrededor de los retos que genera.
Juan (54:51)
sí.
Sí, bueno, tal vez me voy a repetir aquí, pero de nuevo, creo que el mayor beneficio se lo llevan las empresas porque, como ya lo mencionabas, lo que ellos buscan es tener seguridad en su información, tener seguridad incluso financiera, como lo que mencionabas, ya no tienen que estar gastando en computadoras, ya no tienen que estar gastando en diferentes cosas, así que creo que ellos son los que se llevan el mayor beneficio, pero,
Douglas (55:08)
Mm-hmm.
Juan (55:22)
yo lo he probado de manera muy superficial creo aún pero no lo veo tan mal
Si para ahí va la industria, creo que vamos a lograr adaptarnos y también es algo que día con día está avanzando. Como te mencionaba, yo antes me conectaba a un servidor mediante VS Code y ahí hacía mis cosas, pero ahora las cosas han cambiado y ya el mismo GitHub nos permite setear diferentes políticas. Yo le puedo indicar mediante código.
cuáles son los plugins, las extensiones, los temas que yo quiero tener. creo que sí, la industria puede ir avanzando aún más. Y bueno, para ir cerrando un poco, ¿verdad Douglas? Ya hemos hablado de...
el concepto básico y cómo funciona un poco. Nuestra intención no es aquí darles el tutorial porque el formato no se presta para eso. Pero hablando un poco, cerrando aquí nuestros pensamientos.
¿Consideras que para ahí vamos? ¿Para ahí va la industria? ¿Consideras que en un futuro no sé cuándo esto reemplace nuestros ambientes locales? Aquí se vale especular, ¿no? Simplemente especular. ¿Cómo lo ves? ¿Qué pensas?
Douglas (56:55)
Fíjate que
yo creo que hay que considerarlo seriamente. Yo creo que a nivel personal, salgamos del nivel corporativo por un momento, ¿verdad? Que es el objetivo principal aclarando de nuevo, lo hemos aclarado como cuatro veces, el objetivo principal por el cual tocamos el tema es de manera informativa.
porque cuando se llega al ambiente corporativo, en muchos, muchos lugares se introduce este concepto y para muchos programadores es nuevo y eso a veces se vuelve una barrera. Pero saliéndonos del ambiente corporativo por un momento, imaginate que vos como programador tengas tu mismo ambiente de desarrollo, no importa en qué dispositivo estés y en qué lugar estés.
sí, tener los limitantes de la latencia que hemos hablado, tener los limitantes de lo tedioso de que son las cosas, etc. Pero si pudieras tener el mismo ambiente en todos lados, eso inmediatamente es algo que llama la atención. Y demos nos cuenta que a medida avanza el tiempo...
Juan (58:05)
Si
Douglas (58:09)
la tecnología va acortando este tipo de situaciones o de retos, y lo va acortando tanto que los termina eliminando. Cuando yo comenzaba a conectarme al internet hace muchos años, era por medio de un fax modem, creo que la mayoría de personas que nos escuchan no tienen ni la menor idea de qué es eso, pero era por medio de la línea de teléfono de la casa, no existían celulares, ¿verdad? La línea de teléfono de la casa...
Juan (58:30)
No,
Douglas (58:39)
la agarraba uno y la conectaba a la computadora, marcaba un número y eso se conectaba a un Internet extremadamente lentísimo y aparte de que el Internet era lento, nadie en la casa podía hacer llamadas ni recibir llamadas porque estaba conectado el fax móvil y Internet. Y hoy en día, todos los dispositivos tienen Wi-Fi. Todos los dispositivos tienen Internet inalámbrico. Entonces...
Juan (58:49)
Sí.
Las refris tienen
wifi.
Douglas (59:08)
hasta los electrodomésticos
tienen wifi. Entonces, esa brecha cada vez se va cortando. Y también quiero que consideren otro aspecto. Y por eso les digo, tal vez asegurar que hacia ahí se va de manera garantizada sería un poco osado para mí decir que es seguro, pero yo no me dormiría en el concepto porque...
Juan (59:33)
No,
Douglas (59:34)
cada vez más se está haciendo la tecnología para que se maneje con dispositivos móviles. Nuestra generación Juan, cuando digo nuestra generación, hablo de las personas de nuestra edad, estamos acostumbrados a andar cargando la laptop.
Juan (59:47)
Sí.
Douglas (59:50)
porque nos sentimos más cómodos. Y si yo voy de viaje y quiero ver a qué restaurante voy a comer y a qué tiendas ir a comprar y qué es lo que quiero hacer, yo saco la laptop y empiezo a buscar en Google y luego busco en Google Maps dónde está ubicado y ahí hago mi tenerario y me siento mejor. Los jóvenes sacan su celular.
Juan (1:00:10)
Sí.
Douglas (1:00:14)
Y yo me siento incómodo escribiendo en el vidrio del celular todo ese montón de cosas, ¿verdad? Pero ellos no, ellos se sienten cómodos en el celular y rápido andan en el camino haciéndolo. Entonces, cada vez las nuevas generaciones van usando dispositivos más pequeños y la nueva generación prefiere salir con una tablet en su mano si van a hacer algo más grande que con una laptop.
Juan (1:00:20)
Mm-hmm.
Sí.
Y ahora que están esos celulares que son los foldables, que tenés el tamaño normal y luego se abre como una tablet, creo que eso también les va ayudar.
Douglas (1:00:54)
Exacto, exacto, entonces este tipo de cosas van facilitando el hecho de que vos podés llevar tu tablet y conectarte a tu propio ambiente en la nube, tu ambiente personal, donde tengas tu ambiente de desarrollo, donde haces tus propios proyectos y lo vas a poder accesar desde una tablet, desde cualquier dispositivo, entonces esa portabilidad hacia ahí va, en algún momento hablábamos nosotros fuera de estos temas, cómo...
Juan (1:01:06)
Mm-hmm.
Douglas (1:01:22)
hoy en día las aplicaciones van favoreciendo los dispositivos móviles. hay cosas que, por ejemplo, en redes sociales lo hablábamos, TikTok es una de ellas, hay ciertas cosas que vos puedes hacer desde la interfase web.
Juan (1:01:38)
Sí.
Douglas (1:01:39)
pero muchas cosas, muchas cosas solo se hacen desde la aplicación móvil. A diferencia de redes sociales más antiguas como Facebook por ejemplo, que hacen lo mismo en la web que lo que hacen en la aplicación móvil porque son más antiguas y de hecho comenzaron...
Juan (1:02:00)
Sí.
Douglas (1:02:00)
en las aplicaciones de desktop, en el browser en desktop antes que en el móvil, ¿verdad? Pero lo nuevo que va saliendo va favoreciendo los móviles. Entonces, yo quiero que las personas que nos ven y nos escuchan tengan eso en mente para que abran su pensamiento alrededor del concepto de los ambientes de desarrollo en la nube.
Juan (1:02:06)
No
Douglas (1:02:24)
porque esto facilita el acceso en dispositivos móviles. Si en algún momento esto se torna y se empiezan a crear soluciones que van a ser los paquetes más ligeros para que se instalen de manera nativa en una tablet,
Bueno, eso pudiera ocurrir, Realmente no lo sé, no soy yo de las personas en el mundo que innovan ese tipo de cosas. Yo me considero un buen usuario de la tecnología, sin embargo, no invento tecnología. Pero a como yo lo miro, hay que tener la mente abierta a los ambientes de desarrollo en la nube porque aún a nosotros mismos nos va a ir dando esa libertad de movernos a cualquier lugar sin andar cargando una laptop. Considera...
que para las personas de mi generación.
tenemos que andar una mochila o una maleta donde andamos la laptop y listos con un cargador para ver dónde me conecto si se me empieza a descargar y eso se va volviendo tedioso cuando es práctico andar una tablet de la mano o incluso un celular entonces esos factores no nos dormamos en ellos, nos dormamos en ellos creo que ese mi mensaje final si hacia ahí vamos de manera garantizada
Juan (1:03:21)
Sí.
No,
Douglas (1:03:42)
es osado para mi decir que sí, pero no nos dormamos en la idea.
Juan (1:03:44)
Mm-hmm.
me parece un gran consejo y me parece muy bueno tu punto de vista. Cada vez se favorecen más esos dispositivos. Yo lo veo de la siguiente manera, Dulas, muy similar a lo que acabas de decir.
Sólo que yo lo veo desde el punto de vista de cómo se está empezando, cómo está cambiando la escena de los developers. ¿Y qué es lo más nuevo que existe hoy en día? Hoy por hoy es el Vive Coding.
Douglas (1:04:21)
Mm-hmm.
Juan (1:04:21)
Entonces
la inteligencia artificial ha cambiado mucho. Todo lo que ha cambiado como trabajamos y el Vivecoding es algo que está siendo impulsado. También, como decís, me cuesta afirmar que eso sí va pasar. No soy tan bueno prediciendo el futuro. Pero algo que sí estoy notando es que están fomentando estos ambientes en la nube. No son tan...
o al menos no pareciera que son ambientes en la nube. Me refiero, por ejemplo, a Firebase Studio, creo que se llama. Acabo de olvidar el nombre. Pero el servicio de Google, de Firebase, te permite crear proyectos, digamos, de front-end, y podés hacerlos mediante lo que llaman el Vive Coding. Empezas a trabajar con la inteligencia artificial y empiezas a generar los cambios. ⁓
Douglas (1:05:03)
Ajá.
Juan (1:05:21)
y estos cambios se comitean a un repositorio y esto no está corriendo en tu computadora, está corriendo en un servidor, quién sabe dónde. Entonces, eso es lo que a mí me hace pensar que la industria está queriendo ir hacia ahí. A veces pasa, ⁓ y esto ya lo vimos con...
con el tema de la blockchain. Parecía en su momento que la web 3 iba a ser lo nuevo.
Entonces muchos empezamos a investigar y a practicar y a ver cómo funcionaba y resulta que no. Resulta que al final no fue el boom que algunos creíamos. Sin embargo, el tema de Inteligencia Artificial pareciera que sí está cambiando de manera más disruptiva todo. Y en el tema de ambientes en la nube cada vez lo veo más, Que nos permiten crear proyectos en un servicio mediante Inteligencia Artificial. Empezamos a...
hacer los cambios y le decimos agregar un botón aquí, cambiar el color y eso está en otro servidor, no está en nuestra computadora. También como te decía al inicio, veo que GitHub empieza a cambiar su UI y cada vez lo hace más fácil. Hoy con un botón me generó un ambiente que ya tenía todas las dependencias que yo tenía, que yo necesitaba y nunca le dije qué es lo que yo necesitaba, él mismo GitHub lo hizo. Entonces
Si tuviera que apostar, yo le apostaría que sí, pero pues no sabemos qué va a pasar el día de
Douglas (1:07:02)
Lo que sí he garantizado,
sí he garantizado que la industria favorece los dispositivos móviles. Y analicemos el comportamiento de manera sencilla, comenzaron a salir los teléfonos inteligentes y las tablets, y cuando creíamos que era lo más pequeño posible, salieron los relojes inteligentes.
Juan (1:07:09)
Sí, sí, sí, sí.
Douglas (1:07:25)
los smartwatch, verdad, y cuando yo pensaba, bueno ya más pequeño que eso no se puede, hoy en día tenemos anillos inteligentes, tenemos lentes inteligentes, entonces ya casi visualizo yo que con el lente inteligente vas a estar viendo y con el anillo aquí codificando, no sé cómo van a hacer algo así, verdad.
Juan (1:07:41)
Sí.
¿mediante vos?
Douglas (1:07:53)
mediante vos, correcto? Entonces, este tipo de cosas, por eso vuelvo, de que vamos para móvil, cada vez más vamos para móvil. Entonces, hay una gran posibilidad de que los ambientes de desarrollo de la nube son los que van a estar respaldando detrás el poder computacional que requiere un ambiente de desarrollo en un dispositivo móvil.
Entonces esos factores son los que no olvidemos porque de que está garantizado que la industria favorece lo móvil, está garantizado porque lo que quieren es que pasemos conectados.
en sus servicios y sus plataformas todo el tiempo y entre más pequeño es y lo andemos cargando más fácil y nos mantenga conectados con su plataforma y su servicio, ellos lo van a aprovechar al máximo, verdad. de nuevo, no nos dormamos, no nos dormamos en ese sentido, esa es mi reflexión.
Juan (1:08:47)
Sí.
Correcto, correcto. Bien, con...
Con estas reflexiones, con ese pensamiento final de no nos durmamos, siempre mantenernos alertas de lo que está sucediendo en industria, bueno, me gustaría ir cerrando el episodio agradeciéndote, Douglas, por lo que nos has compartido. Siempre es de mucho valor saber la opinión de alguien que está trabajando con este tipo de cosas porque si bien ya lo dejé en claro, lo he probado,
no lo he trabajado de manera profesional entonces por eso mismo te agradezco que nos hayas compartido tus experiencias la verdad y agradezco a las personas que están llegando hasta este punto en el vídeo hasta ya al final si llegaste hasta aquí por favor coméntanos que lo has hecho podrías comentar algo sobre coméntanos no quiero que sea tedioso
ojalá que vayan mejorando la forma. Muchas gracias, gracias a las personas que nos acompañan, gracias a las personas que comparten nuestro contenido y bien, eso ha sido todo por el día de hoy. Muchas gracias, nos vemos a la próxima. Nos vemos Douglas.