¿Cómo convertirse en un desarrollador web autodidacta? Qué tutorial en línea seguir ya que hay muchos

Puede comenzar con lo siguiente para ser un WebDev decente:

  1. HTML + CSS + JavaScript (+ jQuery)
  2. PHP / node.js / python / java-spring
  3. Otras bibliotecas de representación del lado del cliente [Nivel avanzado]

Fuentes: puede usar cualquier plataforma de aprendizaje W3Schools, codeacademy, etc. Véalas como informativas.

Sin embargo, para ser bueno, debe comprender lo siguiente:

  1. ¿Cómo funciona la web? (modelo cliente-servidor)
  2. ¿Qué tipos de servidores web hay y cuáles son los ejemplos? (rosca simple versus rosca múltiple)
  3. Conocimientos básicos sobre Apache, NGINX
  4. ¿Qué es la arquitectura MVC?
  5. ¡Comprenda la diferencia de representación del lado del cliente en blanco y negro y del lado del servidor! (¡Mientras exploras esto, entenderás por qué Angular, etc. entró en juego y dónde usar qué!
  6. Comprende y aprecia , ¡Cómo funciona Javascript! (La mayoría de los desarrolladores hacen algunas cosas básicas de front-end usando JavaScript y creen que lo han dominado, pero déjenme decirles: “No han entendido JS si nunca vieron su modelo de procesamiento, bucle de eventos, bucle de eventos, herencia de prototipos, cierres, etc. . ”)

Todo esto viene leyendo algunos blogs increíbles, siguiendo algunas buenas publicaciones en medio, por suerte el medio tiene una función de ” SEGUIR “.

Fuentes (Véalas para obtener una perspectiva de “¡Qué demonios está pasando aquí!” Te permitirán echar un vistazo debajo del capó):

Free Code Camp, Eric Elliott, The JavaScript Collection [JavaScript]

The Bit Theories [Desarrollo web, diseño web y ciencias de la computación de manera holística]

Por último, los libros son los mejores recursos, puede encontrar algunos buenos libros en línea o comentar si desea que se incluyan en la respuesta.

Es bueno saber que quieres aprender a ser un desarrollador web.

Hay algunos recursos gratuitos realmente buenos que son mucho mejores de lo que probablemente aprenderás en tu universidad.

CS75 Por David J. Malan, Universidad de Harvard

Este es, con mucho, el mejor curso que he encontrado en Internet para el desarrollo web. El curso está muy bien diseñado y David Malan es un profesor increíble. Obtendrá una visión general completa de cómo se siente el desarrollador web y obtendrá algunas de las tecnologías web más destacadas.

Puede dirigirse a http://cs57.tv para ver todos los videos del curso y otros recursos. Recomiendo mucho este curso. No tuve la suerte de poder unirme a Harvard, así que utilizo los recursos que el profesor David pone.

Documentación oficial del usuario

Nadie puede enseñarle mejor que la documentación oficial. Es una información rica, directa (en la mayoría de los casos) y una forma más rápida de aprender un idioma. PHP tiene una de la mejor documentación. Dirígete al preprocesador de hipertexto

Consulte también algunas fuentes en línea que le informan sobre las mejores prácticas para escribir código en un idioma determinado. Descubrirá lo que se llama código “bueno” y código “malo”, en perspectiva del estilo de código.

CodeCademy

Una vez que tenga una idea básica del desarrollo web, y en qué área desea especializarse, y si desea aprender front-end o back-end, puede dirigirse a codecademy para encontrar todos los cursos relevantes.

W3Schools

Aunque no es el mejor recurso, obtendrá toda la información que necesitará en este sitio para ser un desarrollador web. Dirígete a w3schools.com

StackExchange

Este no es un sitio tutorial, sino un foro donde puede publicar sus consultas y responder las de otros. Es una excelente manera de compartir conocimientos y aprender cosas nuevas. Dirígete a Preguntas candentes – Stack Exchange

¡Espero eso ayude!

Convertirse en un desarrollador web autodidacta no se trata de seguir un único tutorial en línea. Depende de lo que ya sabes. Basándome en la pregunta, asumiré que en general eres un experto en temas de codificación y creación de productos digitales.

Simplifico las cosas, pero los sitios web / aplicaciones se basan en 2 capas principales:

  1. Front-end: con lo que los usuarios ven e interactúan
  2. Back-end: almacenamiento, servicio y procesamiento de datos

Interfaz

Los sitios web y las aplicaciones de navegador en línea usan HTML como estructura y marcado de contenido. Le permite describir vistas de aplicaciones componiendo bloques de código. Puedes diseñar esa estructura con CSS. Esos dos están unidos realmente fuertes. Entonces, en HTML, colocas un botón llamado “Enviar” y luego lo peinas en CSS agregando fondo azul, esquinas redondeadas y texto blanco. Ejemplo simple.

El problema es que por sí mismos esos dos tienen una naturaleza muy estática. Necesitas algunas interacciones. Java Script (en realidad, ECMA Script) es el lenguaje de secuencias de comandos nativo que entienden los navegadores. Permite, por ejemplo, agregar alguna acción cuando el usuario hace algo. Esos se llaman eventos. Digamos que si el usuario hace clic en el botón “Enviar” Muestra una ventana con “¡Gracias!”. No es útil en absoluto, pero es el ejemplo más básico.

Back-end

Por supuesto, desea que su aplicación sea más activa, recuerde los datos de los usuarios, procese los formularios enviados, etc. Ahí es donde entra en juego Back-end.

A diferencia del front-end, el código de back-end se ejecuta en el servidor. La tecnología que utiliza depende de muchos factores: costos, necesidades de rendimiento, cuánto conoce un lenguaje particular, marcos, bibliotecas, etc. En aplicaciones a gran escala, a menudo se mezcla y se divide en múltiples servicios separados. Pero para aplicaciones más pequeñas no es necesario.

Digamos que usarás Java. No solo necesita un servidor de hardware conectado a Internet, sino también un servidor de software instalado. El servidor de software es un entorno para ejecutar su aplicación. Maneja las solicitudes de los usuarios y sirve datos. Necesita saber qué y cómo servirlo, por lo que se necesita un código personalizado: su lógica empresarial. Aquí guarda los datos en la base de datos, maneja archivos, procesa formularios, etc.

Ahora conoce los conceptos básicos, lo cual es muy importante ya que le permite buscar recursos de conocimiento por frases clave.

Patrones de arquitectura

Hay algunos patrones comunes para cualquier idioma que desee utilizar, como la arquitectura basada en MVC / componentes MVCM y de front-end. Es un tema para múltiples artículos grandes o incluso libros en sí. Encontrará definiciones en Internet.

Un hecho importante es que los patrones le proporcionan alguna forma de consistencia, realmente importante en cualquier proyecto, excepto en los realmente triviales. Le permite escribir menos código mejor estructurado. Es más importante usar algunos pequeños trucos de codificación para guardar una o dos líneas de un código aquí y allá y pensar en lo inteligente que te hace.

Marcos, bibliotecas, herramientas.

Los patrones son guías genéricas, pero actualmente rara vez escribes un código desde cero. Utiliza marcos que proporcionan una implementación de patrón particular y manejan algunas tareas comunes detrás de escena más o menos. Las bibliotecas se utilizan para manejar algunas áreas de lógica comercial o técnica, como el manejo de fechas, dibujos, etc.

Para comprender la idea de las herramientas Primero debe saber que los marcos, las bibliotecas y las herramientas se crean con mayor frecuencia sobre otras. Lo llamamos dependencias. Las herramientas le brindan una forma de automatizar tareas que llevaría una eternidad hacerlo manualmente, como NPM para Node.js.

Almacenamiento de datos

Es manejado por Back-end pero Los datos se almacenan en bases de datos y archivos. Hay múltiples opciones disponibles. Las más comunes son las bases de datos basadas en SQL y NoSQL como MongoDB. Como arriba, tema para muchos libros. Para fines de aprendizaje, comience desde lo que quiera. Lo mejor es probar ambas soluciones para conocer los pros y los contras.

Algunos recursos en orden aleatorio:

  • Idioma oficial, tecnología, documentación de herramientas
  • Revista sensacional
  • Trucos CSS
  • Desbordamiento de pila
  • Lynda
  • Casa del árbol

No estoy afiliado a ninguno de esos. No he usado Lynda y TreeHouse, pero estos tienen paquetes de cursos si quieres que te guíen más a mano que saltar de documentos a tutoriales de múltiples fuentes.

Hay muchas más cosas que cubrir, como el control de versiones de código, el uso de IDE, el trabajo en equipo, la prueba de código, etc. Todo está fuera del alcance de una respuesta simple de Quora.

Los sistemas de gestión de contenido son la forma de comenzar rápidamente.

No tiene nada que ver con a quién sigues o qué tutoriales lees.

Siempre sugiero absorber todo el sitio web de Tizag Tutorials.

Necesita comprender lo siguiente:

  • Frontal – diseño / diseño. Plantillas CMS
  • Interfaz de usuario – diseño / función
  • Back end – base de datos / funciones a través de lenguajes / complementos / componentes orientados a objetos
  • Administración de archivos y seguridad
  • Gestión del servidor
  • Relaciones con el cliente / gestión empresarial

Si tuviera los mismos recursos que tenemos hoy con Youtube, esa habría sido mi principal fuente de aprendizaje hace 14 años (pero aún no existía)

¡Use instancias de servidor Amazon EC2 para alojamiento gratuito durante un año!

Gracias por la pregunta!

Es posible que desee cambiar su enfoque.

Si continúa con la dirección en que se dirige; ‘¿Cómo puedo ser bueno en esto?’, Sin duda experimentarás con tal vez algunos de lo que dices, ‘tutoriales’, que no serán una pequeña inversión de tiempo y dinero (aunque hay una gran cantidad de material gratuito) )

