5 ways to be happier while doing everything worse.

This article is crap. You definitely shouldn’t read it.

“If you’re incompetent, you can’t know you’re incompetent.… [T]he skills you need to produce a right answer are exactly the skills you need to recognize what a right answer is.” ( Morris, Errol (20 June 2010). “The Anosognosic’s Dilemma: Something’s Wrong but You’ll Never Know What It Is (Part 1)”)

I had an experience last year which crystallized a well-know effect for me. This effect is known as the Dunning-Kruger effect I learned today.

It’s so easy (http://xkcd.com)

A client of a client employed a super-duper programmer. A programmer who claimed and believed he knew an awful lot about programming. About best practices and standards and APIs and SEO and all that techno stuff that people in the business of programming need to understand. He wasn’t one of those cowboy web designers, bashing out crummy code for peanuts.

So far so good. In my day job, I say and do most of the same things. But this guy promised to develop a big complex application that would interact with my client’s big complex application, which I maintain. No problem — I promised to help in whatever way I could, even handing over access to the code for my client’s application so he could link the two together.

And then the weeks passed, and the months passed and the big complex application didn’t appear. But it was ‘50% done’ and ‘80% done’, but no working code was visible to anyone. Meanwhile master programmer told anyone who would listen that my company’s (yes imperfect, but fully operational) application was a piece of crap and all my code was garbage. I’d seen this before. I shrugged and let it go.

Super-duper programmer was also astonishingly rude to anybody who worked with him, something which I considered brave for someone working at a junior level on a contract. One day his super-duper rudeness, combined with his prolonged non-delivery of anything much, got the better of him, and super-duper programmer got fired.

And my company was asked to take over his work and see what he had done. And lo! He had produced a five page website in entirely static HTML code, like something from the 1990s, and built in a ‘WYSIWYG’ editor as if Microsoft FrontPage was still a thing. The super-duper application didn’t exist.

I actually have some sympathy for super-duper programmer, because a long time ago I went through a somewhat similar phase, albeit without the rudeness. He wasn’t deliberately misleading anyone, he just didn’t know what he didn’t know. Having done some coding and created some websites, he though he was an expert, and hadn’t grasped that he was completely out of his depth when it came to actual programming.

A lot of coders fall in love with coding. In the words of the Wordpress content management system that powers about half the world wide web, ‘code is poetry’. Code should be (according to the Laravel framework) ‘beautiful’, ‘elegant’, ‘expressive’ and ‘fluent’. Ugly code should be eradicated, because it slows down development and growth. All admirable objectives, but somewhat moot if the end result is also ‘non-operational’.

Wordpress footer: Larkin would disagree

While programmers hate to admit it, Microsoft actually got where it did using code that was far more ‘ugly’, ‘bloated’, and ‘annoying’ than ‘poetic’. But it worked — often not well, but well enough. Unix and Linux (and even Macintosh is just a type of Unix), likewise, got where they did by a process of bizarre evolution that produced an operating system that nobody in their right mind would set out to design from scratch. Like Chartres, Mexico City and the duck-billed platypus, it is more like an accretion of chaotically-designed additions than an intelligently-designed whole. Looked at in total, it’s awe-inspiring. Looked at closely, it’s a mess. But it works, and when it doesn’t work, you just clamp on your own ugly gargoyle, or build another shanty town, and — presto! — it works again.

The super-duper programmer is a common theme in the software industry. Any newly-employed coder will tell you that the previous coder’s work was terrible, bloated, badly designed, and should immediately be consigned to the memory hole. Often, they’re right — with one proviso. Keeping bad working code is usually much more cost-effective than re-writing from scratch. Ask the developers of Netscape 6 and Quattro Pro (an early rival to Excel). Both projects committed suicide in the process of spending years rewriting bad working code and ending up with something that may have been ‘elegant’ but more importantly ‘sucked’.

Our super programmer had not only swallowed the ‘code is poetry’ myth, he’d also failed to realize how limited his knowledge of programming actually was — until someone asked him to do something complicated and he got completely stuck. This was the Dunning-Kruger effect in action. The less someone knows about the full complexity of any given subject, the more they feel they have a full understanding of it. As experience grows, so does one’s realization of the limits of one’s own knowledge. Ironically, as the more ability you have in a given skill, the more likely it is that you’ll be completely unsatisfied with the quality of every damn piece of work you ever produce. Geniuses throw away their life’s work because they think they’ve produced nauseating hackwork. Meanwhile idiots with no more skill than the ability to like watching movies, or read books, or watch Fox News, think they can become film directors, or authors, or — most dangerously — politicians.

Mount stupid is currently in the West Wing

Most dangerously, politicians, because in this one avenue their self-belief and ignorance tallies with the entity that allows them to get meaningful employment — the electorate. A bad author’s book will not be published, or, if self-published, won’t be read. Unwatchable films don’t get made, or, if made, don’t get watched. Politicians who believe a simple fix is all that’s required to solve the world’s problems find their opinions echoed in an equally ignorant electorate — and get elected.

With the advent of Twitter, Facebook and other social media we see the Dunning-Kruger effect writ large and in millions of tweets each day. Everybody has an opinion about politics. Everybody has a really strong opinion about politics. But, as a rule, the stronger the opinion, the less qualified the source. Because for the supremely ignorant it seems so obvious ‘what needs to be done’ to fix a problem. Bomb them, ban them, lock them up. Every problem has a single cause and a single solution. If only the idiots who run the show would just do it. But they must be idiots, because they don’t.

Governments are in fact incredibly complex entities, employing tens of thousands of people to address intractable problems. They need to interact with a thousands years’ worth of established legislation, common law and case law, with different levels of government with conflicting rights, with citizens with conflicting objectives, with foreign powers with conflicting ambitions, and somehow find a solution that works for as many people as possible, and pisses off the fewest.

As I discovered recently, even the most seemingly uncontroversial political act in the world — building a hospital — will have negative effects for somebody that will produce a furious response. In this instance, the people living opposite who suddenly lost their prized view of a lake. The Utilitarians believed in the principle that the best policy is always the one that produces ‘the greatest happiness of the greatest number’. Actual government tends to adopt the principle of whatever causes the smallest fury of the smallest NIMBY.

Indeed, if there’s one lesson of 21st century government, perhaps above all the USA, it’s how limited is the power of any politician to change the direction of government. Barack Obama often used the metaphor of government as an oil tanker — very slow to change direction. As others have noted — that’s only true for forwards and backwards. If you want to change an oil tanker’s direction, just scuppering the damn thing changes the direction remarkably quickly.

Right now we’re seeing this with (you knew it was coming) Donald Trump. Trump is the classic case of someone completely ignorant of the complexity of the role he was been appointed to, and therefore completely confident of his ability to solve those problems. It would be, as he said so often, ‘so easy’. And it was an extremely attractive argument, because it fell right into the perception of most of the population, based on their inherent lack of expertise, that everything they hate about the world could be fixed at a snap.

To be fair to Trump, all politicians play this game. Every election is a promise of easy fixes for complex problems. The difference is that the people selling the easy fixes usually know very well the degree of complexity required to actually implement even moderate change. It’s why in recent decades most political parties have tried to get out of the business of promising much in concrete terms at all. Instead they concentrate much more carefully on creating aspirations of change, without stating too clearly of what that change will consist. Trump, unusually, actually believed that everything would be simple. It’s the syndrome of a someone with supreme self-confidence combined with profound ignorance of … almost everything.

But who can doubt that Trump, insulated from the problems of the world by his overweening ego and ignorance of the job he’s been elected to fill, is an extremely happy and self-satisfied person. To recognise one’s failures and weaknesses, to feel the full extent of one’s inability to fulfill a role, one needs to be knowledgeable and competent. Ipso facto, the more we know, the more unhappy we shall be.

So, in the spirit of the endless life advice of websites such as this, here’s my invaluable 5 rules on how to live a happy life.

  1. Don’t read books. Books cause knowledge of the world and the complexity of the human condition. They’ll mess you up. Don’t do it.
  2. Don’t research. If you want to be happy with your work, learn as little about it as possible. Say you want to be a movie director. Don’t watch films — it’ll only confuse you with all the techniques and need for plot that successful director use. Just write it, the result may never get made but you’ll think it’s great.
  3. Only talk to people you already know will agree with you. If you must watch television, choose only channels that reflect your prejudices. On social media, make sure you only follow people who agree with you, and belittle those that disagree. Fortunately social media is designed to show you what you already think, so this is taken care of. A massive echo chamber of people in perpetual agreement is an essential component of a happy life.
  4. Don’t make the mistake of believing people who disagree with you are human. Only talk to people from your own social, cultural and racial background. Learning about different cultures and beliefs is confusing and speaking to people in person tends to muddy the waters by making it clear that people from other backgrounds are human too.
  5. Not going to write a point 5. These rules are already complicated enough.