1 puntos por GN⁺ 2023-10-27 | 1 comentarios | Compartir por WhatsApp
  • Artículo sobre la longevidad y flexibilidad de los componentes web, en comparación con los frameworks de JavaScript
  • El autor sostiene que la elección tecnológica de un proyecto debe estar determinada por las restricciones del proyecto y no por la opción predeterminada
  • Razones por las que el autor eligió componentes web en vanilla JS para su proyecto: portabilidad y capacidad de renderizar HTML
  • El blog del autor ha sido construido con diversas herramientas como Astro, Hugo, un CMS personalizado escrito en PHP, Tumblr, Movable Type y WordPress
  • Se destacan las ventajas de mantener el contenido en archivos de texto plano escritos en Markdown, lo que simplifica el proceso de mover contenido entre sistemas
  • El autor afirma que, aunque ciertas funciones específicas de Astro son convenientes, no son portables y por eso no se usaron en el proyecto
  • Los componentes web pueden escribirse como HTML dentro de Markdown, por lo que son tan portables como el resto del contenido en Markdown
  • Los componentes web son un conjunto de estándares de la W3C para construir elementos HTML reutilizables, encapsulando todo el HTML, CSS y JS en un solo archivo, sin necesidad de un sistema de build
  • El autor señala que los componentes web pueden exponer atributos para configurarse desde afuera, de forma similar a las props nativas
  • Debido a preocupaciones sobre los compromisos entre mantenimiento y dependencias, el autor decidió usar vanilla JS en lugar de frameworks que compilan a componentes web, como Lit, Stencil y Svelte
  • El autor argumenta que dependencias como TypeScript pueden ofrecer funciones útiles, pero requieren tiempo y esfuerzo para mantener compatibilidad con nuevas versiones y APIs
  • Se enfatiza la importancia de evitar dependencias que el usuario no controla y de apegarse a estándares conocidos y estables para la accesibilidad a largo plazo y la resiliencia del contenido web
  • El autor concluye elogiando la web, cuando se usa pensando en la longevidad, como la plataforma de cómputo más resiliente, portable y preparada para el futuro

1 comentarios

 
GN⁺ 2023-10-27
Opiniones de Hacker News
  • Un artículo sobre la longevidad de los web components, comparándolos con los frameworks de JavaScript
  • Quienes comentan señalan que la librería htmx no fue mencionada en el artículo y que, al enfocarse en sincronizar el servidor y el estado, es distinta de los web components
  • htmx recibe elogios por no tener dependencias y por enfocarse en la compatibilidad retroactiva, a diferencia de muchas librerías de JavaScript
  • La gestión de estado en los web components se señala como un problema sin resolver, que los desarrolladores deben manejar directamente sin frameworks envolventes
  • Se comenta que el rendimiento de los web components no es tan importante como se esperaba, y que algunos elementos pequeños han vuelto atrás por el costo de instanciación
  • Los web components son elogiados porque pueden agregarse fácilmente a una página nueva sin importar el framework usado, y por el encapsulamiento de estilos
  • Algunas personas en los comentarios expresan que prefieren el avance y la mejora de los frameworks de JS antes que soluciones estáticas como los web components
  • Se enfatiza la importancia de considerar el conocimiento y las habilidades del equipo al iniciar un proyecto nuevo
  • Se mencionan como desarrollos interesantes soluciones del lado del servidor como Rails Hotwire, Phoenix Liveviews y Laravel Livewire
  • Los web components reciben críticas porque no pueden ejecutarse en el servidor y requieren JS del lado del cliente para renderizarse
  • Se señala que el uso de slots en los web components es confuso y complejo, lo que los vuelve menos atractivos para construir aplicaciones
  • Se critica que la API del DOM no es adecuada para unir componentes y hacer que una aplicación funcione
  • Los web components reciben críticas por la falta de soporte del editor para funciones como el autocompletado de nombres de propiedades y eventos
  • Algunas funciones básicas en los web components, por ejemplo los botones dentro de formularios, siguen siendo problemas sin resolver