Programming is boring magic

There is one card trick that I remember forever. Here’s a short description: A volunteer picks a card and seals it in an envelope. The magician then invites the volunteer to choose tea. He has dozens of boxes of tea and they are all wrapped in plastic. The volunteer picks one of the boxes, rips off the wrapper and picks out one of the packaged tea bags. Then he opens the package, and … inside is his card.

If you don’t want to know what is the trick of this trick, then read no further.

The secret of the trick is prosaic, but I was delighted with it. To choosing a volunteer card push… However, the choice from these dozens of tea boxes is actually free, and the choice of the tea bag inside the box is also free. There is no sleight of hand here: the magician does not touch the boxes or the tea bag chosen by the volunteer. Map actually is inside this tea bag packaging.

The trick is preparation. Before performing the trick, the magician buys dozens of boxes of tea, opens each one and unfolds each package with a tea bag. He puts three crosses in each package. Seals the package again. Returns the packages back to the box. Seals each box again. And he repeats it hundreds of times. It takes hours, maybe even days.

This is a “trick” precisely because such preparation looks so boring, so impossibly monotonous that when we see a trick, we cannot imagine that someone would have done such a boring job to achieve such a simple effect.

Teller talks about this in an article about seven secrets of magic:

You will be fooled by a trick if you need to invest more time, money and labor in it than you (or any other sane viewer) would like to invest in it. My partner Penn and I once removed 500 live cockroaches from a top hat on the table of a David Letterman show. We spent several weeks preparing this trick. We hired an entomologist to provide us with slow moving cockroaches that would look good on camera (those that live in our homes won’t wait for the cameraman to take a close-up). The entomologist taught us how to get insects without squealing like nine-year-old girls. Then we made a secret partition out of foam (this is one of those few materials that cockroaches cannot grasp) and came up with a clever procedure for installing a partition in a hat. Do you think there is more fuss here than the trick is worth? For you, perhaps, but not for magicians.

[То самое видео про тараканов с таймкодом, начало трюка на 7:23]

Newcomers to the tech industry often ask me what the secrets to success are. There aren’t really many of them, but this secret – willingness to do something so terribly monotonous as to sound like magic – works with technology as well.

Our industry is obsessed with automation, simplification, and efficiency. In one of the fundamental texts for engineering culture by Larry Wall “Advantages of a programmer” laziness is also mentioned:

Laziness: quality that forces you to make tremendous efforts to reduce your total energy consumption. It forces you to write labor-saving programs that are useful to other people, and to document what you write so you don’t have to answer too many questions.

I cannot disagree: the ability to shift monotonous tasks to a program is one of the best features of knowing coding. However, sometimes problems cannot be solved by automation. If you are ready for boring, monotonous work, then in the eyes of others you will look like a magician.

For example, one day I joined a team that was maintaining a buggy system. They had about two thousand open bug reports. The bugs did not have any tags, categories or priorities. The team could not come to an agreement on which problems should be addressed first. As a result, they were essentially picking bugs at random, but it was not clear if every single issue was important. New bug reports could not be handled efficiently because finding duplicates was nearly impossible. Therefore, the number of open tickets continued to increase. The team stalled in place for months. I was given the task of solving this problem: to get the team off the ground, reverse the trend in the number of open tickets, and find a way to gradually reduce it to zero.

And I used the same trick as the magician, that is, there was no trick: I got down to work. I printed out all the problems – one page for each problem. I have read every page. I took over a huge office and began to lay out stacks of sheets on the floor. I wrote labels on stickers and glued them to the stacks. I moved pages from one pile to another. I wrote long columns of ticket numbers on a whiteboard; I introduced myself by the hero of Ben Affleck from the movie “Reckoning”… I spent almost three weeks in this office, and I left it when I reviewed, flagged, categorized and prioritized each bug.

Immediately after that, the trend went in the opposite direction: we were able to instantly close several hundred tickets as duplicates, and now it took a few minutes to evaluate new reports, rather than a whole day. If I’m not mistaken, it took a year or more to bring the amount down to zero, but the process was quite calm. People said that I did the impossible, but they were wrong: I just did something so boring that no one else wanted to do it.

Sometimes programming seems like magic: you cast some mysterious spell, and an army of robots will do your bidding. But sometimes magic is routine. If you are ready and willing to do boring work, you can accomplish the impossible.

Our company offers cloud servers for any task and on any operating system. Create your own configurations within a minute, the minimum tariff is only 6.5 rubles per day!
Register using the link above or by clicking on the banner and get a 10% discount for the first month of renting a server of any configuration!

Similar Posts

Leave a Reply