Cómo elegir qué lenguaje de programación debes aprender en 2019

Imagen Pixabay

Gracias a Internet, cualquier persona en el mundo puede acceder a recursos de clase mundial para aprender a codificar por poco o nada de dinero.

Si bien eso es excelente para cualquiera que quiera convertirse en desarrollador de software, también crea un desafío, especialmente si está comenzando. Cada clic conduce a un nuevo artículo recomendado, tutorial o video de YouTube para aprender.

Estoy familiarizado con el problema a través de mi trabajo en Microverse, una escuela de codificación en línea que no te cobra nada hasta que consigas un trabajo, sin importar de dónde vengas. Muchos de nuestros estudiantes de tiempo completo presentaron una solicitud después de verse abrumados por la cantidad de recursos disponibles para ellos. Se distraían fácilmente, comenzaron a aprender varios idiomas y nunca dominaron nada.

La mejor manera de no distraerse es concentrarse en dominar un idioma. ¿Por qué? A través de mi experiencia trabajando con nuevos desarrolladores de más de 50 países, puedo decir con confianza que tiene muchas más posibilidades de obtener un trabajo de ingeniería de software cuando domine un idioma en lugar de conocer un poco de 10 diferentes.

¿No estás seguro en qué idioma enfocarte? Estás de suerte: este artículo es para ti.

¿No estás seguro por dónde empezar? Aprende un lenguaje de uso general.

Recomiendo que cualquier desarrollador nuevo que no sepa qué comenzar a aprender elija un lenguaje de programación de propósito general, porque se usa ampliamente y no se limita a un solo dominio.

Pitón

La sintaxis simple y directa de Python lo convierte en un excelente lenguaje de uso general para dominar. El lenguaje presenta un sistema de tipo dinámico, administración automática de memoria y admite múltiples paradigmas de programación como orientado a objetos, funcional e imperativo. Muchos dominios de aplicación utilizan su biblioteca estándar integral.

Las aplicaciones web y de escritorio, los servidores, el aprendizaje automático y las aplicaciones de inteligencia artificial utilizan Python. Se clasifica continuamente en los principales lenguajes de programación cada año, y el año pasado obtuvo el premio "Lenguaje de programación del año" en el Índice de la Comunidad de Programación de TIOBE por el mayor aumento en las calificaciones. Me imagino que aumentará aún más en 2019.

Número de trabajos disponibles como desarrollador de Python en Indeed.com: 66,000+

JavaScript

Según la encuesta anual de información para desarrolladores sobre Stack Overflow, más del 70% de todos los desarrolladores usan JavaScript. Es versátil, se puede aplicar en casi cualquier campo de software, es uno de los principales lenguajes front-end de la World Wide Web. JavaScript también habilita páginas web interactivas y es esencial para la mayoría de las aplicaciones web.

JavaScript es un lenguaje de paradigmas múltiples y admite múltiples estilos de programación, desde orientado a objetos hasta funcional. También tiene una gran cantidad de bibliotecas que se expanden rápidamente, incluidos algunos servidores de fondo. Es tan popular que incluso tiene marcos en campos donde no es la mejor opción, como en el desarrollo de juegos y la realidad virtual.

Número de trabajos disponibles como desarrollador de JavaScript en Indeed.com: más de 40,000

Rubí

Al igual que los otros lenguajes, Ruby admite múltiples paradigmas de programación como orientado a objetos, funcional e imperativo. También cuenta con un sistema de tipo dinámico y administración automática de memoria. Ruby se usa principalmente en aplicaciones web con el marco Ruby on Rails, pero también se usa en servidores y bases de datos de fondo.

Uno de los mayores activos de Ruby es su amistad con los principiantes. Es uno de los idiomas más indulgentes de la lista: aún podrá compilar y ejecutar su programa hasta que aparezca un problema. También es fácil de aprender porque su sintaxis está cerca del lenguaje hablado y puede hacer lo que hacen otros idiomas en muchas menos líneas de código.

Número de trabajos disponibles como ingeniero Ruby en Indeed.com: más de 9,000

Java

El famoso eslogan de Java es "escribir una vez, ejecutar en cualquier lugar", ya que se ejecuta en cualquier plataforma que lo admita. Java es uno de los lenguajes más conocidos entre los nuevos desarrolladores, y es el segundo lenguaje más utilizado en Stack Overflow.

