¿Dónde debe comenzar un principiante?

Es fantástico que estés interesado en comenzar con el desarrollo web. Acabo de dejar la escuela secundaria el año pasado y estaba en tus zapatos de manera similar. Tuve la suerte de encontrar una pasantía con una startup de desarrollo web (aunque no remunerada y 8 horas a la semana) que me permitía trabajar de forma remota, desde casa. Fue una experiencia fantástica y me permitió comprender realmente el desarrollo web del mundo real. Definitivamente es una avenida que seguiría si fuera usted, y si quiere ayuda, envíeme un mensaje, pero por ahora, vuelva a su pregunta:

En primer lugar, lo recomiendo contra PHP . Es un lenguaje drásticamente inconsistente, inseguro y repetitivo. Es uno de los más odiados en el mundo del desarrollo. Tienes una variedad de alternativas para el desarrollo web. Los más grandes son probablemente:

  • Ruby on Rails
  • Python con Django
  • Node.js en Javascript
  • Backbone.js en Javascript

Sin embargo, personalmente he tenido grandes experiencias con Rails, y realmente lo recomiendo. Entonces, ¿dónde aprender? Tienes suerte, ya que hay un tutorial gratuito para principiantes paso a paso para Rails ampliamente considerado como uno de los mejores de su tipo. Es conocido como el Tutorial de Michael Hartl Rails, y es fantástico: http://ruby.railstutorial.org/ru…

El Tutorial de Hartl lo llevará a través de todo lo que necesita saber, pero primero, algunos consejos, sugerencias y advertencias:

  • Es mucho más de lo que piensas. Hay mucho más para ejecutar un sitio web de lo que puedas imaginar. La mayor parte de su tiempo no se dedicará a la programación. Configurará su entorno, gestionará la implementación, migrará bases de datos, gestionará dependencias, etc.
  • Utiliza el control de versiones. Puede sonar opcional, pero te salvará la vida. Y cada trabajo que tengas en programación lo usará. Aprende Git ahora. El tutorial de Hartl te ayudará con eso.
  • No quieres usar Windows . No estoy tratando de comenzar una guerra del sistema operativo, pero Windows no está diseñado para desarrolladores web, excepto con .NET. Necesita un entorno similar a UNIX. Mac o Linux lo harán. Mac tendrá menos problemas de entorno de desarrollo, Linux será más configurable y gratuito. Puedes intentar hacer algo como Rails o Django con Windows, pero te arrepentirás.

Además, en lo que respecta a su idea, es brillante porque es un problema que definitivamente he experimentado yo mismo (he sido el tipo de PDF) y un servicio que me encantaría tener, pero le advierto que está entrando en un área legal peligrosa. La mayoría de esas tareas son de libros de texto y libros de trabajo protegidos por derechos de autor. Permitir voluntariamente que sus usuarios carguen archivos PDF de dichas tareas puede ocasionarle problemas legales. Lea sobre DMCA si no lo sabe y desea seguir esta idea.

Para concluir
Entonces, escribí un poco de ensayo aquí, pero creo que valió la pena. Sobre todo, quiero decir, no pierdas la esperanza . Sé que dije muchas cosas desalentadoras y desalentadoras, pero puedes hacerlo . Será difícil, pero eres mucho mejor por eso. Anímate y no dudes en enviarme un mensaje si tienes alguna pregunta 🙂

¡Hola! Realmente es genial que te interese la programación porque poder programar es increíblemente enriquecedor. Personalmente comencé en la universidad con lenguajes como Java y C, pero hice la transición a la programación web, ¡y nunca he mirado atrás! La programación web le brinda el alcance y el acceso a una amplia gama de personas y recursos, y es relativamente fácil comenzar. En cuanto a los idiomas y habilidades en los que enfocarse, soy un gran admirador del uso de JavaScript en toda la pila. . Es decir, se puede usar en el front-end para interacciones y comportamientos, al tiempo que potencia el back-end de su sitio. Esto le brinda un lenguaje consistente en todos los ámbitos y realmente acelera las cosas y lo ayuda a mantenerse en una mentalidad mientras desarrolla todo el proyecto. Javascript es un lenguaje bastante fácil para comenzar y más o menos solo tiene que actualizar el navegador para ver los cambios. ¡Es bastante increíble!

A continuación se muestra la pila de tecnología que estoy usando para alimentar un producto que estoy construyendo actualmente (la página de inicio está disponible en http://Orgbeat.com ):

En el front-end (las imágenes y las interacciones):

  1. html
  2. css
  3. javascript
  4. (Estoy usando un marco llamado Angular Js, creado por google)

En el back-end (los datos y las redes):

  1. node.js (este sería un lenguaje ‘comparable’ (ish) a php)
  2. mongoDB (esto sería ‘comparable’ (ish) a mysql)
  3. express (una capa en la parte superior del nodo que facilita un poco las cosas)

Me encanta la configuración actual y realmente creo que deberías probarla. Hay una gran cantidad de tutoriales y hay una increíble cantidad de progreso que se realiza con javascript todos los días.

¡Mucha suerte y espero que te diviertas en tu próximo proyecto!

También vea mi respuesta de @Quora a ¿Qué pasa con un lenguaje de programación que sea más fácil de entender? La respuesta de Rupert Russell a ¿Cuál es el lenguaje de programación más fácil de aprender para desarrollar programas de Android en el futuro?

Debe tomar esta clase gratuita de http://www.udacity.com/course/cs101 . Cubre la programación de Python y cubre muchos conceptos básicos con muy buenos detalles.