Retomando el theme Alisios, retomando mi vida

Ños tío, yo solo quiero leer acerca del theme Alisios, paso de tu vida.

Retomando mi vida

No se como empezar a escribir esto, así que lo haré de esta manera que me ha parecido la peor de todas.

Me parece fatal que no haya escrito prácticamente nada estos meses, después de decir cuáles eran mis propósitos de este año.

He visto una película, Thanks for Sharing, y me ha sentido como un golpe de realidad.

La película trata sobre unas historias independientes de personas que son adictas al sexo. A ver, yo no tengo adicción al sexo. En la película también muestra la adicción al alcohol, a las drogas y al deporte.

El problema principal a la adicción es la ausencia del autocontrol. Y eso es exactamente lo que me pasa.

¿Cuál es mi adicción? Soy un adicto a la irresponsabilidad.

Si no me siento con ganas de hacer una tarea, procastino o busco cualquier otra excusa para no hacerla. «Ya la haré cuando esté mejor de ánimos, así que primero tengo que refrescarme con otra tarea», suele ser lo que se me pasa por la cabeza.

Y digo que mañana me pondré serio, y digo cuales son mis propósitos de este año, y digo las cosas buenas que me han pasado, y digo que tengo muchas posibilidades en el futuro, y digo, y digo, y digo, y nunca hago. Quiero hacerlas, pero el decir quiero hacerlas solo es otro digo. Estoy harto de mi actitud de mucho hablar y poco hacer.

Es más, empecé a escribir esto hace unos 20 días.

Bueno, esto no quiere decir que no hago absolutamente nada en mi vida, pero no hago lo que debo hacer.

Últimamente le he dado una prioridad alta al Ultimate Frisbee, y este fin de semana jugué el TIBU en la playa de las Alcaravaneras. Rodeado de muchos amigos y mucha descarga de adrenalina.

También he ido trabajando poco a poco, más o menos como una hora y media cada día (WHAT!?) y debería trabajar unas 6 horas diarias.

¿Y el resto del tiempo? Informarme. Parezco un coleccionista de enlaces y de ideas.

¿Y ahora? ¡Focus! ¡Concentración! Me he dado un horario para trabajar y las técnicas de trabajo Kanban y Pomodoro. Como ayuda, utilizo la aplicación kanbanflow.

Esta semana se me ha dado muy bien. A ver si consigo mantener el ritmo.

Retomando el theme Alisios

Últimamente he estado mirando como hacer themes en otras plataformas, como Joomla, Drupal y Moodle … Y me he dado cuenta de lo mucho que me gusta WordPress -a partir de ahora WP.

Si eres una persona que le gusta programar vas a preferir programar para WP.

A su vez, cuando he querido volver a tocar mi theme Alisios me he cagado en mi yo del pasado.

No sé que COÑO estaba pensando mientras estructuraba el theme de esa manera.

ERROR #1

¡Fleje carpetas! y subcarpetas, y subcarpetas, y subcarpetas, …

Alisios/
 |- framework/
 |   |- extensions/
 |   |   |- bootstrap/
 |   |   |   |- less/
 |   |   |   |   |- ...
 |   |   |   |- ...
 |   |   |- font-awesome/
 |   |   |   |- less/
 |   |   |   |   |- ...
 |   |   |   |- fonts
 |   |   |- languages/
 |   |   |   |- ...
 |   |   |- less/
 |   |   |   |- ...
 |   |   |- sidebars/
 |   |   |   |- ...
 |   | ...
 | ...
 \

Como se ve en la estructura, una carpeta es una pequeña funcionalidad. Si ponemos 50 pequeñas funcionalidades, ¿50 carpetas?

Locurón, inestable y nada escalable.

ERROR #2

¡Carpetas! Echaba pestes de ver tantas carpetas en themes ajenos y me encuentro con esto. Me autoodio.

El problema de tener tantas carpetas es que cuando quieres ir a editar algo tienes que buscar primero donde esta el código.

ERROR #3

Cada carpeta, representando diferentes funcionalidades, tiene archivos javascript -js-, less, ttf, … Por lo tanto, al querer buscar un archivo .js específico hay que buscar o intuir cual es su funcionalidad para saber en que carpeta podría estar.

Lento y desquiciante.

SOLUCIÓN #1 y #2

Recordando lo que me encantó de WP en sus orígenes, fue encontrar el código esperado en el archivo esperado.

Es decir, sin saber nada de WP, entro en la carpeta del theme y en el archivo header.php me encuentro con el código de la cabecera, en el archivo page.php con el código de una página estática, en el footer.php con el código del pie de página.

¡Intuitivo! ¡Esa es la solución!

El código del theme no se debe estructurar por funcionalidad, si no por ubicación. Así, cuando buscas un código que quieres editar, es más fácil pensar en que zona esta ubicado.

Con respecto a Alisios, las funcionalidades less, bootstrap y font-awesome son librerías que se cargan en el head, así que se pueden agrupar todas en un solo archivo.

SOLUCIÓN #3

Todos los archivos que no sean ‘php’ deberían agruparse para poder encontrarlos mucho más rápido.

Con respecto a archivos js, es importante diferenciar entre librerías ajenas y código propio, porque las librerías no se van a tocar, mientras que los archivos propios los vas a editar. Por lo tanto, deben estar en carpetas separadas.

ESTRUCTURA FINAL

Finalmente, la estructura deberá responder de la siguiente manera

Alisios/
 |- framework/
 |   |- css/ (en caso de que una librería no use less)
 |   |- images/ (aunque cuantas menos imágenes se necesiten, mejor)
 |   |- includes/ (para aquellos archivos .php necesarios que no aporten nada)
 |   |- js/ (todos los archivos javascript)
 |   |   |- jslib/ (todos los archivos js que son librerías y nunca tocarás)
 |   |- less/
 |   |   |- alisios/ (los archivos less de alisios)
 |   |   |   |- ...
 |   |   |- awesome/ (los archivos less de font-awesome)
 |   |   |   |- ...
 |   |   |- bootstrap/ (los archivos less de bootstrap)
 |   |   |   |- ...
 |   |- fonts/
 |   |   |- ...
 |   |- alisios-actions.php (todos los hooks irán aquí)
 |   |- alisios-functions-head.php (zona del head)
 |   |- alisios-functions-header.php (zona de la cabecera)
 |   |- alisios-functions-footer.php (zona del pie de pagina)
 |   |- alisios-functions-setup.php (zona de configuración)
 |   |- ...
 |- ...
 \

Cuando acabe de refactorizar el código, lo subo a Github para que vean el cambio.

[Github] Alisios v0.3.2