This essay was written to describe what I think makes world-class engineers/hackers but I strongly believe the concepts generalize to people who do hard things.
The other day, a friend asked me what I thought made the best engineers or hackers. The weird thing is that my answer 6 months ago would have been very different to the one I gave him last week. In fact, it was only after trying my hand as a complete noob at a couple of hard technical projects (that I had previously thought were just not possible) that I could even put this into words.
To take a similar idea from Nabeel’s essay on understanding, I’ve realized that being a world-class engineer or hacker (whatever that means) is as much about virtues such as honesty, integrity, and bravery as it is about raw-intellect. Sure great software engineers are often smart, hard working, and know a lot. However, all of these conditions are necessary but not sufficient. What I now know truly differentiates the best engineers and hackers is that they are utterly and completely fearless. They’re not willing to settle until they understand something. They’re brutally honest about whether they do or don’t understand it. And most importantly, even when they don’t know where to start, they have complete conviction in their ability to figure it out along the way.
This is somewhat counterintuitive because starting things when you don’t know what you’re doing is uncomfortable. It’s much easier to write a challenge off as difficult along some dimension that you’re just not naturally capable in - your knowledge, natural intelligence, experience etc. If we look at an adjacent domain, we find a similar pattern crop up. Many successful entrepreneurs that have started world-changing technologies often attribute their accomplishments to naivety. They say that if they’d known how hard the problem would have been going in, it’s unlikely they would have even started. There is a quote related to this which I love that goes something along the lines of “someone forgot to tell them it was impossible, so they went ahead and did it.” I think this is very profound because there’s some nuance in here, which may also help explain why being fearless is critical to being a great hacker or engineer.
Most of our early life is spent being told what we can and can’t do. We’re conditioned (both implicitly and explicitly) as young kids to believe that we cannot add value to the world. That our childhood is only preparation for contributing to the real world in some way when we become adults. This is incredibly harmful because it forces us to anchor our expectations very low and create a ceiling on what we think we can do. Now, of course we know this is not true. There’s a rich of history of people who learned to do a lot of stuff when they were very young and went on to do incredible things. Often in spite of not having a good map of the territory. Instead, they went in assuming that whatever they were doing was possible by default and built the map as they went along. In other words, they tackled the hardest challenge head on, which was to just get started. Most of the knowledge, abilities, and other attributes we attribute with any world-class skill was in fact acquired through experience, not possessed by default at the start.
However, by definition, this problem of getting started is quite tough. It’s so hard and uncomfortable in fact, that we are sometimes willing to convince ourselves that we simply cannot understand what is going on. Whether this is implicit for some people (i.e. they just naturally gravitate away) or explicit for others (i.e. they tell themselves they’re not smart enough), this fear is what differentiates a good engineer or hacker from a great one. A great engineer may not know much more about the problem than the next person, in fact I’ve noticed this is often the case, but what they know and have internalized with complete certainty is that they can and will figure out what the hell is going on. The most important difference is that they are not afraid, or even if they are, they know to push past it.
I’ve noticed that amongst all great hackers and engineers, as Nabeel mentions for understanding in his article, this is a software trait that is independent of hardware traits, like working memory, speed of processing etc. What this means is that, like any muscle, this can be strengthened by use.
The more you push past fear in your personal life (and do stuff that is uncomfortable or maybe technically hard in this context), the more confidence you develop in your abilities to figure shit out. What I noticed after doing a couple of hard technical things (of which there is no shortage!) is that my attitude changed more significantly than my depth of knowledge. Of course, I learned a lot, however the arbitrary ceiling I had set for myself kept moving higher and higher up. This is naturally not independent of knowledge however this is alone enough to achieve hard things given enough time and energy.
This distills a pretty important lesson I’ve learned over the past couple of months. Doing difficult things in life is mostly about having high expectations for yourself. If you have high expectations for yourself, then you’ll have the courage to push past the muck however hard things may get, or stupid you may feel learning about something new. Unfortunately, this is not something that can materialize out of thin air. Like a muscle, it has to be engaged and developed with regular use working incrementally outside your comfort zone.
As with most things in life, this takes a lifetime of hard work. Even the best engineers or hackers you know may feel like complete noobs at certain times. However, what I find incredibly encouraging, is that anyone can develop the courage to become fearless in whatever they do and explore their curiosity. It turns out that the bottleneck is not intelligence, like the world may have us believe. Intelligence does not determine whether you will get started doing something difficult that is outside of your comfort zone, and keep moving. The bottleneck is in fact courage.
Thanks to Jacky, Linus, and Talha for reading early drafts of this
Have any thoughts? I’d to love to hear them!