Skip to content

nobeeakon/bootcamp

 
 

Bootcamp @Laboratoria

All Contributors

Node.js CI

Introducción

El bootcamp de Laboratoria es un programa de aprendizaje inmersivo de 6 meses enfocado en los perfiles de Front-end Developer y UX Designer.

Nuestro modelo de aprendizaje se basa en simular un ambiente laboral que te prepare desarrollando habilidades técnicas y socioemocionales necesarias para comenzar a trabajar.

El aprendizaje basado en proyectos es el eje central de la experiencia de aprendizaje de nuestro bootcamp. Trabajar en una serie de proyectos, de complejidad gradualmente creciente, te permitirá ir desarrollando las habilidades necesarias; de todas las habilidades, consideramos que el Autoaprendizaje es la más importante; no sólo es una habilidad indispensable para el trabajo que te espera, si no que es también una poderosa herramienta para ser autosuficiente, segura de tu talento y habilidades.

Mapa de proyectos

El mapa de proyectos se divide en 4 etapas: Admisión, Common Core, Track (Front-end Development y UX Design) y Electivos.

Pre    | Common Core          | Track                                                   | Electivos         |
===    | ===========          | =====                                                   | =========         |
       |                      |                                                         |                   |
       |                      |  Frontend                                               |                   |
       |                      |  social-network > md-links     burger-queen             | battleship        |
       |                      |  /                         \  /                       \ |/                  |
       | cipher               | /\                          > -burger-queen-api-client >|-social-network-fw |
       |      \               |/  \                        /  \                       / |\                  |
trivia |        > data-lovers |   md-links > social-network    burger-queen-api         | tic-tac-toe-rn    |
       |      /               |\                                                        |                   |
       | luhn                 | \                                                       | service-design    |
       |                      |  UX                                                     |/                  |
       |                      |  small businesses > redesign-and-data > ux consultancy  |-design-sprint     |
       |                      |                                                         |\                  |
       |                      |                                                         | visual-design     |
       |                      |                                                         |                   |

Evaluación

Durante el transcurso de cada proyecto nuestro equipo de coaches hará un seguimiento individual de tu trabajo y el de tu equipo (si es en grupo).

El tiempo estimado para completar un proyecto puede variar dependiendo de cómo vayas avanzando y aprendiendo. Asegúrate de conversar con tus coaches para que te ayuden a planificar y definir el alcance de lo que quieras y necesites implementar para conseguir los objetivos de aprendizaje del proyecto. Recuerda que los objetivos de aprendizaje son más importantes que la completitud de tu proyecto.

Al final del proyecto, tendrás una sesión de feedback con tus coaches. Antes de esta sesión tendrás que reflexionar y autoevaluarte respecto a los objetivos de aprendizaje. En esta sesión de feedback validarás tu autoevaluación con tus coaches. En caso de no haber conseguido algunos objetivos, podrá ocurrir:

  • Si se trata de objetivos de aprendizaje que vuelven a aparecer más adelante en otros proyectos, pueden quedar simplemente anotados como pendiente y podrás continuar con otro proyecto.
  • En caso contrario, tus coaches te recomendarán cómo seguir para alcanzar los objetivos de aprendizaje que te falten, pudiendo ser a través de continuar con el proyecto (más tiempo), hacer un proyecto complementario, etc.

Recuerda que cada una aprende a su ritmo y lo importante es ir obteniendo las habilidades asociadas a los objetivos de aprendizaje de forma gradual. Tus coaches y compañeras están ahí para apoyarte.


Etapa 0: Preadmisión

La etapa de admisión empieza antes de ser aceptada a nuestro bootcamp. Al final de cada proceso de admisión invitaremos a candidatas preseleccionadas a completar presencialmente un proyecto en una de nuestras sedes.

Proyecto: Trivia

En este proyecto tendrás que construir una aplicación web que le permita a un usuario responder distintas preguntas escogiendo sus respuestas de una lista de alternativas.

El objetivo principal de este proyecto es, tener una primera experiencia desarrollando aplicaciones web (WebApp) que interactúen con el usuario a través del navegador y la lógica, utilizando HTML, CSS y JavaScript como herramientas.


Etapa 1: Common Core

Todas las estudiantes admitidas, comienzan con el common core. Durante esta etapa trabajarás en dos proyectos:

  1. Primero puedes elegir entre Cifrado César y Tarjeta de Crédito Válida. Ambos proyectos comparten los mismos objetivos de aprendizaje.
  2. Después, tendrás que trabajar en Data Lovers.

Al final del common core participarás en una o más hackathones trabajando en proyectos más pequeños propuestos por Laboratoria y/o empresas/empleadores externos.

Proyecto: Cifrado César

