Inspiration
Great traditional boot camps are becoming costly and presenting a barrier of entry for many students and global learners who resort to Massive Open Online Courses(MOOCs). MOOCs are great equalizers for learners because of their general affordability and convenience. However, research and surveys conducted on online learning across the various MOOCs have shown very low completion rates when students do not feel supported. Bootcamps on the other hand have really high completion rates. As a result, we decided to find the intersection of the benefits of online courses and boot camps to create ROBO-BootCamp. An AI platform that uses a quiz to design personalized Bootcamp curriculums with online courses.
With our current state of learning and pandemic, the demand for more courses has generated enormous content that is hard to navigate . Our platform allows remote and virtual learning to be more intuitive and fitted for each and every candidate who has access to the internet.
.
What it does
With the advent of remote learning, many institutions and online experts are generating content by the second. The high surge of courses on various MOOC platforms “makes it a burden to choose from so many options” In a sea of MOOCs, our algorithm helps you customize the most tailored fit curriculum for your learning objectives
As a user, all you need is a desire to learn and a specific subject or topic you want to master. We take care of the planning and making sure you get courses that will be compatible with your learning style, knowledge base, and schedule.
You can take our "test" and let our AI design your personalized Bootcamp curriculum that is based on the information you provide.
Our platform also utilizes a chatbot to process your queries and suggest the most compatible course(s) that fits your profile.
How we built it
Technical Architecture:
- Carefully curated own dataset of Coursera courses modified with unique columns.
- Multiclass classification model built with Pytorch and Sci-kit learn in Google Colabs.
- The application was built in Google Cloud compute engine
- Front-end built in Python Flask.
- Application hosted in Google Cloud app engine.
- JavaScript takes user input for test as numbers and returns as a list to Python script to be predicted.
- Features fully built out Facebook messenger chatbot
Technologies Used:
- Python
- Jupyter Notebooks
- Google Colabs
- Pytorch
- Python-Flask
- Google Cloud
- Facebook Messenger
- HTML
- CSS
- JavaScript
- Pandas
- Numpy
- Scikit-Learn
- Rest Service
Challenges we ran into

- We built a recommendation system first before realizing that it didn't really help with our use case and we switched to a multiclass classification model.
- Creating a dataset with our own unique columns was very difficult. We had to spend a lot of time making sure all the rows of data were accurate.
- Figuring out how to send data from JavaScript to Python Flask was difficult.
- Deploying the web application online to the cloud was challenging.
- The Facebook messenger chatbot lags a lot in response and trying to debug why that happens was challenging as well.
- Working as a virtual team was challenging, trying to figure out schedules and zoom meetings was challenging.
Accomplishments that we're proud of
- Successfully deployed our web application online even with our challenges.
- Successfully integrated Facebook messenger chatbot.
- Got our first 50 users to test out our application to get some feedback.
- Got the opportunity to learn a lot and upgrade our skills set and expand our portfolio of machine learning projects.
- We had an idea and we were able to implement that idea.
What we learned
- We learned a lot about building unique datasets. We had to add unique columns in our Coursera dataset in order to make our multiclass PyTorch classification model work.
- Torch.save and torch.load in Pytorch are built on top of Pickle. For some reason when trying to load a save .pth file, in local it works but when deployed in the cloud, it looks for particular classes in Gunicorn even when you specify the class inside the python script and that breaks the application.
- Deploying machine learning algorithms in the cloud is harder than running machine learning code in local machines.
- In order to get data from JavaScript to Python Flask, you need to send a POST request to a url and return values inside of Python script.
- The Pytorch official website has great documentation and tutorials for a lot of machine learning projects.
- Pytorch is much more easy and pythonic to pick up than other deep learning frameworks like Tensorflow.
- It is quite easy to integrate Facebook Messenger chatbots into web applications than we had anticipated.
- NEVER start a machine learning project with the model in mind. Always start with the problem you're trying to solve, a data set for that problem, a way to solve without machine learning, and finally start thinking about a model.
What's next for ROBO-BootCamp
- Optimize our web app for mobile devices.
- Enlarge the dataset to include more courses from more platforms including Udacity, Udemy, Khan Academy, YouTube Education, edX, and a lot more.
- Improve our multiclass classification model.
- Add more engaging questions in our test to create better curriculums for the users
- Add features to create schedules for users based on their availability and course syllabus and integrate with their calenders. (for Beta version)
- Improve user experience overall by creating better dashboards for users to track their curriculum.
- Implement a recommendation engine in Pytorch when we get more users for the platform
- Add feature to connect users based on curriculums and interest to learn together through Facebook messenger groups to create online learning "townhouses".
- Get 100 users and tester to try out our application and get feedback from them.
- Start an ed-tech startup for ROBO-BootCamp
Built With
- css
- facebook-messenger
- flask
- google-cloud
- google-colab
- html
- javascript
- jupyter-notebooks
- numpy
- pandas
- python
- pytorch
- rest-service
- scikit-learn



Log in or sign up for Devpost to join the conversation.