I’ve encountered many people who are unhappy with their work or interested in entrepreneurship and technology. Having thought for a long time about how I’m spending my time as well and listening to others’ stories it has become very important to me that what I work on have meaning, to me and ideally to others. Since time is our most precious non-renewable resource, it can really hurt to think that you could be doing something more interesting or more valuable but not know how. My hope is this story will shortcut for others the journey that took me years. Specifically, I’ll spell out how and why I became a software developer and entrepreneur.
Up until 2012 I was working in business strategy consulting. While I found the business education interesting and valuable, and could see how certain projects did, in fact, improve corporations, I didn’t feel truly passionate about my work. From my early teens my heroes were entrepeneurs, scientists and engineers because they built things. It was always a mystery to me how someone could create a product or business, and despite some efforts to learn programming and read biographies of these people in high school, somehow it didn’t quite click. In my final years of college, all I knew is that I liked business and analytical thinking, so consulting seemed like a good match. Eventually, spending hours late into the night, on weekends, and even during vacations, I started to wonder why I was doing this and if it was worth it.
This leads me to:
Principle #1: Be a Little Selfish.
Now in my mid-20s, things came to a head when I watched The Social Network and then Steve Jobs died. As impressionable (or delusional) as this makes me sound, somehow I started feeling deeply disappointed with how I didn’t at least try to pursue opportunities as Zuck and Jobs did. One of the best pieces of advice Steve gave was that the people who build great things in the world aren’t that different from you. I started taking this to heart.
Principle #2: Try Something.
My memory is probably tricking me, but around this time Codecademy.com came out and I am fairly sure I was among the very first users. It seemed perfect. I had started C++ around age 15 and especially after seeing the Social Network I kicked myself for not pushing a little harder back then. Now, magically, miraculously it seemed like I had another chance. They had a quote on their site from a major VC investor that if someone were choosing between two years of business school and two years to learn coding, they should hands down pick coding. It hit a nerve and I completed the very early and brief curriculum Codecademy launched with.
Principle #3: The Hard Stuff Precedes the Cool Stuff.
For a while I felt really good about learning programming. I was solving problems. Taking it step by step as Codecademy taught it didn’t seem that daunting. I didn’t have to think about the whole process, just the problem in front of me. And our brains are basically problem solving machines. But lesson after lesson built up over months, work got more or less busy and this particular project got a bit stale. I didn’t see the light at the end of the tunnel.
Principle #4: Find Inspiration.
I was very lucky that I had friends who I could look to as models of what I was trying to do. Matthew Pirkowski and Roberto Thais were both self-taught developers that I had been friends with since college. Both started not too far from the level I was starting at, and both ended up working for awesome startups and doing impressive things, and not in that much time. Not everyone is so lucky, I recognize, but even if you may not know someone yourself, at least read about people (and you’d be amazed how far a little bit of enthusiasm expressed to relevant and interested people can get you).
I got another stroke of luck around this time: another friend of mine, Daniel Gelernter, wanted to build a startup called Lifestreams with a very interesting idea, that data can be effectively and simply presented in a timeline. Even better, he was the son of the great computer scientist Professor David Gelernter who had a two decade relationship with another great computer scientist and technology author, Dr. Eric Freeman. Their work on Lifestreams influenced many people in technology and is truly exciting. We co-founded a startup (in which Daniel proved to be an amazingly talented fundraiser and evangelist), that today has created Cardstreams.io. This very intriguing product allows developers to drastically shortcut the process of building activity streams (or timelines) of multiple types of data and organizing it in the form of cards, a UI paradigm with serious potential to redefine the structure of apps and websites.
Again, some of this is luck, which I fully admit. But for those not fortunate enough to have a cofounder ready to go, consider sharing what you’re enthusiastic about until you click with someone. Or apply to an accelerator. The world has plenty of problems, and not many entrepreneurs who can solve them. But the one thing no one else can decide for you is what problem you find interesting and how much energy you want to throw against it.
Principle #5: Real Entrepreneurs Code.
There are actually notable exceptions: excellent marketers, product visionaries and managers, or designers are extraordinarily important as well. But while it’s not a universal rule, it still helps tremendously. Because raising money is difficult. Because you need to give up equity. Because, per the Lean Startup, you need to develop a minimum viable product and without knowing how to code (or manufacture, or sell) yourself, you are at the mercy of many other people who may or usually may not share your passion. More tactically, investors increasingly like to see people who are closely matched to their product or business before they invest, so while a good idea is great and valuable, even more valuable is the ability to execute some major part of it yourself.
When the ordinary challenges of running a startup came up, I realized one simple thing: you can either spend a couple of years raising money, hiring people, writing project plans, trying to release and market something, raising more money, trying harder, etc., or you can code and build your own products quickly, test quickly, and learn quickly. A startup is a great learning machine. And it’s often better to learn firsthand, based on your own work (at least initially).
Most importantly however, all you really have starting out is a great product that you hope people will want. And you can’t outsource passion. If you build it, you’ll often love it and deeply want to make it real.
Principle #6: Don’t Just Learn Coding, Make Things.
I hit a wall. I had accumulated a lot of hours over 1.5 years learning coding online but I didn’t feel like I could develop something real yet. Then I ran into Thinkful (literally I ran into the founder, Dan Friedman, in the elevator). The idea was simply perfect for someone like me who started programming but hadn’t yet achieved lift-off velocity: learning to code online with the help of a mentor, mainly by building real apps. I loved this concept and signed up a few days later. It was inexpensive, effective, and despite some struggle with my nearly overwhelming work demands, I did end up building some real (simple) web apps in one of their beginners’ courses (Intro to Front End Web Development). Actually making something, however simple, that was in public view online and that worked helped me break right through the wall and made me see a vast space beyond it.
Principle #7: Dig Deep and Sprint To the Finish.
At this point it was starting to click. If a few months of work could teach me to build real apps, it was only a matter of more time, effort, and guidance (the ingredients I already had seen in action) to become a real developer who could confidently build real products. Once again the intervention of a friend, Jordan Trevino — another self-taught developer and entrepreneur, introduced me to a leading 3 month programming bootcamp. The Flatiron School hit me like a lightning bolt that lit my mind on fire.
I applied and after the first interview went alright I was offered the coding challenge. At this point all the frustration of not following through on coding as a teenager, of delaying my ambition to be an entrepreneur, and of struggling to get somewhere with programming over the past two years crescendoed into an explosion of effort where for almost 72 hours straight I made a simple command line game in Objective-C (which I had barely seen before, let alone understood). I pulled every trick I could, from thinking it through first in JavaScript, which I understood well from Thinkful and Codecademy, and then translating it step by step using nothing but Google and Stack Overflow into Objective-C (as it happens I unknowingly wrote at least some of it in C).
The sleep deprived, manic satisfaction I felt at building that modest program from a dead start was perhaps the most sublime emotional experience I’ve ever felt at work.
But that was just a taste of the awesomeness of being at the Flatiron School, which I often involuntarily think of as if it were my actual and beloved undergraduate college experience. Coding day in and day out with other interesting people and passionate teachers — true believers in the potential of coding to improve the world — made everything I had been working towards over the past two years real and possible.
Principle #8: Start. Right Now. Stop Reading This.
Here’s a simple heuristic: if you feel like doing any part of this, you’re probably right. And if you experiment a bit and decide otherwise, it’s really not that bad and you’ll learn something valuable anyway.
Hopefully this story simplifies the process a bit for you. But here’s the most important thing: this is not magic. In some ways, what I described was less work than you probably put in already in whatever you’re doing. The point is that this effort started small and built, in fits and starts, into a result. It wasn’t some great plan on my part, just flailing luckily in the right direction. But in demystifying how becoming an entrepreneur and/or developer can happen, at least in one case, I hope something like my experience can happen a bit more readily for others who are willing, on their own terms.
P.S. I now work at Quizzify.com, making their iOS app and a bit of their web app. We’re hoping to take some of the cost out of healthcare by teaching people to be smarter consumers.