Laboratoria / curriculum

El bootcamp de @Laboratoria es un programa de aprendizaje inmersivo de 6 meses enfocado en los perfiles de Web Developer y UX Designer.
https://curriculum.laboratoria.la
Creative Commons Attribution Share Alike 4.0 International
491 stars 462 forks source link

Nuevo proyecto "Chat app" para piloto de full stack #1055

Closed lupomontero closed 3 years ago

lupomontero commented 3 years ago

Como parte del piloto de full stack...

Chat app (real time, web sockets)

En este proyecto construirás un sistema de chat realtime (cliente y servidor) usando JavaScript. Este proyecto está pensado para hacer en equipo, 2-3 personas.

Los usuarios deben poder crear una cuenta, iniciar sesión, crear un canal, ver y responder mensajes en un canal, además de ver quiénes están conectados. Para el front-end recomendamos usar algún framework popular como React, Angular o Vue.

El principal objetivo de aprendizaje de este proyecto es tener una primera oportunidad de explorar WebSockets como alternativa a HTTP para comunicación real time entre cliente y servidor.

OAs: Node.js, Express, Bases de datos, Autenticación, HTTP, WebSockets, React/Angular/Vue.

oxfist commented 3 years ago

OAs para el proyecto

OAs ya existentes

Express

Autorización (nueva)

WebSockets (nueva)

Bases de datos (nueva)

CI/CD (nueva) - ver #1079

Desarrollo de Producto (nueva)

Aunque es esperado de los proyectos durante el BC la creación de historias de usuario no existe como un OA aparte, creo que aquí podría surgir una nueva categoría Desarrollo de producto donde esté mejor delimitado lo que se espera en primera instancia con las historias de usuario en sí y luego cómo aplicar un enfoque iterativo/independiente con ellas.

Los OAs que se agregarían faltaría descomponerlos bien y agregar sus respectivos links de referencia.

Actualización 28 de julio

  1. Mejor formateo
  2. Agregado link a PR que agrega categoría CI/CD (en progreso aún)
  3. Reescrito historias de Desarrollo de Producto para abarcar otros aspectos importantes de las historias de usuario y puntualizarlas un poco más
oxfist commented 3 years ago

Historias de usuario iniciales

Para este proyecto un buen punto de partida sería entregar historias de usuario pre-hechas (en el boilerplate) para enfocar el desarrollo inicial y poder jugar un rol de PO con las estudiantes para aplicar negociación de alcance, priorización, etc. En este caso usuario-segmento habría que reemplazarlo por un tipo de usuario dependiendo de si la aplicación de chat tendrá una temática determinada a priori o si dependrá de los equipos.

Intencionalmente hay historias que quedarían fuera del boilerplate, ej. ver chats de otras personas, para que las estudiantes vayan retomando ese trabajo a medida que avanzan.

1. Loguearse

Yo como usuario-segmento
Quiero iniciar sesión
Para conversar con las personas conectadas

2. Enviar chat en canal principal

Yo como usuario-segmento
Quiero enviar un mensaje a todas las personas conectadas
Para compartir intereses similares

3. Crear un nuevo canal

Yo como usuario-segmento
Quiero crear un canal de sobre un tema de mi gusto
Para comunicarme solo con las personas con mis mismos intereses

Actualización 27 de julio

  1. Quité la historia de creación de cuenta porque considero que puede ser interesante presentar las historias de Login y Enviar chat y analizar con ellas el nivel de dependencia que podrían tener y cómo priorizar funcionalidades considerando decisiones técnicas (abordar el chat primero para familiarizarse con Socket.io para bajar incertidumbre); además puede dar pie a que ellas escriban la historia de Crear cuenta y así poder avanzar ambas en paralelo
  2. Reescribí la historia de Nuevo canal para aproximar a un canal abierto temático en vez de un canal privado pues la parte "privada" podría ser parte de la negociación con ellas y no requerido

Actualización 28 de julio

  1. Mejor formateo