Este proyecto require implementar una aplicación web basada un boilerplate que permita cifrar y descifrar texto usando la técnica del cifrado césar.

El principal objetivo de aprendizaje de este proyecto es tener una primera experiencia construyendo una aplicación web, utilizando los conocimientos adquiridos sobre User Experience Design y JavaScript. Esto incluye diseñar un producto pensando en los usuarios, construir una interfaz, escuchar eventos básicos del DOM, escribir lógica para llevar a cabo el cifrado y descifrado, tests unitarios básicos para comprobar (y documentar) dicha lógica, y manipulación del DOM para mostrar (escribir) los resultados.

Este proyecto requiere implementar una aplicación web basada un boilerplate que permita a un usuario validar el número de una tarjeta de crédito y además ocultar todos los dígitos de la tarjeta menos los últimos cuatro.

El principal objetivo de aprendizaje de este proyecto es tener una primera experiencia construyendo una aplicación web, utilizando los conocimientos adquiridos sobre User Experience Design y JavaScript. Esto incluye diseñar un producto pensando en los usuarios, construir una interfaz, escuchar eventos básicos del DOM, escribir lógica para llevar a cabo el cifrado y descifrado, tests unitarios básicos para comprobar (y documentar) dicha lógica, y manipulación del DOM para mostrar (escribir) los resultados.

Proyecto: Data Lovers

En este proyecto tendrás tu primer acercamiento a transformar data en información. El objetivo principal de este proyecto es aprender a diseñar y construir una interfaz web donde podamos visualizar y manipular data.

Esperamos que puedan pensar en el usuario, entender cuál es la mejor manera de visualizar la data en la web según sus necesidades.

Este proyecto se debe "resolver" en duplas, por lo que un objetivo importante es ganar experiencia en trabajo colaborativo con toda la complejidad que eso implica.


Etapa 2: Tracks

Después del common core cada grupo se separa en tracks especializados y paralelos: Front-end Development y UX Design.

Track Front-end Development

Tópicos comunes (uno o más proyectos): Paradigmas, JavaScript Funcional.

Proyecto: Red Social

En este proyecto partimos del supuesto que una emprendedora ha pedido hacer un prototipo para una red social sobre algunos temas de entre los cuales deberás elegir.

El objetivo de aprendizaje principal de este proyecto es construir un sitio web responsive con más de una vista (página), y en el que podamos leer y escribir datos entendiendo las necesidades de los usuarios.

  • Duración estimada: 3 semanas.
  • Equipos: 3 estudiantes.
  • Tópicos: Mobile first, Responsive, URL, HTTP, Async, Múltiples vistas, Routing, Escritura de datos, localStorage, Firebase.

Proyecto: Markdown Links

Dentro de una comunidad de código abierto, proponen crear una herramienta usando Node.js, que lea y analice archivos en formato Markdown, para verificar los links que contengan y reportar algunas estadísticas al respecto.

El objetivo práctico de este proyecto es aprender a crear una librería (o biblioteca - library) en JavaScript.

Diseñar una librería es una experiencia fundamental para cualquier desarrolladora porque que le obliga a pensar en la interfaz (API) de sus módulos y cómo será usada por otros developers. Se necesita tener especial consideración en peculiaridades del lenguaje, convenciones y "buenas prácticas".

  • Duración estimada: 3 semanas.
  • Equipos: 1 estudiante.
  • Tópicos: Node.js, NPM, File System, Semver, Parsing, Markdown, CLI, HTTP, Módulos, Errores.

Este proyecto requiere implementar un sistema para que lxs meserxs de un restautante (Burger Queen) puedan tomar nota de los pedidos usando una tablet.

El objetivo de aprendizaje principal de este proyecto es construir una interfaz web usando un framework (React, Vue o Angular).

Como objetivo secundario, la implementación debe seguir las recomendaciones para PWAs (Progressive Web Apps), lo cual incluye conceptos como offline.

  • Duración estimada: 3 semanas.
  • Equipos: 1-2 estudiantes.
  • Tópicos: Frameworks, React, Vue, Angular, PWA, Offline First, Service Workers, Serverless.

El objetivo de aprendizaje principal es adquirir experiencia con Node.js como herramienta para desarrollar aplicaciones de servidor, junto con una serie de herramientas comunes usadas en este tipo de contexto (Express como framework, MongoDB como base datos, etc.).

En este proyecto tendrás que construir un servidor web que debe servir JSON sobre HTTP.

En este proyecto partimos de un boilerplate que ya contiene una serie de endpoints (puntos de conexión o URLs) y nos piden completar la aplicación. Esto implica que tendremos que partir por leer la implementación existente, y familiarizarnos con el stack elegido: Node.js, Express, MongoDB, mongoose, ...

  • Duración estimada: 2 semanas.
  • Equipos: 1 estudiante
  • Tópicos: Node.js, Express, rutas (routes), URLs, HTTP (verbs, request, response, headers, body, status codes...), JSON, MongoDB, variables de entorno, JWT (JSON Web Tokens)...

