Al principio de año apareció la iniciativa de Code Year, que consistía en algo así como un propósito de año nuevo para aprender a programar. Para ello dando tu email te enviarían semana a semana nuevas lecciones para ponerlas en práctica en la página hermana Codeacademy. En su momento gozó de bastante difusión e incluso el alcalde de Nueva York dijo que lo iba a utilizar para aprender a programar, pero después poco más he visto que lo mencionen. Como todos los propositos de año nuevo, apuntarse a ello es muy facil, por no tanto cumplirlo. Así que voy ver si os explico un poco su funcionamiento, para que aquellos que se enteran ahora o los que se apuntaron pero lo tienen olvidado se animen.

Para seguir el curso basta con dar tu email en la página de Code Year, ellos te enviarán cada lunes una nueva lección (ahora mismo van por la quinta). Pero tampoco es necesario apuntarte ya que puedes acceder a dichas lecciones en Codeacademy directamente. En esta última página es donde se encuentra realmente el curso. A pesar de que no es necesario, recomiendo encarecidamente registrarse si vas a realizar las lecciones, por que así se guardaran tus progresos. Este sería el aspecto de la página:

javascript___codecademy_-_chromium_028

Por el momento, las lecciones están todas centrada en el lenguaje JavaScript. Según tengo entendido, más adelante se introducirán también Python y Ruby/Rails. Como podeis ver en la imagen, tenemos el listado de los temas disponibles y a la derecha, nuestras estadísticas y medallas (yo los llamaría logros). Esto último es una de las coas que aparentemente parecen una tontería, pero una vez metidos en el ajo motivan un montón ya que animan a seguir adelante y conseguir más (como si de un videojuego se tratase).

Cada tema consta de la lección en sí y de proyectos guiados. Antes de emmpezar a seguir las lecciones, me pensaba que iban a ser un repaso un poco por encima de las posibilidades del lenguaje y poco más. Pero nada más lejos de la realidad, cada lección viene a durar una hora, tomandotelo en serio y yendo rapidito. Los proyectos suelen ser más cortos y vienen a ser la resolución de un problema sencillo (por el momento) llevandonos de la mano.

¿Como se lleva a cabo todo esto? Para ello tenemos que echar un ojo a la interfaz que nos encontramos una vez dentro de una lección o un proyecto:

review__the_story_so_far

A la izquierda tenenos el texto del ejercicio, normalmente consta de una explicación de lo que nos pretenden enseñar y del ejercicio en si. También está el botón de "Show Hint" que nos dará pistas cuando nos quedemos atascados en el ejercicio. A la derecha podemos ver dos cajas, la de arriba es un editor de texto que pese a su sencillez colorea el código, identa automaticamente y guarda un historial de cambios para poder ir para tras en caso de catastrofe. Además podemos ver dos botones, uno de "Reset" para volver al código original del ejercicio y el de "Run" para ejecutar el código. El cuadro de abajo es la consola donde saldrán los resultados de nuestro código y si la solución al ejercicio es la correcta nos pondrá un link al siguiente ejercicio.

Parece sencillo ¿no? Pues de eso se trata, en mi opinión el hecho de tener una interfaz tan sencilla y de igual modo una manera de afrontar las lecciones con ejercicios cortos (y no con textos kilométricos), hacen muy asequible el objetivo de aprender a programar. Aunque el resultado final lo tendría que dar a final de año, por el momento he de decir que promete.

Eso sí una advertencia, solo está disponible en inglés y no he visto noticia alguna de que lo vayan a traducir al castellano o cualquier otra lengua. Así que a aquellos se os atragante la lengua de Shakespeare, tal vez sea algo complicado de seguir o porque no, una oportunidad de ampliar un poquito el vocabulario de inglés técnico.

Luego si tienes cierto interés en la programación pero nunca encuentras la manera de ponerte a ello o te pasa como a mi que estás encasillado en C, creo que es una magnífica herramienta que por lo menos se merece una oportunidad.