Failure Under Version Control
A short history of Revisions
In early 2011 I was working on a project with a team of designers who were struggling with what was a very common challenge back then, the need to easily version and share their files. At the time SVN was the dominant VCS system and while a handful of SVN clients existed (Tortoise, SmartSVN, etc) they all had highly technical interfaces that made them inaccessible to non-developers.
Git was beginning to emerge as the successor to SVN (largely due to the rapid adoption and popularity of Github) yet at that time a Git specific client didn’t really exist, let alone one optimized for designers.
Enter Revisions. When I set out to create Revisions I had two primary goals in mind. To create a beautiful and easy to use Git client for non-developers (e.g. designers) that would allow them to share files at the click of a button and eliminate the awful practice of appending _v1, _v2, _v3, etc to their files.
I started designing the interface in March of 2011 and by late May I had a beta version of the app in the hands of a few friends. While the response from the first round of testing was very positive I knew I still had a lot of work to do and charged ahead adding features like Github and Beanstalk integration and the ability to preview changes (diffs) in design files.
In early June however I hit a wall while working on the merge conflict resolution assistant as Git (version 1.7) had a somewhat convoluted system for resolving merge collisions. As I trudged down the path of writing a custom Git binary I opened my news reader one morning and saw that Github had announced that it was releasing a native app.
I remember staring at the screen for a solid ten minutes feeling like I had just been hit in the face by a truck. Of course they were releasing a native app, how could I have been so naive to assume I was the only one attempting to solve this problem? Github was and still is a shop of very talented designers and engineers with several hundreds of millions of dollars in funding while I was a single dude coding away alone in my apartment.
To assume I was the only one out there building a Git client for designers was downright naive.
And it didn’t stop there. Less than a month after Github made their announcement Tower appeared on the scene and like that my dream of becoming a hero to designers everywhere had run screaming for the hills. Still I pressed on, committed to see the project through even though I had no idea how I was going to compete against these companies for marketshare when the app was finally released.
In early August I released version 1.0 of the client for OSX and seeded it out to a list of beta testers I had been accumulating. Feedback was positive but there were bugs and as my pool of beta testers grew requests for additional features began to creep in. It was now late August. I had forgone any contract work since March to focus on Revisions full time and after six months with no income my savings were beginning to run dry.
I decided it was time to fly or die so I took to Twitter to try to get the word out and drum up some momentum. I presented Revisions at a bunch of user groups here in San Francisco and gave workshops and free licenses to companies where I had friends in an effort to accelerate adoption.
Almost every designer I spoke to seemed genuinely excited about Revisions and that had to be the only thing that was still keeping me going. One night at home I took a hard look at my finances and estimated I could make it through the end of year if I continued to live in social isolation on a diet of ramen and veggie burritos.
Throughout September I continued to focus on bug fixes, giving presentations and engaging as many people as I could over the internet. Then in October this guy fell out of the sky with half a million dollars in funding.
After I watched that video I shut off the computer and went for a long walk in Golden Gate Park and thought long and hard about what the hell I was doing with my life. When I set out in March I fantasized that Revisions would be this game changing tool that would improve the lives of designers everywhere and if I was lucky maybe I’d make a few bucks off of it to support myself. Fast forward 7 months later and here I was with a buggy app in a climate that was rapidly becoming saturated by organizations with crazy amounts of funding and far more resources than I. How was I going to compete? And while I didn’t know it at the time there was still a lot more competition to come.
I then started to think what if Revisions was successful. What would that look like? If in six months Revisions started to experience widespread adoption did I really want to be bound to maintaining it? After all was I really put on this earth to manage a version control client? I know at the time I was totally in a state of denial, adverse to conceding defeat but now when I look back several years later I know I made the right decision.
On December 1, exactly 10 months after I started the project, I killed Revisions. I told a few close friends I was shutting it down and taking on contract work again and within a matter of days offers from people interested in purchasing my time to realize their dream started to appear in my inbox again.
My dream of entrepreneurship was over. At least for now.
The lesson learned from all of this? If you have an idea for a product, for a company for anything that is bigger than yourself never ever ever ever ever go after it alone.
As I continue along this amazing journey I’m continually reminded that no one person can do it alone. We need people in our lives who have abilities that compliment our own and the goal should always be to collaborate with people who can do what we cannot do and who challenge us to continually improve our game.
I love building software and more over I love building tools that make people’s lives easier. In the four years since Revisions I have carried on and produced multiple open source projects each of which have experienced varying levels of interest and adoption.
And I will keep at it. I will continue to try to create work that adds value for others. Because to create something that makes someone else’s life even just a little bit better, to this there is no greater joy.