Este proyecto requiere implementar un sistema para que lxs meserxs de un restautante (Burger Queen) puedan tomar nota de los pedidos usando una tablet.

El objetivo principal de aprendizaje de este proyecto es construir una interfaz web usando un framework (React, Vue o Angular).

Como objetivo secundario, la implementación debe seguir las recomendaciones para PWAs (Progressive Web Apps), lo cual incluye conceptos como offline.

  • Duración estimada: 3 semanas.
  • Equipos: 1-2 estudiantes.
  • Tópicos: Frameworks, React, Vue, Angular, PWA, Offline First, Service Workers, HTTP, JSON, fetch.

Track UX Design

Proyecto: Emprendimientos

Para este proyecto inicial del track, trabajarás con pequeños emprendimientos para ofrecer una nueva y/o mejor experiencia online para sus usuarios. Para eso, tienes que entender los objetivos de negocio del emprendimiento y las necesidades de sus usuarios/clientes. Durante este proyecto harás trabajo de campo: entrevistas, observación y testing y diseñarás soluciones utilizando herramientas de diseño como Figma y Marvel.

  • Duración estimada: 3 semanas
  • Equipos: 2 o 3 estudiantes
  • Tópicos: UX research (entrevistas, benchmark), arquitectura de la información (flujo de contenido, mapa de sitio), diseño visual y de interacción (wireframes y prototipado), y user testing

Este es un proyecto de rediseño de un producto existente. Basándose en la data de los resultados que está teniendo una aplicación de servicios financieros, deberás mejorar la experiencia de la misma.

En algunas casos este proyecto puede ser reemplazado por un uno con una empresa, pero tendrá siempre los mismos objetivos de aprendizaje.

  • Duración estimada: 3 semanas
  • Equipos: 2 o 3 estudiantes
  • Tópicos: Data analysis, UX Research, prototipado, ideación, visual design

Proyecto: Consultoría UX

Trabajarás en distintos casos reales propuestos por empresas de diversos rubros y tamaños. En el pasado se ha trabajado con empresas como Kmimos, Guvery, Globant, Sinenvolturas, Magical Startups, Laboratoria, entre otras.

  • Duración estimada: 3 semanas
  • Equipos: Depende de proyectos
  • Tópicos: UX Research, prototipado, ideación, visual design

Etapa 3: Electivos

La última parte del bootcamp, y dependiendo de cómo hayas conseguido los objetivos de aprendizaje de los anteriores proyectos, podrás aprovechar para elegir trabajar en un proyecto final que puede estar basado en los tópicos/tecnologías vistas hasta el momento, o puede cubrir algunos de los tópicos adicionales sugeridos.

Track Front-end Development

El objetivo de aprendizaje principal es tener una primera experiencia en desarrollo de una aplicación usando React Native y Expo, y publicarla en tu cuenta de Expo para que se pueda instalar en cualquier dispositivo Android o iOS.

Tendrás que familiarizarte con conceptos como View, Text o TouchableOpacity y con el flujo de desarrollo propio de apps nativas.

  • Duración estimada: 2 semanas.
  • Equipos: 1 estudiante
  • Tópicos: React Native, Expo, componentes nativos, touch events, ...

Proyecto: Battleship

Battleship es un juego clásico, con múltiples versiones en juegos de mesa y en línea (si no lo conoces, puedes verlo en este link : battle-ship).

En este proyecto deberás crear una nueva versión, agregándole algún giro para actualizarlo y hacerlo más atractivo para las nuevas generaciones. No estás atada a hacer este juego sobre barcos, puedes hacerlo con el tema que más te guste, siempre y cuando el modo de juego sea parecido.

  • Duración estimada: 2 semanas.
  • Equipos: 3 estudiantes
  • Tópicos: react, angular, redux, firebase, mongodb stitch.

En este proyecto tendrás la oportunidad de re-escribir tu anterior proyecto de la Red Social, pero esta vez usando un framework o una librería.

Creemos que una muy buena manera de profundizar en estas herramientas puede ser eliminando de la ecuación el hecho de que tengas que entender un proyecto desde cero, su alcance, sus particularidades, el flujo, las validaciones, etc. Concéntrate en aprender y utilizar estas nuevas tecnologías.

  • Duración estimada: 2 semanas.
  • Equipos: 1-2 estudiantes
  • Tópicos: react, angular, vue, firebase.

Track UX Design

Proyecto: Visual Design

