July 03, 2017
Billdivider.com is probably the largest side project I’ve started, and as yet remains unfinished (and offline). It had a simple aim to begin with: replace my housemate’s ever-growing spreadsheet model, with a simple to use web app. I also wanted it to be better than Splitwise - which on the UX perspective, wasn’t that hard.
On the technical side, it’s a Python/Django web app, using the Mezzanine CMS to handle frontend content, and Fabric for deployment into my AWS instance.
I learned, a lot:
This is probably the best advice I can give to anyone thinking of making a side project. It will motivate you to keep going, and on the off chance you make it big, you’ve already got a way for your traffic to give back. I used Gumroad.com for its ease of use (Seriously, less than 60 seconds to setup payments to my bank account), but I’m you can figure out how to integrate Stripe/Paypal
Deploying straight after writing my first feature (Basic Create/Read/Update/Delete on groups) allowed me to get immediate feedback from my friends/family (reliable alpha testers) without which, would have been a pain to have to refactor after everything was built out. Plus, with deploying to production out of the way, you can avoid procrastinating and never showing the world that beautiful app you just built.
Drunk engineers are probably the best real feedback you will ever get. Within 40 seconds of handing my app over to my mates, they found no less than 5 usability bugs that I had unintentionally programmed around in my development environment, and hadn’t in production.
Going forward, I’ll probably write either a Node or Apistars backend for Billdivider.com, and write a mobile-first web application in the coming months.
If you'd like more tips on how to improve your frontend, you can follow me on Twitter as I regularly post articles there.