Estoy interesado en el desarrollo web pero no tengo antecedentes en él. ¿Qué lenguaje (s) de programación debo elegir y por qué?

1. HTML / CSS

Codeacademy HTML & CSS: curso interactivo de HTML y CSS sobre Codeacademy (en general, un buen recurso para aprender conceptos básicos de pocas tecnologías);

Sass y Slim: CSS y HTML mejorados. Es posible que no los necesite ahora, pero tenga en cuenta que muy pronto tendrá que echarles un vistazo más de cerca.

2. INSPECTOR WEB : una herramienta integrada en cada navegador, para verificar y editar HTML / CSS sin recargar una página, para analizar las solicitudes web enviadas por el navegador, para depurar JavaScript, trabajar con cookies, etc.

Chrome DevTools: documentación oficial para el inspector web en Chrome.

3. MARCOS FRONTALES

Bootswatch: temas gratuitos para Twitter Bootstrap. Allí también puede encontrar enlaces a algunos temas pagos (pero bastante baratos) que vale la pena mostrar a cualquier persona en el mundo;

Por qué Bootstrap podría ser * muy * importante: algunos detalles más sobre las razones por las cuales el advenimiento de tecnologías como Bootstrap es muy importante.


4. JAVASCRIPT : tarde o temprano, muy probablemente antes, su aplicación necesitará la funcionalidad que no puede implementarse con los medios estándar de HTML y CSS. Por ejemplo, un calendario o un formulario dinámico, o consejos emergentes. O lo más sorprendente: cuando necesita actualizar una parte de la página sin volver a cargarla por completo una solicitud AJAX. Este es el momento cuando tienes que estudiar JavaScript.

Codecademy – cursos interactivos en JavaScript. Una manera fácil de hacerse una idea de la sintaxis del lenguaje y aprender a escribir algunos programas simples;

WAT: una conferencia hilarante pero muy verdadera sobre la rareza de JavaScript;

Lo que necesita saber sobre el alcance de JavaScript: se trata del alcance del espacio de nombres en JavaScript, puede ayudarlo a evitar muchos errores en el futuro;

CoffeeScript: el sitio web oficial de CoffeeScript.

5. RUBY

GitHub Ruby Styleguide: si hay alguien que sabe cómo escribir un código increíble, estos son los chicos de GitHub;

Ruby: el sitio web oficial que sirve como un excelente curso introductorio a la programación de Ruby;

TryRuby: un curso gratuito en línea sobre algunos conceptos básicos de Ruby (diseño muy interesante). Una visita obligada para todos los novatos en Ruby;

6. RoR – En mi humilde opinión, Ruby on Rails es el mejor marco para desarrollar aplicaciones web.

Guías de Ruby on Rails: documentación oficial de Ruby on Rails;

Tutorial de Rails: uno de los libros más populares sobre Rails, escrito por Michael Hart;

Railscasts – iconic (en ciertas comunidades) Screencasts de Ruby on Rails. Si tiene algún problema, es muy probable que se haya resuelto en Railscasts. Desafortunadamente, el proyecto había sido abandonado por el autor, pero sus 417 números todavía están disponibles en línea y son muy recomendables para la revisión (cuando sea necesario);

PHP: un fractal de mal diseño: un artículo para aquellos de ustedes que están confundidos acerca de elegir entre Rails y PHP. Después de leer este artículo, la elección será obvia.

7. Bases de datos: ¿POSTGRESQL, MySQL o MongoDB?

Cómo funcionan las bases de datos: increíble artículo que explica cómo funcionan las bases de datos;

Introducción a SQL: curso interactivo gratuito sobre conceptos básicos de SQL. Debe hacerlo si no está familiarizado con SQL;

No vuelva a pasar por este camino: un excelente artículo que explica, en un lenguaje simple y claro, por qué nunca debe usar MySQL;

Por qué nunca debe usar MongoDB: otro artículo detallado e interesante esta vez que explica por qué nunca debe usar MongoDB;

La genialidad de PostgreSQL para los desarrolladores de Rails: ahora algunas cosas sobre lo que es tan bueno en PostgreSQL, especialmente para los desarrolladores de Rails;

