¿Cómo escoger tu primer lenguaje de programación?

Tiempo de lectura ⏱️: 7 minuto(s)

Aquellos que ya nos hemos adentrado en el mundo de la programación frecuentemente vemos a los más novatos preguntando qué lenguaje escoger para comenzar. Es una duda comprensible, y creo que todos los autodidactas hemos pasado por esa fase. La confusión es parte del proceso, sin embargo, se puede decir que es una decisión relativamente fácil, y es difícil equivocarse.

Criterios para decidirse por un lenguaje de programación

Generalmente hay dos razones para entrar en el mundo de la programación: se quiere crear un software para un propósito específico, una app para una idea de negocio o una web personal; o se quiere aprender a programar como cualquier otra habilidad, como aprender inglés o a tocar la guitarra.
Ambos casos se ramifican de forma similar. ¿Quieres ejecutar tu idea con una aplicación móvil o una webapp? ¿Quieres adquirir la habilidad de desarrollar programas de escritorio o te gusta más trabajar con bases de datos y servidores? O sea, debes escoger un camino. Entre estos antes mencionados están los más comunes. Aplicaciones móviles, sitios web, aplicaciones de escritorio, servidores, bases de datos, inteligencia artificial, ciberseguridad, y muchos campos menos comunes pero igualmente válidos. Cada uno de estos puede ramificarse en varias opciones más. Como puedes ver, es un universo enorme.

Entonces, ¿por dónde empezar?

Programar como una habilidad más

En este caso no tienes una hoja de ruta marcada por una intención, y eso te permite más flexibilidad. Para comenzar de esa forma, los programadores más experimentados generalmente se dividen entre recomendar un lenguaje difícil para que después los demás te parezcan fáciles, o comenzar con uno sencillo para ir subiendo la dificultad poco a poco.

  • En el primer caso son buenas recomendaciones C, C++, C# o Java, todos son flexibles y maduros, pero con una sintaxis enrevesada y con bastantes rincones.
  • Para empezar poco a poco son recomendables principalmente Python y JavaScript. Ambos son extremadamente flexibles, puedes usarlos para casi cualquier cosa con diferentes frameworks y librerías, y a la vez su sintaxis es legible, sencilla y hasta bonita.

Por otro lado, si ya tienes decidido qué deseas construir, el camino está medio recorrido.

Imagen ilustrativa de una pantalla de teléfono móvil.
Las apps móviles son una forma barata y rápida de desarrollar y validar una idea

Comenzar con apps móviles

Para crear aplicaciones móviles a su vez hay dos caminos: lenguajes nativos y no nativos. Para Android el lenguaje nativo recomendado y respaldado por Google es Kotlin, pero también puedes usar Java (que era la opción principal antes de Kotlin). En el caso de iOS el lenguaje recomendado por Apple es Swift, pero al igual que en Android, puedes usar la opción más clásica, en este caso llamado Objective-C.
Como puedes ver, para desarrollar con lenguajes nativos necesitas aprender dos diferentes, uno para iOS y uno para Android, en caso de que quieras crear apps para ambos (lo cual es una estrategia de negocios más amplia). Esto puede evitarse con los lenguajes no nativos. Los dos más conocidos y recomendados son:

  • React Native, un framework basado en el lenguaje JavaScript.
  • Flutter, un framework del lenguaje Dart.

La gran ventaja de los lenguajes no nativos es que con solo uno de ellos se pueden desarrollar apps para más de una plataforma, desarrollas una vez y publicas para todos los sistemas.
Entonces podría parecer que los no nativos son la elección obvia, pero realmente no, porque los nativos tienen la ventaja de que están apoyados por las empresas dueñas de las plataformas y sistemas operativos.
Además, para los nativos es que se desarrollan originalmente la mayoría de librerías y paquetes necesarios para el desarrollo, lo cual no significa que no sirvan para los no nativos, pero sí se necesita trabajar más para hacerlos funcionar.
En resumen, ambas alternativas son buenas, y toca sopesar las ventajas y desventajas de cada una antes de decidir.

