Y, ya sabes, solo ha mejorado para la web, donde ahora, en lugar de tener que lidiar con FTP, podemos simplemente hacer un commit y subirlo a nuestro principal servicio Git y luego desencadenar una serie de acciones, ya sea que estemos usando algo como CircleCI, GitHub Actions. Todas nuestras compilaciones y despliegues pueden ser automatizados, de manera que, tan pronto como hagamos push Netlify, Vercel, Firebase, lo que sea, pueden recoger esos cambios y manejar todo lo demás por nosotros.
Entonces, es fácil ver que todas esas tres plataformas, Android, iOS e incluso la web, han mejorado mucho con el tiempo. Y todavía tenemos esta eterna pregunta como desarrolladores, ya sabes, ¿deberíamos construir una aplicación móvil o no? ¿Deberíamos construir una aplicación web o no? Y quiero repasar algunos de los pros y contras de cada una de estas plataformas. Soy un fan de largo tiempo de la web, así que intentaré no ser tan parcial hacia ella, pero hay muchas grandes capacidades de ambas plataformas que realmente deberíamos considerar a medida que empezamos a construir nuestros productos.
Entonces, echemos un vistazo a la web y lo que obtenemos cuando decidimos que queremos construir una aplicación web. Bueno, en primer lugar, tenemos que mencionar los lenguajes que estamos usando en la web. HTML, CSS, y JavaScript. Estos son los fundamentos básicos para construir una aplicación web que realmente nos ayudan a construir cosas increíbles y convincentes. Sí, podemos traer cosas como React o Next, pero si por alguna razón, React y Next desaparecieran, todavía tendríamos estos bloques de construcción básicos que podríamos utilizar y construir cosas bastante convincentes. Sé que la gente todavía está indecisa sobre los componentes web, pero una vez que empiezas a construir cosas en un modelo basado en componentes usando la funcionalidad incorporada del navegador y JavaScript, básicamente miras esto y dices, huh, ¿cuál es la razón para traer todas estas otras bibliotecas? La web es una plataforma bastante convincente en ese caso.
Y los lenguajes que conocemos para construir estas características y estas interfaces de usuario también son convincentes. Con esas herramientas y estos lenguajes en nuestro conjunto de habilidades, nuestra capacidad para construir algo en la web es increíblemente rápida. Comparado con lo que podemos hacer en nativo, no estamos gastando mucho tiempo con este ciclo de construcción, compilación. Literalmente estamos abriendo nuestro servidor de desarrollo y luego podemos ver los cambios que ocurren instantáneamente en la aplicación en el cliente. Lo cual es súper valioso. La capacidad de poder inspeccionar todo en el entorno en el que realmente se va a desplegar, y realmente mirar todos esos nodos, significa que estamos gastando menos tiempo teniendo que depurar la aplicación en sí y más tiempo simplemente averiguando, ¿cómo estamos construyendo el diseño? ¿Por qué este estilo no se está aplicando? ¿Dónde puedo hacer algunos cambios para optimizarlo para la usabilidad? Nuestra capacidad para tomar todo esto y simplemente iterar e iterar muy rápidamente, no puede ser subestimada.
Ahora, esto puede parecer el símbolo de USB, pero en realidad es el símbolo de universal. Al menos en mi canon personal. La capacidad de poder tomar algo para la web y desplegarlo, es bastante universal. Solo puedo pensar en quizás un puñado de dispositivos que realmente no pueden renderizar contenido web. Mientras que puedo pensar en tantos lugares donde el contenido web puede ser renderizado. Obviamente, tenemos nuestros entornos de escritorio, tenemos nuestros navegadores móviles, pero también tenemos quioscos de pago. También tenemos el centro de control de la NASA. Todos están usando tecnologías web para renderizar la interfaz de usuario. Porque es tan rápido, porque es universal, porque son cosas que todos conocen, y pueden ser productivos muy rápidamente.
Siguiendo con eso, tenemos cosas como, tenemos características poderosas dentro de la web que nos permiten construir mejores aplicaciones de las que hemos podido. Si echamos un vistazo a algunas de las características de lo que la web puede hacer, puedes mostrarnos que obviamente podemos hacer cosas como WebRTC, podemos hacer algunas notificaciones push, podemos hacer USB y NFC, todas estas características geniales que están incorporadas en el navegador que los desarrolladores nativos siempre han colgado sobre nuestras cabezas como, oh, la web nunca podrá hacer esto. Pero la web es una historia de siempre poder alcanzar. Y con esas características, estamos viendo que la web puede ser empujada hacia adelante para hacer cosas nuevas y increíbles.
Comments