/ JavaScript

7 Pasos para ser un profesional en JavaScript

Haz lo que te motive.

Nada resulta más reconfortante y productivo que dedicar tu tiempo a algo que te guste. Si te aburre desarrollar un tipo de Software, busca otro tipo que te motive, puede ser otra plataforma, otro lenguaje,...

Yo estuve un tiempo trabajando de programador en empresas, donde no había lugar para la creatividad, desarrollando software que no me motivaba, con lenguajes que no me resultaban prácticos, etc. Eso hace que te desanimes y llegues a odiar tu profesión.

Plantéate un cambio de aires. Prueba un nuevo lenguaje, ese nuevo framework del que has oído hablar, esa nueva plataforma que tanto está en boca de todos... Rétate a ti mismo. Despejarás tu mente de la rutina y aprenderás algo nuevo. Salir de tu zona de comfort siempre es una experiencia enriquecedora.

JavaScript, un lenguaje para dominarlos a todos.

Un lenguaje para dominarlos a todos

Como lenguaje a aprender y profesionalizarme, yo me decanté por JavaScript. Me llamó mucho la atención Node.js. JavaScript siempre ha sido el lenguaje que daba dinamismo y añadía efectos a las páginas web. Que ese lenguaje haya sido llevado al servidor y permitiera servir páginas web, conectar con bases de datos, etc... me pareció sorprendente.

Eso fue lo que hizo que invirtiera mi tiempo en conocer más en profundidad este lenguaje. Y elegí un buen momento. Hasta ese instante los frameworks y librerías más conocidas y usadas eran jQuery y BackboneJS, pero rápidamente empezaron a surgir nuevos frameworks como AngularJS, EmberJS, Ionic, etc... que enriquecían el ecosistema.

Hoy en día es increible la de cosas que se pueden usar con JavaScript, incluso es posible programar microcontroladores como Tessel con JavaScript. Awesome

La web es tu fuente de conocimiento.

Internet es la universidad del desarrollador. Quizá otras titulaciones aún necesiten de una facultad para aprender y ser un profesional en su campo, pero el sector de la programación puede ser aprendido y practicado 100% en Internet.

Cuando descubrí los MOOCs (Massive Open Online Courses) me estalló el cerebro. Cuando estudiaba en la universidad, si quería asistir a una clase magistral tenía que ser presencial, tenía que tomar apuntes corriendo y no podía dar marcha atrás si no comprendía el concepto que el profesor te daba. La mayoría de los profesores no se toman en serio sus clases, porque se dedican a otras cosas, y eso hace que la calidad de la clase sea mala. Las únicas referencias que podías consultar para aumentar conocimiento eran los libros de la biblioteca. La gran mayoría desactualizados.

Con los MOOCs todo eso cambió. Puedes acceder a miles de videos de clases de todo el mundo. No necesitas matricularte en Stanford para asisitir a una clase magistral de la universidad. Con YouTube lo tienes. Los formadores, al estar expuestos a una audiencia mucho mayor que el aula de una clase tradicional, se esfuerzan más y sus clases son de mayor calidad, ya que si el profesor no te transmite ningún conocimiento seguramente su curso no sea valorado por la gente y no se dará a conocer.

Platzi

Comencé con Coursera y posteriormente conocí Mejorando.la (ahora Platzi). Si quieres aprender JavaScript son muy recomendables para iniciarte y conocer las bases y buenas prácticas de mano de profesionales que se dedican a ello.

Mi primer curso fue el de diseño web básico y posteriormente el de Frontend con un nivel intermedio. Actualmente, si quieres profesionalizarte en la web, te recomiendo que inicies con su curso básico de programación, que es totalmente gratis, y te enseña bases de JavaScript y cosas bastante chulas y avanzadas para ser un curso básico como son Canvas y programar drones con JavaScript.

Posteriormente te recomiendo el de diseño y desarrollo web básico para conocer HTML, CSS y JavaScript más en profundidad. De seguido prueba con el de Frontend Profesional y aprende preprocesadores de CSS, frameworks de JavaScript, gestores de tareas, etc.

Si quieres ser un full-stack y dominar tanto el frontend como el backend, aprovecha tu suscripción mensual y toma el curso de Backend. Tiene un apartado de Node.js pero se centra más en Django y Ruby on Rails. No está de mal conocer patrones de diseño en el backend aunque luego usemos otro lenguaje.

Y por último el curso profesional de JavaScript y Node.js para aprender a utilizar JavaScript de principio a fin.

Lee.

Leer es muy importante. Nos mantiene el cerebro en funcionamiento y nos despierta la creatividad. Lee libros técnicos. Se que la mayoría están en inglés y no hay muchos en español. A mi eso también me frustraba, pero hay que invertir tiempo en aprender inglés. Si te dedicas a la web y no sabes inglés, al menos a nivel de lectura, es muy costoso aprovechar los conocimientos que internet nos brinda. Hasta hace un par de años yo era incapaz de leer un libro en inglés, tardaba mucho y acababa distrayéndome y perdiéndome. Como mucho leía algun blogpost en inglés pero nada más.

