Con tanto tiempo en tus manos, ciertamente puedes aprender una buena base. Intenta incluir todo lo siguiente en tus ocho semanas como puedas. (Pareces un tipo inteligente y ambicioso, pero incluso probablemente no podrás terminarlo todo).
- Aprende HTML. Necesitará absolutamente al menos los conceptos básicos generales, para construir prácticamente cualquier cosa en la web. (Además de usar un creador de sitios que alguien más creó, de todos modos). No necesita conocer todas las complejidades de las nuevas capacidades de HTML5, sino al menos la estructura de una página web, las etiquetas comunes, etc. Por ahora , concéntrese solo en la estructura, no haciendo que se vea bien; eso es lo siguiente. Cree un sitio web, con algunas páginas web que se enlacen entre sí, y para rellenar en otro lugar.
- Aprende CSS. Necesitará esto para que el HTML se vea bien, o al menos no fugitivo. Una vez más, podría llevar esto muy lejos, pero al menos obtener el concepto general, las propiedades comunes, cómo interactúan y algunas de las trampas , como las diferencias del navegador (no memorizar qué hace qué, pero al menos una conciencia del problema) , guerras de especificidad, etc. Aprenda al menos un “procesador”, como SASS o Less, para que pueda hacer una mejor estructura. Use CSS para hacer que el sitio del paso 1 se vea bien.
- Aprende JS. Al principio, concéntrese solo en el idioma , no en ninguna biblioteca o marco. Conozca sus capacidades especiales, principalmente la manipulación DOM. Aprende sus trucos, como “infierno de devolución de llamada”. Aprenda sus bogosidades , como cuántas cosas están realmente “mecanografiadas en cadena” debajo del capó. Luego aprenda jQuery, más o menos la biblioteca estándar de manipulación DOM. Agregue algunos efectos basados en JS a su sitio.
- Ahora cambie al back- end y aprenda algunos marcos de aplicaciones web. Puede aprovechar su conocimiento de JS e ir a Node.js, o aprender otro idioma y probar algo un poco más simple como Ruby on Rails, o si desea estirar su mente en una dirección diferente (programación funcional) y estar en el corte prueba de borde Phoenix. Asegúrese de familiarizarse con los conceptos de cómo funcionan las aplicaciones web, como el ciclo de solicitud-respuesta, los códigos de respuesta, AJAX, etc. En este punto, aconsejaría seguir haciendo que el lado del servidor haga la creación de HTML … pero también aprender cómo diseñar y servir una API JSON RESTful. Convierta su sitio en una aplicación (haga que ingrese, almacene, procese y genere resultados muy básicos), sirviendo HTML y una API.
- Ahora vuelva al front- end y JS, y aprenda un marco de aplicación web front-end que puede consumir una API JSON, como Backbone, Ember, Angular, React, etc., etc. (alternativamente, puede probar Elm u otro lenguaje front-end, pero le recomiendo que lo guarde para más adelante.) Escriba una aplicación front-end para consumir la API de su sitio.
- Avance un paso más y aprenda Swift u Objective-C o las bibliotecas Java para la programación de Android o alguna otra forma de crear aplicaciones móviles. Aprende cosas como qué hacer cuando tu aplicación tiene conectividad lenta, escasa o nula. Escriba una aplicación para consumir la API de su sitio.