Teachable and Stubborn

August 18, 2021

The most important question to evaluate in a potential hire is “are they teachable?”.

By teachable I do not mean “we do everything perfectly here, so they must be able to learn from us.” In fact, that attitude would represent the opposite of teachable.

Beyond a desire to learn, being teachable means being humble enough to consider that you might be wrong. And being open to changing your opinion when that’s the case. That’s a quality critical to both the established organization and the potential hire, assuming both sides want to grow. (It’s also important because software developers are usually wrong before lunch.)

The second most important question to evaluate is “are they stubborn enough?”.

Those two qualities appear to be in conflict. But you cannot solve difficult problems without being exactly the right kind of stubborn. (Sure, the words “diligent” or “persistent” could be used here, but “stubborn” captures the required vigor.)

Be teachable, but don’t forget to also be stubborn.

The Context and the Logic

March 9, 2021

Soroush Khanlou:

As a professional programmer, there are two main types of tasks you work on. I’ve started thinking about them as the context and the logic. […]

This framing, context vs logic, illustrates two things for me:

First, that we all tell ourselves a lie: this job is primarily about the logic, interview candidates should mainly be tested on their ability to think about the logic, a “good” programmer is someone who can write the logic really well. In fact, an overwhelming amount of the job is making the context work. […]

I’m primarily a context programmer. I wish I weren’t — I enjoy writing the logic a lot more — but it is the reality. I should embrace that and treat the context as my job, rather than as an impediment to “my real job”.

Second, if you can make your context simpler and smaller, you can spend less time on it.

(Via Michael Tsai.)