Los programadores españoles responden: cuál es el mejor lenguaje de programación según lo que quieras hacer

0
50

En Genbeta no somos una firma de encuestas como StackOverflow para poder entrevistar a 80.000 desarrolladores sobre los mejores lenguajes de programación, pero sí conocemos a desarrolladores con gran experiencia en el mercado español, y podemos pedirles que compartan con nuestros lectores los lenguajes de programación más interesantes para este 2024.

Hemos hablado con varios expertos que han tenido el detalle de explicarnos a fondo por qué hacen estas recomendaciones y para qué perfil de desarroladores.

Concretamente, hemos entrevistado a José M. Alarcón, fundador de campusMVP.es; con Brais Moure, desarrollador mobile; con meri Fernández que es diseñadora de producto y también desarrolla y además es parte de Woman in Tech; con Txema Rodríguez que fue compañero de Genbeta DEV y es Android Team Lead en JobAndTalent, un unicornio español; David Bonilla, que es el fundador de Manfred; el equipo completo de Manfred; Azahara Fernández Guizán, frontend developer en Sngular; Shaila Pérez  Fernández, Arquitecta Técnica e informática; Pedro Gómez, Senior Software Engineer en GoodNotesApp; Jorge del Casar, Technical Lead en Sngular y Google Developer Expert en Web Technologies y Google Assistant; y Quique Fernández Guerra, Director de Engineering en PlainConcepts.

Con todas las valiosas respuestas que recibimos, lo hemos  seleccionado según cuál sea tu objetivo con un lenguaje de programación.  No es lo mismo si quieres empezar a programar, si te interesa el mundo  móvil o si tu meta es la ser un experto o experta en desarrollo. Como  dice Quique Fernández Guerra,  Director de Engineering en PlainConcepts, «vivimos una época en la que  podemos disponer de un número increíble de lenguajes (casi unos 700) y cada uno de ellos puede servirnos para una situación, problema o persona distinta».

En las siguientes líneas vas a encontrar información sobre qué lenguajes de programación son ideales (para aprender o para profundizar en ellos) según tus intereses en el apasionante mundo de la programación:

La carrera de programador en 2017 y en el futuro (con Javier Santana)

Recomendaciones para empezar a programar

Comenzamos con meri Fernández que es diseñadora de producto aunque también desarrolla, es miembro de  Woman in Tech y ha trabajado en empresas como PyroStudios. Ella recuerda que «las fronteras entre el diseño y el desarrollo del front-end siempre  fueron delgadas. Y es muy importante saber cómo funcionan las cosas  antes de pensar en un producto útil». Ella recomienda «siempre» Javascript, HTML y CSS como puertas de entrada.

La razón es que te permite hacer un poco de todo: «front, back, apps  para móviles hay unos motores chulísimos para hacer juegos.. y si puedes  hacer cosas más o menos rápido» y evitar así estrés y grandes  dificultades. «Creo que es un buen punto de entrada y sirve para ir averiguando que parte te gusta más: front, back, SRE.2«, concluye meri.

Por su parte, Azahara Fernández, que está a punto de publicar el libro «Programar sin agobios. Supera los primeros obstáculos programando más allá de lo técnico», afirma que como desarrolladora frontend recomendaría comenzar por estudiar  Typescript, porque aunque en muchas empresas las ofertas pueden indicar  un framework en concreto, al final cambiar de uno a otro no cuesta  excesivo trabajo si se conocen las bases del lenguaje. Luego a la hora  de centrarse en algún framework en específico, puede que React sea el que más tirón tiene actualmente.

Además de esto, su recomendación sería centrarse más bien en entender conceptos importantes de los frameworks: cómo funciona la reactividad, que son los stores … También revisar los diferentes tipos de autenticaciones que se suelen  implementar, como obtener datos en tiempo real, y cómo se realizan las  validaciones en formularios, por poner algunos ejemplos.

Por otro lado, José M. Alarcón, fundador de campusMVP.es,  proyecto de formación on-line para programadores en español, también  considera que para alguien que quiere comenzar en el mundo del  desarrollo, su recomendación iría hacia JavaScript (por supuesto siempre acompañado de aprender bien HTML y CSS).