lenguaje de programación Imagen ilustrativa de un desarrollador de software.
Hoy en día una web puede ser tan flexible y poderosa como cualquier software

Comenzar con desarrollo web

En el caso del desarrollo web volvemos a tener más de una alternativa de partida. Los sitios web se basan en una división en dos partes. La parte frontal con la que interactúa el usuario, llamada front-end, donde se ubican los botones, las fotos, los cuadros de diálogo, todo aquellos que el usuario ve y utiliza; y la parte trasera, llamada back-end, donde se procesa todo lo que hace el usuario en comunicación con servidores y bases de datos.
Debes decidir entonces qué parte te interesa aprender, pero ten en cuenta que lo más recomendado es aprender ambas. Si llegas a ser un desarrollador front-end y back-end a la vez, serás un desarrollador full-stack. Entonces serás capaz de crear un sitio web completo por ti solo, y eso aumenta tu capacidad y tu valor en el mercado laboral.

Para ser front-end es necesario aprender:

Estos tres lenguajes juntos crean la parte visual de la página web, HTML brinda estructura y orden, CSS aplica estilo visual y animaciones, y JavaScript permite dotar de interacción e inteligencia a la página.
El caso particular de JavaScript es curioso. Por sí solo es un lenguaje muy poderoso y flexible, pero para crear una página compleja es muy recomendado usar frameworks como Vue, React, Angular o Svelte. Estos facilitan mucho el trabajo del desarrollador y brindan opciones adicionales a JavaScript.
Para ser back-end necesitas aprender a desarrollar la comunicación con los servidores y las bases de datos.

Algunos lenguajes adecuados son:

Para trabajar con bases de datos específicamente algunas opciones son:

  • SQL
  • PostgreSQL
  • MongoDB
  • SQLite

Al final, si logras aprender tecnologías y lenguajes de todos estos tipos, tu potencial será enorme.

lenguaje de programación Imagen ilustrativa de un desarrollador de software.
Hay muchísmias áreas en las que incursionar en este mundo

Comenzar en otras áreas

Si por ejemplo, tu idea es crear un videojuego o un programa para software de escritorio, puedes ir con C++ o Java. En C++ se crean la mayoría de los videojuegos y programas, y en Java está hecho nada más y nada menos que Minecraft. Si quieres incursionar en la inteligencia artificial y el machine learning lo más recomendado es Python. Y para enfocarte en la ciberseguridad de nuevo Python es una buena opción, tambien C y C++.

Consejos finales

Este artículo tiene como intención servir de guía para los principiantes, y tiene suficiente información para escoger de forma adecuada, sin embargo, hay que decir que es muy difícil escoger mal.
Una vez conocemos un lenguaje de programación, comenzamos a incorporar su lógica en cada proyecto, y esa lógica es universal. También nos familiarizamos con su sintaxis, y aunque cada uno tiene una propia, las coincidencias son muchas. Por eso, una vez familiarizados con uno, los demás lenguajes se facilitan enormemente.


Además existen lenguajes comodines como Python o Javascript, que te permiten desarrollar webs, aplicaciones móviles, aplicaciones de escritorio, y varias cosas más, y son un buen punto de partida.
Lo más importante es empezar, y nueve de cada diez veces estarás satisfecho son tu elección.
Si necesitas más ayuda o consejos en la materia puedes utilizar la sección de comentarios. Esperamos que esta guía sea el comienzo de una fructífera carrera como programador.

¿Te cuadró?
+1
10
+1
2
+1
3
+1
0
+1
0
+1
1
+1
2

Carlos Z. Bent

Soy un programador que escribe, o un escritor que programa. Además, jurista de profesión. Amante de la tecnología y de todo lo creativo. Espero que todos disfruten de mis líneas y hagamos crecer aún más esta linda comunidad.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

*

code