Hola,
El último informe de TIOBE evalúa la popularidad de los lenguajes de programación utilizando la cantidad de ingenieros calificados y las clasificaciones de los motores de búsqueda. Los resultados:
- Java
- do
- C ++
- C#
- Pitón
- PHP
- La red de Visual Basic
- JavaScript
- Lenguaje ensamblador
- Rubí
- Perl
- Delphi
- VisualBasic
- Rápido
- MATLAB
- Pascal
- Maravilloso
- C objetivo
- R
- PL / SQL
TIOBE afirma que su gráfico no es un indicador de idoneidad o el número de líneas escritas. Algunos idiomas surgen porque todavía se usan y son relativamente más antiguos que otros. Hay algunas sorpresas: ¿VisualBasic sigue siendo popular? Raramente lo usan los desarrolladores profesionales, pero podría ser que muchas personas lo usen para aplicaciones ad-hoc simples. Dicho esto, no conozco a nadie que haya usado lenguaje ensamblador durante muchos, muchos años.
Informe de hackers estudiantiles DevPost, enero de 2016
El informe DevPost analiza el trabajo de 13,281 estudiantes que participaron en casi 10,000 proyectos durante el año académico 2014-2015. Los resultados muestran las tecnologías utilizadas, aunque se entremezclan con lenguajes de programación:
- HTML / CSS
- JavaScript
- Pitón
- Java
- C / C ++
- PHP
- C objetivo
- C#
- Rápido
- JSON
- Rubí
- XML
- Ajax
- Cáscara
- Procesando
- Lua
- CoffeeScript
- Ir
- MATLAB
- OpenGL
Los resultados destacan principalmente en qué están trabajando los estudiantes en su tiempo libre. Los proyectos tienden a estar dominados por aplicaciones nativas, microcontroladores integrados y wearables, que pueden ser tecnologías bastante específicas en el mundo empresarial. Además, estos son idiomas que los estudiantes querían usar. ¡Si eran viables o agradables es otra cuestión!
¡Aprende a programar hoy!
Voy a decir esto claramente. Otra vez:
nunca elija un idioma de los resultados de la encuesta
Sería como elegir vivir en un pueblo en particular porque tiene una población más alta que otras. Estas estadísticas son interesantes, pero no lo ayudan a elegir el idioma más apropiado para su situación, requisitos del proyecto u objetivos profesionales.
Olvídate de elegir un idioma y comienza a codificar algo . No importa lo que elijas. Aprenda los conceptos básicos y la mayoría de los otros idiomas se convierten en una sintaxis alternativa.
… pero no esperes convertirte en un experto de inmediato
Los desarrolladores a menudo hacen que la codificación parezca fácil, pero cualquier cosa parece fácil una vez que la has aprendido. Desafortunadamente, nuestra industria tiene una tendencia a subestimar el desafío.
¿Alguna vez has visto libros o cursos titulados “Aprender ingeniería aeronáutica en 21 días” o “Construcción de puentes para idiotas” ? Por supuesto que no, pero los buenos desarrolladores pasarán el mismo tiempo aprendiendo su oficio. La principal diferencia es que el desarrollo tiene una barrera de entrada más baja, y es menos probable que lastimes a alguien con código de mala calidad … ¡a menos que tu software se use para diseñar aviones o puentes!
La codificación es difícil. Podrá crear algunos programas simples en cuestión de días, pero necesitará muchos meses de conocimiento para abordar con confianza una aplicación grande. La mayoría de los trabajos profesionales requieren varios años de sólida experiencia. Incluso entonces, siempre estás aprendiendo. Todos miramos hacia atrás a los programas cuidadosamente construidos desarrollados hace seis meses y pensamos “¿quién escribió esas tonterías?”
¿Puedes convertirte en desarrollador?
Absolutamente, pero relativamente pocas personas lo harán . Si el trabajo fuera fácil, la demanda de los desarrolladores nunca excedería la oferta. Sin embargo, no creo que los desarrolladores nazcan con habilidades de codificación innatas. Cualquiera puede aprender a programar. Al igual que cualquiera puede aprender a tocar la guitarra o hablar japonés … si están preparados para esforzarse.
La clave es la pasión. Si está entusiasmado por ver su nombre en la pantalla o mover una gota verde de un punto a otro, la programación podría ser para usted. Los mejores desarrolladores están motivados por tareas y en su mayoría son autodidactas. La educación, los libros y los cursos te ayudarán, pero solo aprendes codificación al hacerlo.
¿Donde debería empezar?
SitePoint es principalmente un recurso de desarrollo web, pero la web es un entorno hostil para principiantes. Incluso si te concentras en el desarrollo del lado del cliente, no llegarás lejos sin un conocimiento de los navegadores, HTML y CSS (¡no son lenguajes de programación y son considerablemente más extravagantes!) Aquí hay introducciones sólidas a HTML y CSS de nuestro Premium colección de contenido
El desarrollo nativo del sistema operativo en algo como Java o C # no es mucho más fácil. Puede haber menos dependencias, pero los principiantes y las herramientas necesarias para ponerse en marcha engañan a muchos novatos. Un largo paso de compilación, que traduce su código en algo que la computadora puede entender, no es propicio para el aprendizaje.
Un lenguaje interpretado como Python, Ruby (tenemos una gran introducción) o JavaScript (en Node.js) (ídem) puede ser una mejor opción, pero algunos están intimidados por la línea de comandos. También es difícil crear algo gráficamente interesante para mantener su entusiasmo.
Los entornos de desarrollo modernos son complejos y la curva de aprendizaje inicial es empinada. Estoy mostrando mi edad, pero me considero afortunado de haber aprendido la codificación en un ZX Spectrum en Sinclair BASIC. La elección era limitada, al igual que la memoria y las capacidades, pero me permitió comprender los conceptos básicos (de BASIC y codificación) sin quedar empantanado en una pila de tecnologías relacionadas.
Nunca volveremos a los días más simples de 8 bits, pero hay una serie de entornos BÁSICOS que podrían ayudarlo a presentarle los conceptos de estructura de código, variables, bucles y ramificaciones, por ejemplo, Basic para Qt, SmallBasic, Basic256 o el antiguo QBasic . Los desarrolladores presumidos regañan a BASIC porque puede enseñar malas prácticas, pero escribir unas pocas líneas de código terrible te enseñará más que no escribir ninguna.
¿Puedo convertirme en un gran codificador?
Sí, a tiempo . Los mejores codificadores pasan por varias fases en su viaje de programación:
- La fase “No sé nada” Todo es nuevo, nada es fácil.
- La fase “está empezando a tener sentido” Has escrito algunos programas y estás cometiendo menos errores.
- La fase “Soy invencible” Su confianza coincide con su competencia. Ningún desafío parece demasiado difícil.
- La fase “No sé nada”, parte II. La repentina comprensión de que el desarrollo es infinitamente más complejo y comienzas a dudar de tus propias habilidades.
- La fase “Sé un poco y eso está bien” Tienes habilidades de codificación decentes pero reconoces tus limitaciones y puedes encontrar soluciones a la mayoría de los problemas (incluso si eso significa contratar a otro desarrollador).
En mi experiencia, la principal diferencia entre buenos desarrolladores y grandes desarrolladores es la curiosidad . Un gran desarrollador nunca se contenta con unir componentes preescritos. Quieren entender cómo funcionan las cosas. Completar una tarea en el menor tiempo posible es de menor importancia.
Considere escribir sus propias bibliotecas antes de usar el trabajo de otra persona. Por ejemplo, escriba sus propias funciones de manipulación DOM de JavaScript u objetos de conectividad de base de datos PHP. El uso de jQuery o un ORM le permitirá producir algo más rápido, pero comprender la tecnología subyacente es invaluable. La reutilización del código se vuelve cada vez más importante, pero no tenga miedo de profundizar mientras aprende.
Finalmente, nunca tengas miedo de elegir el idioma equivocado … no hay ninguno equivocado . Hay aquellos que no se adaptan mejor a un proyecto específico, pero solo lo descubrirá por prueba y error. Elige un proyecto interesante, elige cualquier idioma y ponte en marcha.
¡La mejor de las suertes!
Respuesta original: la respuesta de Stefy Biber a ¿Cuáles son los mejores lenguajes de programación para aprender en 2014?