¿Qué lenguaje de programación debes aprender primero?
El viaje de la mayoría de las personas hacia el aprendizaje de programas comienza con una única búsqueda de Google a altas horas de la noche.
Por lo general, es algo como “Aprender ______”
- ¿Cuánto tiempo necesito para aprender Python desde cero hasta un nivel experto?
- ¿Qué es lo mejor que debes hacer durante 30 días?
- ¿Puede un estudiante extranjero aprender y ganar en Dinamarca?
- Cómo aprender a desarrollar aplicaciones.
- Cómo aprender activamente todo lo que escucho, miro o leo.
Pero, ¿cómo deciden qué idioma buscar?
“Siempre bromean sobre Java en Silicon Valley. Supongo que debería aprender eso.
O:
Haskell. Tan caliente ahora mismo. Haskell “.
Y luego está el resto de nosotros. Probablemente buscaremos algo como:
“¿Qué lenguaje de programación debería aprender primero?”
Pocas preguntas son tan frecuentes que reciben el tratamiento de infografía completo. Pero esta es una de ellas:
Decidir sobre su primer lenguaje de programación puede ser un proceso divertido.
Pero antes de que te vayas a aprender a aprender Ruby porque te gustaba jugar con Play-Doh cuando eras un niño, déjame recordarte: las apuestas son bastante altas aquí.
Tardará cientos de horas de práctica para ser incluso remotamente competente con su primer lenguaje de programación.
Así que debes considerar los siguientes factores:
- El mercado laboral para el idioma.
- Las perspectivas a largo plazo para el idioma.
- lo fácil que es aprender el idioma
- qué proyectos puedes construir mientras aprendes (y compartes con amigos para que puedas mantenerte motivado)
Cada año trae nuevos lenguajes de programación, y con ellos, nuevos trabajos académicos. Y nuevos cómics web.
Seriamente. Echa un vistazo a esta joya del mes pasado:
Cuando se trata de elegir un primer lenguaje de programación, no hay escasez de opciones. Para limitarlo un poco, aquí están las búsquedas de Google más comunes relacionadas con la programación de aprendizaje en los últimos 12 años :
Java ha tenido sus altibajos.
Python ha aumentado gradualmente hasta convertirse en la opción más popular.
Pero escondido debajo está el Little Engine That Could, que está ganando popularidad lentamente en los últimos años. Y ese motor es JavaScript.
Antes de hablar sobre estos lenguajes de programación, permítanme aclarar:
- No estoy argumentando que cualquier idioma sea objetivamente mejor que cualquier otro
- Estoy de acuerdo en que los desarrolladores deberían aprender más de un idioma
- Estoy argumentando que primero deberían aprender bien un idioma. Y, como probablemente pueda adivinar por el texto al revés en mi titular, ese idioma debe ser JavaScript.
Comencemos por explorar cómo se enseña actualmente la programación en la escuela.
Ciencias de la computación 101
Las universidades han enseñado tradicionalmente la programación bajo el paraguas de la informática, que a menudo se considera una extensión de las matemáticas, o un vínculo con un título de ingeniería eléctrica.
Por supuesto, como ya habrás escuchado:
“La educación en informática no puede convertir a nadie en un programador experto más que estudiar pinceles y pigmentos puede hacer que alguien sea un pintor experto”. – Eric S. Raymond
A partir de 2017, muchas universidades aún tratan la programación como si fuera informática, y la informática como si fuera matemática.
Como resultado, muchos cursos de programación introductorios se enfocan en lenguajes de bajo nivel de abstracción como C, o lenguajes enfocados matemáticamente como MATLAB.
Y los jefes de departamento generalmente mantienen el rumbo, apuntando a las tablas de clasificación de lenguajes de programación anuales como el Índice TIOBE, o este del IEEE:
La mayoría de estas tablas de clasificación son prácticamente idénticas a las de hace 10 años.
Pero el cambio sucede. Incluso en la academia.
En 2014, Python superó a Java como el idioma de instrucción más popular en los principales programas informáticos de los EE. UU.
Y, sin embargo, otro cambio está destinado a … eventualmente … suceder.
Porque si nos fijamos en los idiomas realmente utilizados por la fuerza laboral, presenta una imagen muy diferente:
JavaScript es, con mucho, el lenguaje más popular utilizado por los 49,397 desarrolladores que respondieron a la Encuesta 2016 de Stack Overflow.
Más de la mitad de todos los desarrolladores usan JavaScript. Es vital para el desarrollo web front-end y cada vez más relevante para el desarrollo back-end. Y se está expandiendo rápidamente en áreas como el desarrollo de juegos y el Internet de las cosas.
Las ofertas de trabajo también mencionan JavaScript más que cualquier otro lenguaje de programación que no sea Java:
Datos del mayor agregador de ofertas de empleo del mundo, Indeed.com
En los últimos dos años, más de 5,000 personas han utilizado Free Code Camp para obtener su primer trabajo de desarrollador.
¿Pero es JavaScript adecuado para usted? ¿Es digno de ser tu primer lenguaje de programación? Vamos a explorar los factores que mencioné anteriormente.
Factor # 1: El mercado laboral.
Si está aprendiendo a programar simplemente por curiosidad intelectual, siéntase libre de saltarse este factor. Pero si usted, como la gran mayoría de las personas que están aprendiendo a programar, quiere usar esta habilidad para obtener un trabajo, esta es una consideración importante.
Como mencioné anteriormente, Java se menciona en más ofertas de trabajo que cualquier otro lenguaje de programación. JavaScript está en segundo lugar.
Pero esto es lo que tiene JavaScript: a pesar de que existe desde hace 20 años, solo recientemente se convirtió en una herramienta seria en la que compañías como Netflix, Walmart y PayPal desarrollarían aplicaciones completas.
Como resultado, muchas empresas están contratando desarrolladores de JavaScript, pero no hay muchas en el mercado laboral.
Datos de Indeed.com
Hay 2.7 desarrolladores de Java compitiendo por cada posición abierta de Java. La competencia por trabajos de PHP y iOS es igualmente feroz.
Pero para cada posición abierta de JavaScript, solo hay 0.6 desarrolladores de JavaScript. Es un mercado de vendedores para desarrolladores con habilidades de JavaScript.
Factor # 2: Las perspectivas a largo plazo
El proyecto de JavaScript promedio recibe el doble de solicitudes de extracción que el proyecto promedio de Java, Python o Ruby. Y además de esto, JavaScript está creciendo más rápido que cualquier otro idioma popular.
Fuente: El estado de Octoverse del GitHub 2016
El ecosistema de JavaScript también se beneficia de una gran inversión de dinero y talento de ingeniería de compañías como Google, Microsoft, Facebook y Netflix.
Por ejemplo, TypeScript (un superconjunto de JavaScript de tipo estático) tiene más de 100 colaboradores de código abierto, muchos de los cuales son empleados de Microsoft y Google a quienes se les paga por trabajar en ello.
Este tipo de cooperación entre compañías es más difícil de encontrar con Java. Oracle, que posee efectivamente Java a través de la adquisición de Sun Microsystems, a menudo demanda a las empresas que intentan ampliarlo.
Factor # 3: Dificultad para aprender.
Esta es una parodia de un comic de XKCD.
La mayoría de los programadores estarían de acuerdo en que los lenguajes de script de alto nivel son relativamente fáciles de aprender. JavaScript cae en esta categoría, junto con Python y Ruby.
Aunque las universidades todavía enseñan idiomas como Java y C ++ como primeros idiomas, son mucho más difíciles de aprender.
Factor # 4: Proyectos que puedes construir con él
Aquí es donde realmente brilla JavaScript. JavaScript se ejecuta en cualquier dispositivo que tenga un navegador, justo allí en el navegador. Puedes construir básicamente cualquier cosa con JavaScript, y compartirlo en cualquier lugar.
Debido a la ubicuidad de JavaScript, el cofundador de Stack Overflow Jeff Atwood acuñó su ley ahora famosa:
“Cualquier aplicación que se pueda escribir en JavaScript, eventualmente se escribirá en JavaScript”.
Y con cada mes que pasa, la ley de Atwood se mantiene firme.
Java una vez prometió correr por todas partes, también. Quizás recuerdes los applets de Java. Oracle oficialmente los mató a principios de este año.
Python sufre de los mismos problemas:
“¿Cómo puedo dar este juego que hice a mi amigo? Aún mejor, ¿hay alguna manera de poner esto en mi teléfono para poder mostrarlo a los niños en la escuela sin que tengan que instalarlo? Um. ”- James Hague en Retiring Python como lenguaje de enseñanza
Aprende bien un idioma. Entonces aprende una segunda.
Si sigues saltando de un idioma a otro, no llegarás lejos.
Para ir más allá de lo básico, debe aprender bien su primer idioma. Entonces tu segunda lengua será mucho, mucho más fácil.
A partir de ahí, puede diversificarse y convertirse en un desarrollador más completo al aprender muchos idiomas:
- C es una excelente manera de aprender cómo funcionan realmente las computadoras en términos de administración de memoria, y es útil en computación de alto rendimiento
- C ++ es ideal para el desarrollo de juegos.
- Python es impresionante para la ciencia y las estadísticas.
- Java es importante si quieres trabajar en grandes empresas de tecnología.
Pero aprende JavaScript primero.
Entonces, si alguien te da un tiempo difícil para aprender JavaScript en lugar de un lenguaje de élite de la semana, recuerda las famosas palabras del tipo que creó C ++:
“Solo hay dos tipos de lenguajes de programación: esas personas siempre se quejan y las que nadie usa”. – Bjarne Stroustrup
Gracias por leer.