We want to share the journey of Questo, the product and the team, thus far.
Originally, Questo was a project we made for a hackathon in the fall of 2016. The concept was simple: an app which generates quizzes from a picture of a textbook. The prototype we created for the hackathon utilized a few APIs, and the iOS app was quite basic, to say the least. The positive feedback from friends, family, and investors inspired us to work hard. For a month or two, we worked hard to make the app look more polished, and to improve the quiz quality.
On December 20th, 2016, we shared our first beta with our friends and family. This led to around 200 daily active users on the most active day. We received a lot of feedback: some excitingly positive, some negative. We gave ourselves a pat on our back and continued working on making Questo better.
The first two months were really busy and exciting. We learned a lot about creating a good product: designing great UI, building reliable systems, and creating friendly UX — skills we treasure to this day. As programmers, we developed from code monkeys who knew a little about Python and Swift to partially competent geeks who were writing some quality code by the end of 2016.
We also learned a lot about marketing and business through chatting with helpful, experienced people. It was around this time (the end of December) that we decided to really commit to working on Questo, and began thinking about getting funding. All of us were really, really excited.
We struggled with user retention in our first beta launch, and we figured that this was due to poor question generation. To address this, we began experimenting with more advanced NLP (natural language processing) solutions. For instance, we used Word2Vec to create distractors (the incorrect options in multiple choice questions) to make our quizzes more exam-like.
The machine learning leap — early 2017
We spent the next year submerging ourselves into machine learning. By the end of summer 2017, we developed a custom end-to-end LSTM model for question generation. That half of the year was super cool. We focused on three primary components: quiz generation, OCR (optical character recognition, the part which scans the textbook) and the UI. Our OCR was reliant on ancient technology, so we quickly replaced it with modern Google Cloud APIs and built a few layers of preprocessing, using OpenCV, to optimize for textbook scanning.
After our beta testing from the previous year, we started to think seriously about making the quality of our quizzes better. We took courses on NLP and learned more about machine learning. We picked up Keras on the way and were super excited to take on the challenge of developing a sick, deep model. While this was happening on the backend, UI underwent a few revamps to enhance the feel of the app. We began working better as a team.
But, things kind of slowed down in terms of the development of the product. We experienced our first burn out.
Our limited success with keyword identification, coupled with the start of our exams, led us to shelve Questo for the time being.
Over the summer, we worked hard to implement a more complicated system — a neural translation model — which was really tough. We became obsessed with improving the system, and aimed to get the model production ready, but were unhappy with the results. The question content was too superficial, which was undesirable given our goals at the time. We also tried building a custom OCR engine using OpenCV and tesseract but stalled due to lack of experience with CV. This frustration led to overall hopelessness that any progress would ever be made.
A whole summer later, Questo still had flaws. We were having difficulty getting our systems to fully understand the abstract ideas communicated by text natural language processing. We gave it our best damn shot and tried to optimize the algorithm further, but we were unhappy with the product. For a fun break, a sabbatical of sorts, we went to Startup Weekend Mega 2017 with a new idea: a real-time photography assistant using AI. Although a measure borne of pure desperation, this became Photonify, and building it was super rad. Unfortunately, though, it turned our focus away from Questo. Another bout of exams led us to pause development, and there went the rest of 2017.
A step away to reflect — 2018
In 2018, we stepped away from Questo.
The year became a time of reflection, experimentation, and ideation. This was the result of a number of factors, but there was a pretty obvious primary reason: we were unexcited by the lack of promise in the original idea. Questo was centered around the idea of generating questions to aid the “lack of revision content”. We quickly realized this premise — insufficient study material — was faulty. We were in 2018, in the oft-called data age. There’s no shortage of revision content online and in print. To try pivoting away from this faulty premise, we shifted our focus to generating insightful (i.e. conceptual) questions that users could write exam responses to.
Making the same mistake again, we entered an endless loop of revisions and pivots. It was never “good enough”. There was always some fault to be found: repetition in questions (e.g question: “When did the Hitler the Hitler the Hitler?”, answer: “Hitler”), and sometimes just being too short and simple.
(Incidentally, please DM us if you know how to solve the first problem. 😉)
Simply put, our bar started too high and we kept pushing it higher every chance we got. After a while, we got a nasty surprise: the first half of 2018 had flown by without us pushing anything. Forget about a proper release, we hadn’t even pushed the second version of our beta! We learned that we need a tangible outcome to commit to a long-term project. A tangible outcome, unfortunately, was not something we got. This was demoralizing to us, a small team of three, and led us to stop working on Questo. Our last commit to GitHub was in June 2018.
A new chapter — 2019
During a brainstorming session at the beginning of 2019, we looked at different project ideas and discussed our goals for the year. All we wanted, and still do want, was to build things people love, but we felt this odd sense of incompleteness. After some thought, we realized it was because we’d spent the past two years building Questo with nothing to show for it.
We decided to revive Questo, believing that we learned enough in the interim to speed up the development process. Fortunately, we left the iOS app near-ready for a beta, and two weeks of grinding was all it took to breathe life into our codebase and train an improved model that, although imperfect, excited us about what Questo could become.
With the development of our programming and product design skills came a growth in our ability to see the value of the product. As a result, we decided to shift away from the idea of Questo being a novel system that would replace teachers: teachers aren’t going away anytime soon. As effective as machines and AI can be, the true value of Questo comes from humans working with technology in a symbiotic relationship. Thus, we re-evaluated our goal. We now aim to improve the experience of studying for all students through efficient knowledge testing.
On February 11th, 2019, we released a super early beta version of Questo on Product Hunt. We got a massive positive response of nearly 500 upvotes, over a thousand downloads and were awarded #1 Product of the Day. We are extremely motivated by the positive feedback, and are working on making the product better.
Some improvements we’re currently working on include:
- A search engine that searches popular syllabi for questions
- Smarter gap-fill questions
- Improving the wh-question (what, where, who etc.) model
- Polishing the iOS app
We’re really excited to move forward with Questo and see how far we can take it. More importantly, though, we’d like to express our sincere gratitude for all of the people who have supported us on our journey. We’ve learned a whole lot. We’ve all grown as engineers, entrepreneurs, and people; all of this would not have been possible without all the support from you.
Thank you for reading❤️