Hace un par de años me propuse leer al menos un libro en inglés al més y comencé a notar como mejoraba mi entendimiento en ese lenguaje. Es un proceso lento, pero llega un momento en el que lees inglés como si leyeras castellano. Recomiendo hacer este esfuerzo, merece la pena y descubres un mundo nuevo de conocimiento que antes tenías cerrado.

Eloquent JavaScript

Si quieres expandir tus conocimientos sobre JavaScript, hay muchos libros. Los que más me gustaron y recomiendo los recopilé en un antiguo post que puedes consultar aquí.

Y si quieres aprender AngularJS para utilizarlo en tus proyectos, te recomiendo mi libro en español :)

Desarrolla proyectos propios.

Puedes hacer todos los cursos de Platzi, Code School, Codeacademy, Coursera, etc.. Tendrás mucho conocimiento adquirido y unas bases muy profundas, pero para probarlas tienes que desarrollar algo por tu cuenta.

Cuando empieces un proyecto personal te encontrarás con errores e incógnitas que no se han dado en los cursos, porque serán muy específicos de lo que estás desarrollando. No tienes que desarrollar la próxima Startup del Billón de dólares, empieza haciendo un clon de algo que ya exista, por ejemplo, un clon de Twitter, un clon de Instagram, un clon de Youtube. Así aprenderás que problemas pueden presentársete e intentar resolverlos.

Imagina que estás haciendo un clon de Instagram con Node.js y AngularJS, en algún momento vas a querer programar la subida de una foto al servidor. Seguramente en ningún curso te han dado una lección de "Cómo subir una foto desde Angular.js con tu API REST en Node.js a un bucket de Amazon S3", como mucho habrás visto como enviar ficheros por formulario, o como hacer un API REST en Node.js, pero no el caso concreto.

Es tu tarea en ese momento, buscar en Google. Tienes numerosos tutoriales de personas que se han encontrado con el mismo problema que tu y lo han compartido con la comunidad. Visita StackOverflow, seguramente hay alguien que ha tenido tu misma duda y otra presona lo ha resuelto. Paséate por GitHub o NPM, aprende de los proyectos Open Source que la comunidad desarrolla, aprenderás buenos tips, librerías, formas de programar, que te harán crecer como profesional.

Únete a comunidades de desarrolladores.

No te quedes sólo casa, sal afuera y conoce gente. En internet tenemos muchas comunidades donde conocer gente con nuestras mismas inquietudes y gustos. Si eres estudiante de Platzi, tienes Comunidad Platzi, donde miles de estudiantes y profesionales de toda Latinoamérica y España están ahí compartiendo conocimiento y dudas. En Meetup puedes buscar grupos de desarrolladores en tu ciudad. En Madrid tenemos NodeJSMadrid, MadridJS, WebRTC Madrid, AngularJS Madrid, Python Madrid, Polymer Madrid, MongoDB User Group... Seguramente en tu ciudad hay un grupo de meetup que se reúne de vez en cuando y la temática es tu lenguaje favorito. Y si no lo hay, ¡Créalo! seguramente hay más gente como tu que aún no se ha atrevido a dar el paso.

Otra alternativa son los Hackthones. Programar una aplicación en menos de un día en equipo y poder ganar premios. ¿Conoces Hackathon Lovers?

También tenemos Betabeers, que está presente en varias ciudades de España. En el puedes presentar los proyectos que estás desarrollando, ya sea una Startup, una librería que has conocido recientemnte o un framework que estés desarrollando. De esta manera conoces más gente como tú y lo más importante, te das a conocer.

De igual manera, existen los Google Developer Group, presentes en más de 100 países y 600 ciudades, donde, al igual que en Meetup, se reúnen desarrolladores que utilizan tecnologías de Google, como pueden ser Android, Polymer, Angular, Google Cloud, etc. La oferta es impresionante.

Comparte tu conocimiento.

Todo lo que aprendas, compártelo. De igual manera que cuando tienes un error en tu aplicación y lo buscas en Google o directamente en Stackoverflow y alguien ya lo ha solucionado, se tú la persona que lo solucione y ayuda a otros. Comparte tutoriales y ejemplos de lo que haces. Abre un blog como este y comparte tu conocimiento. La web la hacemos nosotros y el contenido que encotramos en ella está redactado por personas como nosotros. Se parte de ello, te hará mejorar y crecer como profesional.


*** [**¿Quieres más?** Hazte con mi ebook en español sobre **desarrollo web ágil con AngularJS y GulpJS**. ![](/blog/content/images/2015/01/adwords_728x90.jpg)](http://carlosazaustre.es/blog/ebook-angular/?utm_source=js-pro-platzi)
Carlos Azaustre

Carlos Azaustre

CTO y Cofundador de Chefly. Formador en tecnologías web: JavaScript, Node, Firebase, React y Vue.

Leer más