1995, Brendan Eich crea para la empresa en la que trabajaba, Netscape, un nuevo lenguaje de programación. Diversos cambios de nombre hubieron hasta su estandarización en ECMA e incluso una mala fama llevaba a cuestas, ya que el público objetivo eran autores de publicaciones entre otros.

El auge de JavaScript llega con la asincronía y la entrada de AJAX, momento desde el cual no ha parado: ES2015, ES2016, Node, React, Angular, Polymer y muchas otras innovaciones que han ayudado a la consolidación del lenguaje.

En esta ocasión, voy a exponer seis argumentaciones por las que debes de aprender JavaScript durante el 2020, si es que aún no te has decidido por este lenguaje o no has aprendido a programar.

La extensión del lenguaje

Frontend, Backend, Drones, Arduino, Juegos, Aplicaciones móviles y de Smartwatch, y como no podía ser de otra manera, robots :smile: .

Javascript comenzó sólo en Frontend, incluso no se le tomaba muy en serio y sus casos de uso no salían de añadir interactividad a tu sitio web(algún que otro alert por ahí).

Comienza a tener un poco de utilidad con el auge de jQuery y con la entrada de nuevos métodos y sintáxis para el lenguaje(ES2016...) llegaron al uso que le damos hoy que para muchos es la construcción de aplicaciones webs enteras únicamente usando Javascript y librerías como React.

A todo este auge se le sumó la adaptación del motor de Javascript en Chrome, V8, para poder correr desde un ordenador y ejecutar código Javascript.

Ryan Dahl, actual trabajador de Joyent consiguió este hecho que todos conocemos como el nacimiento de NodeJS, una revolución que dió entrada a todos los nuevos aspectos que te he mencionado y a una especialización Full-Stack en el área de JavaScript.

Sus ramificaciones ayudan a la especialización

Como hemos comentado en el punto anterior tenemos diversas áreas que abarcan Javascript. También nos encontramos con que, dentro de estas existen diferentes soluciones que debido a su estandarización hoy en día encontramos a profesionales que se especializan en estas.

En el área de Frontend encontramos librerías en las que profesionales suelen especializarse como son: ReactJS, AngularJS, Polymer, Vue...

Con respecto al área del Backend, algunas equivalencias serían Express o SailsJS aunque en mi opinión la especialización en este área no es tan profunda, bien es cierto que cualquier experto que trabaje en este área tendrá predilección por algunas herramientas.

Finalmente, con respecto a oportunidades laborales, la especialización reduce sin duda tus posibilidades de ser contratado. Ahora bien, cada vez hay más proyectos de las librerías que están en auge(las que te he mencionado) y, si consigues un puesto de trabajo especializado aunque te haya costado más tiempo y esfuerzo tu salario será mayor, simplemente porque la cantidad de profesionales que están especializados es menor.

El otro día te comentaba Reyes Rubio que en España hay 350.000 puestos de trabajo sin cubrir por falta de formación digital, ¡Es tu momento!

Si te acostumbras a trabajar con una serie de herramientas muy específicas y que durante una exhaustiva búsqueda das como resultado el no encontrar ningún empleo, tienes la opción de ofrecerte como profesional, ayudando a empresas que quieran un proyecto específico con ese stack, o que les da igual en lo que trabajes mientras que les ayudes.

El código es muy legible y liviano

Los métodos cuentan con las ventajas de no tener nombres muy largos y a la vez ser muy explicativos, sin duda una ventaja para nosotros a la hora de trabajar y de entender nuestro código como también para los nuevos inquietos que están dispuestos a aprender este lenguaje.

La seguridad

Tengamos en cuenta que Javascript comenzó a tener presencia en el lado del cliente, y que este por defecto es un área en el que la seguridad y el alcance de las acciones debe de estar muy medido, ya que de lo contrario, cualquiera desde un sitio web podría tener acceso a información sensible. Por tanto, JavaScript tiene muy presente la seguridad.

Destacamos durante los ataques de Meltdown y Spectre, que han afectado a la gran mayoría de dispositivos, se desactivó el método SharedArrayBuffer() debido en concreto a la vulnerabilidad de Spectre, ya que esta función accedía a espacios del dispositivo que no debía.

Comunidad y proyectos a su alrededor

No sólo son librerías y frameworks grandes, creados por Facebook, muchos desarrolladores han creado sus propias soluciones. Puedes contribuir uniéndote a algún proyecto, ayudando a este o incluso documentándolo.

También puedes contribuir al ecosistema creando tus propios módulos y subiéndolos a NPM. Si tienes utilidades que piensas que van a necesitar muchas personas, es una genial idea no sólo dejar tu código en Github si no llevarlo a un nivel más subiéndolo a NPM.

Si necesitas inspiración para crear tu primer módulo de NPM te recomiendo crear wrapper de alguna API que sea bastante usada o algunas funciones que sirvan como utils.

Cuantos más lenguajes sepas, mejor

Si ya sabes algún que otro lenguaje, todo lenguaje que aprendas te ayudará a comprender de una manera aún mejor la sintáxis en términos de lenguajes en general y te proporcionará una visión global del sector.

No debes olvidar que como te he comentado JavaScript está en el Frontend así que nunca sabes si vas a necesitar que sea tu amigo.

Como consejo, a la hora de aprender un lenguaje de programación, te recomiendo hacerlo en base al que más domines. Es decir, si aprendes un nuevo concepto o el mismo pero llamado de otro modo aseméjalo mentalmente al que ya has aprendido en el lenguaje que sabes, así tu aprendizaje será más fácil y efectivo.

Conclusiones

Diferentes ventajas para principiantes a la hora de adentrarse a su primer lenguaje de programación y un abanico de posibilidades y proyectos son los motivos que hacen que Javascript sea uno de los lenguajes más usados en nuestro tiempo y que vayamos a seguir usándolo durante muuucho tiempo.

Si tienes alguna ventaja que quieras añadir a el artículo no dudes en dejarla en los comentarios así como tu experiencia con el uso de este lenguaje.