TypeScript Origins: The Documentary es un documental creado por Keyboard Stories que explora el proceso de creación de TypeScript. Lo más me gustó de ese documental, es que cuenta con comentarios de sus creadores y de las personas involucradas en su desarrollo, presentación y difusión, ofreciendo una visión completa de la historia detrás de este lenguaje. Este documental de TypeScript es algo que no se deben perder si están involucrados de alguna forma con el mundo de la programación.

¿Qué tiene de importante TypeScript?

Si te parece extraño que hayan hecho un documental de TypeScript de este calibre, es porque actualmente es uno de los lenguajes mas populares. JavaScript probablemente es el lenguaje mas popular actualmente, pero tiene muchas carencias como la falta de tipado/tipos (para mí es una de las cosas por las cuales opino que no es un buen lenguaje) que permite entre muchas cosas, crear código mas complejo, ayudar a los programadores escribir mejores programas limitando el tipo de datos que se pueden guardar o pasar en funciones, optimizar la velocidad de ejecución de los programas, entre otros.

TypeScript nace como solución a este problema, expandiendo su uso rápidamente e inclusive siendo sustituto de JS en muchas compañías. Ademas de ser el lenguaje que hizo posible en su día a tecnologías como Angular y Visual Studio Code.

Mi opinión del documental de TypeScript

El documental comienza con los principales creadores narrando cuáles fueron las causas para desarrollar este lenguaje dentro de Microsoft. Luego, muestra un poco el proceso de desarrollo y, posteriormente, el lanzamiento al público. En estas partes, podemos recordar las conferencias en las que fue anunciado.

Me llamó la atención, cómo comentan que querían liberarlo bajo una licencia abierta pero Microsoft no estaba acostumbrado a eso. Pero con la nueva gerencia les tocó evolucionar y lo consiguieron.

En el proceso de creación de TS, vemos como el lenguaje fue usado para construir Visual Studio Code; posteriormente el equipo de Angular (del rival Google), se unió para hacer que TypeScript soportara decoradores gracias al proyecto AtScript.

Pero en vez de contarte mas, te recomiendo que lo veas a continuación:

YouTube Video

Me pareció muy inspirador ver este documental de TypeScript. Ver la historia contada por los mismos creadores, observar como creció desde una idea para poder terminar otro proyecto, hasta ser uno de los principales lenguajes de programación, es muy placentero.

Ojalá hagan mas documentales de este tipo, tal vez uno de Visual Studio Code. Pues luego de ver este documental me dio curiosidad de cómo desarrollaron este editor.

Finalmente, te recomiendo aprender este lenguaje y hacer tu experiencia con JS mas placentera.

La entrada Documental de la creación de TypeScript se publicó primero en El blog de Skatox.

Este es un artículo que quería publicar hace un par de años. Quería escribir una comparación breve de React vs Vue para que cualquier persona con deseos de empezar con un nuevo proyecto o aprender front-end tenga una base de cual elegir. Pero siempre quedaba en borrador porque sentía que necesitaba mas experiencia con React (Vue lo uso diariamente en mi trabajo). Pero con la actualización de mis plugins de WordPress he logrado trabajar mas con React y poder hacer una comparación.

Comparación inicial entre React vs Vue

Algo que tienes que tener claro es que ambas tecnologías son librerias. No incluyen todos los componentes para hacer SPA. Pero si permiten crearlas y son la base para crear buenas interfaces dinámicas y ligeras.

Ambas tienen una funcionalidad similar pero con una sintaxis y forma de resolverlo diferente. Por ello, cuando quieres saber de React vs Vue debes enfocarte en cual se te hace mas fácil o te beneficia para tu próximo proyecto.

Ninguna es mejor que la otra, y todo se reduce a facilidad de conseguir programadores, documentación y cual se adapta a tu manera de pensar. Por eso lee los siguentes puntos que me parecen importante para que puedas elegir tu próxima librería de frontend.

Curva de aprendizaje y sintaxis

En mi opinión Vue es el mas fácil de aprender. La sintaxis es HTML con unos atributos especiales como v-if, v-if, v-model que permiten controlar el flujo de ejecución o generación del HTML, de resto es HTML estándar usando {{ }} (doble llaves) para mostrar las variables.

