¿Qué lenguaje de programación debo empezar a aprender?

Antes de que comiences a leer mi respuesta completa, comienza a aprender Python.
He aquí por qué te recomiendo python.

  1. Fácil de aprender
    Así es como escribes “HOLA MUNDIAL” en C ++

    #incluir stdout

    int main ()
    {
    std :: cout << "¡Hola mundo! \ n";
    }

    Y así es como se escribe en Python.

    imprimir (“Hola, mundo!”)

    Es tan fácil como el inglés cotidiano.

  2. Su piedra de paso
    Python puede ser su paso hacia el universo de la programación. Los empleadores buscan programadores completamente apilados y Python te ayudará a llegar allí. Python es un lenguaje orientado a objetos, al igual que Javascript, C ++, C #, Perl, Ruby y otros lenguajes de programación clave. Para las personas que planean convertirse en desarrolladores de software, aprender este tipo de programación en un área lo ayudará a adaptarse fácilmente en otros entornos.
  3. Poderoso
    En el primer punto, dije que es tan fácil como el inglés cotidiano, pero no es un juguete para niños. Es extremadamente poderoso. Es por eso que algunas de estas empresas utilizan Python.
    • Nasa (https://www.python.org/about/suc…)
    • Google
    • Yahoo Maps
    • Red Hat [La distribución de Red Hat Linux usa Python para su instalador (anaconda) y las utilidades de configuración.]
    • IBM [IBM East Fishkill está utilizando Python para crear la lógica de práctica comercial para las aplicaciones de control de herramientas de fábrica. Estos se utilizan para controlar la entrada, salida y recolección de datos en la planta de semiconductores de Micrus en East Fishkill. El código que se había escrito previamente en un lenguaje de secuencias de comandos interno y propietario se ha portado a Python.]
    • Incluso quora
    • Dropbox
    • Youtube
    • Instagram utilizando Python Django
    • etc y mucho mas
  4. ¿Qué pasa con las frambuesas pi? Puedes jugar fácilmente con la frambuesa pi usando python
  5. ¡Dinero! ¡¡Dinero!! ¡¡¡Dinero!!!
    (Fuente de la imagen: Intersog)

Elegir qué aprender es algo muy complicado. Todo depende de lo que quieras hacer.

Si está interesado en los lenguajes de programación, vaya a los nuevos lenguajes … desde lenguajes de scripting escritos de forma holgada hasta lenguajes de programación funcionales. ¡Aprende cómo funciona la concurrencia en diferentes idiomas y contribuye!

Si quieres hacer de la web tu fuerte, comienza a implementar cosas y hazlas en vivo. Aprenda cómo hacer que su aplicación sea famosa en la web y cómo mantener a los usuarios. Quiero decir que no te limites a las tecnologías y que veas las cosas.

Creo que he dejado claro el punto sobre lo que puedes aprender y cómo investigarlo. Y ahora te lo dejo a ti. ¡Sigue aprendiendo cosas!

Pequeño consejo: no arruines tus notas, la gente dice que no es tan importante, pero lo es. Pero nuevamente no dejes de aprender, haz un balance entre ambos.

Gracias por A2A.

Aprender javascript. En particular, use node.js (javascript en el lado del servidor en lugar del lado del cliente tradicional) para esto.

Estoy de acuerdo con la sugerencia de Manuel de expandir su conocimiento al paradigma de la programación funcional. Haskell es bueno.

Ya que conoce Java, también puede aprender programación funcional en el ámbito de los lenguajes JVM y ver el soporte funcional Java 1.8, Scala y Clojure (una variante de lisp que se ejecuta en el jvm) e incluso Groovy. Scala, en particular, está creciendo en popularidad con nuevas empresas o nuevos proyectos en el espacio de jvm.

Con estos, aún tendrá acceso a las bibliotecas de Java conocidas si las necesita, pero puede extenderse a una forma totalmente funcional de resolver problemas.

Definitivamente, vaya tan lejos como pueda con Python (meta programación de Python, compilación de sus propios módulos). Es un lenguaje fácil de aprender y puedes llegar muy lejos con él.

Y por último, pero no menos importante, aprenda acerca de los modelos de concurrencia y cómo escribir programas concurrentes (comience de manera simple, crezca lentamente; es una parte complicada / complicada de la programación, pero será cada vez más útil).
Scala, en particular, ofrece, además del habitual modelo de concurrencia basado en subprocesos de Java, un actor basado en uno que ha demostrado ser útil y práctico al escribir programas concurrentes.

Desafortunadamente, el sistema operativo Windows no es un proyecto de código abierto y no puede hacer nada en su código en lugar de usarlo en su computadora portátil. En Computer Engg la gente suele hacer dos cosas.
1> Programación Competitiva
2> Desarrollo.
Primero decides en qué estás interesado y empiezas a explorarlo. Usted es elegible para ambos, ya que sabe C, Java y también JavaScript, HTML, CSS.

Si lo decide como Desarrollo, le recomiendo encarecidamente que comience a contribuir con un proyecto de código abierto que está escrito en JavaScript antes de comenzar cualquier proyecto porque le da una idea clara de cómo funcionan las aplicaciones en tiempo real y cómo fluye el código en las aplicaciones del mundo real. . Mozilla Firefox OS es el mejor proyecto de código abierto para empezar y los mentores son muy amables y serviciales.

Si lo decide como Programación Competitiva, simplemente vaya a Codechef y comience a resolver los problemas que se presentan allí.

Estas son las dos formas comunes de mejorar sus habilidades de programación en cualquier idioma. Sí, hay muchas otras direcciones como Machine Learning, Artificial Intelligence y todas, pero te sugiero que comiences por una de las anteriores.

Te sugiero que dejes de leer todos los libros 🙂

Recomiendo aprender uno que tenga usos adicionales más allá de los back-ends web. Es decir, no elige PHP o ColdFusion.

Python es mi elección personal, pero Ruby también está bien. Ambos se pueden utilizar para los scripts de utilidad / pegamento / automatización, así como para la codificación de aplicaciones web.

Java tiene cosas a su favor también. Para bien o para mal, es el estándar de la industria para software “empresarial” orientado a objetos. Por lo tanto, uso generalizado, una gran máquina virtual, un sólido ecosistema de servidores y otros lenguajes interesantes que se ejecutan en su VM y pueden usar sus bibliotecas (por ejemplo, Clojure).

En esta etapa, probablemente sea mejor para usted ampliar sus horizontes y ampliar sus conocimientos (lo que realmente no sé, pero asumo por los idiomas que mencionó). Aprenda más programación en lugar de lenguajes de programación. If by Si empiezas con python, estarás repitiendo el mismo camino con un auto ligeramente diferente. Toma un camino diferente. Mi recomendación es aprender algo de programación funcional con Haskell y algo de programación lógica con Prolog. Mucha gente diría que se usan en “el mundo real”. Mientras que, comparativamente hablando, hay algo de verdad en eso, mi punto es tratar de expresar algoritmos de la manera más pura posible. Desde mi experiencia, las personas con experiencia en programación declarativa son capaces de crear código limpio y firme con facilidad. Desde allí, es posible que desee saltar a algo como Coq, pero eso definitivamente requiere algo de tiempo para dominar y, si desea ser efectivo, algún experto que lo guíe.

Espero que esto ayude.

Si estás interesado en aprender a resolver problemas técnicamente desafiantes:

El lenguaje de programación C puede proporcionarle una comprensión de cómo funciona la computadora, lo que resultará útil para enfrentar los desafíos de escalabilidad y rendimiento del diseño de sistemas a gran escala y las limitaciones de recursos de los sistemas extremadamente pequeños.

Si está aprendiendo a obtener un trabajo en lugar de resolver problemas técnicos:

Utilice un sitio como indeed.com para analizar las tendencias del mercado (tienen una herramienta de tendencias) para varios idiomas. Luego, aprenda el idioma más popular en su región geográfica, más el idioma de nicho que se está desarrollando allí. Lo primero te asegurará que tienes muchos lugares donde puedes trabajar. Esto último hará que sea más probable que tengas una habilidad que sea rara y valiosa.

Vea la respuesta de Richard Kenneth Eng a ¿Por qué no debería aprender Python?

A pesar de las otras respuestas aquí, permítame decirle que en este momento no necesita preocuparse por cuáles son sus objetivos a largo plazo con respecto a la programación. Centrarse en aprender a programar. Están tratando de encasillarte en un lenguaje desde el principio, y este es simplemente el consejo equivocado.

Aprende a programar con un lenguaje que fue diseñado para enseñar programación . Una vez que haya aprendido a programar, puede pasar a otros idiomas, según sus intereses. Este es el consejo que doy a todos los principiantes. Vea, por ejemplo, la respuesta de Richard Kenneth Eng a que tengo 80 años, y quiero aprender un idioma del lado del servidor como Ruby, Python, Scala, etc. ¿Cómo puedo lograr mi objetivo más rápido?

Aquí hay algunos recursos de Smalltalk.

Al aprender Java, asumo que ahora tiene una comprensión justa de tipificación estática, compilado, orientado a objetos y recolección automática de basura. Ahora, intente algo nuevo como escritura dinámica (Python / Ruby), interpretada (Python / Ruby / Groovy), lenguaje funcional (Haskell) y recolección de basura no automática (C / C ++.)

Ya que, nadie puede aprender cientos de idiomas y marcos disponibles ahora, tiene que elegir entre sus intereses y requisitos. Ya que ha dicho que desea crear aplicaciones web tanto en el escritorio como en la web, recomendaría usar Python. Puede usar Django ( https://www.djangoproject.com/ ) como un marco web para Python, ya que se adapta a su aplicación de educación y enseñanza. Y, para el escritorio, puede usar wxPython ( http://www.wxpython.org/ .) WxPython no es muy maduro pero puede hacer la mayoría de las cosas ya que se usa en otras aplicaciones bien conocidas como GWT y Dropbox.

Esta es solo mi opinión personal y me gustaría ver cómo otras personas expresan sus opiniones.

PHP se encuentra entre los lenguajes de script de back-end más populares y demandados que existen. Es estadísticamente la más rápida y fiable. Python también es popular y comúnmente reconocido como el lenguaje más fácil de aprender. Es mejor para principiantes completos y desarrollo multiplataforma. También está Ruby on Rails, pero no es tan popular o confiable como PHP.

Luego está Java, y los otros lenguajes basados ​​en C. Es muy útil saberlo, ya que se pueden utilizar tanto para fines de software como de desarrollo web. Estos son necesarios para aplicaciones más complejas y / o seguras.

Mi recomendación sería aprender PHP si eres un principiante y quieres comenzar a crear aplicaciones web. Si desea desarrollar multiplataforma, aprender Java o Python, estos son probablemente los más simples y los más comunes.

Hay muchos lenguajes de programación en el mundo, y JavaScript es uno de los más populares. Un lenguaje de programación generalmente incluye formas de almacenar datos en la memoria de la computadora, formas de manipular esos datos, formas de organizar el código y ejecutar el código repetidamente. Aprendiste a hacer todo eso en JavaScript a través de:

  • Variables : cómo declarar variables, asignar, reasignar y alcance local o global.
  • Tipos de datos : números, valores booleanos, cadenas, matrices y objetos.
  • Funciones : cómo agrupar el código en funciones, pasarle argumentos y devolver valores.
  • Condicionales : cómo usar sentencias if / else y expresiones lógicas.
  • Bucles : cómo usar while y para que los bucles repitan el código.

Debería haber especificado primero lo que ya ha aprendido.
Pero aun así intentaré responder tu pregunta. Hay mucho que aprender cuando se trata de la programación. Puedes aprender diferentes lenguajes C, C ++, Java, Python.
Puedes aprender técnicas como refactorización, patrones de diseño y diferentes bases de datos. Porque la programación no es solo escribir códigos. Se trata de escribir de manera eficiente y optimiza el código.

Puede suceder que, una vez que haya terminado con estos idiomas, pueda cambiar al lado del servidor, así como a las tecnologías del lado del cliente según sus intereses.

Puede que no sea muy importante (incluso si de alguna manera es importante). Y es la pregunta equivocada.

Tenga en cuenta que la programación es difícil , y se necesitan diez años para aprender a programar (y eso significa mucho más que la capacidad de hacer un pequeño programa con errores en algún lenguaje de programación único). Así que debería querer aprender programación, no (solo y en su mayoría) ningún lenguaje de programación en particular.

¿Una mejor pregunta es cómo aprender a programar? y esa pregunta ha sido formulada y contestada muchas veces.

Mi sugerencia es comenzar leyendo el SICP, que es un libro excelente y de libre acceso para comenzar a aprender a programar. El hecho de que use un lenguaje de programación (Esquema) simple pero no ampliamente utilizado en la industria no es muy importante, porque ese libro se centra en las ideas principales de la programación. Después querrás leer algo de Introducción a los Algoritmos.

Definitivamente Python. Python es un lenguaje muy versátil.

Puede codificar juegos con él (pygame), usar marcos de Pyhon como Bottle, Django, Flask, Tornado, etc. para crear sitios web, e incluso puede usarse para scripts del lado del servidor. ¡Cualquier cosa es técnicamente posible con Python (porque es un lenguaje de Turing)!

Encuentra una razón para aprender un lenguaje de programación …
por ejemplo

  1. C \ C ++ para el programa competitivo.
  2. PHP, Javascript para aplicaciones web …
  3. Java para aplicaciones de Android, aplicaciones empresariales, tecnología de big data, etc.
  4. Python para principiantes ..

    y la lista continúa … Por lo tanto, no hay nada como el programa recomendado. idiomas … es todo acerca de su necesidad … de esa manera usted desarrollará un interés en el aprendizaje del sumthing …
    Aprende porque no quieres que tengas que hacerlo.

Como muchos otros dijeron, debe completar el triplete del lado del cliente mediante el dominio de JavaScript y un marco productivo particular. Nuevamente con los demás, sugiero fuertemente a JQuery.

Sin embargo, necesita un poco de soporte del servidor. Puedes ir por Java o C #. Sugiero C #, ya que es más moderno que Java, pero el dominio de la plataforma para C # está restringido (en términos prácticos) a Windows.

Si consideras importante trabajar con otros entornos (Linux y MacOS), entonces Java es más recomendado.

Si desea ir por algo realmente avanzado, combinando paradigmas orientados a objetos y funcionales, y al mismo tiempo ser compatible con JVM (Java) y CLR (.Net), ¡vaya a Scala!

Según sus intereses, sugeriría:

> La programación funcional es muy interesante, echa un vistazo al lenguaje scala (será más fácil ya que estás familiarizado con java), puedes aprender esto desde coursera
> En relación con el desarrollo web, puede consultar las bibliotecas jquery, angular, bootstrap y muchas otras bibliotecas útiles, que harán su desarrollo mucho más fácil (lado del cliente)
> Powershell (puede ser muy efectivo para automatizar las actividades cotidianas relacionadas con Windows)

Mucha suerte para tu programación Quest 🙂

Si has hecho cs50 … ¿Estoy asumiendo que con Leitner o alguien más está enseñando la versión en línea (entonces, una vez más, Google le revela que tiene una nueva posición, así que probablemente ya no esté enseñando los cursos de introducción)? Si está interesado en aprender algoritmos o algo más, Python está bien, así que Perl o cualquier otro lenguaje interpretado. Si está interesado en aprender a programar como ingeniero de software, me gustaría ir primero a Java … Es lo suficientemente similar a C ++ (que la mayoría de los trabajos de ingeniería de software querrán saber) que puede hacer la transición con relativa facilidad y es más indulgente para los usuarios primerizos. Si realmente estuvieras tomando las clases en Harvard (o Extensión de Harvard), diría que tomas cs51. Un IDE como Netbeans o Eclipse también es útil para ayudarlo a aprender los paquetes y las bibliotecas a través de la finalización del código.

Luego aprende Ruby, aprender Ruby es divertido …

Pero le sugiero que, en lugar de aprender todos los idiomas que mencionó en el comentario, céntrese en uno o dos idiomas de su interés, domine esos idiomas y conviértase en un profesional en ese / esos idiomas.

Cree pocos proyectos utilizando esas habilidades, o contribuya a algunos proyectos de código abierto.

No importa que si puede codificar en muchos idiomas, lo que importa es qué tan bueno / experto sea en el idioma y sus habilidades para resolver problemas.

Todo lo mejor 🙂

En primer lugar, decir que aprendiste Java es un poco difícil de creer. Soy un desarrollador de C # / VB.NET y estoy corriendo duro solo para quedarme quieto, tal es la tasa de cambio. Entiendo que Java es bastante similar en ese frente.

Sin embargo, ¿qué hay de JavaScript? Te ayudará a cubrir todo el asunto web de extremo a extremo. Olvídese de pensar que es solo otro lenguaje curvo: elija las partes buenas de Dougles Crockford o busque sus videos en developer.yahoo.com. Estoy empezando a cambiar mis propios puntos de vista en JavaScript debido a sus cosas.