"Bootstrap is the most popular HTML, CSS, and JS framework for developing responsive, mobile first projects on the web."
Bootstrap, es un framework originalmente creado por Twitter, que permite crear interfaces web con CSS y JavaScript, cuya particularidad es la de adaptar la interfaz del sitio web al tamaño del dispositivo en que se visualice.
Bootstrap no fue concebido para constituir un framework, pero si pensamos un poco, la web tampoco fue concebida como la utilizamos hoy, asi que eso no es necesariamente un problema.
Ducho esto, si bien entiendo porque es ha vuelto tan popular, no es de mi preferencia.
Aunque, siento siempre una ligera inclinación por el uso de herramientas open source que nos ayudan a hacer más eficiente y estable nuestro trabajo, la vieja escuela me gana la pulseada.
Pero no es solamente un capricho, existen razones que me hagan preferir, muchas veces, volverme loca con las media queries.
Soy dieñadora, pero no por esto me dedico exclusivamente al aspecto gráfico, como todo diseñador web puedo escribir mi propio HTML y CSS, y en mi caso me gusta. Utilizar Js cuando lo necesito (aunque no lo genere de 0) y otras cuestiones.
Pero, básicamente, me gusta diseñar también mi propio código, me gusta crear la estructura html y el código CSS que necesito para llevar adelante mi diseño, y no tener que ajustar mi diseño a las posibilidades que me ofrece un entorno pre frabricado.
Por qué? Lo admito, soy una control freak en estas cosas.
Además, mientras diseño con Bootstrap - a sabiendas de que voy a usarlo, porque no cualquier diseño se ajusta -es como estar diseñando adentro de una de las cajas con las que trabaja.
E igual de subjetivo, pero no menos importante para mi, gracias a la popularidad de Bootstrap, hay un millón de sitios luciendo iguales.
No necesariamente está mal, una tendencia que se esparce y se instaura cuasi como un standard, pero personalmente me aburre.
Esto en la superficie, y en cuanto a aspectos menos subjetivos, creo que la capacidad de bootstrap de lidiar con la responsividad, de forma bastante estable, es su mayor fortaleza, pero también su mayor debilidad.
No solo se sacrifica libertad a la hora de diseñar si queremos salirnos de la caja (casi literalmente), otro tema con Bootstrap es que muchas veces nos gana por cansancio y terminamos usando lo que propone, o diseñando con la visión túnel parados desde Bootstrap y no desde el proyecto.
Tampoco es el mejor amigo de las mejores prácticas.
Tiene la maldita costumbre de asignar propiedades a etiquetas genéricas, que por supuesto sobrescriben otras propiedades específicas que a veces necesitamos manipular.
Entiendo, que para ser abarcativo y flexible tiene que trabajar de esta manera, porque no puede prever todas las clases que podemos llegar a crear, pero nuevamente la paradoja de la gran flexibilidad, la gran limitación.
Muchas veces terminamos asignándole a elementos del DOM múltiples clases, o lo que es peor aún un id que es absolutamente innecesario e ineficiente a nuestros propósitos.
Esto hace que la usabilidad, la escalabilidad y el mantenimiento puedan llegar a representar un gran dolor de cabeza a la larga, ni hablar de implementarlo en un proyecto en curso (en sitios relativamente complejos, claro).
Resumiendo, salvo que hagamos lo más básico del mundo, en la mayor parte de los proyectos vamos a tener muchos elementos con múltiples clases,un HTML no necesariamente es semántico, y contenido y presentación no tan separados como debieran.
![]() |
| Fuente: http://www.wired.com/ |
Muchos sitios utilizan mucho más código del que realmente necesitan, a fin de generar ciertos efectos visuales que responden a una moda, y no siempre a un análisis de lo mejor para cada proyecto particular, o porque soluciones prefabricadas de js paracen ser lo más eficiente (comentario.. hay soluciones prefabricadas de CSS3 que pueden servir).
A todos nos gustan ciertas animaciones, transiciones, etc. simplemente porque son lindas, pero TODAS impactan en el uso de nuestro sitio (desde la velocidad de carga, hasta la navegabilidad), por lo tanto deberían usarse con criterio.
Antes de usar javascript, me pregunto primero si no puedo obtener el mismo resultado con CSS3, en los casos en los que puedo, prefiero usar CSS.
Obviamente, es mucho más limitado, pero para animar un botón no necesito javascript.
Asi como para una landing, de 4 bloques, no necesariamente tengo que recurrir a Bootstrap.
Javascript, se puede apagar. Es cierto que la mayoría de los usuarios no lo hace, pero contemplar los incidentes poco frecuentes - pero no imposibles - y pensar los fallbacks necesarios nunca sobra. Tenemos que estar seguros que no vamos a perder contenido relevante ni se va a "romper" nuestro diseño, si por casualidad algún alienígena (creánme, están entre nosotros) tiene javascript apagado, o tiene una conexión que va a la velocidad de las babosas.
Recientemente me encontré con este artículo: "Apagué javascript por una semana y fue glorioso". (inglés), en WIRED.
Más allá de la experiencia personal del autor, es de notar el hecho de que compañías como por ej. Crowd Supply , están teniendo en consideración reducir cada vez más su dependencia con javascript.
Una compañía no es una tendencia, pero quien sabe exactamente cuantas personas comparten la perspectiva de la Free Software Foundation, y que nos depara el futuro cercano.
La verdad es que, CSS3 nos ofrece muchas posibilidades hoy en día, para manejar cosas que hace años solo eran posibles con javascript; y las media queries son parte de esto.
En última instancia, todo se reduce a las necesidades del proyecto en cuestión, y asi debe ser. Pero definitivamente no debe ser a la inversa.
Existe una alternativa, creada por la W3C: W3.CSS,
Supuestamente más ligera que otros frameworks de CSS, más fácil de aprender, y aunque también utiliza clases prefabricadas y anidadas, pero al parecer utiliza SOLAMENTE CSS.
Aunque la W3c ha recibido muchas críticas utlimamente , el hecho de solamente usar CSS me hace pensar que tal vez vale la pena indagar.
Mi conclusión es, como siempre, que el proyecto determina los recursos más óptimos a utilizar, puede que en algunos casos Bootstrap sea ese recurso, puede que en otros no.





No hay comentarios.:
Publicar un comentario