Actualmente posee dos formas de crear los componentes: usando Composition API y Options API. La diferencia entre ellas, es que la primera es parecida a la de React y esta enfocada en la facilidad de importar y reutilizar código. El otro, es la versión clasica donde creamos un objeto del componente con llamadas a los metodos, propiedades, datos, entre otras cosas.

También Vue tiene conceptos como variables computadas y asignación de modelos, que abstraen procesos que se harían manuales en otras librerias pero aqui se hacen de forma automática y podemos, por ejemplo, tener una variable que se compute automaticamente ante cambios, sin preocuparnos por desarrollar el proceso de actualización de la misma.

Aquí puedes ver un ejemplo de un componente sencillo que usa Composition API:

import { ref } from 'vue';

export default {
  setup() {
    const mostrarMensaje = ref(false);
    const nombre = 'María';

    const toggleMostrarMensaje = () => {
      mostrarMensaje.value = !mostrarMensaje.value;
    };

    return {
      mostrarMensaje,
      nombre,
      toggleMostrarMensaje
    };
  },
  render() {
    return (
      <div> 
        <h1>¡Bienvenido/a, {nombre}!</h1>
        <button onClick={toggleMostrarMensaje}>
          <span v-if="mostrarMensaje">Mostrar mensaje</span>
          <span v-else>Ocultar mensaje</span>
        </button>
        <p v-if="mostrarMensaje">Este es un ejemplo de sintaxis de renderización en Vue.</p>
      </div>
    );
  }
};

En cambio React usa JSX para renderizar los componentes. Es una sintaxis que mezcla XML con JS. Utiliza JS para controlar la lógica de renderizado y luego etiquetas HTML para definir los componentes y elementos de la página. Pero no es 100% igual, hay atributos como las clases que se llaman className, en vez de class y otros detalles que debes aprender.

Respecto a la parte de datos, utiliza algo llamado hooks que nos permite reutilizar el código mas facilmente. Aqui la data se maneja con estados. En mi opinión en React como no se abstraen tantas cosas, puedes tener mayor control de tu componente pero requiere que comprendas mejor el ciclo de video de ellos para obtener mejores resultados.

Aquí puedes ver un ejemplo de un componente sencillo que usa hooks:

import React, { useState } from 'react';

const Saludo = () => {
  const [mostrarMensaje, setMostrarMensaje] = useState(false);
  const nombre = 'María';

  const toggleMostrarMensaje = () => {
    setMostrarMensaje(!mostrarMensaje);
  };

  return (
      <div>
        <h1>¡Bienvenido/a, {nombre}!</h1>
        <button onClick={toggleMostrarMensaje}>
              { mostrarMensaje ? 'Ocultar mensaje' : 'Mostrar mensaje'}
        </button>
        { mostrarMensaje && <p>Este es un ejemplo de React JSX.</p> }
      </div>
  );
};

export default Saludo;

Aunque si observan ambos casos la sintaxis es muy similar, con saber buen HTML, no importa si es React vs Vue. Respecto a la sintaxis general

Documentación y comunidad

React debido a su popularidad posee una comunidad mas grande que provee mayor información y contenido. La documentación oficial es muy buena y enseña su uso sin importar que no tengas experiencia en la librería. Está dirigida a todo publico y me parece que nunca tuve dificultad para conseguir información para resolver problemas con React.

Vue también tiene una documentación muy buena, pero no es tan detallada. La comunidad es mas pequeña y en algunos casos debido a esto, no encontrarás mucha información o tutorial como los que existen en React.

En realidad ambos tienen documentación que te permiten aprender a usar estas tecnologías, solo que la de React tiene mas forma de tutorial y por el tamaño de su comunidad, te será mas fácil de encontrar solución a tus problemas.

Developer tools

Ambas librerías poseen herramientas para los navegadores a través de una extensión. En mi opinión las de Vue son mas cómodas, soporta gran variedad de tecnologías, permite ver mejora la información y son mas sencillas.

En cambio las de React, me pareció menos potente. A pesar de que puedes ver todos los componentes, no puedes editarlo o hacer operaciones avanzadas sobre los componentes. Y hay limitaciones como no poder usarlas dentro de un iframe que le quitan puntos.

Herramientas de desarrollo de React en Firefox