«El motivo es que JavaScript es un lenguaje relativamente sencillo a pesar de todas sus peculiaridades, pero al mismo tiempo es un  lenguaje multiparadigma (funcional, imperativo, orientado a objetos y  orientado a eventos) por lo que, si se aprende en condiciones, es un  lenguaje que te puede dar una base muy sólida para luego acometer el  estudio de otros lenguajes y plataformas», de acuerdo con Alarcón.

Además, al mismo tiempo, explica el creador de campusMVP.es, «te habilita para trabajar en Front-End, algo muy demandado en el mercado laboral.  Muchos desarrolladores Front-End aprenden JavaScript «de oído» y encima  cometen el error de aprender un framework como React o Angular antes de  aprender bien los verdaderos fundamentos de JavaScript. Esto es algo  que no recomiendo y que es una fuente de frustración y problemas en el  futuro».

Shaila Pérez Fernández dice de antemano que va a hablar de «Python, Python, Python» y, muchos estudios dicen que no se equivoca por la relevancia que ha ido ganando. ¿También lo aplicaría para empezar? Pues sí. Explica Shaila que «sobretodo si se domina el inglés, Python es una excelente opción. Es un lenguaje de programación fácil de aprender y de usar, con una sintaxis clara y legible».

Escribe en once lenguajes de programación sabiendo sólo uno de ellos con esta herramienta web

También Brais Moure, como desarrollador mobile, recomienda JavaScript, «ya que tras 9 años sigue siendo el lenguaje de programación más utilizado, demandado, y uno de los más versátiles en cuanto a posibilidades de desarrollo (sobre todo en frontend y backend web)». Este experto cree que su aprendizaje junto a cierto frameworks famosos te asegurará una salida profesional de valor.

David Bonilla, que es el fundador de Manfred, también recomendaría JavaScript junto con Java y – a mucha distancia- C. «JavaScript —tanto en el front con frameworks como React, como en back con Node— y Java por su ubicuidad y, sobre todo, por la demanda de mercado. Son, con diferencia, los más demandados por las empresas«, afirma Bonilla.  Si recomienda C es por la capacidad de trabajar con «el hierro» a bajo nivel y las posibilidades que eso brinda a los desarrolladores y programadores.

Quique Fernández dice que para principiantes recomendaría Blockly de Google, «recomendado a toda aquella persona sin ningún conocimiento en el mundo de la programación, que quiere adentrarse a la lógica y la logarítmica sin necesidad de aprender código (al menos de momento)».

Y hay que volver obligatoriamente a JavaScript (casi merecería un  artículo entero este lenguaje), porque también González dice que es su  favorito, porque, además de servir para empezar, «con JavaScript lo puedes hacer todo«, afirma. Y se refiere a Apps, Frontend, IoT, Backend, Machine Learning,

Recomendaciones para quienes saben programar y buscar reciclarse

Si ya sabes programar, pero buscas ir más allá para tener más opciones de empleo, José M. Alarcón recomienda diferentes lenguajes. Por un lado, explica que «aunque el desarrollo Front-End siempre es buena idea, creo que les resultaría más fácil y provechoso aprender un framework de un lenguaje de desarrollo demandado en las empresas y seguramente con mayor similitud con lo que ya conocen».

En ese sentido las dos mejores opciones de acuerdo con Alarcón son la plataforma y el lenguaje Java o bien la plataforma .NET y el lenguaje C#. Java es más utilizado en empresas grandes, consultoras y la Administración

Por su parte, recuerda el experto que .NET es más popular y demandado en empresas de todos los tamaños. Ambos tienen una gran potencia y capacidad, si se acomete su estudio con un buen plan y una buena guía se pueden aprender en unos meses  (relativamente rápido para la complejidad que tiene hoy todo esto), y  luego tienen una buena salida laboral.

Shaila Fernández, para reciclarse también explica que si  ya sabes programar depende mucho de cómo quieras enfocarlo y del lenguaje en el que ya seas senior. Y que «en general recomiendo que si no se sabe Java, se aprenda, ya que es uno de los lenguajes más demandados en las entrevistas de trabajo».

Y si ya se trabaja con Java, yo me enfocaría e la arquitectura de microservicios y como implementarla utilizando versiones más «modernas» de Java y con Spring Boot y Docker. También en arquitectura hexagonal y DDD, muy demandado en la actualidad.

Recomendaciones para crear juegos o webs

Pedro Gómez, Senior Software Engineer en GoodNotesApp explica que hay diferencias según la tarea que hay que llevar a cabo para objetivo final, si quieres hacer juegos seguramente comenzaría con C# y si estás más interesado en el mundo web TypeScript«.

Para procesamiento y análisis de datos

Jorge del Casar, Technical Lead en Sngular y Google Developer Expert en Web Technologies y Google Assistant, habla de los lenguajes adecuados para el procesamiento y análisis de datos. Por un lado, recuerda que Python,»te permitirá crear desde servicios web hasta un procesamiento de datos más avanzado para resolver problemas con inteligencia artificial».

Por otro lado, su apuesta es R, ya que con el creciente auge del tratamiento de datos, «este lenguaje puede ser tu aliado si te quieres  dedicar a la ciencia de datos». R es un lenguaje muy usado por los analistas de datos y también para crear tablas y gráficas de grandes volúmenes de datos ya que hace que sean tareas mucho más sencilla.

Azahara Fernández Guizán, considera que si hablamos de grandes análisis de datos «desde luego habría que ir a  algún lenguaje relacionado con el Big Data: Python, R…» pero que si «lo que queremos es mostrar las gráficas de uso de nuestra aplicación, o datos que no sean grandes volúmenes  siempre se puede hacer una solución en backend que sea eficaz y con un buen rendimiento, o incluso usar un GraphQl o una bbdd del tipo Neo4j  que ya te ayuda con el procesado y relación de los datos, para poder simplemente consumirla y pintar las gráficas utilizando alguna librería  de gráficas frontend». A esta programadora le gustan mucho las librerías ChartJs y Apache Echarts.

Mientras que Shaila Pérez Fernández explica que para procesamiento y análisis de datos también recomendaría Python, «para ello, hay muy buenas librerías como Pandas, NumPy y scikit-learn».

Recomendaciones para desarrolladores de contenidos para móvil

Brais Moure, como desarrollador mobile, recomienda, al mismo nivel, Swift y Kotlin, los lenguajes detrás de las aplicaciones nativas para entornos Apple (iOS, iPadOS, macOS…) y Android, respectivamente.  Aunque se utilizan principalmente en entornos móviles, ambos se pueden  ejecutar en los principales sistemas operativos de escritorio, y  permiten trabajar en entornos tan dispares como por ejemplo el lado  servidor o ciencia de datos.

«Ambos son lenguajes de programación de reciente creación y código  abierto, con una curva de aprendizaje poco pronunciada y soporte directo  de Apple y Google. Incorporan características y paradigmas totalmente  actuales, no dejan de evolucionar mes a mes, y se han convertido en muy  poco tiempo en dignos sucesores de sus antecesores Objective-C y Java en entornos de desarrollo móvil», dice Moure.

Quique Fernández Guerra además añade que «si quieres ser una  desarrolladora o un desarrollador tradicional, haciendo Apps o APIs,  teniendo conocimientos profundos de programación y adentrándote en los  datos o el cloud. Te recomendaría estudiar C# ya que se usa en .NET y trabajando en backend estás en el centro de todo«.

Esto te obligará, dice Fernández, «a tener que acceder a los datos,  aprender a desplegar en diferentes entornos, servir datos al frontend e  incluso podrás usar algunas herramientas para crear tus propias apps».

Los recomienda «porque nadie puede negar a día de hoy la importancia  de los dispositivos móviles y el papel que seguirán jugando a nuestro  lado. Aprender los lenguajes de programación nativos, aunque existan opciones multiplataforma como Dart (el cuál nada tiene que ver con Apple), son una apuesta de presente y  futuro un sector que no para de crecer y buscar profesionales».

Recomendaciones para expertos programadores

De acuedo con José M. Alarcón, para desarrolladores experimentados  «que están un poco hartos de lo mismo y quieren dar un giro a su carrera  profesional hacia un campo de enorme demanda y potencial, mi  recomendación sería aprender Machine Learning y ciencia de datos. No es  un lenguaje, sino una disciplina, pero sí que está dominada por un lenguaje: Python«.

De todos modos, continúa Alarcón que «en esta disciplina casi lo de  menos es el lenguaje, ya que el proceso de Machine Learning, de hacer  que las máquinas aprendan, es muy diferente a la programación habitual.  Requiere de un cambio de mentalidad, y hace mucho hincapié en el análisis y la calidad de la información, por lo que tampoco es para todo el  mundo, aunque sí casi cualquiera puede aprender si le pone empeño. Ahora  mismo está explotando, hay mucha más demanda que profesionales, y solo  va a ir a más en los próximos años».

