¿Con que lenguaje aprendo a programar?

Probablemente es una de las preguntas que mas vas a escuchar al adentrarte en el mundo de la programación. Podes preguntarle a diez programadores cual es el mejor lenguaje para empezar y vas a obtener diez respuestas diferentes.

Hay miles de opciones, y el mejor lenguaje de programación para empezar no solo depende de lo intuitivo que sea, también depende del tipo de proyecto que quieras hacer.

Es muy probable que, dependiendo de lo que quieras programar o para qué, la eleccion ya esté tomada aunque todavia no sepas. Para programar páginas web, por ejemplo, deberías aprender Javascript obligatoriamente puesto que es el lenguaje de programación web modo cliente por defecto (ejecutado en el navegador web), acompañado de un lenguaje de marcado (HTML) y un lenguaje de estilo (CSS). Si queremos darle interactividad a la página podemos optar por Python, Ruby o PHP que es un gran dolor de cabeza para aquellos desarrolladores que lo manejan pero a pesar de todo es un lenguaje de programación web muy popular y comodo para desarrollar sitios pequeños y simples en un corto periodo de tiempo, respaldado por casi todos los servicios de hosting web de bajo costo.

Si tu objetivo es solo desarrollar aplicaciones móviles, lo que deberías aprender, para empezar, sería Objective-C para iOS o Java para Android.

Si lo que quieres es ir más allá de un proyecto específico, o quieres aprender varios lenguajes, lo mejor para empezar es aprender fundamentos de programación, y aprender a ‘pensar como un programador’. En este sentido hasta las aplicaciones y métodos para enseñar a programar a los niños pueden serte útiles.

Los lenguajes de programación más recomendados para principiantes

C: Te enseña a programar de manera eficiente

C es uno de los lenguajes de programación más usados y esta popularidad tiene sus razones. En palabras del programador Joel Spolsky: “C es el equivalente a aprender anatomía básica en medicina””. C es un lenguaje que funciona a nivel de máquina, así que sirve para entender cómo interacciona un programa con la capa de hardware.

Con C se aprende a hacer cosas como depurar código, o a gestionar la memoria. También ofrece una visión panorámica de cómo funciona un ordenador que no ofrecen otros lenguajes.

Dicho esto, programar en C también es más rígido y su curva de aprendizaje no es muy fácil. Si no tienes pensado trabajar en programas que interactúan con la capa de hardware (utilizando, por ejemplo, unidades de disco, o extensiones del sistema operativo) C quizá prolongue de manera innecesaria tu tiempo de aprendizaje.

Personalmente no creo que sea un lenguaje especialmente amistoso con el principiante. Ayuda a convertirte en un programador minucioso y disciplinado, pero su rigidez y el largo tiempo que pasará antes de que puedas crear algo realmente útil puede acabar frustrándote.

Java: Uno de los lenguajes más útiles de aprender

Java es el segundo lenguaje de programación más popular. Java es muy útil para aprender los principios de la programación orientada a objetos que se usa en otros lenguajes modernos como C++, Perl, Pyython, o PHP. Una vez que has aprendido Java, es más fácil aprender estos otros lenguajes.

Java tiene la ventaja de que es un lenguaje muy maduro y con una larga trayectoria. Hay infinidad de plantillas y tutoriales, y se usa en una gran cantidad de entornos, incluido el desarrollo de aplicaciones en Android, así que es un lenguaje muy práctico. Con Java no aprenderás control de dispositivo a nivel de hardware como con C, pero aprenderás a acceder y gestionar las partes más importantes como el sistema de archivos, los gráficos o el sonido.

Python: Fácil y divertido de aprender

Mucha gente recomienda Python para empezar por sus amplias capacidades y su simplicidad. Su código es fácil de leer y también ayuda a desarrollar un estilo de programación limpio sin necesidad de ser muy estricto con la sintaxis (cosas como olvidar un paréntesis al final de una línea).

Ampliamente reconocido como el mejor lenguaje de programación para principiantes por ser facil de aprender.

Elegir tu camino

Una última consideración es tener en cuenta si quieres programar solo por Hobby, o vas a convertir esa actividad en algo profesional.

  • Programador de Servidores o Back-end: Python, Rubyy, PHP, Java o .Net. Conocimientos de bases de datos y posiblemente de administración de sistemas.
  • Programador de clientes o Front-end: HTML, CSS, Javascript. Posiblemente sean necesarios conocimientos de diseño.
  • Programador móvil: Objective C o Java (para Android). HTTML / CSS para sitios web móviles. Posibles conocimientos sobre servidores.
  • Programador 3D o de videojuegos: C/C++, OpenGL, Animación. Es recomendable tener buenas dosis de conocimientos de diseño y artísticos.
  • Programador de alto rendimiento: C/ C++, Java, conocimientos en matemáticas y análisis cuantitativo.

Al final, no hay una única vía para iniciarse en el arte de la programación. Lo más importante es aprender los fundamentos, y para ello lo mejor es devanarse los sesos intentando realizar un proyecto concreto o una aplicación que queramos construir. Tener un objetivo concreto ayuda mucho.

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.