Some Things I Have Learned Making an App to Teach
I have been working on a little side project for the past few months that I am calling Learn Things. It aims to make studying over time an easier task by delivering you flashcards throughout the day. These flashcards appear as notifications and can be interacted with directly to submit your responses. Learn Things is the first project that I have been able to give a decent approximation of professional quality work on. My recent experience at Leo are most assuredly the cause of my spike in work quality.
I am really excited to have had a vision for a product, got excited about that vision, and then put in the hours to make it happen. The knowledge that I am capable of (nearly) singlehandedly of preforming all of the roles necessary to actualize an idea I had several weeks ago into something that I am demoing to people fills me with happiness.
I learned a lot making Learn Things, and I think that there is considerable value in formalizing the progress that one has made, however small. The act of thinking about what you did both right and wrong is exceedingly helpful to become better at anything. So, I will then present the modifications to my understanding of the world not as gospel, but rather as a helpful guide for myself and others.
Now, onto these “lessons” that I learned in the wild.
Build a Roadmap
A couple months ago, I had a great idea for a new product. It was something that I wanted to use. That I have wanted to use for a long time, and I never could find anything that did the job. I was in a search of a new a project, so I decided that I might as well make it myself. I started brainstorming features, which quickly ballooned the project’s complexity. They were things that would make the app way more usable and help certain use cases, but many weren’t necessarily vital to the app’s success.
So I made a road map. I formalized a list of all the features that I wanted to have in the ideal product. I then prioritized this feature list, cut the unnecessary ones, and organized them into releases with a general timeline.
The simple act of decided which features were the most important, and which ones should wait until the product has proven itself to be a meaningful investment of time is extremely healthy because it forces you to produce a practical execution strategy for your ideas. It forces the creation of a task list, which personally really helps me to stay focused so that I can hit the given launch date. Additionally, simply writing out your aspirations and thoughts for the project allow you to more seriously evaluate any given feature.
Talk to People About Your Product
If I had to put the blame on any single one improvement that I made to my development strategy it would be this. I just talked to people. I talked to my friends. I talked with people who understand the industry. I talked to high school teachers. I asked people for help with the things that I didn’t understand well. I talked to anyone that would listen long enough for me to describe how I was trying to make flashcards more practical.
See, when you have to explain what your product is going to be many many times, you yourself are given a better understanding of what you want the product to be. If you approach people with the right attitude (I’m building this thing. What do you honestly think?), people are really willing to give you positive criticism. If you make them feel like they are being helpful, people are extremely willing to give thorough evaluations of both ideas and implementations of those ideas. While working through this process, you are able to shape your idea of what the product should be and change how you talk about the product. You begin to understand which aspects of it really get people excited and the ones that leave them unimpressed. With this information, you can apply passion in the right areas to sell your idea to the masses whenever you are ready to release.
Think Big Differently
I am making Learn Things because I want to optimize the way that people learn. I think most modern learning tools and methods are dreadfully inefficient and aren’t adapted to utilize tech really at all. Learn Things plays on the thought that we all struggle to set aside small chunks of time over a period of time to study. But, we can almost always spend five seconds to answer one question, and one question only.
Learn Things is not changing the world, but I want it to, and I think that it can at least help some people learn things better. Learn Things is not my magnum opus, but it helping me explore the space. It is teaching me what people need and want to be able to teach themselves better. Preparing me to take on the grander goal. So, while Learn Things is a big project, it is not even remotely the end game. I can’t change the way people learn without understanding things well enough to make a better way. Baby steps.
I love to code. I am beginning to love graphic design. I really love learning. This project made me better at all of those things, and is preparing me a lot to really mix things up down the road.