Txema Rodríguez que fue compañero de Genbeta DEV y es Android Team Lead en JobAndTalent ha querido dar consejos a  aquellas personas interesadas en ser «un potente full stack developer».  Hay un tridente fuerte para ellos y son: Kotlin-Python-JavaScript.

Después de 15 años programando, esto es lo que desearía haber sabido el primer día: hablan siete profesionales de la programación

Comenzando con Python, «es el perfecto primer lenguaje para aprender, ya que sencillo de utilizar en potentes script y desde el primer momento aporta valor.  Además, es el complemento perfecto para tareas de Data Sciece o QA  creando potentes scripts». En su caso, Txema Rodríguez lo aprendió  «mucho después que Java y forma parte de mi stack de soporte para muchas  tareas del día a día que requieren automatización o análisis de datos.  Tiene un amplio ecosistema de librerías y framework que van desde el  desarrollo web hasta las tareas más complejas de machine learning».

Otra apuesta de Rodríguez para quienes quieran ser «Full Stack Developer» es Kotlin porque «tiene la ventaja obvia de que es un lenguaje multiplataforma con lo mejor de Java pero que ha sabido adaptarse a los nuevos tiempos». Está apoyado por Jetbrains y por Google es el lenguaje a día de hoy recomendado en Android.

Desde que hace unos años Google mostrará su apoyo explicito en un Google IO 2017, casi todos, por no decir todos los codelab,  documentación de Google está desarrollado con Kotlin, según las  palabras de Rodríguez. Además, recuerda que «tiene la ventaja que puede  ser usado en backend: frameworks JVM tan potentes como Spring Framework lo tienen como su lenguaje de referencia.  Y si exploramos más Kotlin nos encontramos su vertiente multiplataforma  para Android, iOS y Kotlin/JS, sin olvidarnos que es un lenguaje  funcional con un amplio soporte en la comunidad».

*Y en este momento, hablando de programadores que buscan «un potente  full stack developer» volvemos a JavaScript de nuevo. Para este  profesional «es el lenguaje multiplataform que siempre quiso ser Java en  sus inicios». Puedes encontrarte JavaScript embebido en multitud de  dispositivos. Su uso más conocido es en la web pero «puede ser usado en servidor con NodeJS o dispositivos como televisores o, incluso, interfaces de coches inteligentes».

Recomienda usarlo a través de algun framework como JQuery. «Para sacar todo su potencial hay que conocer todos sus internals.  JavaScript es un lenguaje que tiene un pasado amplio pero un futuro  indiscutible, revisado constantemente en su estándar ECMAScript». Para  ampliar su potencia, Typescript se puede combinar con JavaScript.

Lenguajes en su fase de hype

Desde Manfred, el equipo de trabajadores nos recuerda algo muy interesante: «Que un lenguaje esté en su momento de hype o de crecimiento no quiere decir que sea un lenguaje nuevo, ni mucho menos». Y lo dicen porque ahora mismo podríamos considerar que JavaScript, tanto en su sabor front como back goza de una gran salud y el número de proyectos que se decantan por esta tecnología no para de crecer.

Apenas hay programadores de COBOL, pero tampoco de estos otros lenguajes tan viejos como bien pagados, según los expertos

Por su parte, Java sigue siendo una gran elección, siendo un lenguaje  que vive en su período valle. «Ya es un viejo rockero, pero esto no  quiere decir que esté muerto, siguen arrancando nuevos proyectos en Java  y el número de proyectos que se han realizado y que necesitan mantenimiento y ampliaciones es gigante».

Desde esta empresa, el equipo recomienda también Python, otro lenguaje que tiene ya más de 30 años y que está viviendo, «seguramente, su mejor momento«.  Mucha gente sigue identificando este lenguaje con el mundo de los  datos, un lenguaje para su análisis, pero nada más lejos de la realidad,  cada vez Python es más usado para aplicaciones backend y la demanda de este tipo de profesionales no para de crecer.

Una versión anterior de este artículo se publicó en 2022.

Imagen | Sigmund Im Cq6hqo10 Unsplash

En Genbeta | Estos son los lenguajes de programación más demandados por las empresas y que menos desarrolladores dominan