Java es un lenguaje multi-paradigmático basado en clases, orientado a objetos y diseñado para tener las menores dependencias de implementación. Debido a su estructura, tiene una amplia gama de usos en todos los dominios de aplicación. Uno de sus usos más conocidos es el desarrollo de aplicaciones para Android, pero también es popular para aplicaciones de escritorio, web, servidor y red. Si bien la sintaxis de Java puede ser desalentadora al principio, dominarla puede valer la pena para conseguir su primer trabajo como desarrollador.

Número de trabajos disponibles como desarrollador Java en Indeed.com: 68,000+

¿Tienes un campo específico en mente?

Si ya tiene un objetivo específico de trabajar en el aprendizaje automático, convertirse en un desarrollador móvil o unirse a una startup, considere dominar un lenguaje específico para ese objetivo.

Aprendizaje automático

Según un informe sobre GitHub, Python fue el lenguaje más utilizado para el aprendizaje automático en 2018. Combina tus conocimientos de Python con la biblioteca TensorFlow, y te habrás colocado en una excelente posición para conseguir un trabajo emocionante relacionado con el aprendizaje automático.

El lenguaje de programación R sería la siguiente mejor opción para el aprendizaje automático. Es el más efectivo para analizar y manipular datos con fines estadísticos. También ofrece numerosos paquetes que facilitan la implementación de algoritmos de aprendizaje automático.

Desarrollo móvil

Si está interesado en desarrollar aplicaciones móviles, deberá decidir si desea desarrollar para dispositivos Android o Apple.

Java es tu mejor apuesta para desarrollar en Android. Sin embargo, el desarrollo de Java móvil es diferente al Java genérico, debido a la potencia limitada de los teléfonos inteligentes. Por ejemplo, un programa Java normal se ejecuta hasta que lo cierre, mientras que una aplicación de Android se puede cerrar en cualquier momento si no se está ejecutando en primer plano.

En el lado de iOS, le recomiendo que aprenda Swift, el idioma oficial de Apple para iOS, macOS y otros códigos escritos para productos de Apple. Algunas personas pueden sugerir Objective-C porque puede crear interfaces gráficas de usuario y marcos ricos en funciones, pero optaría por aprender Swift porque es más fácil de aprender, más fácil de leer y está respaldado por Apple.

JavaScript es otra buena opción para el desarrollo móvil. En combinación con HTML y CSS, puede crear aplicaciones que se pueden convertir a aplicaciones nativas con Cordova. Otro ejemplo es la pila .NET, que también se puede usar para crear aplicaciones y convertirlas usando Xamarin. Por supuesto, estos ejemplos resaltan aún más la importancia de aprender un lenguaje de propósito general.

Startups

Si sabes que quieres construir o unirte a una startup, nada mejor que conocer a Ruby y Ruby on Rails. Ruby es amigable con los principiantes y permite a los desarrolladores crear prototipos rápidamente, lo que lo convierte en una excelente opción para las nuevas empresas de ritmo rápido.

En Microverse, hemos diseñado nuestro plan de estudios para maximizar las posibilidades de que nuestros estudiantes obtengan excelentes trabajos porque no ganamos nada hasta que están empleados. Solo por esa razón, nuestro plan de estudios se centra en JavaScript, React, Ruby y Ruby on Rails para ayudar a nuestros estudiantes a conseguir trabajo en las nuevas empresas.

¿Qué idiomas evitar?

Hay muchos otros idiomas para elegir. Algunos de los más populares ahora incluyen Go, Scala, TypeScript, C ++ y Rust.

Sin embargo, si está comenzando a aprender el desarrollo de software, debe evitar la mayoría de ellos. Muchos idiomas son complejos, avanzados o demasiado centrados en un solo dominio de aplicación.

Para resumir:

  1. Hyper-focus en dominar un idioma en lugar de aprender un poco sobre varios idiomas.
  2. Si no sabe con qué idioma comenzar, elija un idioma de uso general.

No te preocupes por cuál debes elegir porque hay trabajos para cada idioma. Lo que más importa es su motivación, determinación y capacidad para concentrarse en aprender y dominar el idioma elegido.

¡La mejor de las suertes!