Si quiero aprender solo un lenguaje de programación y uno para desarrollo web, ¿cuál debo elegir?

TL; DR : si quieres aprender un solo idioma de verdad, entonces debes elegir dejar cualquier idea sobre desarrollo web 😀

Dicho esto, suponiendo que quisieras decir algo como “solo un lenguaje de programación para el primer período en el que trabajo como desarrollador”, entonces estoy de acuerdo con Sayo Oladeji: definitivamente elige JavaScript (y posiblemente algunos jQuery), ya que te permitirá básicamente todo lo que necesita (tal vez no de la mejor manera, está bien, pero estamos hablando de cosas para empezar, ¿no?).

Además de los lenguajes de programación correctamente llamados, por supuesto, debe estar al menos entre cómodo y competente con lenguajes de marcado (a saber: HTML + CSS ).

Solo recuerda que, como profesional, NUNCA debes poner un techo a cuánto aprenderás; solo piense en programar y manejar su sed de conocimiento 🙂

Editar: he leído sus preguntas a Sayo y si se refería a aprender dos idiomas diferentes (es decir, “uno para la programación” significaba “uno para proyectos no web de programación”), definitivamente vaya a Python : más fácil de aprender, propósito general y alto nivel suficiente para que puedas concentrarte en aprender realmente a codificar (y pensar como un codificador) haciendo el trabajo pesado por ti.

Como alguien me preguntó en privado sobre eso, en caso de que confíes en mí lo suficiente como para obtener algunos consejos para tus primeros pasos, comenzaría como lo discutí aquí 🙂

Recomiendo comenzar con una comprensión básica de cómo se crean los sitios web estáticos utilizando HTML y CSS, así como qué es un navegador / servidor / etc. Cualquier libro de desarrollo web básico te enseñará eso.

Luego estudiaría JavaScript, que es esencial para el desarrollo web y tiene la posibilidad de satisfacer sus necesidades de lenguaje de programación del lado del servidor (a través de nodeJS).

Luego pasaría un rato jugando con PHP, te dará una base razonable para comprender la programación del lado del servidor y probablemente tenga la mayoría de los recursos para ayudarte con eso.

Asegúrese de tomarse un tiempo para comprender los conceptos básicos de las bases de datos, mysql le servirá bien.

El punto más importante que podría hacer: no gaste demasiado tiempo en un tema específico; obtener una visión holística de lo que está sucediendo es más importante que memorizar una determinada API. Una vez que lo consiga, podrá sumergirse fácilmente en lo que más le interese o lo que requiera su trabajo.

Lo primero que debe recordar es: NO ENTRE EN PÁNICO. Una vez que dominas un idioma, aprender otros se vuelve más fácil (no necesariamente trivial, pero definitivamente más fácil). Los empleadores también lo saben.

Si quieres una comunidad vocal extremadamente poblada, ve con Ruby on Rails. Si quieres (en mi opinión) programadores en su mayoría mejores (más hábiles), ve con Python O Ruby sin Ruby on Rails (Sinatra). Más simple es mejor, que es una lección que todo el mundo parece necesitar recordar constantemente.

Realmente piensas en tu lenguaje de programación [0], en lugar de “código” en él. Por lo tanto, la elección que haga dependerá de cómo piense y qué idioma le resulte más cómodo. Por ejemplo, hay numerosos programadores excelentes de JavaScript, pero son como diamantes en bruto.

[0] Errores en tus programas

Javascript ! Eso es obvio.

Este es el por qué
Puede crear aplicaciones web de extremo a extremo con Javascript.

Backend : hay un controlador Javascript MySQL.
Middleware : ¡puede codificar toda su lógica y presentación de negocios del lado del servidor (API y representación de página) en Javascript! Eche un vistazo a Node.js y io.js. ¡Incluso puede ejecutar su lógica de negocios en una infraestructura Java bien probada y comprobada! Echa un vistazo a Nashorn. En Nashorn, incluso puedes hacer cosas geniales como llamar directamente a las clases de Java, extender las clases de Java, implementar interfaces y otras cosas increíbles. ¡Piense en cuántas bibliotecas de Java existen esperando ser aprovechadas por el próximo ninja Javascript en el que se convertirá!
Frontend : puede crear aplicaciones web basadas en navegador en Javascript (consulte ember.js, jQuery, Angular.js, Backbone.js, etc.). También puede manejar aplicaciones móviles BASADAS en HTML5 con Javascript (eche un vistazo a Cordova / PhoneGap). Muchas plataformas móviles ahora admiten el desarrollo HTML / JS (Windows 8, BB10, Firefox OS, etc.)

