Saltar al contenido

Categoría: Planetas

Github Copilot: ¿el reemplazo de los programadores?

Esta semana Microsoft anunció Github Copilot, un servicio que utiliza el motor de inteligencia artificial GPT-3 qué según Wikipedia, es un modelo de lenguaje autorregresivo que emplea aprendizaje profundo para producir textos que simulan la redacción humana. Es decir, utiliza Inteligencia Artificial para crear contenido que parece ser escrito por personas.

Github Copilot lo que hace es escribir código de programación como si fuese un desarrollador con tan solo definir qué es lo que se desea hacer. Por ejemplo, si haces una función llamada ordernarAlfabeticamente(), se generará código para ordenar alfabéticamente un arreglo. Esto es posible gracias a que se alimenta del código fuente de muchos proyectos de código abierto hospedados en Github. Como mi tesis de pregrado fue un generador de código de PHP/PostgreSQL me llamó mucho la atención.

Al ser una tecnología innovadora que permite crear código sin ayuda de un programador. Muchos programadores les causó un miedo y piensa que pronto remplazará a los programadores.

Ejemplo de Github Copilot generado una función para crear una dirección de envío
Ejemplo de Github Copilot generado una función para crear una dirección de envío

¿Github Copilot reemplazará a los programadores?

Si no quieres leer el artículo completo, mi respuesta es NO. Ahora si quieres leer mi opinión, siento que va a ser otra herramienta que permitirá acelerar el desarrollo y mejorar la productividad de los programadores.

Si vemos la historia de la programación, al principio la gente programaba en lenguaje ensamblador, es decir, directamente en el lenguaje del hardware donde se ejecutaban los programas. Luego surgieron los compiladores y lenguajes de programación que permitieron ahorrarnos tiempo al abstraernos muchas cosas del hardware. Los programadores de ASM no desaparecieron sino que migraron a usar estas herramientas para ahorrar tiempo.

Luego surgieron herramientas RAD (Rapid Application Development) donde con tan solo arrastrar algunas cosas teníamos aplicaciones de escritorio en poco tiempo y también herramientas para chequear errores en el código en tiempo real y sin tener que compilar. Todas ellas vinieron a mejorar el ecosistema de programadores y no remplazarlos.

Recordemos que Github Copilot lo que hace es generar código, muchas veces como programadores nuestro primer paso es revisar si hay algo existente, buscar en Internet, copiar el pedazo y adaptarlo o mejorarlo. Pues Github Copilot viene a automatizar ese proceso, en vez de perder tiempo investigando y cambiando al navegador y luego al editor, podemos buscar el código que necesitamos desde el mismo editor. Ya el diseño de la arquitectura, como resolver el problema del negocio, la ingeniería de software y demás procesos seguirán haciéndose por una persona.

¿Cuál será su uso e implicaciones en el futuro?

Yo creo que Github Copilot se utilizará bastante para que no nos preocupemos de cosas triviales de la programación y dedicarnos mas a resolver los problemas del negocio. Es decir lo que el software busca solucionar en la vida diaria. Por ejemplo, ayer en mi jornada laboral tuve que dedicar unas horas para validar 2 campos de forma simultánea en Vuetify porque no es algo directo de hacer. Con Github Copilot lo podría haber hecho mas rápido e invertir ese tiempo en mejorar la solución de software del cliente.

Me parece que esta es una herramienta muy revolucionaria, aparte de automatizar parte de la generación de código. Creo que también será interesante la parte de licenciamiento del código. Si la I.A. genera código desde un proyecto GPL teóricamente afecta donde lo incrustemos. O si pertenece a otro equipo por ejemplo, de un competidor, sería correcto ponerlo en nuestro programa. Creo que se abrirá un debate sobre el licenciamiento de estos códigos generadores y de los proyectos de los cuales Github Copilot aprende.

Ésta herramienta es la primera de muchas, otras vendrán y nos acostumbraremos a esta nueva realidad. Los programadores no seremos reemplazados (al menos por este tipo de herramienta) pero si ahorraremos tiempo al momento de crear código. No te asustes que no vienen a sustituirte…todavía faltan años para eso jejee.

Deja un comentario

Mi participación en Fullstapps

Hace unas semanas tuve la oportunidad de participar en una edición de FullStapps. Una comunidad para hacer crecer a desarrolladores brindando contenido de alta calidad. En ese episodio fui entrevistado por el Ing. Henry Bravo para hablar principalmente de 3 temas:

  • WebAssembly: breve introducción sobre esta gran tecnología que nos permite ejecutar aplicaciones de alto rendimiento en la web; qué es eso y para que sirve en tus aplicaciones.
  • ¿PHP ha muerto? Comento sobre cómo el lenguaje esta muy vivo, es usado ampliamente y tiene gran oferta laboral. Desmiento algunos mitos y por qué puedes aprender este lenguaje en el 2001.
  • ¿Universidad? Mi opinión sobre si debes estudiar una carrera de Ingeniería de la computación, informática o sistemas.

También comento de otros temas y un poco de mí. Por lo que te invito a escuchar o ver el episodio.

Episodio de Fullstapps

Así que si la quieres ver, a continuación puedes ver el episodio de Fullstapps donde tuve la oportunidad de participar y compartir conocimientos. Fue una excelente experiencia y la entrevista la sentí diferente a las démas. El hecho de hablar sobre varios temas me gustó.

¿Qué es Web Assembly? ¿PHP ha muerto? FT Miguel Useche

