Regreso de la barra de carga: ¿son CSS3 y HTML5 el nuevo Flash?
Hoy vamos a discutir un poco acerca de cómo y por qué Flash se consideró en una luz negativa y cómo podemos evitar correr por el mismo camino con las tecnologías modernas que lo reemplazan.
Explore los elementos de Envato
Por qué odiamos el flash
Nos guste o no, la web ha activado Flash. El ex chico del cartel de Internet se ha convertido en un hijastro pelirrojo, provocando sentimientos de odio directo en muchos usuarios. Esta marcha fue liderada en gran medida por Steve Jobs y la negativa de Apple a permitir Flash en iOS, pero todos los días los usuarios de la web han tenido problemas con la tecnología.
Por varias razones, Flash fue increíble. Permitió a los desarrolladores web llevar los sitios web a un nivel de dinamismo que antes era imposible. En lugar de una tierra de aburridas páginas estáticas, Internet se convirtió en un lugar donde eran posibles experiencias verdaderamente inmersivas y totalmente futuristas.
Sin embargo, todo esto tuvo un precio. Con el auge de Flash, la web también se convirtió en un lugar notablemente defectuoso y lento. Los sitios web de Flash, por supuesto, requieren el complemento Flash, y si no tiene la última versión, será mejor que lo obtenga o esto no funcionará.
Luego vinieron las barras de carga. Los tiempos de carga de la página en sitios Flash puros aumentan exponencialmente y de repente "Cargando: 10% ... Cargando: 11% ..." los hilanderos se convirtieron en parte de nuestra vida diaria.
Finalmente, está el problema de la estabilidad. Steve Jobs declaró que la mayoría de las veces, cuando las Mac se bloquean, Flash tiene la culpa. Esto es un poco hipérbole, pero el núcleo de la declaración insinúa algo de verdad. Todos hemos experimentado congelación relacionada con Flash y peor. Tanto es así que muchas personas descargan complementos que bloquean toda la actividad de Flash a menos que se apruebe manualmente.
Sabiduría de Hollywood
En la película Jurassic Park, el especialista en caos Ian Malcom comenta al encontrar una isla de dinosaurios vivos: "sus científicos estaban tan preocupados por si podían o no, no se detuvieron a pensar si deberían".
"Sus científicos estaban tan preocupados por si podían o no, que no se detuvieron a pensar si debían". -Ian MalcomEsta cita es muy apropiada para el ascenso de Flash a la fama. Los desarrolladores estaban tan entusiasmados con lo que podían hacer que olvidaron preguntar qué deberían hacer. ¿Flash mejorará la experiencia general o la empeorará? ¿Qué estoy ganando al usar Flash y qué estoy sacrificando? ¿La mayoría de mis usuarios estarán satisfechos con las decisiones que he tomado? ¿Qué tan grande es el grupo de usuarios que se perderán y qué opciones tendré para ellos?
Historia repetida
Avance rápido hasta ahora. CSS3 y HTML5 han llegado para salvar el día. Flash está en juego y recibe una nueva paliza todos los días, ya que vemos nuevos e impresionantes ejemplos de sitios asombrosos creados solo con CSS, HTML y JavaScript.
HTML y CSS están integrados en los navegadores web modernos y son la columna vertebral de la Web mundial tal como la conocemos hoy, por lo que poder utilizar estas tecnologías para crear páginas dinámicas es el sueño de un diseñador web hecho realidad.
Sin embargo, a medida que más y más desarrolladores recogen estas tecnologías y comienzan a estirarlas hasta los límites, el Síndrome de Jurassic Park comienza a establecerlo. Todos nos preocupamos tanto por lo que es posible que es fácil perder de vista lo que está permitido.
Cada vez más, mientras navego por la web, empiezo a ver signos de que se acerca un futuro similar a Flash. Los tiempos de carga de la página están aumentando hasta el punto de que los mensajes de "carga" están regresando, las páginas web se están volviendo bastante dependientes del navegador, las animaciones largas están bloqueando el navegador; ¿suena familiar?
No me malinterpreten, soy el primero en ponerme de pie y decir que HTML5 y CSS3 no son solo el futuro de la web sino la fuente de las mejores tecnologías actuales. Sin embargo, creo que algunas conversaciones sobre precaución son apropiadas si queremos evitar un escenario similar a Flash.
Sí, nuestros nuevos juguetes son increíbles, pero reduzcamos la velocidad por un minuto y hagámonos algunas preguntas importantes antes de la implementación.
Preguntas importantes
La siguiente es una lista aproximada e incompleta de preguntas que debe hacerse antes de implementar ciertas tecnologías de próxima generación en su sitio.
¿Es el propósito experimental / educativo?
Para aquellos de ustedes listos para señalarme con el dedo y mi oferta semanal de técnicas CSS3, obtengo un pase gratis (¿no es conveniente?). Es mi trabajo discutir no solo el estado actual de la web, sino también las tendencias y tecnologías futuras. Como resultado, este blog y otros deberían explorar y enseñar nuevas técnicas a medida que surjan.
Como individuo, también tiene todo el derecho de experimentar. No hay nada malo en configurar un patio de juegos web o un sitio web personal con características experimentales. El problema surge cuando lo contratan para crear un sitio bajo el supuesto de que la máxima compatibilidad del usuario es un objetivo principal. La mayoría de las empresas no estarán locas por contratarte para crear un sitio que solo sea impresionante para otros diseñadores web y un poco molesto para todos los demás.
¿Qué se gana? ¿Qué se pierde?
Tal como lo recomendé con la implementación de Flash, con cualquier tecnología nueva o experimental siempre debe sopesar cuidadosamente sus pros y sus contras.
¿Es el beneficio principalmente un impulso estético? ¿Vale la pena un pequeño golpe en usabilidad? ¿Qué tal uno grande? Desde la perspectiva del usuario promedio no diseñador, ¿esta opción se agregará o quitará a la experiencia?
Por ejemplo, supongamos que está creando un elegante menú desplegable animado usando CSS3 puro en lugar de JavaScript, ¿está haciendo esto porque es más impresionante o porque sabe que realmente puede hacerlo más funcional para más usuarios que si se hubiera ido? la ruta JS?
Todo vuelve al dilema de Ian Malcom. Si resulta que puedes lograr un montón de magia web moderna en un sitio, siempre pregúntate si deberías hacerlo .
A veces, los avances realmente ayudarán a optimizar su sitio y hacerlo aún más utilizable, otras veces se encontrará con un código hinchado y una página lenta mientras agita su banner de progreso. Sé honesto contigo mismo y decide dónde trazar la línea.
¿Se perderá algún usuario?
Supongamos que desea implementar algunas animaciones de fotogramas clave de Webkit (uno de mis artículos favoritos de CSS3) en un sitio de cliente, ¿primero echa un vistazo a sus análisis para ver cuántos usuarios que no son de Webkit se quedarán fuera?
La compatibilidad del navegador era un problema importante antes de HTML5 y CSS3 y ahora es peor. Sin embargo, la misma lógica que siempre hemos usado todavía se aplica. Solo asegúrese de diseñar con cada navegador importante en mente. En lo que a mí respecta, no debería sentirse mal por implementar trucos y efectos específicos del navegador, solo asegúrese de que otros usuarios aún tengan una experiencia sólida.
Obviamente, estamos hablando de mejora progresiva. Comience con una línea base de funcionalidad y estética que funcione en todos los principales navegadores, luego agregue extras especiales para aquellas personas con visión de futuro que usan un navegador verdaderamente moderno.
Conclusión
En resumen, me encanta HTML5 y CSS3. Paso mucho tiempo experimentando y estirando los límites de lo que antes pensaba que era posible. Sin embargo, cuando trabajo en proyectos reales, siempre soy cauteloso sobre ir por la borda y crear un sitio que no solo parece que fue construido con Flash, ¡sino que actúa como tal!
Deje un comentario a continuación y háganos saber cómo aborda el uso de las nuevas tecnologías en los sitios de los clientes. ¿Está adoptando completamente HTML5 y CSS3 o simplemente está atrayéndolos selectivamente donde se pueden hacer mejoras genuinas?