Ahora puede incluso programar algoritmos competitivos con Javascript (consulte HackerRank, Codility, etc.).

Los ancianos dicen que ” todo lo que se puede hacer con Javascript eventualmente se hará con Javascript” .

NB: ¡Personalmente no me gusta Javascript!

EDITAR:
Realmente deberías echar un vistazo a Undertow.js: uso de JavaScript del lado del servidor con WildFly

Refs:
Oracle Nashorn: un motor JavaScript de próxima generación para la JVM
Documentación API de Apache Cordova

JavaScript : un lenguaje de programación para gobernarlos a todos: p.

JavaScript todavía es joven y está creciendo muy rápidamente, pero esa debería ser la razón para elegirlo como el lenguaje de programación si solo desea aprender un idioma.

Estas son algunas de las cosas por las que:

Frontend : es el motor de ejecución de facto en todos los navegadores / vistas web.

Backend : hay muchas plataformas que ejecutan JavaScript además de los navegadores que pueden actuar como servidores. Los principales serían nodejs / io.js, pero no se limitarán a ellos.

Sistema operativo : NodeOS es una iniciativa tomada por pocas personas para desarrollar un sistema operativo sobre nodejs, que se encuentra directamente sobre el núcleo de Linux.

Hardware : Tessel es un microcontrolador que ejecuta JavaScript.

Desarrollo nativo móvil : ReactNative es un proyecto de Facebook. Utiliza JavaScript para escribir componentes nativos (en realidad está en React).

Aplicaciones de escritorio : nwjs (anteriormente llamado Node Webkit) se puede usar como plataforma para desarrollar aplicaciones de escritorio usando JavaScript.

Estas son algunas de las muchas plataformas que JavaScript ha tocado hoy.

Esto no significa que JavaScript sea excelente como lenguaje de programación, la gran flexibilidad que proporciona también es su principal desventaja. Es muy fácil escribir código realmente malo en JavaScript en comparación con otro lenguaje de programación.

Me encanta escribir código en JavaScript, pero no lo recomendaré a alguien que esté comenzando con la programación. No te limites solo a un lenguaje de programación. Aprender diferentes lenguajes de programación ayuda a encontrar deficiencias en el actual, de esta manera siempre puedes improvisar.

Mi recomendación es comenzar con Python . La facilidad que proporciona Python hace que te enamores de la programación.

Según mi opinión, ¡ comience con Python ahora!
Es fácil de aprender y le proporcionará los componentes básicos que necesita para ramificarse a otros idiomas. Las herramientas de desarrollo web como Django , Python pueden llevarlo a esa posición lucrativa que siempre creyó que sus ideas estaban aseguradas.

Por que Python

  • Python es un lenguaje dinámico y fuertemente tipado
  • Gramática de la forma Backus-Naur
  • Gestión de memoria incorporada
  • Python tiene cinco tipos de datos estándar: Números, Cadena, Lista, Tupla y Diccionario.
  • La instrucción if le permite crear una función principal que será el punto de inicio de la ejecución
  • Definiciones de métodos con argumentos y declaraciones de retorno
  • Las clases actúan como definiciones de tipo
  • Tipificación polimórfica
  • Bibliotecas estandarizadas para tareas comunes como entrada de archivos, salida, sockets de red, operaciones HTTP, coincidencia de expresiones regulares, etc.
  • Soporte científico y numérico con SciPy, Pandas, IPython, NumPy, matplotlib, etc.
  • Herramientas de prueba xUnit

Lea también las siguientes respuestas,
La respuesta de Kah Keng Tay a Tengo un mes de tiempo libre. ¿Qué idiomas de codificación puedo aprender que serán útiles en el futuro ya que soy un estudiante de primer año en el departamento de TI?
La respuesta de Tarique Iqbal a ¿Qué habilidades se requieren para dominar la codificación?

Mientras sea experto en Python (se convierta en experto al menos en un lenguaje de programación), tendrá la capacidad de hacer frente a cualquier otro / nuevo lenguaje de programación.

Si realmente quieres una experiencia interesante, te recomiendo Clojure. Puede comenzar en cualquier nivel de “terreno” que desee, y no será dolorosamente difícil. También aprenderá algo de Lisp que proporcionará a sus cerebros una buena experiencia nueva. También puede usar ClojureScript y compilarlo en JavaScript para sus cosas frontend.