Si cambias un poco tu enfoque y dices quizás, ‘¿qué puedo crear que me ayude a lograr …? ¿más rápido o mucho más fácil? ‘o’ ¿qué puedo crear que ayude a nuestro departamento en el trabajo a racionalizar o automatizar este proceso repetitivo? ‘o’ ¿cómo puedo crear un currículum en línea ‘,’ aplicación web ‘, etc., etc. le dará un objetivo y un enfoque, así como comenzará a construir su confianza, lo que impulsará sus esfuerzos. Ahora, pregúntese, “¿qué tecnologías están involucradas para alcanzar mi objetivo?” Desde allí puede investigar y buscar en Google lo que necesita saber y quién ofrece los mejores recursos sobre el tema.

Los esfuerzos dirigidos ahorran tiempo, dinero y los pequeños proyectos que cree en el camino se convertirán en proyectos más grandes. Progresivamente se convertirá en lo que desea ser, un buen desarrollador web.

¿Hay realmente alguien autodidacta? No, a menos que hayas creado el libro del que estás estudiando …

¡Gracias por preguntar!

Si eres totalmente nuevo, primero aprende HTML y CSS. Después de eso, debes aprender JavaScript / AJAX. Más tarde necesitas aprender ASP / PHP.

Puede consultar el sitio web de w3school para comenzar a aprender:

Tutoriales web en línea de W3Schools