The following is a collection of thoughts and lessons learned while developing my first full stack web application. The project is an exploration in the concept of quantified self. Whether you opt in or not, there’s a lot of your personal data floating around the internet. Some is voluntary and some is not. As a developer, I see data as an opportunity. This app takes your voluntary data[tweets] from Twitter and rates you on a scale of 1- 10, ten being very narcissistic.
The app was built with a very basic language parser for the score, but the results turnout out to be startlingly accurate. The top rankings hold Kanye West, Kim Kardashian and Lena Dunham and the lowest scores are the Dalai Lama and the official twitter account for the Pope.
Budget time for the planning stage — then double it
The idea is clear in your head and you want to start coding — Stop yourself and get some paper. Pseudo code through the problem and details will emerge that you hadn’t thought of. Sketch out the scheme and associations. I made a few mistakes that didn’t seem like a big deal, but they continued to be a nuance through the development.
While you may think your idea is small — there are a lot of components that go into any application. Everything from the database to the html need time and care. Decide how much time you have to spend developing the app and stick to it. You can always add features later. A small app is better than an unfinished app.
Design is important
Visual design is more important than you think. Keep it easy for yourself an use bootstrap for buttons, grid and forms. If you’re working on a project and you’re terrible on this end, get someone to help. It’s a needless loss if someone won’t use your product because of bad design.
Depending on the application, this may or may not apply, but most experiences should provide a mechanism for people to share their experience with others. Create an association or frame of reference to make the app memorable.
Data are out there. Seek it out, experiment, and build something more useful than this app.
This app was developed in collaboration with Anna Ershova.