Por supuesto, si no desea alejarse de la familiaridad, tiene Ruby o Python a su disposición. Todos ellos son amigables para los novatos, por así decirlo: no te castigan demasiado y con demasiada frecuencia por no ser un gurú del lenguaje.

Aconsejaría en contra de PHP porque realmente puedes aprenderlo rápidamente si surge una necesidad, pero, en mi experiencia, no alienta a las personas a convertirse en “mejores programadores”, sea lo que sea que ese término signifique.

Es bueno saber JavaScript si va a hacer un desarrollo front-end usted mismo. Ahora también tiene Node.js, por lo que también puede hacer un código JavaScript del lado del servidor realmente interesante.

Bueno, solo puedes aprender un idioma para gobernar la programación general y el desarrollo web.

La mejor opción será: Python

  • Core Python para programación general (aplicaciones de consola, aplicaciones GUI).
  • Frasco, Django para desarrollo web.

También puedes considerar JavaScript.

  • Puede hacer la programación general de la consola en la consola del navegador web (Ctrl + shift + J) en Chrome o usar NodeJs para programar en el terminal.
  • Puede usar Nodejs como back-end para aplicaciones web.

Pero cada idioma tiene sus pros y sus contras. Los lenguajes de programación son como herramientas para realizar una tarea específica. No puede usar un martillo cada vez para fijar un clavo en la pared y también para hacer muebles. Ambos son trabajos diferentes, ambos necesitan herramientas diferentes.

Bueno … va a ser complicado. Por lo menos, necesita tener una idea sobre HTML y CSS, que ya son dos, pero si no cuenta los lenguajes de marcado, entonces el que debe elegir es probablemente Javascript.

Es difícil hacer que muchos de los trucos modernos funcionen sin JS, especialmente si te gustan los frameworks.

Si está más interesado en la codificación ‘back end’, y su interés radica en armar una aplicación web, y está trabajando con alguien más que puede manejar el JS, entonces tiene otras opciones. De hecho, en estos días JS también se puede usar en el servidor, a través de cosas como node.js, pero realmente no entiendo por qué querrías hacer eso (no soy un gran fanático de JS donde tengo otras opciones) .

Entonces: hay PHP, que parece estar un poco pasado de moda recientemente, pero hace el trabajo y ha existido durante años, por lo que hay muchos consejos y extensiones; Ruby, (o más específicamente Ruby on Rails) que enfatiza la simplicidad del código y es útil fuera de las cosas web; ASP.NET si desea seguir la ruta de Microsoft: esto le permitirá codificar en C #, lo que podría ser útil si está interesado en desarrollar para Windows y para la web; Java, que de nuevo está un poco pasado de moda, pero funciona bien para cosas a gran escala y funciona fuera de la web, etc.

Básicamente, hay muchas maneras de desollar a un gato: realiza una búsqueda en el “desarrollo web de idiomas más populares” o algo así y comienza a investigar los idiomas en la lista que obtienes. Tal vez intente armar una aplicación simple en algunas de ellas y ver cuál está de acuerdo con usted. De lo contrario, si está más concentrado en el empleo, vea qué tiende a usarse en el tipo de trabajos que le gustaría realizar …

