Revisit your original goals (check out your project proposal).
Mobile and web learning platform built for short attention spans. Provides short-form, thematic, sequential and curated content to support learning at all levels.
Transform existing web content into sequences of short-form videos that capture focus for longer periods of time, build knowledge, and improve long-term retention.
MVP progress?
What progress did you make towards your original MVP / on your stretch goals?
Frontend
First high-fidelity prototype of our app in Figma with pre-Technigala UI, app flow, core features, and aesthetic design.
Working video stream linked with backend.
Explore page that allows users to switch topics.
Ability to share a video externally (for example, through Messages).
Hard-coded “Shared with Me” for feedback.
Acquired foundational Swift and mobile development knowledge that will be useful for this term, from sending and decoding API requests/responses to loading videos asynchronously to manipulating the colors, shapes, layouts of app views to match their appearance in Figma.
Backend
Support for all typical social media user->video interactions. Like, dislike, view, comment, nested comment.
Video Stream from S3. Deployed database in MongoDB. Deployed API on EC2.
Integration with ML, scripts to redeploy database instantly from backup video directory.
Video/topic/sequence relationship API and database support with hierarchy.
Multi-Level Authentication for later recommendation engine and ML integration
User account creation and database model.
ML
currently transcribing videos selected from YouTube
developed & deployed ML app using BART/CLIP models to derive topics from transcripts
built clippers that use topic segmentation/change detection on outputs from above
built Lbl2vec and LDA models for larger topic scope
How is it different?
How is your project different from what you envisioned?
Frontend
Mostly portrait instead of landscape.
Think original swiping scheme might not be as intuitive as we thought.
Less emphasis on saving and sharing playlists/videos – think most Technigala users want a better personal experience on the app before sharing with others. We were not able to implement the “save” or “like'' feature by the end of the first term.
Backend
The method in which videos are vended to the frontend changed. We reorganized it based on sequence (of playlists) -> playlists (video that is clipped) -> videos (clips produced by ML)
The complexity of bringing together the ML and backend together was much larger than anticipated
Ran into memory issues in deploying on EC2
Used up all data calls to S3 during our technigala demo (for free tier)
ML
initially leaned towards building our own models (LDA or Lbl2vec models, in particular) but we realized there’s good models already out there we could use (BART or CLIP)
we also hoped to be able to cut out fluff or irrelevant portions of the original video, but that may become a stretch goal
Still happy with direction?
Most importantly, are you still happy with the direction that your project is headed?
Like short-form videos
Unsure about continuous, TikTok-like stream of videos without progress indicators
What do you wish went differently?
What do you wish had gone differently / are there features you wish you hadn't made or made differently?
General
Smaller scope of topics
Frontend
Want a more aesthetic and intuitive Explore page – don’t think it was clear that clicking on a topic would open the video stream with a new topic
Should be more responsive to the user when they take an action (save, swipe, etc.)
How users transition between videos – most users instinctively swiped up instead of right
Users should have more awareness of what topics they are watching/learning about and what topics they have mastered (could think about for profile/account page)
Want to collect more feedback from the user – why they disliked a video, what they think of their experience, learning checks?
Backend
More consistency in the API. At some point, the api became so big that it didn’t make sense to go back to build code consistency in. Instead, better practices were applied to new endpoints.
ML
more time to code/try out different models; a lot of time was spent researching different avenues for our models and training them
Feedback
What feedback from last term do you think is relevant and interesting to incorporate. List your feedback broadly and label them with how they stack up for your vision. These may already be in ZenHub but after this discussion they should be.
[🔥] Increase user control, awareness, and engagement
Users should know what topic they are currently watching
Upvote or downvote recommendations
Ask users why they liked/disliked a video
[🔥] Offer a smaller, more focused range of topics
Will target computer science students
[🔥] A long-term learning path/objective/vision with more navigation/control, like these roadmaps
[🔥] Add functionality: saving items for later, sharing, friending, etc.
[🍦] Improve aesthetics
[critical 🔥]
[stretch goal 🍦]
[rejected ⛔]
Questions
Think about where the project is headed. What are some questions that you/users/me have about direction/features/functionality that could use some validation?
How much control should users have over what they watch?
How much should they be able to customize their learning path(s)?
Should users navigate from topic to topic, or should we do it for them?
Do we really need a social media component within the app, or is being able to share something externally (via Messages) sufficient?
How personal/personalized should each learning experience be?
Should there be “template” roadmaps that everybody can access?
Answers
Think of ways that you might validate these: discussion with your team, advice from me, polling the class, asking users, and/or collecting and analyzing usage data. Write down some ideas here. This isn't how to validate your project as a whole, but about specific feedback/features.
Could ask our target audience
Could collect usage data/metrics for specific features, pages, and components
Vision
Refine your vision.
Feedback Analysis
How does the current feedback/user testing/progress change how you think about the direction of the project?
We plan on maintaining our large-picture goal of creating personalized, sequential, entertaining, and effective learning experiences with sequences of short-form videos.
Pivot/Adjustment
If you were to consider a pivot or adjustment in what the product is, what would it be?
Rather than building something for all learners, we’ll focus on delivering a shareable yet customizable, entertaining yet productive learning experience to computer science students specifically. Our backgrounds in computer science enable us to empathize with fellow students, self-assess our app’s recommendations/learning paths, understand what topics/skills/language features might be important in training our ML models, and brainstorm novel features that we would find useful.
Ideal Goal
In an ideal world if you could build out your project to be anything without any constraints of time or skill what would you want to do? Dream big — you can do more than you think. Try to push the limits. This does not commit you to anything, so don't worry about overpromising, this is to get you dream about where you really want your project to go without constraints. Please don't skimp on this part.
Mission Statement
Now write a mission statement for your project as you see it after all of this great brain activity. Just a few sentences suffices.
Edited proposal:
To address the problem of shortening attention spans, we propose a new form of positive media that leverage short-form, but thematic, sequential and curated content to deliver computer science students a tailored learning experience. This is Discite, a mobile and web learning platform that adapts, aggregates and sequences existing web content to promote true learning with long term knowledge retention through cleaner dopamine stimuli.
How to get there
Now that you've thought about where your project is headed and where you want it to go, write down how you might approach getting there.
What are your concrete next steps?
Frontend
Redo Figma with roadmaps as a new focal point.
Brainstorm and add features that computer science students might use.
Establish a way of testing views that’s independent of the backend – that way, if the backend is not running, or something breaks, we can still make progress.
Backend
Recommendation engine and new format for storing video relationships for faster queries
What are some blockers in your way?
Figma must be complete before we can start mobile development. Backend may also need to wait before restructuring.
Teamwork
Lastly, at the end of last term in the term summary you did a bit of work around teamwork. This is just a reminder for everyone to revisit that and if you have any new or further thoughts after the break feel free to record them here.
Schedule team meetings at least two days in advance.
Communicate technical problems/issues as they come up.
Offer help if you’ve finished your assigned tasks before the end of the sprint.
T2 Project Reflection & Next Steps
Original idea
Revisit your original goals (check out your project proposal).
MVP progress?
What progress did you make towards your original MVP / on your stretch goals?
Frontend
Backend
ML
How is it different?
How is your project different from what you envisioned?
Frontend
Backend
ML
Still happy with direction?
Most importantly, are you still happy with the direction that your project is headed?
What do you wish went differently?
What do you wish had gone differently / are there features you wish you hadn't made or made differently?
General
Frontend
Backend
ML
Feedback
What feedback from last term do you think is relevant and interesting to incorporate. List your feedback broadly and label them with how they stack up for your vision. These may already be in ZenHub but after this discussion they should be.
[🔥] Increase user control, awareness, and engagement
Upvote or downvote recommendations
Ask users why they liked/disliked a video
[🔥] Offer a smaller, more focused range of topics
Will target computer science students
[🔥] A long-term learning path/objective/vision with more navigation/control, like these roadmaps
[🔥] Add functionality: saving items for later, sharing, friending, etc.
[🍦] Improve aesthetics
[critical 🔥]
[stretch goal 🍦]
[rejected ⛔]
Questions
Think about where the project is headed. What are some questions that you/users/me have about direction/features/functionality that could use some validation?
Answers
Think of ways that you might validate these: discussion with your team, advice from me, polling the class, asking users, and/or collecting and analyzing usage data. Write down some ideas here. This isn't how to validate your project as a whole, but about specific feedback/features.
Vision
Refine your vision.
Feedback Analysis
How does the current feedback/user testing/progress change how you think about the direction of the project?
We plan on maintaining our large-picture goal of creating personalized, sequential, entertaining, and effective learning experiences with sequences of short-form videos.
Pivot/Adjustment
If you were to consider a pivot or adjustment in what the product is, what would it be?
Rather than building something for all learners, we’ll focus on delivering a shareable yet customizable, entertaining yet productive learning experience to computer science students specifically. Our backgrounds in computer science enable us to empathize with fellow students, self-assess our app’s recommendations/learning paths, understand what topics/skills/language features might be important in training our ML models, and brainstorm novel features that we would find useful.
Ideal Goal
In an ideal world if you could build out your project to be anything without any constraints of time or skill what would you want to do? Dream big — you can do more than you think. Try to push the limits. This does not commit you to anything, so don't worry about overpromising, this is to get you dream about where you really want your project to go without constraints. Please don't skimp on this part.
Mission Statement
Now write a mission statement for your project as you see it after all of this great brain activity. Just a few sentences suffices.
Edited proposal: To address the problem of shortening attention spans, we propose a new form of positive media that leverage short-form, but thematic, sequential and curated content to deliver computer science students a tailored learning experience. This is Discite, a mobile and web learning platform that adapts, aggregates and sequences existing web content to promote true learning with long term knowledge retention through cleaner dopamine stimuli.
How to get there
Now that you've thought about where your project is headed and where you want it to go, write down how you might approach getting there.
What are your concrete next steps?
Frontend
Backend
What are some blockers in your way?
Teamwork
Lastly, at the end of last term in the term summary you did a bit of work around teamwork. This is just a reminder for everyone to revisit that and if you have any new or further thoughts after the break feel free to record them here.