Todo sobre CSS
Tags: css, webdev, beginners
Published: 2023-02-10 01:05:20

Hace unos minutos ingresé en el Slack de mi comunidad (Academlo) y me encontré con una pregunta que captó de inmediato mi atención:

> _"Me pueden recomendar un libro de CSS, que tenga todos los comandos, para aprendérmelos"_.

La pregunta es realizada, evidentemente, por uno de los nuevos estudiantes. En su momento fue también mi inquietud y estoy seguro que fue la de muchos que me leerán. 

Y no solo me pasó con CSS; se aplica a cualquier tecnología que aprendemos cuando damos nuestros primeros pasos en este maravilloso mundo del desarrollo web.

Yo quería saberlo TODO, y saberlo YA, porque pensaba que de esa forma sería mejor desarrollador.

Han pasado un par de años desde entonces. He transitado el camino del desarrollo web a nivel profesional, y entendido algunos detalles de nuestra profesión que me permitieron dar respuesta a este amigo y que voy a compartir también aquí con ustedes.

&nbsp;
## Mi Respuesta

Transcribo mi respuesta literal porque creo que abarca lo que cualquier desarrollador con algo de camino andado te diría ante una pregunta similar:

> _"¡Hola XXXXXX!_

> _Bro, es imposible (literalmente hablando) aprender TODOS los "comandos" de cualquier tecnología, y no tiene sentido hacerlo tampoco. Me explico..._

> _CSS tiene una estructura y una sintaxis específicas que debes conocer porque sí, y que es fácil de entender y aprender._

> _Dentro de esa estructura, hay un grupo de PROPIEDADES que son las que vas a utilizar en el 80% de los casos y otro 20% que van a ser de uso ocasional (para hacer animaciones, transiciones, etc.)._

> _El primer grupo (el 80%) abarcan, como mucho el 30-40% de las propiedades totales de CSS. Esas son las que aprendes practicando día con día y llegan a hacerse parte regular de tu léxico como desarrollador (margin, padding, text-align, etc.)._

> _El segundo grupo (el otro 20%) abarcan el 60-70% restante; evidentemente, la mayoría de las propiedades de CSS. Esas son las que sabemos que existen, pero no gastamos neuronas guardándolas en memoria._

> _¿Y cómo hago cuando las necesite? Lo que hacemos todos los desarrolladores en nuestro trabajo diario: cuando no sabemos algo, googleamos o vamos a fuentes específicas donde sabemos que está la información. Ese es el mayor talento que deberás desarrollar como Web Developer: buscar la información correcta y aprender a leer las documentaciones oficiales de las diferentes tecnologías._

> _En el caso de CSS, la información de encuentra fundamentalmente en 3 fuentes (aunque, evidentemente, hay muchas otras):_

> 1. _[Documentación sobre CSS en MDN](https://developer.mozilla.org/en-US/docs/Web/CSS)_
> 2. _[Documentación sobre CSS en W3School](https://www.w3schools.com/css/)_
> 3. _[CSS Tricks](https://css-tricks.com/)_

> _Allí consigues TODO lo que necesitas saber de CSS. Y sin embargo, hay cosas puntuales que vas a querer hacer y te va a tocar googlear, porque allí solo está la generalidad de CSS._

> _Así como sucede con CSS, te va a pasar con los lenguajes de programación propiamente dichos: JavaScript, PHP, Node.js, Python, etc. Hay sitios generales donde se condensa la documentación oficial, pero los detalles, trucos, ejemplos de cómo hacer algo específico toca buscarlos._

> _Tus mejores amigos en este camino van a ser Google, YouTube y Stack Overflow._

> _Espero haberte ayudado. ¡Mucho éxito!"_

&nbsp;
## Concluyo

Ser desarrollador no es solo escribir código y memorizar comandos; es mucho más. 

Ser desarrollador implica aprender a generar procesos mentales que te conduzcan a lograr un fin: ese sitio web "perfecto" que diseñaste en tu mente.

Algunas cosas están escritas. El resto, la mayoría realmente, deberás crearlas tú. Por esos somos DESARROLLADORES y no solo TRANSCRIPTORES DE CÓDIGO.

El desarrollador imagina, piensa, analiza y crea. De allí el lema que tengo en mi wallpaper: "Think twice, Code once".

En ese proceso, algunas cosas las hacemos en "automático", como el escribir algunos segmentos de código que serán comunes a muchas cosas. 

Pero... la maravilla de este mundo y de nuestra profesión es que LO DEFINITIVO NO ESTÁ ESCRITO. Lo escribe cada uno de nosotros cuando abre su IDE preferido, y se vuelve a construir nuevamente día tras día.

Ser desarrollador web conlleva ser parte de una profesión **demasiado dinámica**. 

Por ejemplo, hace un par de semanas me sentí satisfecho con mi nivel de conocimiento y manejo de Vue.js. Pensé: _"Ya sé uno de los más modernos, poderosos y revolucionarios frameworks de JavaScript"_. 

Para mi sorpresa, esa misma semana me enteré del lanzamiento (y vertiginoso ascenso) de un nuevo framework de JavaScript: **Qwik**. Así que el camino vuelve a empezar. ¡Nunca acaba!

Creo que eso es precisamente lo más hermoso de esta profesión. Que lo único constante es el cambio.

Hasta la próxima publicación. Bendiciones.