Track

Education

Inspiration

Youtube is usually the go-to place for people starting out to learn coding or any piece of technology. With a global pandemic shifting the future of work forever, those looking to break into the tech industry usually start with coding. Usually, they either don’t know where to start from, what to learn first, what order to view things, or what to watch next. We decided to tackle this problem and find a solution that was free and accessible.

What it does

yt-learn is a crowdsourced YouTube tutorial videos site where users can search for tutorials which have been rated using our unique weighting system. This system takes into account: sentiment, instructor ratings, video ratings, like/dislike ratio, and viewer count. With our platform, users do not have to scour Quora, Reddit, and other sources to get opinions on the best tutorials for whatever field they are in. They can also view what videos people watched after. After watching a particular tutorial, they can rate and write a review on the content and instructor to help inform others of their experience

How we built it

We built our application using Django, a Python web framework that allowed us to build a web application from scratch. We used HTML, CSS, Bootstrap, and Bootswatch for our frontend.

Challenges we ran into

We ran into some challenges when designing the front end of the website. We needed something to keep the design and layout uniform and something easy and faster to implement. Additionally, we ran into some problems with the backend in saving model instances to our database. Due to backend issues, we were not able to complete our own weighting system which is how we would have sorted the search results.

Accomplishments that we are proud of

We were able to accomplish building a web application that accesses youtube’s API and extract meaningful data. We also built a ML sentiment analyzer that analyzed the top 300 comments of each video, which provided a metric useful to judge if the video was good / helpful. We made a database to store user data and implemented features such as login/logout/register and csrf validation.

What we learned

We all learned how to use Django to create a full-stack website that connected to a database. Additionally, we got additional experience in working with databases, APIs (YouTube API, YoutubeSearchAPI), multicore processing with pandas, and machine learning algorithms. On the front-end side, we got to experiment with Bootstrap which was easy to learn and faster to implement.

What's next for yt-learn

There are lots of next steps and additional features we would like to add to yt-learn. We plan on getting our database functionality working, pagination to get more than a few search results, discussion forums, tags, integration with their youtube account, and much more. We also plan on adding a feature that auto-creates tutorial playlists based on different viewers’ viewing orders. Improving the search functionality would make our website even more effective in providing users effective content.

Built With

Share this project:

Updates