Guía de Postgres: una guía para los novatos en PostgreSQL y SQL en general;

8. Guía paso a paso : plan de acción que le permitirá desarrollar su primera aplicación y dominar (a su debido tiempo) todo lo que necesita para el desarrollo de aplicaciones web.

Comience a programar : una lista de recursos para aprender a programar;

Plan de acción que le permitirá “aprender el desarrollo web lo más rápido posible” .

Libros :
“Autoeducación para desarrolladores web”: guía para aprender el desarrollo web desde cero. Desde elegir el editor hasta el entorno de producción;
“Una forma más inteligente de aprender JavaScript”: el mejor enfoque de aprender haciendo: escrito para principiantes, útil para desarrolladores experimentados que desean mejorar sus habilidades y no les importa cubrir un terreno que ya conocen;
“Una forma más inteligente de aprender HTML y CSS: aprende más rápido. Recuerda más tiempo”. – los capítulos cortos se combinan con ejercicios interactivos en línea gratuitos para enseñar los fundamentos de HTML y CSS. Escrito para principiantes, útil para desarrolladores experimentados que desean mejorar sus habilidades;
“Aprendizaje del desarrollo de aplicaciones web”: comprenda los fundamentos del desarrollo de aplicaciones web mediante la creación de una aplicación simple respaldada por bases de datos desde cero, utilizando HTML, JavaScript y otras herramientas de código abierto.

El desarrollo web es un campo amplio (que en sí mismo es solo un campo en un campo aún más amplio de programación de computadoras).

Primero debes decidir qué quieres hacer en el desarrollo web.
¿Te gusta crear interfaces web, el resultado que cada usuario en línea ve y usa? (Interfaz)
¿Te gusta hacer que esa interfaz web haga un trabajo real? (backend)

Es difícil, muy difícil de aprender y ser bueno en ambos. Pocas personas pueden hacerlo muy bien, aunque muchas personas conocen uno bien y tienen algún conocimiento del otro.

Después de decidir esto, ha reducido sus opciones y puede decidir cuál elegir de un grupo más pequeño.

También debe considerar el mercado real para esos lenguajes de programación (y también el mercado futuro), cuanto más grande mejor (pero también la competencia será más grande).

Lenguajes de programación front-end:

  • Javascript (muy solicitado en estos días y probablemente también en el futuro, comenzó a usarse también para la programación de backend, en cosas como Node.js)
  • HTML5 y CSS (no son lenguajes de programación per se, pero siguen siendo la base del desarrollo front-end, especialmente HTML5 que ahora está ganando terreno)

Lenguajes de programación de backend:

  • PHP (uno de los más populares y antiguos, muchos trabajos, muchos programadores también, utilizados en startups y empresas también – código abierto)
  • Java (este también es uno de los más populares, especialmente en el entorno empresarial: código abierto)
  • ASP.NET (punta de lanza de Microsoft en desarrollo web, sobre todo popular en entornos empresariales, no de código abierto)
  • Ruby on Rails (el nuevo marco de niño en el bloque que usa el lenguaje de programación Ruby, utilizado principalmente por startups – código abierto)
  • Python (uno de los más antiguos, utilizado también en empresas y startups – código abierto)
  • Coldfusion / CFML (uno de los lenguajes más antiguos y elegidos por las startups hace 10-12 años porque fue rápido de desarrollar, ahora se usa principalmente en el entorno empresarial, no es de código abierto, pero tiene un brazo, CFML, que es de código abierto)

Todos estos lenguajes tienen marcos que pueden ayudarlo a acelerar el desarrollo: http://en.wikipedia.org/wiki/Com

Y todos estos idiomas tienen un buen apoyo de la comunidad, por lo que no será un problema.

Junto con uno de estos lenguajes de programación (especialmente backend), es bueno conocer algunas bases de datos y SQL (los usará). MySQL y PostgreSql se encuentran entre las mejores opciones en el mundo de código abierto (Oracle, SQL Server es popular en el mundo empresarial). En el futuro, cuando esté más avanzado, también será bueno tener conocimiento de las bases de datos NoSQL (hay una tendencia hacia eso, especialmente en el mundo de las startups).

