Mitad de periodo
La mitad del periodo de GSoC acaba de pasar. Es hora de revisar el trabajo desde que comencé el proyecto. Después de estas semanas trabajando en Jangouts y usándolo regularmente para reuniones de seguimiento, me encanta como si fuera mío. Trabajar en este proyecto es gratificante: lo suficientemente pequeño para comprenderlo, pero respaldado por una comunidad creciente. Jangouts permanece en una etapa temprana pero tiene gran potencial.
Trabajo realizado
No cumplí mi cronograma inicial, pero estoy cerca y la parte más difícil pasó. Jangouts ahora usa TypeScript con un nuevo proceso de construcción/desarrollo y funciona como aplicación híbrida Angular 1.x/Angular 2.
Jangouts está compuesto de diferentes componentes:
browser-infochat- Migradofeed- Casi migradofooter- Migradonotifierroomrouterscreen-shareuservideochatsignin
Cada migración de componente implica conversión de Angular 1 a 2 y tests
apuntando a cobertura cercana al 100%. Los componentes más complejos de migrar
son feed y room porque manejan el renderizado de vídeo y la comunicación con
el backend de Janus. El router probablemente requerirá una reescritura completa
para el nuevo router de Angular 2.
Mentores
Solo tengo cosas buenas que decir sobre @ancorgs y @imobach. Hacemos reuniones diarias (cuando es posible), y me dan feedback mientras me permiten libertad para tomar mis propias decisiones (cuando doy razones).
Próximos pasos
En las próximas semanas, continuaré migrando componentes hasta poder eliminar Angular 1. Cuando la migración termine, Jangouts será un proyecto Angular 2 con una suite de tests completa. Mi trabajo de GSoC estará completo, pero quiero hacer más. Muchas cosas pueden mejorar:
- Reestructurar el proyecto moviendo lógica de componentes a servicios.
- Aprovechar mejor los Observables (probablemente usando @ngrx/store)
- Mejorar UI y UX móvil usando conceptos de progressive web apps.
- Mejorar comunicación y comunidad (página web del proyecto, mejores docs de contribución, etc.)