Pero ambas funcionan correctamente, permiten interactuar con los componentes y cumplen con el objetivo principal de ayudar al programador ver como se renderizan los componentes y ver las variables internas.

Mis recomendaciones

Si estás comenzando en el desarrollo front-end, considero que Vue es la opción ideal debido a su curva de aprendizaje suave y el uso de HTML simple para la creación de componentes visuales. No obstante, si tu objetivo es adquirir habilidades que te ayuden a conseguir trabajo, React es la elección más acertada debido a su mayor popularidad en el mercado laboral. Además, es posible encontrar una mayor cantidad de recursos e ejemplos para aprender, aunque es importante tener en cuenta que se requerirá un dominio previo de JavaScript y mayor esfuerzo inicial para dominarlo por completo.

¡Elige el que te parezca mas cómodo y se ajuste a tus necesidades! Comenta cual usas tú y por qué.

La entrada React vs Vue: ¿Cuál usar? se publicó primero en El blog de Skatox.

React ha revolucionado el desarrollo web, ofreciendo a los desarrolladores una poderosa herramienta para crear interfaces de usuario dinámicas e interactivas. Gracias a Honeypot, una plataforma tecnológica reconocida, recientemente lanzó un excelente documental de React.js que profundiza cómo fue el nacimiento de esta tecnología

¿De qué se trata?

Puedo decir que me encantó este documental de React.js debido a que la historia es narrada por los participantes de la creación del proyecto. El documental abarca desde que fue una idea, el inicio de su desarrollo, las motivaciones tecnológicas para hacer React, qué cosas pasaron dentro de Facebook y como el proyecto fue adoptado por la compañía hasta ir poco a poco avanzando sobre la evolución de la librería a lo largo del tiempo, hasta llegar al futuro del mismo.

Las entrevistas son interesantes, variadas y con el contenido fácil de entender. No posee mucho contenido de alto grado tecnológico por lo que puede verlo todo tipo de público interesado en React.

Para quienes llevamos rato en el mundo del desarrollo web. Este documental de React.js nos traerá nostalgia de como funcionaban las cosas en el 2010-2012, a pesar que allí lo muestran como algo viejo y lejano, para uno es como si fuese ayer (creo que me estoy volviendo viejo al escribir estas cosas).

¿Cómo ver el documental de React.js?

El documental de React.js está disponible de forma gratuita en Youtube. Te recomiendo verlo con calma y tiempo porque es bueno, muy interesante y podría ser motivador, sobre todo si quieres llevar adelante tu proyecto de código abierto.

Así que mira el documental a continuación:

YouTube Video

Espero que te guste este grandioso documental de React.js y compártelo con tus amigos en las distintas redes sociales. Si deseas ver otro documental similar, te recomiendo ver el documental de la creación de Vue. Es igual de bueno y te encantará.

Finalmente, te invito a dejar tu comentario sobre el vídeo, si has trabajado con React.js o tu opinión de este framework que es mas actualizado actualmente para el desarrollo web.

La entrada Mi opinión del documental de React.js de HoneyPot se publicó primero en El blog de Skatox.

Luego de 7 años tuve la oportunidad de dedicarle tiempo a mi plugin JS Categories List y poder actualizarlo para que esté al día respecto a los estándares de WordPress y de la web en general.

Listado de categorías de forma dinámica
El plugin muestra un listado de categorías expandibles

Durante este tiempo WordPress añadió Gutenberg, un editor visual que ahora se incorpora en cada instalación y poco a poco va tomando el liderazgo de como crear el contenido. Por este motivo los widget/bloques han migrado a ser hechos con una aplicación en React y que llame a entradas del API del sitio.

Eliminación de jQuery de JS Categories List

En estos 7 años el principal cambio fue lo innecesario de depender de jQuery. Su popularidad se debía porque está incluida en cada instalación y anteriormente ayudaba a manipular el DOM fácilmente debido a las limitaciones de los navegadores.

Pero actualmente no es necesario usarla: los navegadores ya permiten hacer nativamente mucha de sus funcionalidad, la librería requiere cargar contenido JS innecesario y los bloques de Gutenberg se realizan con React quien ofrece mucho mas.

Creación del bloque de Gutenberg

Primero fue mejorar el código fuente, cuya tarea mas que todo fue aplicar estandarización de código PHP, organizar mejor el código, rescribir partes mal hechas

