¿Cuál es el mejor lenguaje de programación para aprender en 2015/2016?

Lo siento de antemano por este largo post.

Tuve un borrador de esta respuesta saliendo por una semana más o menos. Originalmente respondí después de que el cartel de aquí me molestara y me dijera que esencialmente “nunca es mejor aprender JS en ningún año”.

Qué desgracia para la programación tener tal actitud.

Pero ahora que mi disgusto ha terminado, responderé con una breve historia que no es sobre lenguajes de programación. Se trata de la relevancia, y resulta que utiliza un ejemplo de JS. Desde el año 2000.

Primero- No vivo y respiro JS. Prefiero los lenguajes funcionales porque se adaptan mucho mejor a mi estilo. De hecho, después de haber evitado con éxito PHP toda mi carrera, prácticamente me involucré en el estilo de pandillas por la abrumadora demanda de desarrollo de WP por parte de los clientes. No tuve ningún problema con PHP, pero soy un experto y me pareció desagradable. Mi código resultó ser muy potente pero bastante feo, porque estaba codificando en un estilo funcional utilizando un lenguaje que ni siquiera es muy querido para la POO.

Actualmente estoy trabajando mucho con Native C y Nginx / Lua en estos días gracias al progreso y la capacidad para codificar tantas cosas que antes solo eran posibles con idiomas de nivel superior. Efectivamente, esto significa que estoy usando lenguajes de bajo nivel para realizar algunas de las implementaciones más simples que se consideraron exclusivamente de alto nivel hace una década. Esto significa que nunca tengo que cargar PHP en mi servidor y la velocidad es muy rápida. Esto se adapta mejor a los sitios de HTML estático y las aplicaciones especializadas que no requieren funciones dinámicas.

Si bien esto refleja una gran cantidad de desarrollo comunitario y el proceso orgánico dentro de la industria de TI que eleva lentamente el estándar de manera agregada, aún es real. Ahora, JavaScript también se ha desarrollado, y puede asumir muchos roles más sofisticados, incluido un estilo decididamente más declarativo.

Predigo un cambio en el hardware en 2018 que revolucionará lo que se solicita en la comunidad de codificación. Mientras tanto, echemos un vistazo a JS.

La relevancia de JS se remonta al día en que se adoptó como el idioma oficial del navegador. En 1996–2000, JS fue calumniado de manera similar, y ese comportamiento se repite de manera similar hoy, aquí en Quora. Aquí hay algunos insultos familiares lanzados a JS circa 1999:

“¡Ni siquiera es un lenguaje de programación real!” (Cf. Ruby, que también es un poderoso lenguaje de scripting creado por 1 persona)

“¡Estos niños que usan JS no pueden programarse por sí mismos fuera de una caja!” (Véase el elemento canvas. Al parecer, los niños pueden dibujar la caja en la que se colocan antes de programarse a sí mismos)

“Hah. Esta cosa de punto-com se derrumbará y entonces ¿dónde estarán todos?
(cf. salarios JS. A partir de 2016 se consideran mejores que la mayoría)

Así que en enero de 2000 tuve el cliente más grande de nuestra empresa emergente en mi regazo. Pedí que me probaran por mis habilidades y, por defecto, dibujé la pajita corta.

Descubrí que habíamos pospuesto el desarrollo del proyecto y dejé que la fecha de la promesa del 14 de febrero aumentara de manera tal que solo faltaban 31 días para el lanzamiento. En aquel entonces no era inusual que todo lo que una compañía le decía a un cliente fuera “sí, sí, sí” sin razón, aunque habíamos permitido 3 meses para el proyecto.

En teoría, puede haber sido suficiente tiempo para construir el sitio de comercio electrónico más grande del mundo (15,000 artículos individuales, independientemente de las variaciones simples, como la elección de colores alternativos, etc.), pero ¿quién realmente lo sabía?

Me dio la bienvenida a la tarea. Ya trabajaba 80 horas a la semana. ¿Por qué no 100?

Tuve que interactuar con la tecnología patentada de construcción de sitios ofrecida por nuestra compañía escrita en C y Perl, y tuve que descubrir cómo automatizar la tarea de compilar todos los productos individuales y sus descripciones cortas / largas, los 3 tamaños de jpeg. Las fotos (miniatura, web y web grande), y cómo interactuar con las fuentes de archivos planos desde la escritura de controladores de base de datos únicos no hubieran sido oportunos.

Realicé ingeniería inversa del html generado por nuestro sistema y creé plantillas para cada vista de categoría utilizando un conjunto de datos de muestra. Luego, creé formularios HTML / JS en las páginas del sitio web de nuestra empresa para recibir la información del producto 8 a la vez, mientras que nuestro sistema normalmente solo permite 4. ¿Por qué usar JS en la red en lugar de crear páginas en localhost? Recuerda, yo estaba falsificando resultados válidos.

Ajusté los nombres de los archivos de origen para cumplir con la entrada de datos numéricos ya que quería minimizar la escritura en los formularios; y escribí preprocesadores para los datos para extraer elementos tales como el título del producto de las descripciones, y para extraer meta palabras clave relevantes, y para suplantar la nomenclatura de archivos y las extensiones de archivo necesarias para las vistas de imágenes en Clic , etc. Luego inyecté estos resultados en las plantillas en Enviar .

El código resultante coincidía exactamente con la salida normal del software original de creación de sitios. Las únicas cosas que aún se necesitaban eran los permisos de archivo para los archivos pirateados y abrir cada archivo en modo de edición desde nuestro sistema back-end para activarlos antes de entregarlos al cliente.

Tomé un asistente administrativo y, después de completar con éxito las pruebas de mi sistema de plantillas para garantizar que el proceso funcionara en su totalidad, pasamos 4 días después de las horas haciendo el trabajo más frenético y tedioso que se pueda imaginar. 15,000 productos ingresaron 8 a la vez como referencias numéricas de archivos en formularios de espera en 2 máquinas diferentes, presione Entrar para representar la plantilla, copie / pegue la plantilla en un archivo de texto y guárdela en el servidor. Literalmente no tuve tiempo suficiente para completar el código para automatizar el guardado de los archivos, así que lo hicimos a mano.

El resultado fue que el 2/11/2000, nuestra compañía completó exitosamente el proyecto a tiempo (¡evitando una reducción del 25% en las tarifas prometidas en caso de que llegáramos tarde!), Y el 2/14/2000 la oferta de productos individuales más grande del mundo en un solo sitio de comercio electrónico se puso en marcha.

Gracias a Javascript y al código que escribí, se requirió que 2 empleados tuvieran un total de 40 horas (2 x 20 horas) de ingreso de datos para hacer esto posible, y se necesitaron 28 días desde el inicio hasta el final para que esto sucediera.

No puedo imaginar que este sea el trabajo más importante que se haya completado en el mundo, incluso si se tratara de la ballena de nuestra compañía, sin embargo, demuestra adecuadamente el impacto económico de JS.

Eso fue hace 16 años, y después de desarrollar al menos 2 órdenes de magnitud, se puede decir que JS es EL lenguaje más relevante para saber en 2016. Ha logrado este estado porque Internet es LA tecnología más relevante de nuestro tiempo, al menos desde la década de 1980, y JS es el enlace del navegador.

Por supuesto, creo que todo depende de cómo uses un idioma. Si no eres experto tal vez quieras un idioma que haga tu trabajo por ti. C es increíble, pero no es la mejor opción para un principiante, y no es tan relevante para el futuro de la industria como JS, incluso si lo llamo el lenguaje más importante de todos los tiempos.

El futuro lenguaje moderado es funcional. Siempre será funcional, porque las necesidades de maduración de cualquier sistema se deslizan constantemente hacia los modismos de FP, tal vez a diferentes velocidades, pero seguramente sucederá.

El idioma de hoy, incluso si proviene de alguien que ama otros idiomas, es Native JS.

Bueno, esta es una pregunta interesante.

Teniendo en cuenta que eres un principiante.

Hoy en día hay muchos lenguajes de programación de los que puedes empezar.

Los idiomas también son mucho más fáciles de aprender.

Pero solo compartiré mis opiniones sobre esto.

El problema con la nueva generación de lenguajes de programación es que tienen muchas funciones integradas para facilitar el trabajo de un programador.

Funciones matemáticas, métodos String Methods Array, métodos List, etc.

Si bien son muy buenos y proporcionan una codificación útil, ocultan la funcionalidad de cómo se hacen las cosas, por lo que el programador nunca sabría cómo manejar las cosas desde cero.

Y es por eso que sigo recomendando el lenguaje ‘C’ para cualquier principiante en el lenguaje de programación, ya que te hace hacer cosas desde cero (sí, no estoy considerando los lenguajes de máquina: P).

Cuando entiendes cómo manejar cosas básicas, puedes saber qué hacen los lenguajes de programación modernos detrás de la escena.

Y luego tomar los conceptos se vuelve muy fácil cuando pasa a estos idiomas.

Así que, para mi sugerencia, vaya a una buena librería y lea algunos libros en lenguaje C, elija uno que crea que sea fácil de entender para usted y comience a codificar …

Si ya tienes conocimientos de lenguajes de programación.

Entonces puedes decidir en qué dirección quieres apuntar.

Para el desarrollo web vaya para el desarrollo de pila MEAN.
MEAN.IO

Si desea que el lenguaje se agregue a la biografía, entonces, como lo mencionó @Sivaranjini Senthivel, Python es una tendencia, aunque aún no lo he visto con mucha aplicación en el mundo.

Google tiene una base de Python y una enorme, pero este lenguaje todavía tiene que dejar su marca en el mundo del desarrollo de aplicaciones (en gran parte debido al gran uso de JAVA).

También puedes ir por Ruby.

Sugeriría aprender los fundamentos.

1. Lenguaje orientado a la estructura
2. Lenguaje orientado a objetos
3. Lenguaje orientado a la función

Comprende cómo funciona el lenguaje de programación. Si eres fuerte en lo fundamental, todo lo demás es solo una sintaxis.

Según StackOverflow Survey.
1. JavaScript
2. SQL
3. Java

Página en stackoverflow.com

Según TIOBE

1. java
2. C
3. C ++

La Compañía de Normas de Codificación

Si no conoce los tres lenguajes de TI dominantes del día (Java, Python, C ++), debería aprender uno de ellos. Ellos absolutamente lo gobiernan. Son extremadamente versátiles, y se utilizan en casi todas partes para cualquier propósito concebible. Hay muchas más oportunidades de empleo para estos idiomas que para cualquier otro.

Más allá de eso, mira el prometedor lenguaje Go. Está destinado a ser un idioma importante, si no lo es ya: El pequeño lenguaje que podría.

¡JavaScript no es el mejor idioma para aprender en 2015 o en cualquier otro año! Las cinco razones principales para usar JavaScript.

Ninguno de los lenguajes de programación está fuera del alcance y nunca lo será mientras sea experto en ese lenguaje en particular.
Y sí, según el tiempo, necesitamos aprender algunos idiomas nuevos para satisfacer las necesidades futuras. Por lo tanto, si desea seguir usando OOP solo, entonces Java, Python son mejores para aprender.
Según el estándar de 2015, Big Data es uno de los mercados con mayor crecimiento. Entonces, si quieres sumergirte en Big Data, ve a F #, Haskell … ..Fucntional Programming Language.
Además, una de las principales ventajas del lenguaje de Programación Funcional es que cuanto más codifique en FP, mejor será la codificación con OOP.

Bueno, todo depende de lo que quieras construir. Si está interesado en crear aplicaciones web y sitios web, la única opción que tiene es estudiar el lenguaje de programación relacionado con el desarrollo web. Primero debes comenzar con HTML y CSS y luego moverte a JavaScript. Si desea continuar, puede estudiar los lenguajes de programación del lado del servidor, como PHP, Python y la base de datos. El mejor libro para estudiar HTML y CSS es Head First HTML y CSS y el mejor libro para principiantes en JavaScript que he leído en mi vida es Elocuente JavaScript.

Si quieres ser un desarrollador de software o una aplicación, te instaré a que comiences con el lenguaje de programación Python porque es muy fácil de aprender, incluso si eres nuevo en la programación. Fue hecho para cualquier persona, es fácil de leer y es usado por compañías importantes como Google e incluso este sitio web Quora.

Simplemente obtenga un buen libro sobre python y comience con él como su primer idioma. Una vez que haya terminado de aprender, estudiar cualquier otro lenguaje como C ++, Java será mucho más fácil. Te deseo lo mejor.

Realmente depende de lo que quieras aprender, si quieres convertirte en un desarrollador web y en uno bueno, entonces necesitas aprender un par. Una vez más, realmente depende de cuáles son tus metas.

Si los sitios web son lo tuyo, prueba HTML y CSS

Cómo crear un sitio web con HTML y CSS – Udemy

Robin Haney

En primer lugar, creo que es un poco peligroso pensar que hay uno “mejor para aprender”. Realmente depende de tus objetivos.

Pero si se trata de la posibilidad de empleo en trabajos de escritura de software para servidores, computadoras de escritorio, computadoras portátiles y teléfonos móviles, Java es una muy buena opción. El lenguaje no está a punto de desaparecer, es probable que crezca en lugar de varios años más.

Mejor para quién o para qué: D?

Por lo que respecta a la empleabilidad, por todos los medios, te recomendaría que hagas frente a Javascript y no dejes ir a ese tipo hasta que te reconozca como su maestro;).

De lo contrario, depende de tus metas, actitudes y experiencia previa.

Leer qué código debe aprender? [infografía]

http://www.tiobe.com/index.php/tiobe_index

Esto muestra la popularidad del lenguaje de programación y se actualiza cada mes.

Más que recomendar un lenguaje de programación, recomendaría aprender más sobre el diseño de algoritmos. De esa manera, independientemente de los idiomas que conozca, escribirá un gran código lógico.

Depende de qué campo, vas a aprender a trabajar. Para comenzar el primer lenguaje, creo que es mejor estudiar javascript (para tener rápidamente una idea de la programación) y luego probar java o c #.