Undefined Academy
Conviertete en un/una Full-stack JavaScript Developer durante 16 semanas completamente gratis y online.
📚 Contenidos
Semana 1
Uso básico de la Terminal
Conociendo la terminal
Comandos alias para la terminal
El mundo del Markdown
Sintaxis básica de Markdown
Sintaxis saborizada en GitHub
Git: Control de versiones
Cómo crear un repositorio local y hacer tu primer commit
Las ramas y el uso de merge en git
Entendiendo cómo funciona git rebase
Git y los repositorios remotos
Introducción a HTML
Estructura básica de una página web
Hiperlinks y media en HTML
Introducción a CSS
Las hojas de estilos, propiedades y unidades en CSS
Modelo de caja en CSS
Cómo funcionan los selectores en CSS
Práctica de selectores en CSS
Cómo funciona el layout en CSS
Cascada y especificidad en CSS
🎓 Tu profesor:
Guillermo Rodas
Ha ayudado cientos de desarrolladores a mejorar sus habilidades a la vez que crean productos de calidad.
Desarrollador Full-stack en JavaScript de Colombia viviendo en Suecia.Organizador de la CSS Community Dev, y CSS Conf Colombia.Google Developer Expert en Tecnologías Web y Auth0 Ambassador.
🦄 Experiencia cómo educador
Profesor de 6 cursos en Platzi.
Coach técnico en el programa Platzi Master durante más de 2 años.
Mentor del Bootcamp Full-stack con World Tech Makers.
Más de 50 charlas en diferentes meetups y un par en conferencias.
🌟 Testimonios
Estefany Aguilar
Sr. Frontend Dev @teffcode
Guille es un excelente profesional que conoce el por qué de cada cosa y la explica de una manera increíble.Gracias a Guille y a sus enseñanzas en el Bootcamp, me enamoré del desarrollo web.
Carlos Azaustre
Google Dev Expert @carlosazaustre
Guillermo es un auténtico todoterreno. Si alguien es Full-stack, es él.No solo domina las tecnologías tanto del Frontend como del Backend, además las explica de una forma natural y sencilla que te hace comprenderlo perfectamente.
Juan Garces
Sr. Product Designer @juangarcesme
Guillermo no solo es un gran desarrollador, también es un excelente profesor.Una de las cosas que más admiro de el es la forma en que puede transformar un tema complejo de explicar en un mensaje claro y facil de entender.
🙋 Preguntas frecuentes
💸 ¿Cuánto cuesta el bootcamp?
Es totalmente gratis.⏳ ¿Cuánto dura / intensidad?
Son 16 semanas estimadas con 10 horas semanales (6 horas en vivo).🗓️ ¿Cuando empieza
Empezó el 1 de Marzo del 2023, pero aún puedes empezar.🎒 ¿Cuales son los requisitos?
Un computador con acceso a Internet y muchas ganas de aprender.📹 ¿Quedará grabado?
Sí, y lo puedes ver en diferido.💾 Ya se programar, ¿puedo asistir?
Sí, seguro aprenderás algo nuevo.🐣 No tengo conocimientos previos, ¿puedo asistir?
Sí, tendremos asesorías offline para apoyar a todos.🎟 ¿Hay cupos limitados?
No hay limite para ver clases, pero las mentorías offline serán limitadas.
🎉 Gracias
✅ ¿Qué más debo hacer?
1. Accede al Discord: https://undf.sh/discord
2. Empieza aquí: https://undf.sh/empezar✉️ Tu correo solo será usado para enviarte información relevante al Bootcamp.
🌟 Ayudame invitando a tus conocidos y conocidas 🌈 ¡En equipo se aprende mejor!
📚 Contenidos
Semana 1
Configuración del ambiente de desarrollo (Prework)
- Instalando Ubuntu en Windows 10/11
- Instalación de Git
- Configuración de las llaves SSH
- Creando una cuenta de GitHub
- Instalación de Node.js y Yarn
- Primeros pasos con VS CodeEl mundo del Markdown
- Sintaxis básica de Markdown
- Sintaxis saborizada en GitHubUso básico de la Terminal
- ️Conociendo la terminal
- ️Comandos alias para la terminalGit: Control de versiones
- Cómo crear un repositorio local y hacer tu primer commit
- Las ramas y el uso de merge en git
- Entendiendo cómo funciona git rebase
- Git y los repositorios remotosIntroducción a HTML
- Estructura básica de una página web
- Hiperlinks y media en HTMLIntroducción a CSS
- Las hojas de estilos, propiedades y unidades en CSS
- Modelo de caja en CSS
- Cómo funcionan los selectores en CSS
- Práctica de selectores en CSS
- Cómo funciona el layout en CSS
- Cascada y especificidad en CSS
Semana 2
Introducción a la programación
- ¿Qué es el código y los algoritmos?
- Sentencias y Expresiones en los lenguajes
- ¿Qué son los operadores en programación?
- Valores y tipos en el código
- Lenguajes interpretados y CompiladosJavaScript 101
- Tipos y valores en JavaScript
- JavaScript y sus variables var, let y const
- Igualdades en JavaScript
- Falsy, Truthy y Nullish en JavaScript
- Objetos y sus propiedades en JavaScript
- Funciones puras y mutación en JavaScript
- Los operadores lógicos en JavaScript
- Condicionales y ciclos en JavaScript
- El alcance en JavaScriptHTML Semántico
- El esquema del documento en HTML
- Artículos y secciones ¿Cuál usar y porque?
- nav, header, footer y aside en HTML
- ¿Para qué usar divs en HTML?
- time y address en HTML
- Los tags figure, figcaption, picture e imgFormularios con HTML
- Los forms clásicos en HTML
- inputs en los formularios de HTML
- Estilos para formularios en HTML
- Diferencia entre enlaces y botones
- Estilos para tus botones de HTML
- Controles modernos para formulariosJSON, DOM y CSSOM
- El formato JSON
- ¿Qué es el DOM?
- ¿Qué es el CSSOM?
Semana 3
Flexbox y CSS Responsive
- ¿Cómo funciona Flexbox?
- ¿Como funciona CSS Grid?
- Cómo usar Flexbox y CSS Grid en conjunto
- Layouts modernas con Flexbox y CSS Grid
- Posicionamiento con CSS
- ¿Qué es el Responsive Design?
- Cómo hacer imágenes responsiveEstructura moderna de un proyecto
- Breve historia del bundling y el tooling en JavaScript
- Webpack y cómo cambió el modo de desarrollar
- Vite cómo alternativa a WebpackFrameworks de UI
- Introducción a Bootstrap 5
- Introducción a Tailwind CSS
Semana 4
Librerías de Javascript
- Introducción a Lodash
- Introducción a Day.js
- JavaScript Vanilla: sin Lodash o Day.jsCSS en la practica
- Extendiendo CSS mediante SASS
- Evolución de las Arquitecturas de CSS
- Design Tokens con CSS Custom properties
Semana 5
ES2015 y más alla
- Template literals y la interpolación de Strings
- Diferencia de Rest parameters y Spread operator
- El ABC del destructuring en JavaScript
- La verdad sobre las arrow functions
- Map, Set, WeakMap y Weak Set
- Los for y el protocolo de Iteración
- Metódos en Array, Number, Object, - Boolean, String y Math
- Encadenamiento opcional y operador nullish coalescingProgramación asincrona
- Callbacks y el infierno de los callbacks
- Las promesas de JavaScript
- Los generadores en Javascript
- Async / Await en JavaScriptJavaScript Avanzado
- Herencia clásica versus herencia de prototipos
- Closures y el significado de "this"
- Programación funcional en JavaScript
- Aprende a usar Regex en tu día a día
Semana 6
JavaScript en producción
- ¿Qué son los Shim y Polyfills?
- Cómo usar correctamente Babel
- Minificación del código para producción
- Uso efectivo de los Source maps
- Code Splitting y eliminación del código no usadoIntroducción a React
- Introducción a React: JSX, Props Children y Estado
- Ciclo de vida moderno en React
- Eventos y Formularios en ReactReact avanzado
- Componentes de orden alto en React
- Patrón Render Props
- Todo sobres Hooks en React
Semana 7
Manejo de estado con Redux
- Redux: Acciones, Reducers, Store y Flujo de datos
- Acciones asíncronas y middlewares en Redux
- Mejora tu arquitectura con React Redux
- useRedux al rescateCreando apps con React
- Creando un dashboard con Create React App
- Creando un dashboard con Next.js
Semana 8
Introducción a Node.js
- ¿Qué puedo hacer con Node.js?
- Diferencias entre Node.js y JavaScriptIntroducción a Express.js
- Crea un servidor con Express.js
- Todo sobre Middlewares en Express.jsBases de datos NoSQL
- Introducción a MongoDB
- ¿Cómo conectarse a MongoDB desde Node.js?
- Las ventajas de usar Mongoose
Semana 9
Bases de datos SQL
- ¿Qué es el diagrama entidad-relación?
- ¿Cómo conectarse a PostgreSQL desde Node.js?
- Consultas esenciales en PostgreSQL
Semana 10
Creando una API
- Creando una API con Express.js
- Creando una API con Hapi.js
- Creando una API con Sails.js
- Usando Firebase cómo API
Semana 11
Autenticación y usuarios
- Autenticación con Passport.js
- ¿Cómo funciona OAuth 2.o?
- Usando Auth0 para nuestros MVP
Semana 12
Introducción a la seguridad Web
- ¿Que es injection y cómo evitarlo?
- ¿Cómo implementar autenticación de manera correcta?
- ¿Cómo evitar exponer datos sensibles en tus apps?
- Acceso, permisos y correcta configuración en un servidor
Semana 13
Introducción a los servidores
- Permisos de usuarios y sistema de archivos
- Conexión SSH a un servidor remoto
- Manejo esencial de VIMServidores como servicio
- Mi primer servidor en Digital Ocean
- Cómo despliego mi app en Fly.io
- Despliega más rápido con Vercel
Semana 14
CSS Avanzado
- Todo sobre tipografía en CSS
- Transiciones y Animaciones en CSS
- Sistemas de Diseño con CSS
Semana 15
El mundo del testing
- Los principios del testing
- Unit testing en nuestras apps
- Snapshot testing en React
- Cómo hacer buen mocking con los tests
- ¿Qué son los tests funcionales o de integración?
- Tests de integración completa (E2E)
Semana 16
Contenedores
- Introducción a los contenedores
- Instalando y configurando Docker
- Introducción a Kubernetes
- Usando Kubernetes con Google Cloud PlatformIntegración Continua
- Integración continua y despliegue continuo
- Configura tu ambiente de Integración continua