Joining the dots in publishing: the story of BookMachine.me
Gavin, Laura and I started developing BookMachine.me in the winter of 2012. This was a period in my professional career when my startup Themeefy had run out of funding, and I was struggling to keep things going. With development work on Themeefy completely paused for the moment, I chose to focus fully on BookMachine.me for the next few months, while things sorted themselves out.
BookMachine.me started with a single idea of joining the dots in publishing. We began building a place where people who make books happen can showcase, find and connect with each other.
As the single developer on the team, my challenge was to get to a Minimal Viable Product stage in the quickest possible time while keeping costs low. This meant we had to hack through a lot of things to make them happen, even if we didn’t necessarily have the skillsets or resources in-house.
So, instead of a regular UI design process that follows the life-cycle of Photoshop mockups, to CSS HTML, we directly started developing a user interface in CSS, HTML and then kept tweaking the code until we got the right look we all wanted. This obviously meant writing several similar versions of the front end pages. Instead of rewriting the code each time, we would get to a base version and then use Firebug to tweak the elements within the browser. I recall that I built at least 6 versions of the landing page in the span of a month.
We also adopted an approach of developing the User interface first, and then working backwards to build the APIs in the back end. We would write the CSS/HTML for a particular feature, and then look at the data it needed from the back end to work. I would then go in and write the backend code to expose that data. This was a challenge because I had to constantly juggle between writing front end and backend code – which need drastically different thought processes and skills.
While we did some smart things and we also took some wrong turns. We made the mistake of shipping the first version of the product a little too early, and we had several major bugs that send us scurrying back to the drawing boards. The lesson we learnt was that its better to take it slow and steady at times than to rush to the market with an unfinished product. Thankfully, those initial bad days are over and we can look back at it with relief and talk of the lessons.
Having budget and time constraints also meant that we were very picky about features. We stuck to just the basics – we just didn’t have a choice of doing more – and sometimes that can be a huge blessing. We were able to keep the application very lean, the navigation easy and the interface simple. Both Gavin and I have talked about this many times, that had we been a startup with lots of funding, the temptation would have been to do a feature overload – which often backfires and brings startups down.
We are now at a stage where our product is close to being the goto place for publishing industry folks. We still have challenges for sure – primarily because we are a very small team and BookMachine is a side project for us. In spite of these odds, we are excited because we were able to achieve significant growth and product completeness by staying lean and focused on the core ideas.
The next step for BookMachine.me is to find more user adoption and then get a team of dedicated developers who can focus full time on the product, to take it to the next stage.