Luego fue la creación del bloque de Gutenberg, tomé como base el código fuente de mi otro plugin recientemente actualizado y lo modifiqué para funcionar con categorías en vez de archivos.

Los bloques de Gutenberg usan React, así que me tocó rescribir el plugin desde el PHP que genera HTML a componentes JSX. La lógica es similar pero en esta migración pude hacer mejoras que luego apliqué a la versión de PHP.

Para facilitar futuras mejoras y ver que el código funciona, agregué pruebas jest a los componentes y así asegurarme que todo funciona bien. En futuros cambios, ahora tendré como probar los cambios y garantizar el correcto funcionamiento,

Animaciones en JavaScript

Una de las principales funcionalidades que ofrecía jQuery es de animaciones sencillas con simplemente llamar una función. Esta funcionalidad no está disponible en el JavaScript puro porque esas características se fueron agregando a CSS.

En mi plugin de JS Archive List, logré implementar las animaciones usando clases CSS pero no funcionan bien en algunos casos reportados por usuarios, sobre todo, cuando hay altura dinámica.

Por ello, para este JS Categories List decidí crearlas desde 0 en vanilla JS para que funcionen bien en cualquier escenario. Descarté el uso de clases CSS por el problema mencionado, ademas que es mas fácil de probar de forma automatizada.

Experiencia al actualizar JS Categories List

Aprendí mucho al rescribir mi código antiguo. Noté como ha evolucionado mi forma de programar a lo largo de estos años, cómo la tecnología cambia pero las bases de WordPress se mantienen y la retrocompatibilidad se respeta. Con razón este CMS es el mas usado en el mundo.

Pude pulir mis conocimientos de React, de pruebas automatizadas con Jest y aplicar mejores patrones en el código de PHP. También el resultado me permitirá actualizar con mayor frecuencia este plugin y ofrecer mejoras.

Si usas WordPress te recomiendo descargar e instalar mi plugin.

Espero que te guste y lo uses en tu sitio.

La entrada JS Categories List 4.0 se publicó primero en El blog de Skatox.

Desde hace un par de años, se libera una versión de PHP cada año y por lo tengo para estar al día, es recomendable estar actualizando el código para que sea compatible con futuras versiones. Si utilizas alguna herramienta de contenedores como Docker y tienes tu stack armado allí tarde o temprano tienes que cambiar de versión. Pero si usas PHP en laradock, el proceso es muy fácil como puedes ver.

Cambio de versión de PHP en laradock

El primer paso es ir a la carpeta raíz de Laradock y buscar el archivo de variables de entorno llamado .env. Ábrelo con tu editor de textos favorito y buscar la variable de entorno denominada PHP_VERSION y escribir la versión deseada, por ejemplo:

PHP_VERSION=8.2

Reconstruir imágenes

Luego debes volver a construir los contenedores de php-fpm que es el que procesa el código PHP en laradock y el de workspace para poder ejecutar scripts de PHP como composer, phpcs, entre otros.

docker-compose build php-fpm
docker-compose build workspace

Luego para que los cambios tomen efecto, debes reiniciar los contenedores. En mi caso como uso un stack LAMP sería:

docker-compose down
docker-compose up -d nginx mariadb phpmyadmin workspace

Comprobar que la versión de PHP en laradock es correcta

Y finalmente ya todo debería estar en la versión definida. Para comprobar, puedes crear un archivo .php con la función php_info() por dentro para imprimir todos los datos de la versión. Para el caso del workspace puedes ejecutar: php –version y ver la versión instalada.

Finalmente, espero que te sirva y puedas usar PHP en laradock con la versión que desees. Si necesitas volver a la versión anterior, simplemente edita de nuevo el archivo .env y comienza de nuevo.

La entrada Cambiar la versión de PHP en Laradock se publicó primero en El blog de Skatox.

Hace unos meses adquirí una Mac mini con el nuevo procesador de Apple Sillicon (M1). Estaba buscando remplazar mi Mac mini anterior y cuando vi que sacaron nuevos equipos con el chip M1 que en las pruebas de rendimiento superaban a la mayoría de procesadores, no producían mucho calor (vivo en un lugar caliente ) y por lo tanto no eran equipos ruidosos.

¿Que tienen de distinto los chips M1 y cual adquirir?

Los chips de Apple Sillicon (M1) son diseñados por la misma Apple. Utilizan la arquitectura ARM a diferencia de x86 que era la utilizada por AMD e Intel (quien proveía procesadores a Apple desde el 2005).

Esto significa que utilizan otra instrucciones, por lo tanto los programas deben ser compilados para esta arquitectura. Pero tiene como ventaja que los equipos con ARM se diseñan para consumir menos energía y actualmente poseen gran rendimiento.

El chip de Apple Sillicon (M1)
El chip de Apple Sillicon (M1)

Apple Sillicon (M1) para el desarrollo web

Respecto a la compatibilidad de aplicaciones, macOS ofrece Rosseta 2. Una aplicación que traduce el código de x86 a ARM permitiendo ejecutar cualquier aplicación previa sin problemas. Respecto al rendimiento, obviamente es menos al nativo pero igual están a la par con los equipos anteriores de Apple con procesadores Intel.

Sin embargo, a estas alturas la mayoría de aplicaciones ofrecen compatibilidad para el Apple Sillicon (M1). Por lo que podrás trabajar sin problemas como si estuvieses en otro equipo.

Editores o IDEs

Actualmente los principales IDEs para programación web ofrecen compatibilidad nativa. El primero en probar fue Sublime Text 4 que es el mas rápido que usado. Xcode como es el propio de Apple también es rápido pero casi no me gusta para desarrollo web. Visual Studio Code también ofrece version nativa que funciona muy rápido al igual que la suite de Jet Brains.

Lo único que se debe tener cuidado es con instalar la versión para ARM y no la de x86. Ya que todos estos editores ofrecen ambas versiones y a pesar que la versión de x86 corre en tu equipo. No lo hará de forma nativa y es muy lento.

Compatibilidad con lenguajes de programación

macOS ofrece versiones nativas de lenguajes com Ruby, PHP, entre otros. Sin embargo, puedes conseguir versiones nativas de Rust, Go, PHP, Ruby, JavaScript (con Node) y usarlas sin problemas. Si usas lenguajes interpretados, el código será igual entre arquitecturas así que no habrá problemas al momento de ejecutar o desarrollar tus aplicaciones. En nodeJS tuve que compilar algunos módulos para que quedaran nativos para que funcionara en mis proyectos, pero creo que otro sistemas operativos también hace eso la primera vez.

Docker

Docker requiere de Linux para funcionar, en macOS Big Sur ofrecen algo llamado Virtualization Framework que sirve para correr otros sistemas como Linux en un hypervisor. Docker desde la version 3.3 ofrece soporte para equipos con Apple Sillicon (M1). Desde que actualicé a la versión 4 no he tenido problemas siguiendo estas recomendaciones:

  • Uso las imágenes de mis contenedores en versiones de ARM para mejorar la velocidad. Algunos contenedores como el de Mailcatch, solo tienen para x86 y lo uso sin problemas.
  • Usar qemu como método de virtualización para tener 100% de estabilidad. Yo uso Virtualization Network y a veces falla al hacer operaciones pesadas con la base de datos.
  • La imagen oficial de MySQL no está para ARM y uso MariaDB en ARM. Siempre que intente usar MySQL inclusive con la emulación falla, desconozco la causa y por eso lo dejé de usar.

Pero en general funciona bien, estable y hasta los momentos no ha afectado mi trabajo.

Homebrew y aplicaciones del sistema

Te recomiendo visitar Does it ARM para buscar si el software corre en tu equipo. Aunque no he tenido problemas de compatibilidad. Suelo instalar las aplicaciones del sistema a través Homebrew y este separa las versiones de x86 y ARM por separado, así que si ofrece versión nativa se instala esa, si no, usará la arquitectura de x86. Todo esto funciona de forma transparente así que no habrá que intervenir.

Recomendaciones finales

Me parece que los equipos con Apple Sillicon (M1) son buenos para el desarrollo web, la relación costo/rendimiento es muy buena, gran compatibilidad con las aplicaciones existentes de macOS, gran potencia, poco consumo de energía y ningún ruido en el hardware. Hacen de estos unos equipos una buena compra para el desarrollo web.

Por ahora, la única limitación que veo es la cantidad de RAM, actualmente un máximo de 16GB, esta cantidad compartida con el chip de vídeo puede ser muy poco para algunos usuarios y probablemente deseen esperar por la siguiente generación de equipos con Apple Sillicon. Sin embargo, debido a la velocidad de los discos, al usar el área de intercambio o swap, la velocidad sigue siendo muy alta por lo que si necesitas mas RAM la velocidad sigue siendo muy potente, pero no es lo recomendable.

Respecto al disco duro, no me preocupa. Tengo una portátil con un disco duro SSD de menor calidad y hasta los momentos me ha durado 7 años, estoy seguro que esos me durarán mucho mas. Ademas he tomado medidas como no indexar ciertos archivos para aumentar el rendimiento y vida útil del disco duro.

En fin, si buscas un equipo con buen costo/rendimiento para realizar desarrollo web y prefieres usar macOS. Te recomiendo las computadoras con Apple Sillicon (M1). No tendrás problemas de compatibilidad con las aplicaciones existentes y el rendimiento será muy bueno.

Si compraste un equipo o vas a hacerlo, ¡Bienvenido(a) a la arquitectura ARM!

La entrada ¿Sirve una Mac con Apple Sillicon (M1) para el desarrollo web? se publicó primero en El blog de Skatox.

Hace unas semanas tuve la oportunidad de participar en el WordCamp de Cochabamba 2021. En ella hablé por primera vez de Docker y como utilizarlo con WordPress. Para quienes no conocen Docker, es una herramienta que permite trabajar con contenedores, una tecnología para encapsular las aplicaciones junto a su entorno de ejecución (podemos verlo como una proceso que por dentro tiene Linux y mas aplicaciones corriendo sobre él).

En el caso de WordPress, podemos encapsular en un contenedor una instalación de WordPress junto un servidor MySQL, Nginx con versiones específicas. Así cuando ejecutemos ese contenedor en producción, en el ambiente local o desarrollo; van a poseer la misma versión y el mismo software así que nos podemos concentrar solo en el desarrollo de WordPress.

¿Por qué usarlo?

Una de las ventajas es que se encarga de la configuración e instalación de las capas inferiores de una aplicación. En el caso de WordPress, no nos preocuparemos si la versión de PHP o MySQL instaladas en el ámbito de desarrollo son diferentes al del entorno de producción. Por lo que podemos programar a una versión específica del lenguaje sin que falle posteriormente. Otro uso es poder intercambiar esas capas inferiores fácilmente y así probar un tema o plugin que hemos desarrollado, en diferentes versiones de PHP o de WP y comprobar compatibilidad.

Arquitectura de varias instalaciones de WordPress con distintas versiones de MySQL usando Docker
Ejemplo de como puedes usar Docker para correr un plugin en instalaciones de distintas versiones de WordPress

En fin, hay un montón de usos que podemos hacer pero mejor mira mi charla sobre el tema. Aprenderás todo lo necesario para iniciarte en poco tiempo.

Mi charla sobre WordPress y Docker

Esta es la primera vez que doy la charla en un WordCamp. En esta charla explico las bases teóricas de Docker, cómo aplicarlo para un instalación de WordPress, ejemplos y escenarios de como usarlos. Por ejemplo, si quieres probar un código con varias versiones de WordPress al mismo tiempo, en el vídeo puedes ver hacerlo y así ahorrar tiempo.

Si deseas saber todo eso, te recomiendo ver el video sobre Dockeriza tu flujo de desarrollo con WordPress y aprende a iniciarte con esta tecnología.

Si te gustó, recuerda compartirlo con otras personas para que todos aprendamos a mejorar nuestras habilidades. También puedes dejar tu comentario si deseas agregar algo al contenido o si tienes una duda.

¡A estudiar contenedores!

La entrada WordPress y Docker: Mi charla del WordCamp Cochabamba 2021 se publicó primero en El blog de Skatox.

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!

La entrada Estudiar desarrollo de aplicaciones web se publicó primero en El blog de Skatox.

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.

La entrada ¿Por qué WebAssembly? Mi charla del JSConf México 2020 se publicó primero en El blog de Skatox.

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.

La entrada Mi charla sobre las DevTools en el WordCamp España se publicó primero en El blog de Skatox.