Good programmers are humble

The best engineers I’ve worked with all shared the same trait, and unsurprisingly, one that all of the least performant seemed to lack: humility.

By that I don’t mean that they lacked confidence or that they weren’t sure of what they could do. On the contrary, with them I learned that the right attitude when faced with a question of the form “Can we do X?” is always “Of course we can, but is it worth the time/energy/money/…?”.

They were humble in a different way: they were more conscious of their limitations. They assume their code contains bugs, which is why nearly all of them advocate for writing automated tests. They’re ok with not knowing something and admitting that in a meeting, instead of hopelessly wasting everyone’s time.

The ones I’d rather not work with again, on the other hand, think they can write code without bugs. That they can write thousands of lines of C without memory bugs or leaks. That they know where performance bottlenecks are without using a profiler (they didn’t actually know what a profiler even was). That kind of thing.

Good programmers know they’re bad. So they mitigate their awfulness with code reviews, automated testing and tools, tools, tools.

If you think you’re a good programmer, you’re probably not.

Advertisements

4 thoughts on “Good programmers are humble

  1. Bery Saidi says:

    Dunning–Kruger effect !

  2. jra says:

    I am an above-average bad programmer. ☺

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: