Saltar al contenido

Categoría: Desarrollo y Programación

Estudiar desarrollo de aplicaciones web

El desarrollo de aplicaciones web consiste en crear programas y software que son ejecutados dentro de un navegador web como Firefox, Chrome o Edge. Estos programas se instalan en un servidor que sirve páginas web dependiendo de las acciones del usuario. Las tecnologías utilizadas para hacer estas aplicaciones son: HTML, CSS y Javascript. Así que si quieres dedicarte a esta rama, necesitas aprender estas tecnologías aparte de manejo básico de servidores, comunicaciones, entre otros.

Puede sonar complicado, pero estos temas se van aprendiendo poco a poco. Si quieres iniciarte en este mundo, te lo recomiendo. Solo debes tomar un paso a la vez. En líneas generales las cosas básicas que debes aprender son:

  • HTML: es lenguaje para definir las páginas web. Con él puedes crear la estructura de las páginas, definir la información de las páginas web. El lugar donde va ir cada dato, imagen, entre otros.
  • CSS: es el lenguaje que permite definir la apariencia de las cosas definidas en el HTML: color, tamaño, posición, efectos, animaciones, entre otros. Dominar CSS te garantizará un buen futuro laboral y es recomendado para personas con inclinaciones artísticas.
  • JS: es el lenguaje de programación para alterar el contenido HTML de la página y obtener información de los eventos que realiza el usuario o navegador. De esta forma creas las aplicaciones, porque con esto puedes obtener los datos de la interacción del usuario con la computadora y alterar el HTML/CSS para mostrar otra información o los cambios realizados.
  • Servidores : es el corazón de todo. Aquí es donde se guardan y se ejecutan las aplicaciones web realizadas. También puede tener el gestor de la base de datos que es lugar donde se guardan y procesan los datos de la aplicación.

A pesar de que hay mas contenido por aprender, considera que esas 4 áreas son las que todo desarrollador debe aprender y conocer de forma básica. Existen mas áreas y de conocimiento pero requieren especialización y estudio adicional.

¿Cómo empezar en el desarrollo de aplicaciones web?

Si no sabes como empezar, puedes iniciar estudiando en una institución como la Escuela CES que te brinde una ruta a seguir. Así garantizas que posees todos los conocimientos requeridos para trabajar como desarrollador web y no pierdes tiempo en descubrir que cosas se requieren para ir avanzando. Por ejemplo, en la Escuela CES ofrecen el programa de Técnico Superior en Desarrollo de Aplicaciones Web a Distancia para capacitar y convertirte en un profesional con conocimientos de front-end y back-end para trabajar en diversos campos labores que existen en el desarrollo web: creación de páginas web, desarrollo de sistemas web, manejo de servidores, crear videojuegos o contenido multimedia que utilice la web como plataforma, aplicaciones web móviles entre otros.

En este Técnico Superior en Desarrollo de Aplicaciones Web a Distancia es muy completo, te enseñan las tecnologías mencionadas al inicio de este artículo. Adicionalmente, te enseñan lenguajes de programación como .NET, Java y PHP que son los mas utilizados en el mercado laboral. De modo que aprenderás tecnologías que son utilizadas ampliamente en la industría y podrás trabajar inmediatamente al terminar.

También me gusta como enfocan el contenido en los 2 años: en el primer año conocerás lo básico y tendrás nociones generales de desarrollo web. Con esto teóricamente puedes trabajar y tendrás conocimiento de todas las áreas para que vayan planificando tu carrera (en base a lo que mas te guste o te atraiga. En el segundo año, se profundiza cada una de los distintas áreas del desarrollo web y así puedes aplicar el conocimiento adquirido en el primer año en trabajo mas especializado y así descubrir con mayor profundidad cada área. En este segundo año ya estudiarás como es el trabajo real de un desarrollador web y al ir agarrando experiencia, empezarás a crear tu perfil profesional. De esta forma al salir al mercado laboral contarás con experiencia en varias ramas. Permitiendo buscar trabajo en un amplio sector del mercado o específicamente en lo que mas te guste.

Si deseas mas información sobre como puedes convertirte en un desarrollador(a) web, te recomiendo leer la siguiente infografía que da mas detalles sobre ello:

Infografía sobre temas de desarrollo de aplicaciones web
Infografía sobre el estudio de desarrollo de aplicaciones web

¿Que ventajas ofrece ser desarrollador web?

En mi caso, llevo varias décadas como desarrollador web. Para mí una de las cosas que mas me gusta de ésta área es que el resultado de tu trabajo puede verse en cualquier dispositivo con Internet en cualquier parte del mundo. Como casi todos los dispositivos con conexión a Internet tienen un navegador web, cada uno de estos dispositivos puede ejecutar una aplicación web o ver el contenido de una página web que hayas realizado.

Mi segunda ventaja, es una consecuencia de lo que comenté en el párrafo anterior. Al poder verse desde cualquier lado con acceso a Internet, también puedes trabajar desde cualquier parte del mundo. El desarrollo web se puede hacer 100% de forma remota, puedes crear sitios web y aplicaciones y trabajar con otros en otras partes. Utilizando herramientas como Git y de manejo de proyectos, puedes organizarte y comunicarte con otros para trabajar en conjunto. Al final, solo debes escribir código y subirlo a un servidor para que pueda ser ejecutado.

Otra de las cosas que me gusta, es que si estas en el área de Front-end. Trabajas con contenidos visuales y multimedia junto con código. Entonces si te gusta hacer cosas artísticas o visuales, puedes dedicarte a esta rama. O si te llama mas la atención el manejo de datos, cálculos matemáticos y cosas similares puedes dedicarte a la rama de Back-end. Es decir, para cualquiera de tus habilidades, conseguirás en que trabajar dentro del área de desarrollo web.

Espero que te animes a estudiar esta rama y a dedicarte a ella, puedes hacerlo desde tu casa y conseguir una carrera profesional en poco tiempo. La remuneración es buena y no requiere mucho tiempo o conocimientos para salir al mercado laboral. Así que…¡Éxitos!

Deja un comentario

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ó.

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

¿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?

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.

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

DevDocs: guarda la documentación de varias tecnologías en tu navegador

Todo desarrollador requiere tener acceso inmediato a la documentación de las tecnologías que trabaja. Pues nuestro trabajo es resolver problemas y no sabernos de memoria como funciona todo. El principal problema es que la documentación suele ser extensa, variante y por ello suele encontrarse hospedada en Internet. Pero cuando no tenemos buen acceso a Internet debido a que estamos viajando, nos encontramos en un café con mala conexión, vivimos en un lugar con poco ancho de banda y otros, se vuelve un problema acceder a esta documentación. Para estos casos podemos usar DevDocs, un sitio que nos permite almacenar en nuestro navegador la documentación de muchos sitios web.

Cómo funciona DevDocs

DevDocs posee una lista de tecnologías junto a su respectiva versión. Al hacer clic sobre cada uno de ellas verás desplegada la documentación oficial (al menos en las que probé). Encima de cada enlace del menú puedes hacer clic en Enable y empezará a descargar la documentación al almacenamiento local del navegador para posterior lectura, así no tengas acceso a Internet.

Entonces al estar guardada en tu navegador, puedes acceder a DevDocs y podrás acceder a toda la documentación guardada sin la necesidad de tener conexión a Internet. Inclusive, si tienes conexión pero es lenta, es mucho mas rápido acceder a esta documentación guardada. Otra ventaja es que la documentación se sincroniza automáticamente entonces no debes preocuparte por si esta obsoleta o con errores por actualizar.

Interfaz de DevDocs
Interfaz de DevDocs

Ventajas de usar DevDocs

  • Tienes acceso rápido a la documentación en tu propio equipo sin acceder a Internet.
  • Puedes ver la documentación de varias tecnologías en un mismo formato. Tal vez no parece importante pero es cómodo no estar viendo formatos distintos cuando trabajas con varias tecnologías a las vez.
  • El buscador integrado te permite hacer una búsqueda en varios lenguajes a la vez. Útil para comparar o ver donde es mas fácil hacerlo.
  • Al ser una página web, puedes acceder la desde cualquier dispositivo. Puedes tener la documentación abierta en tu tableta o lector de libros así sea viejo.

Espero que te sirva esta información y permite mejorar tu flujo de trabajo. Recuerda compartir este artículo en las redes si te y gustó, o deja un comentario aportando tu opinión.

Deja un comentario

Mi charla sobre las DevTools en el WordCamp España

El pasado mayo tuve la oportunidad de participar en el WordCamp España. Esta WordCamp España fue la primera en español en realizarse de forma remota debido al COVID-19. Debido al cambio de formato no sabía que esperar, pero fue una grata experiencia y me encantó el desarrollo del evento.

En esta edición tuve la oportunidad de participar con una charla sobre las herramientas de desarrollo del navegador. La misma fue orientada hacia WordPress por lo que verás como puedes usarla cuando creas un sitio web con este gran CMS.

El navegador es tu mejor amigo para el desarrollo con WordPress

A pesar de tener el mismo título que charlas anteriores. En esta edición actualicé el contenido de algunas herramientas, el orden y realicé mejoras gracias a unos consejos de Angel Zinsel, uno de los organizadores del WordCamp España.

El contenido de la misma es conocer algunas herramientas que ofrecen los navegadores para hacer sitios web y conocer como aprovecharlas cuando trabajas en WordPress. Te recomiendo verla y aprender a usarlas en tu navegador favorito para ahorrar tiempo de desarrollo y mejorar tu flujo de trabajo. Esta dirigida tanto a diseñadores, constructores de sitios, programadores de frontend y de backend.

Espero que te haya gustado mi ponencia del WordCamp España. Fue una gran experiencia haber participado en mi primer WordCamp remoto, el equipo de España hizo un excelente evento, la calidad de ponencias, el trato a ponentes, la organización, las salas de socialización, entre otros.

Recuerda compartir esta charla en redes sociales si te gustó y comienza a usar las herramientas de desarrollo de tu navegador favorita para mejorar el desarrollo de sitios con WordPress.

Deja un comentario