Hacker School banning “feigned surprise” is absolutely brilliant

[Since you might wonder while reading this piece what my relationship to Hacker School is: I have no relationship with Hacker School. It has been described to me, and I have devoured the blog. If I made a mistake, let me know.]

The biggest insight I’ve had as a programmer is just how often other programmers are portraying false confidence. My natural approach to problem-solving is Socratic, feeling out different ideas and taking small, well-supported steps. Compare and contrast that with making gigantic pronouncements full of bravado. Writing software is inherently an exercise in managing complexity, which is best done with caution.

The best developers I’ve worked with were willing to admit when they didn’t know something. Of course they could learn quickly. If you meet an arrogant developer who pretends to know everything, be careful. To them, their ego is more important than your software. An insecure person who mixes up their self-worth with their programming ability can be very unpleasant to work with. Sadly, some workplaces and development teams reward bombastic claims made with absolute certainty, even on complex topics.

If you have ability and a strong work ethic, people will notice. You will learn a lot from their reaction. If they react by treating with you with respect, they have strong character. If they react by taking every opportunity to belittle and undermine you, they perceive you as a threat to them. If you aren’t prone to petty jealousy and spiteful thinking, it will be difficult to empathize with people who are. Sadly, you must handle these threats. Declaring yourself “above it all” only makes you an easy target, especially once you gain more responsiblity and therefore power.

“Feigned surprise” (when someone gasps and says something like: “you don’t even know about monads?”) is a method of belittling someone and lording your superiority over them. Every organization says about itself, “we don’t have any rude, unpleasant people here. We’re different!” And during the interview process those people are hidden away. Usually you can only find out the truth by actually working there. But by banning feigned surprise, Hacker School strikes a real blow against unplesant, unproductive behavior, and drives away toxic people. That is a strong signal that Hacker School is the sort of place where someone can program and collaborate in a peaceful atmosphere, and therefore accomplish a great deal.

Edit: Join the Hacker news discussion here


8 thoughts on “Hacker School banning “feigned surprise” is absolutely brilliant

  1. eksith says:

    Reblogged this on This page intentionally left ugly and commented:
    “Feigned surprise” should be banned in any organization that purports to bestow knowledge and build confidence as it does the opposite in both.

  2. colin says:

    Alternatively I get the opposite.
    Incompetent management asking for “just” a small feature (that will interact at the heart of the data model and may cause lots of misery).

    Just add an “if” here in the code (so that it mixes the data model into the application code). Sure its an easy fix, but makes the code way less maintainable. Basically because my management are incompetent.

    • da-coder says:

      It sounds like management may not be incompetent in your described scenario. As a coder, our responsibility is to write good (maintainable) code based on various requirements, including input from upper management (in most cases). For you to say that management is the cause of your code being “way less maintainable” is simply deflecting blame. The truth is that you are not competent to be flexible and adapt to changing situations.

      Grow a pair.

  3. Martyn says:

    Here’s an XKCD cartoon that estimates that for each thing that ‘Everyone knows’ by the time they are adults, there are on average 10000 people people per day discovering it for the first time.

  4. Sigivald says:

    “You don’t even know about banning feigned surprise?”

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 )

Twitter picture

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

Facebook photo

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

Google+ photo

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

Connecting to %s

%d bloggers like this: