Skip to content

existence, refactored

With kindness comes naïveté. Courage becomes foolhardiness. And dedication has no reward.

Archive

Tag: cargo cult thinking

After reading various books and magazine articles on management, many clueless managers suddenly become prone to making grave mistakes based on a certain fallacy:

High morale leads to high productivity.

When these managers hear how successful companies manage their employees, sometimes even going to great lengths to provide morale boosting perks, they think that if they do all of that to their employees they’re going to see a drastic improvement in productivity.

continue reading…

Go near that stepladder again. GO NEAR THAT STEPLADDER AGAIN. I dare you, I double dare you, motherfucker. Go near that stepladder one more goddamn time.

As a follow up to Cargo Cult Thinking and Best Practices, I’d like to share a story used by Dave Thomas (one of the authors of The Pragmatic Programmer) in a keynote Angry Monkeys and Cargo Cults.

I first heard this story from Neal Ford’s presentation on ways to improve your code. Fortunately, the presentation is a short run down of his book The Productive Programmer and this allows me to copy-pastequote the book instead of having to narrate it using my own words.

Back in the 1960s (when scientists were allowed to do all kinds of crazy things), behavioral scientists conducted an experiment where they placed five monkeys in a room with a stepladder and a bunch of bananas hanging from the ceiling. The monkeys quickly figured out that they could climb the ladder and eat the bananas, but every time the monkeys got near the stepladder, the scientists would douse the entire room in ice cold water. You can guess what that generated: angry monkeys. Soon, none of the monkeys would go near the ladder.

Then the scientists replaced one of the monkeys with a new monkey, who had not been subjected to the blasts of water. The first thing he did was make a beeline for the ladder, and all the other monkeys beat him up. He didn’t know why they were beating him up, but he quickly learned: don’t go near the ladder. Gradually, the scientists replaced the original monkeys until they had a group of monkeys who had never been doused with cold water, yet they would attack any monkey that approached the ladder.

The point? In software, lots of practices on projects exist because “that’s the way we’ve always done it.” In other words, because of angry monkeys.

chopsticks

Out of the many skills I’ve learned on my own, two stand out.

continue reading…

In the South Seas there is a cargo cult of people. During the war they saw airplanes with lots of good materials, and they want the same thing to happen now. So they’ve arranged to make things like runways, to put fires along the sides of the runways, to make a wooden hut for a man to sit in, with two wooden pieces on his head for headphones and bars of bamboo sticking out like antennas—he’s the controller—and they wait for the airplanes to land. They’re doing everything right. The form is perfect. It looks exactly the way it looked before. But it doesn’t work. No airplanes land. So I call these things cargo cult science, because they follow all the apparent precepts and forms of scientific investigation, but they’re missing something essential, because the planes don’t land.
— Richard Feynman

 

Many of the problems shared by business management and software engineering I mentioned in the previous post stem from Cargo Cult Thinking. As mentioned by noted physicist Richard Feynman in his famous speech to CalTech students that even in these modern times, people resort to blindly following how other people do things in the hopes of reaping the same results.

Dr. Feynman used cargo cults to criticize how many scientists fail to follow the scientific method by merely going through the steps of experimentation but not making sure that their process is scientifically sound. The Halo Effect uses cargo cults in the same manner by exposing the mistakes made by best selling management books in their research. The book basically tells the reader to ignore all those pages detailing how the latter conducted its research because no matter how “rigorous” they were conducted, they were never sound to begin with i.e. there were critical flaws in their process from the start.

Cargo cult thinking in the field of software engineering doesn’t even bother with claiming to follow the scientific method. As Steve McConnell writes in his “From the Editor” article in IEEE Software, March/April 2000, some managers are deluded to think that simply following the culture of highly successful companies will result in radical improvements in productivity. On the smaller scale, many novice programmers (and sadly, software teams in general) are deluded to follow cargo cult programming practices without even knowing why they are used successfully by other coders in the first place.

In my opinion, cargo cult thinking isn’t that bad… if only one or two people are affected. As they usually fail in a spectacular fashion, they make the affected people think twice before doing something like that again. If an entire group, or worse, an entire company is blindly following cargo cult thinking… well… either you ramp up your risk management or you start making popcorn for the drama that will unfold. :D