Es posible que desee probar varios idiomas y ver cuál es el adecuado para usted (por ejemplo, para mí se parece a la sintaxis que tenía ASP classic o Ruby / Ruby on Rails, y también Python), que se ajusta mejor que PHP, Javascript, Java, o la nueva sintaxis de estilo Dart).

Es posible que también desee leer las respuestas aquí, que explican con más detalle las opciones de desarrollo web:

  • Me gustaría aprender programación relacionada con la web. ¿Con qué debo comenzar?
  • ¿Qué software necesito para crear una base de datos de Internet como IMDb o similares? ¿Puedes dar algunas soluciones de software gratuitas / baratas y las mejores?
  • ¿Cómo puedo aprender los conceptos básicos de desarrollo web y administración de servidores? Intenté buscar tutoriales en Google, pero los resultados no fueron muy útiles. ¿Cuáles son algunos libros / recursos para construir una comprensión sólida de los fundamentos de back-end?

Si quieres aprender a programar, aprende Python. Es el lenguaje más bellamente estructurado e increíblemente poderoso. Si eso suena atractivo, echa un vistazo a Dive Into Python (diveintopython.org).

Sin embargo, si desea aprender a programar * para la web *, use PHP. Si bien algunos pueden burlarse del lenguaje, en realidad es bastante bueno, pero hay muchos programadores PHP malos que le dan un mal nombre. Pero la razón por la que hay muchos desarrolladores de PHP malos es porque tiene una barrera de entrada tan baja. Para alguien que comienza en el desarrollo web, no encontrará nada más tan gratificante al instante o tan amigable para los novatos como PHP. La documentación es de primera categoría, y la comunidad en torno a PHP es extremadamente enriquecedora, especialmente en comparación con la mayoría de los otros lenguajes. Todo lo que necesitas está en PHP.net.

Como dijo Adam, también necesitará aprender los otros lenguajes, tecnologías y técnicas web: HTML, CSS, Javascript y una biblioteca como JQuery. Como Daniel mencionó, CodeIgniter es un marco increíble para ayudarlo a estructurar su lógica en modelos, vistas y controladores, una vez que haya aprendido los conceptos básicos de PHP.

More Interesting

¿Por qué necesito un servidor para usar una base de datos?

Cómo agregar espacios en blanco adicionales en PHP

Aprendí HTML, CSS, Javascript, React, Node / Express + MongoDB. ¿Debo aprender Meteor o seguir mejorando las habilidades que tengo ahora para ser contratado?

Cómo alojar páginas JSP

Mis márgenes están configurados en "automático" y, sin embargo, claramente no tienen un ancho uniforme o igual en cada lado, ¿por qué?

En MailChimp, ¿cómo centras el botón de enviar?

Cómo escribir un código para pasar por páginas web como un humano automáticamente y obtener la información requerida

Estaba viendo a algunas personas en el código de YouTube, los temas de WordPress y todos sus archivos .PHP tenían HTML. ¿Por qué no usan .HTML para el tipo de archivo?

Estoy planeando crear mi propio blog sobre temas, pero el inglés no es mi idioma principal. ¿Debo contratar a un corrector de pruebas o usar algunas herramientas?

Sé C ++ y Java, ¿cuál es el mejor sitio web para mejorar mis habilidades de codificación?

Cómo ver el código fuente PHP de un sitio web, tal como vemos el código HTML y otros códigos

Estoy pensando en comenzar a trabajar en el desarrollo de backend. ¿Qué idioma debo elegir con la base de datos?

Mi presupuesto diario para publicidad es de $ 20. Nuestro objetivo son desarrolladores, frontend y desarrolladores web. ¿Cómo puedo usar este presupuesto de la manera más eficiente?

He descubierto que soy aficionado al desarrollo web. ¿Es este cambio de carrera responsable por ahora y lucrativo para el futuro?

Estoy planeando hacer un juego de navegador como Grepolis. ¿Qué necesito saber y qué lenguajes de programación debo usar?