I am sure this was something that I have had signed up for at some point and probably have been getting them in my Inbox. But this was something that did catch my eye. The subject, and then when I read the email – it was like he was talking directly to me.
In the end it is the things we did not try that we will look back on.
I know I got all the opportunities in the world. And I did squander away most (probably something like 99%) of them. But I would like to think that I did try to avail some of them. Squander or avail, I do appreciate all the people around me that made those opportunities real and available.
Here is the email:
Almost 10 years ago, I was sitting in a coffee shop with my mentor at the time, squabbling about how I was going to tackle one of my first software projects.
“Look man, just use LAMP. Linux, apache, mysql, and php.”
“What? Why would I use that? There’s so many bigger things out nowadays. Like Rails or Node? And MONGODB!”
Now, just for context, he was (a) an entrepreneur (b) a software developer and (c) a professor of entrepreneurship at my university. He had built up his renown making a stock market site based around golfing, an idea of his from his college golfing days. And what had he used? LAMP.
And so the argument went on. I quoted some people form Mozilla. I pulled up some flashy studies on performance increases that LinkedIn got from switching over to Node.js. I went on and on about all these rad features in the new development ecosystem. I ASSUMED that, well “he’s just out of the loop, because he’s been out of software development for so long.”
“Look Cole. Do you want to be an Engineer or an Entrepreneur?”
The question was so strong I paused.
“You’ve sat here and told me all of these great things about all of these new tools and bells and whistles… but how are any of them going to get your product built faster?”
And I was baffled. Because I couldn’t. I couldn’t tell him a one damn reason how they were going to do it. I’d bring up scale, and he’d shoot it down with how that doesn’t matter if you don’t have any users. I’d bring up all the new features, and he’d shoot it down with that it’s not as battle tested. I’d bring up MongoDb and NoSQL, and he’d just laugh.
Then, out of nowhere, he decided to bring up a project that I’d done for his class that was borderline failure:
“Remember what I told you about our idea generation project from class? Don’t experiment with new technology when you’re trying to ship something.”
It was a sore spot, but I guess he decided to open an old wound to drive home the point. iPad version 1 had JUST come out and I was so in love with all the apps that I had tried to string the entire project together by using a whole rainbow of them. And it had gone poorly…
Now unfortunately, being young, stubborn, and egocentric, I determined he was wrong. I mean damn, randomuser461 on Hacker News and all the articles on Mozilla couldn’t be wrong…right? All of the articles on Nodejs.org and Rails wouldn’t be just trying to serve their own interests could they?
So I spent, oh, I don’t know, probably 3 to 4 months trying to cobble something together using MongoDB, at the time in its infancy. And it didn’t stop there, I also tried to use Meteor.js, which at the time was in version 0.4 or something. I watched weeks worth of tutorials and videos trying to grasp the concepts and figure out how it could all fit. I wasted, who knows how much time, making those pointless hello world apps that are enough to intrigue you, but no where near what you need to build something serious.
You’ve never heard of profoundbites.com because I never got it done. By the time I’d finally figured out enough to build the thing, I was so overloaded with information, I didn’t even know what I was doing. To this day, that domain name sits in namecheap… mocking me…
Are you an Engineer or Entrepreneur?
This is a conflict that many of us “hackers” deal with. We love our craft. And sometimes we love it so much that it consumes our love and interest of solving REAL problems and helping REAL users. We go to finally build that product, and then spend months researching THE PERFECT STACK to build it with. And then by the time we’ve finally researched everything, we’re so overloaded with analysis paralysis that the project it dies before it begins.
“But Cole, product market fit, wrong team, and running out of money is why most startups fail!”
WRONG. That’s why the most elite of elite failures fail. The ones who actually make it out of the gate. But, as I’m sure you’ve likely experienced… most projects die before the first line of code is ever written. They die somewhere in those 100 tabs you have open and the long winding notes you’ve taken. They die in the countless “framework B vs framework A” searches.
Now – I don’t want to paint it as if learning is bad. No. It’s a cornerstone of being a GREAT ENGINEER. Sopping up information and education like a sponge. But unfortunately, for many of us, we input input input input…. and then only output once we’re incentivized into it directly, usually in the form of a job or contract.
But for entrepreneurs? This is the worst thing you could do. Information overload is pointless. What you want is a feedback loop with your users. What you want is to build your product and get it out the door. What you want is to solve a real problem. What you WANT is to make the most of the time you do have on product-market fit… not deciding if one technology is better than the other.
Now, as for me.. after a few more ventures beyond college, I ultimately wound up taking the path of the engineer. I was seduced by that high paying salary, comfortable life style, and peace of learning and moving. And I have no regrets of the path I took. But it wasn’t what I had intended…
Somewhere along the lines, I had traded my entrepreneurial spirit for that of the engineer’s. It took me years of trial and error to get back on my original path. And though the two can absolutely synergize with each other on some fronts… they ultimately differ in key principles:
Engineers thrive on stable systems, constant learning, and building full pictures.
Entrepreneurs thrive on uncertainty, experimentation, and testing with minimal vision.
And so, what helps one, will not always help the other. It took me years to learn this. I’d join a company, and get locked into the engineer’s mindset. And then I’d leave, and try to start my own project with that mindset… and it would never leave my computer. OR. I’d get my own project out the door, and get used to moving quickly and breaking things and just focusing on shipping… and then I’d join a company, and be penalized for not building in a “stable” manner.
So tell me. What are you? An Engineer? or an Entrepreneur? And is that what you originally set out to be?