En mi opinión, puedes aprender Dart ( https://www.dartlang.org/ ).

Dart fue diseñado para ejecutarse tanto en el navegador como en el servidor.

En el navegador, Dark puede compilarse a JavaScript y ejecutarse en todos los navegadores modernos. Tiene muchas bibliotecas incorporadas.

En el servidor, Dark proporcionó una máquina virtual para ejecutar el programa de dardos directamente.

Ver también:

Javascript se puede ejecutar con io.js (también conocido como nodejs) en el servidor.
Golang puede ser compilado a JavaScript por gopherjs ( https://github.com/gopherjs/goph …)
Python puede compilarse a JavaScript mediante skulpt ( http://www.skulpt.org/ )

A los efectos de esta respuesta, estoy equiparando la sintaxis con el lenguaje de programación, aunque sé que no son lo mismo.

Si está pensando en aprender solo un idioma, no aprenda ninguno y pague a alguien más para que haga sus sitios web.

Esto no es un jab snob. Realmente necesitas al menos HTML / CSS / javascript. Eso es tres sintaxis diferente. Además, es probable que desee aprender algunos marcos o bibliotecas de JavaScript. Por ejemplo, Jquery.

Y eso si estás planeando hacer cosas de front end. Agregue los idiomas que necesita para el desarrollo de back-end. Desde php o ruby ​​o python o C # plus SQL plus XSLT

Por supuesto, si aprendes bien solo un idioma, podrías ser parte de un equipo, pero confía en mí, tendrás que aprender más si quieres mantenerte actualizado.

Esto es. Hay mucho que aprender a hacer un sitio web activo.

Sin embargo. Si solo quieres hacer un sitio web pasivo, entonces solo HTML + javascript.

O incluso no aprenda hormigas y simplemente aprenda bien un CMS, por ejemplo, WordPress o drop al o incluso Salesforce.

Por mucho que lo desprecie como idioma, JavaScript sería el único idioma que recomendaría que la mayoría de las personas aprendan si solo pueden aprender uno solo. Necesitas saber HTML + CSS para el desarrollo web, así que ahí están tus dos. Como otros han señalado, en estos días puede usar JavaScript para codificar tanto su interfaz de usuario como el back-end para aplicaciones web.

Para las personas con una inclinación más esotérica, les sugiero que aprendan Clojure + ClojureScript en lugar de JavaScript. ClojureScript se compila en JavaScript y está diseñado para ejecutarse en un navegador web, como reemplazo directo de JavaScript. Clojure es el lenguaje que usarías para el desarrollo de backend.

Las similitudes entre Clojure y ClojureScript son mucho mayores que las existentes entre Java y JavaScript: una vez que conoce Clojure moderadamente bien, es muy fácil ponerse al día y ser productivo con ClojureScript. Por eso, voy a llamar a Clojure + ClojureScript un solo lenguaje.

Es muy divertido trabajar con Clojure y ClojureScript, y también tiene acceso a todas las bibliotecas Java y JavaScript.

Como Sayo Oladeji ya escribió, JavaScript es excelente para el desarrollo web, ya que puede usarse para ambos: front-end y back-end. La pregunta es ¿qué quieres construir? Si solo desea crear una aplicación web que tenga registros en una base de datos, javascript es suficiente. Si necesita hacer cosas más complejas, debe pensar en algo adicional.

Los lenguajes de programación son herramientas. Entonces, antes de elegir un idioma adicional, debe tener en cuenta los requisitos. ¿Qué se supone que debe hacer tu aplicación? Con este conocimiento, tiene sentido elegir un idioma, una herramienta para la tarea. Sin ella, no podrás tomar una muy buena decisión. En caso de que solo necesite un lenguaje para aprender sobre conceptos, tal vez eche un vistazo a Ruby o Python (orientado a objetos) o Haskell o Elixir (tal vez Erlang) (que son lenguajes funcionales).

Si le gusta hablar sobre idiomas y posibles propósitos, también me gustaría hablar más sobre esto. Solo contáctame.

El desarrollo web hoy en día requiere JavaScript, HTML y CSS. Se ha señalado que JS también puede hacer la interfaz de usuario, pero si desea hacerlo bien, necesitará saber HTML y CSS. Dicho esto, no veo que el desarrollo web o el welopment (como lo llamo) sea posible solo con JS, al menos no en este momento. Sospecho que muchas personas no están considerando HTML y CSS como lenguajes: \

En cuanto a simplemente aprender un lenguaje de programación, creo que puedes elegir ciegamente. Al final del día, los paradigmas y conceptos detrás del lenguaje son lo que es realmente importante.

Para la web, JavaScript. Ver mean.io.
Para todo lo demás, depende de lo que le interese, pero C ++ es una buena apuesta para un lenguaje de sistemas. Java es una buena apuesta para básicamente todo lo demás.
Hay más idiomas y más razones por las que elegiría uno que otro, pero JavaScript, C ++ y Java son absolutamente los idiomas más utilizados y populares en el mundo de hoy.

Front-end, debes aprender HTML, CSS, Javascript
lado del servicio, primero debes aprender PHP, porque PHP es más popular en el desarrollo web. Muchos marcos web y CMS usan PHP (incluyen muchos sistemas de comercio electrónico de código abierto).
Python debería ser la segunda opción.
Si tienes tiempo libre, deberías aprender más, por ejemplo, Golang, Ruby, Java …

Te estás limitando solo aprendiendo dos, y probablemente necesites aprender algunos más. Si no tiene experiencia previa en programación, en estos días, recomendaría Python y Javascript.

Realmente no me gusta Javascript pero está en todas partes en estos días, y si estás haciendo cosas webby seguramente lo necesitarás.
Python es un lenguaje más agradable que puede hacer un trabajo útil para usted cuando aún no lo sabe todo, pero se adapta bien a medida que aprende su profundidad.
No explicas por qué quieres aprender esto. Probablemente aprenderá mejor la programación haciendo proyectos de hobby de Python, pero Javascript pagará las facturas en el futuro previsible.

Lo que ya se ha dicho es correcto. Cualquiera de los principales idiomas web es útil para aprender el desarrollo web. (php, ruby ​​on rails, django, etc.)
Si aún no lo ha hecho, asegúrese de aprender HTML porque lo necesitará para todo el desarrollo web.
Javascript no es necesario cuando recién estás comenzando. Puede pensar en JavaScript como “comentarios instantáneos”, por lo que cualquier cosa que desee que suceda en la pantalla sin que el usuario tenga que volver a cargar la página.

Me parece que aprender Python sería tu mejor apuesta. Es un lenguaje de alto nivel que puede ser funcional u orientado a objetos, dependiendo de si estás jugando o trabajando en un proyecto serio. Una vez que se sienta cómodo con Python, puede elegir django, que es ideal para un rápido desarrollo de backend. en el lado frontal, necesitará aprender html / css como mínimo.

Creo que encontrará que la gente recomendará una amplia gama de lenguajes para desarrollar. El mejor lugar para comenzar es comprender HTML y los conceptos básicos de CSS. En última instancia, sea cual sea el idioma que aprenda, generará algún tipo de HTML y se basará en CSS, por lo que ese debería ser el punto de partida.

No creo que haya un “mejor” lenguaje. Le recomendaría que aprenda PHP y MySQL como back-end de la base de datos, ya que al menos para mí, fue el más fácil de aprender. Sin experiencia previa en programación (aunque antes conocía Basic y Pascal) antes de saltar al desarrollo web, la mayor parte de lo que me rodeaba eran aplicaciones PHP. Literalmente aprendí leyendo página tras página de código fuente que afortunadamente fueron bien comentadas de otras aplicaciones.

Afortunadamente, hoy en día hay sitios como Code Academy que lo ponen al día con los lenguajes populares como Javascript, Python, Ruby, etc. Pero incluso allí los conceptos básicos serán HTML y CSS.

Independientemente del idioma con el que comience, encontrará muchas similitudes en las estructuras de datos y códigos que puede usar para aprender a otros con menos curva.

More Interesting

¿Por qué termina mi página cuando se hace realmente larga?

Quiero construir un sistema de chat que pueda servir a miles de personas en el mismo canal mientras que aloje varios canales que también puedan albergar la misma cantidad. Conozco los conceptos básicos de la programación del servidor en Java, pero no estoy seguro de qué técnica debo usar para permitir tantas conexiones.

Estoy en un grupo desarrollando una aplicación en ASP.NET sobre atletismo. ¿Debo ir con Web Forms o MVC, y cómo puedo convencer a los miembros de mi grupo?

Soy un novato total en los marcos de desarrollo web. Suponiendo que conozco HTML / CSS, un poco de experiencia en PHP / MySQL (solo sintaxis básica), comenzando a aprender JS, ¿debería centrarme en sumergirme profundamente en LAMP o aprender un nuevo lenguaje como Opa?

Mi comprensión de cómo usar las API RESTful está jodida. ¿Qué tengo que hacer?

Creé un formulario de inicio de sesión y registro simple en el código Ignitor. ¿Cómo puedo escribir el código para enviar un correo electrónico cuando la casilla de verificación del usuario olvidó la contraseña y también el código para recordarme?

Aprendí HTML, CSS, JavaScript y jQuery, y diseño receptivo. ¿Estoy listo para solicitar empleo?

Sé HTML 5, CSS, conceptos básicos de JavaScript y ASP .NET. ¿Qué más necesito saber para aprender MVC?

¿Cómo puedo convertirme en un desarrollador web perfecto dentro de un año?

¿Cuál es la mejor opción para construir un sistema de gestión de la sociedad, Entity Framework o ADO.NET? ¿Por qué?

Estoy frustrado. Hace días que no trabajo. ¿Por qué es difícil configurar MySQL, Apache y PHP en una Mac Yosemite?

He estado lejos de PHP por casi dos años. ¿En qué debería centrarme para conseguir un trabajo de liderazgo tecnológico en PHP? ¿Qué es lo último en PHP hoy en día?

Sé HTML, CSS, JavaScript, jQuery y AngularJS. ¿Qué puedo aprender a continuación?

¿Cómo lidian los programadores de lenguaje de script (PHP, JavaScript y Python) con el mal soporte de autocompletar en IDEs?

Voy a aprender PHP este verano en un entrenamiento de 6 semanas. ¿Podré desarrollar un buen sitio web?