Si les gustó no duden en compartirlo en redes sociales y suscribirse a FullStapps para que crezcan como desarrolladores. Si tienes algún comentario que añadir, expresar un desacuerdo o solicitar mas información, no dejes de comentar al final de la entrada.

Deja un comentario

Actualización del diseño de mi Blog luego de 7 años

A pesar de que mi trabajo es realizar, actualizar, mantener aplicaciones y sitios web. Había estado tan ocupado que no había podido dedicar tiempo a mi blog, que al igual que todo sistema informático requiere mantenimiento cada cierto tiempo.

Desde que inicié este blog en el 2005. He tenido un diseño y paleta de colores similar, pero cada cierto tiempo debo cambiar la plantilla de WordPress porque la han dejado de mantener o debo adaptarla a las nuevas tecnologías. La última vez que lo hice fue en el 2019 (lee para conocer mi experiencia en ese entonces) pero el diseño era exactamente igual al de la modificación del 2014.

Principales cambios de mi blog

Cambios a la plantilla

Primero fue actualizar la plantilla, pues la que utilizaba fue descontinuada y no soportaba muchas características de personalización de WordPress. Utilicé una llamada Autor por recomendación de Richzendy, que era similar al diseño anterior pero con la barra a la izquierda (que es mejor para nuestro idioma).

Cambios a los diseño

Luego fue actualizar el fondo y el Skatux (mi logo del pingüino Tux). El diseño lo llevaba usando desde el 2010, en el 2014-2015 usé uno con un teléfono de Firefox OS en la mano y una gorra con colores de Mozilla, pero luego de volver al original y mirarlo en el 2021 me di cuenta que ya no representa mi actual yo.

El primer cambio fue la gorra, ya no la uso para atrás como en mi adolescencia; quité la muñequera de punk y le puse una deportiva por la misma razón; decidí cambiar el color a vino tinto por el equipo de fútbol de Venezuela; mantuve el logo de Arch y la patineta porque sigo usándolos. Finalmente cambié el teléfono por uno con iOS porque es lo que uso desde hace varios años y en vez de tener auriculares le puse unos AirPods (esto me dio risa porque en el 2010 ese tipo de audífonos no existían)

Skatux del 2010
Skatux del 2010
Skatux del 2021
Skatux del 2021

Otro cambio realizado fue el fondo, ésta vez iba a hacer la 3ra iteración del mismo. Lo primero que hice fue actualizar la imagen del PS4 por un PS5. Quité tecnologías y aplicaciones que ya no uso, agregué de nuevas que uso como VueJS, PHPStorm, WebAssembly, entre otros. Los fondos me han permitido ver mi evolución a lo largo de estos años.

Fondo de Skatox.com del 2010
Fondo del 2010
Fondo de Skatox.com del 2014
Fondo del 2014
Fondo de Skatox.com del 2021
Fondo del 2021

Me llamó la atención realizar estos cambios, porque pude ver cómo he avanzado en la pasada década y como la tecnología avanza. Ya con estos cambios puedo dar una imagen mas renovada para la próxima década.

Cambios técnicos

Respecto a los cambios técnicos, la plantilla del blog es usa un tema hijo desde el inicio (antes hacía hacks al tema original), se aumentó la versión de PHP 7.2 a 7.4. Actualicé todos los plugins. Revisé que el tema tenga buena usabilidad para las personas con discapacidades visuales y demás.

Fue una grata experiencia actualizar todo el sitio después de varios años y no hacer modificaciones menores, siento que ahora la página vuelve a ser más mi imagen y espero seguir retomando publicación de artículo.

6 comentarios

¿Por qué WebAssembly? Mi charla del JSConf México 2020

El pasado noviembre del 2020 tuve la oportunidad de participar en el JSConf México para dar una breve charla titulada: ¿Por qué WebAssembly? En ella comento las razones de su existencia, cómo viene ayudar a Javascript a solucionar los problemas que ese lenguaje no permite hacer (o al menos de forma óptima).

Estaba muy emocionado por participar en este evento por muchas razones. Principalmente era volver a México luego de muchos años y compartir con la gente de allá. Pasar unos días allá, pero debido al COVID-19 se tuvo que retrasar y posteriormente hacerla virtual.

¿Por qué WebAssembly?

Esta charla es una variación de las anteriores que he dado, porque ya WebAssembly es usado cada día y no es tecnología del futuro, sino del presente. Ya hoy en día puedes usarlas sin problemas y entonces cambio el enfoque de la charla a por qué usarla.

En fin, si deseas verla totalmente en español puedes hacerlo a continuación. Una vez finalizada, me gustaría conocer tus opiniones, dudas o recomendaciones respecto al tema.

Why WebAssembly - Miguel Useche [Spanish language]

Why WebAssembly?

Me pareció muy chévere como el audio mi charla fue traducida a inglés. Agradezco al equipo de JSConf México 2020 por realizar esa labor. Gracias a ello, mi mensaje puede llegar a más personas y puedan aprender sobre ésta tecnología. Si prefieres escuchar el audio en inglés, a continuación te comparto esa versión del video.

Why WebAssembly - Miguel Useche (English translated audio)

Fue una gran experiencia participar en mi 2do JSConf, lamentablemente tuvo que ser virtual. Hubiese querido estar allá y regresar a México luego de muchos años (me encanta la comida mexicana real). Compartir tiempo con varios amigos de México como Yuliana y Luis Sanchez y disfrutar de la hermosa cultura del país.

Recuerda compartir este artículo si te gusta o deja tu comentario si deseas preguntar o complementar la información.

Deja un comentario