Javascript

¿Pseudolenguaje o el más importante de los lenguajes de programación en los  años 10?

4 de octubre de 2014

Desconferencista: Johann Paul Echavarría Zapata @abrupto

Barcamp Medellín

 

Temas en esta desconferencia

 

  • Breve historia de Javascript
  • Tendencias en desarrollo de software
  • ¿Javascript como primer lenguaje de programación?

 

Breve historia de Javascript

 

  • Creado en mayo de 1995 por Brendan Eich  (¡ En 10 días!) para el navegador Netscape.
  • El nombre es confuso y se asignó por motivos mercadotécnicos, ya que realmente no tiene nada que ver con Java.
  • Inicialmente un pseudo-lenguaje de scripting para el browser (Navegador).
  • Posteriormente adoptado por Microsoft y estandarizado como ECMAScript por ECMA International (1997).

Arquitectura Cliente-servidor y opciones de lenguajes

  • Lenguajes del lado del servidor, cientos de opciones: C, PHP, JAVA, ASP, C#, Ruby, Python, Go, entre muchos otros que tambien incluyen a Javascript.
  • Opciones del lado del cliente (navegador o browser) sin plugins de terceros:
  • Inicialmente Javascript y VBscript (soportado solo por Internet Explorer)
  • Actualmente (2014) la única opción es Javascript.

Clientes enriquecidos para mejorar la experiencia en el navegador web. 

 

  • Java Applets (Sí, Java, el que no tiene nada que ver con Javascript)
  • Adobe Flash Reader.
  • Silverlight (Microsoft). (Hoy Netflix lo usa).
  • Entre otros. Todos tienen en común la dependencia de un plugin externo. Estos plugins, por sus continuas vulnerabilidades, se han vuelto una mina de oro para los hackers.
  • Inicialmente Javascript no era ningún rival para estas opciones.

AJAX

  • Técnica creada en 2005 por Jesse James Garrett.
  • Dio un impulso tremendo a la creación de páginas web más dinámicas tipo cliente enriquecido en un momento donde Adobe Flash Reader era el rey.
  • Actualmente esta técnica es trivial y se usa más con JSON (Notación de objetos de Javascript) que con el original XML. Aunque no se ha renombrado a AJAJ.

Librerías y Frameworks

  •  Librerías como: Prototype, jQuery, Dojo y Mootools.
  • Frameworks como: Backbone.js, Angular.js, Ember.js y muchos otros que salen casi por semana.
  • Más protagonismo al desarrollo del lado del cliente (front-end).

Más tendencias

  • Javascript en el lado del servidor con Node.js, XPages.
  • Creciente popularidad de Node.js como herramienta de desarrollo por defecto.
  • Javascript como integrador natural de desarrollo para móviles. Ya de forma nativa en Windows 8 y Firefox OS. Y mediante frameworks como Phonegap para compilar en Android, IOS (Apple) y Blackberry entre otros. 
  • El diseño adaptable (Responsive design) exige más destreza en fron-end Javascript + HTML5 + CSS3.
  • Electrónica y robots.

Revolución en electrónica y robótica gracias a la combinacion de:

  • Arduino
  • Raspberry Pi
  • Node.js
  • Johnny-Five
  • Javascript

HTML5 + CSS3 + Javascript

 js flexbox canvas canvastext webgl no-touch geolocation postmessage websqldatabase indexeddb hashchange history draganddrop websockets rgba hsla multiplebgs backgroundsize borderimage borderradius boxshadow textshadow opacity cssanimations csscolumns cssgradients cssreflections csstransforms csstransforms3d csstransitions fontface generatedcontent video audio localstorage sessionstorage webworkers applicationcache svg inlinesvg smil svgclippaths

Lenguajes más demandados en USA, UK y Australia (2014) 

Fuente: https://msgooroo.com/GoorooTHINK/Article/16191/Which-language-wins-in-terms-of-salarydemand-July-2014/14105#.VC-g0_l5Nn3

¿Javascript como primer lenguaje?

  • Va a ser el más demandado en todo el mundo antes de terminar la década. Trabajo y beneficios inmediatos.
  • Los cursos: Stanford's Computer Science 101 y Harvard's Introduction to Computer Science usan Javascript.
  • Toda persona que tenga un pc ya tiene un IDE de desarrollo en su navegador presionando F12.
  • Integracion natural con ecosistema Open Source. Ventaja para emprendedores.
  • Integración natural de tecnologías.
  • Una buena experiencia de usuario requiere conocimiento avanzado de Javascript.
  • La situación puede cambiar pero este es el panorama hoy.

Referencias

  • https://www.w3.org/community/webed/wiki/A_Short_History_of_JavaScript
  • https://msgooroo.com/GoorooTHINK/Article/16191/Which-language-wins-in-terms-of-salarydemand-July-2014/14105#.VC-g0_l5Nn3

 

Grupo local de Javascript:

@MedellinJS

www.meetup.com/MedellinJS/

¡GRACIAS!

Twitter: @abrupto

Javascript

By Johann Paul Echavarria Zapata