En este proyecto buscamos mejorar las habilidades de diseño visual de interfaces. Para ello, las trabajarás en cómo mejorar y unificar la experiencia de una plataforma de venta de entradas a espectáculos (tradicional) para ayudarlos a competir con nuevos actores en la industria como Stubhub, Eventbrite, Joinnus, entre otros.

Tendrán que crear soluciones consistentes para mobile, desktop y smartwatches. En algunas casos este proyecto puede ser reemplazado por uno con una empresa, pero con los mismos objetivos de aprendizaje.

  • Duración estimada: 3 semanas
  • Equipos: Depende de proyectos
  • Tópicos: Design Systems, Grid systems, atomic design, componentes, consistencia,jerarquía, responsive design.

Proyecto: Service Design

Con la ayuda de consultoras especializadas como Amable o Touchpoint, te sumergirás en el mundo del service design (diseño de servicios) entendiendo problemas de negocio desde una visión más holística y utilizando nuevas herramientas como el Service BluePrint.

  • Duración estimada: 3 semanas
  • Equipos: Depende de proyectos
  • Tópicos: Service design, disruptive design, insights, service prototyping, service blue print

Índice de tópicos


Contribuciones

Toda contribución es gratamente bienvenida.

Pero POR FAVOR no olvides leer detalladamente la guía para contribuidores antes de enviar un PR.

Muchas gracias a toda esta gente maravillosa (leyenda de emojis):


Lupo Montero

💬 🐛 💻 📖 💡 🤔 🚇 🔌 👀 ⚠️ 🔧 📹

chamodev

🤔 🌍

Ivan Medina

💬 🐛 💻 💡 👀

Mariano Crowe

💬 🐛 💻 📖 💡 🤔 👀

Diego

🐛 🤔

Ana Steph

💬 🐛 💻

Lalo Gonzalez

💬 🎨 🤔

Milton Mazzarri

💻 💡

Ruth Abigail Salvador Zorrilla

🐛 🤔

Maricarmen Rojas Tinco

🐛 💻 ⚠️

María Inés Plaza Schwarck

💻 💡

Belén Recabal

🐛 🤔

Lourdes Vílchez

🐛 🤔

Fabian Alexis Bravo Abarca

🐛 💻 💡 🤔 👀

Amalia Rivera Castillejos

🐛 🤔

Shirley Silvana Suarez Startary

💬 🐛 💻 💡 🤔

Alexandra Neira

🐛 🤔

Michelle Seguil

🐛 💻 💡 🤔

Carolina Covarrubias

💬 📖 🤔

Joalbert Andrés González

🤔

Elizabeth Portilla

💬 🐛 🤔

Karla Nava

🤔

Allison Guzmán

🐛 🤔

Alejandra Ramirez

🤔

Alexander Ocsa

🐛

Rocío Alberdi

🤔

Ameli C. Gavante

🐛 🤔

IntiDev

🐛 🤔

Emmanuel Orozco

🐛 💻 🤔

Nicole Stein

💻 💡 🤔

Giancarlo Corzo

🐛 🤔

Alejandro Rodriguez Cuellar

💻 🤔

Gonzalo Parra

💬 🐛 💡 🤔 👀

Cristian K. Cárdenas

💡

Jonhks

🐛 💻 🤔

Gabriela Segura

🐛 🤔

Rod Fuenzalida

🤔

Rodrigo Lazo

💡 🤔

Aldo Román Nureña

💡 🤔

Nadia Tapia

🐛 🤔

Daniela Sarzosa

🐛 🤔

kkatzen

🐛 💡

LucileBaratier

🐛

Daniela Gonzales

🐛 🤔 💻

Rafael Cerri

🌍

José Paulo R. de Lima

🌍

Juliana Amoasei

🌍

Daniel Cukier

🌍

Carlos Eduardo Moreira dos Santos

🌍

Vanessa Pinheiro

🌍

Juan

💬 🐛 🤔

Moisés Cachay Tello

🤔

Ily Treviño

🐛

YolandaRib-4

🐛

Carlos G. Rodriguez

🚧

Lupe CaMay

🐛

Monica Yamazaki

🌍 👀

Gabriel Ramos

👀 🐛

Raul Robinson Quispe Mendez

👀

Carlos

🐛

Paloma Araujo

🌍

Vitor De Mario

👀

Betsy Vidal

🖋

Isabella Soares de Lima

👀

Este proyecto sigue la especificación de all-contributors. Todo tipo de contribuciones son bienvenidas.

Licencia & Copyright

Todos los materiales de este repo son (c) 2017-2020 Laboratoria.

Creative Commons License

Este trabajo está publicado bajo la licencia Creative commons Attribution-ShareAlike 4.0.

Packages

 
 
 

Languages

  • JavaScript 99.4%
  • Other 0.6%