Six Classics You Can Finish in a Weekend
In Developers Should Read the Classics Too, I never said where to start, so here is a list with only six books in it. Each one can be read in a weekend. For every book I first say what it is about and then what it has to do with our job.
Animal Farm by George Orwell Link to heading
Animal Farm came out in 1945 and it is about a hundred pages long. The animals of Manor Farm throw out the farmer and decide to run the place themselves, with all animals equal. The pigs are the cleverest, so they take over the planning, and a pig called Napoleon ends up in charge. By the end of the book the pigs walk on two legs and the other animals work more and eat less than they did under the farmer. Orwell was writing about the Soviet Union, but you can follow every page without knowing any of that history.
I want to talk about Boxer and Squealer. Boxer is the cart horse, the strongest and most loyal animal on the farm, and his answer to every problem is “I will work harder”. He gets up earlier than the others and works when he is hurt, and the whole farm depends on him until the day he collapses. I have worked with a few Boxers and I have been one. If a team survives only because one person works nights, harder work is not going to fix it. Squealer is the pig who stands up every Sunday with a long strip of paper and reads out figures showing that production is up by two hundred or five hundred per cent, while the animals listening to him are hungry. I think of him every time I see a dashboard that is all green on a day when the users are complaining. And then there is Snowball, the pig who was chased off the farm. After he is gone, everything that breaks is his fault. Every company I know has a developer who left two years ago and still gets blamed for the bugs.
The Apology by Plato Link to heading
The Apology is the speech Socrates gave at his trial in Athens in 399 BC, as Plato wrote it down. The title does not mean that he is sorry for anything. The Greek word means a defence. He is accused of corrupting the young and of not believing in the gods of the city. He tells the jury that a friend of his once asked the oracle at Delphi whether anyone was wiser than Socrates, and the oracle said no. Socrates did not believe it, so he went around Athens and questioned the people who were famous for their wisdom. He found that they did not know what they thought they knew, and they did not thank him for showing it. The jury finds him guilty and sentences him to death.
The part I would ask every developer to read twice is the one about the craftsmen. Socrates says that the craftsmen really did know things that he did not. They were good at their work and he admits it. But because each of them was good at his own craft, he believed he was also wise about all the other important things, and Socrates says that this mistake covered up the knowledge they had. We are the craftsmen in that story. Being good with Go or Zig says nothing about how much I know about economics, medicine or running a company, but our profession is full of people who can write a compiler and therefore have a strong opinion about everything else. I catch myself doing it too. The second thing to notice is how Socrates talks. He is on trial for his life and he still spends his time asking his accuser simple questions until the accusation stops making sense.
The Old Man and the Sea by Ernest Hemingway Link to heading
Hemingway published The Old Man and the Sea in 1952 and it is about a hundred pages. Santiago is an old Cuban fisherman who has gone eighty-four days without catching a fish. On the eighty-fifth day he rows out alone, much farther than the other boats, and hooks a marlin that is longer than his skiff. The fish pulls the boat for two days and two nights before he can kill it. It is too big to bring on board, so he ties it to the side, and on the long way home the sharks eat it piece by piece. He reaches the harbour with a skeleton. That is the whole story and I have not spoiled anything, because the book is about how he behaves and not about what happens.
Anyone who has spent a year on a project that was cancelled knows how Santiago feels when he walks up the beach. The code is gone and there is nothing to show to anyone. But he is still the man who caught that fish, and the next morning the boy who used to fish with him wants to go out with him again because there is so much to learn. There is a line early in the book that I would hang above my desk. Santiago keeps each of his lines at an exact depth while the other fishermen let theirs drift, and he says to himself “It is better to be lucky. But I would rather be exact. Then when luck comes you are ready.” I do not know a better description of careful engineering. The writing is a lesson too. Hemingway uses short words and short sentences and he never explains the same thing twice. Read it once for the story and then look at how little he needed.
Meditations by Marcus Aurelius Link to heading
Marcus Aurelius was emperor of Rome from 161 to 180 AD. The Meditations are the notes he wrote to himself in Greek, many of them in army camps during the wars on the northern frontier. He never meant them for other people and the title was added long after his death. There are twelve short books with no plot and a lot of repetition. It is the longest book on this list and you can finish it in a weekend, but it works better at a few pages every morning. What you get is the most powerful man of his time reminding himself, day after day, to be patient, to do his work and to stop complaining.
The second book opens with Marcus telling himself that today he will meet people who are meddling, ungrateful, arrogant, dishonest and jealous. Then he says that he cannot be angry with them, because we were made to work together like two hands or two feet. I read that passage before some meetings. All through the book he separates the things he controls from the things he does not. I do not control the deadline, the legacy code or what the customer will say tomorrow. I control the quality of what I write today. In the fifth book he writes that what stands in the way becomes the way. The bug that blocks my feature is not keeping me from the work. It is the work. I also like what the book is. It is a private notebook where a busy man wrote down what he kept getting wrong, so that he would get it wrong less often. Developers should keep one of those.
Notes from Underground by Fyodor Dostoevsky Link to heading
Notes from Underground is from 1864 and it is about a hundred and twenty pages. The narrator is a retired civil servant in St. Petersburg, forty years old, and we never learn his name. He starts with “I am a sick man… I am a spiteful man” and he does not get any friendlier. The first part is a long angry speech against people who believe that a man will behave reasonably once you show him where his real interest is. In the second part he tells three stories from his twenties. He spends a long time planning to bump shoulders with an officer who once moved him out of the way without noticing him. He invites himself to a dinner with old schoolmates who do not want him there. And he is cruel to Liza, a young woman who is the one person in the book who is kind to him. He is terrible company and he knows it.
The first part is an argument against every system that was designed for reasonable users. The underground man says that if you prove to a person with mathematics what is good for him, he will do the opposite on purpose, only to show that he is a man and not a piano key. I remember this every time a user ignores the big button in the middle of the screen and finds a path through the program that I never imagined. The narrator himself is the other lesson. He is more intelligent than everyone around him and he says so, and in twenty years he has done nothing. His explanation is that a clever man cannot become anything and only limited people act. I have met him in our profession. He can find the flaw in every design and he has never shipped one of his own. I wrote Action Beats Overthinking a few months ago. Dostoevsky shows what the other choice looks like after twenty years.
The Death of Ivan Ilyich by Leo Tolstoy Link to heading
Tolstoy published The Death of Ivan Ilyich in 1886 and it is the shortest of the two Russian books here, around seventy pages. It opens with a group of judges reading in the newspaper that their colleague Ivan Ilyich has died. The first thought of each one is who will get his position and what that means for their own promotion. Then the story goes back. Ivan Ilyich did everything properly. He went to the right school, took the right job, married the right woman and rented the right apartment. One day he is on a ladder showing the workman how he wants the curtains, he slips and knocks his side against the window frame. The pain does not go away. The doctors talk about his kidney and his appendix and do not answer his questions. His family carries on as if nothing serious is happening. Only Gerasim, a young servant, treats him honestly. In his last days Ivan Ilyich asks himself whether his whole life was wrong.
Two things in this book stay with me at work. As a judge, Ivan Ilyich was proud that he could take any human case, remove everything personal from it and reduce it to a form. Then the famous doctor does exactly that to him, and he notices. When I close a bug report with “works as designed”, there is a person on the other side who wanted to know whether their problem is serious. The second thing is the lie. Everyone in the house knows that he is dying and everyone pretends that he is only ill, and Tolstoy says that this pretending hurts him more than the illness. Gerasim is the only one who says plainly that we all die, and then he helps. I have been on projects where everybody knew that the date was impossible and the weekly report was green anyway. A team needs a Gerasim. Tolstoy also writes that the life of Ivan Ilyich had been most simple and most ordinary and therefore most terrible. I think about that sentence when I see a career built only out of proper choices.
A word about philosophy Link to heading
Two of these six books are philosophy and the two Russian ones are full of it as well. Philosophy has a reputation as clever talk with no practical use. Good philosophy helps in every part of your life, and that includes your job and your hobbies. Socrates shows you how to check what you really know. Marcus Aurelius shows you how to stay calm and do the next thing that needs doing. I need both when I debug, and you will need them just as much if you play chess, run or learn the guitar. I say good philosophy because there is also the kind that only wants to sound deep. If a book changes nothing in how you act or in how you see life, put it down.
Which one first Link to heading
If you have not read a novel since school, take Animal Farm or The Old Man and the Sea. They are stories and the story will carry you to the end. If you want the shortest one, the Apology fits in one evening. The two Russian books ask more from you. People call them dark and I do not agree. They make you look again at the choices you have made in your own life, so keep them for a weekend when you have time to think afterwards. None of these books will change your code by Monday, because this kind of reading works slowly. I would still like to hear which one you picked.