Thorsten Ball - How can you not be romantic about programming?
About
Books
Blog
Podcasts
Talks
Register Spill
Misc
Contact
How can you not be romantic about programming?
08 Sep 2020
There’s a scene in Moneyball in which Brad Pitt’s character, the<br>manager of the Oakland A’s, is watching a recording of one of his<br>players trying so hard to run fast that he stumbles and falls. Lying on the<br>ground he’s angry at himself, because he doesn’t realize that right before he<br>started his run he hit a home run and scored the game-winning points. Watching<br>the scene, Pitt leans back, smiles a Brad Pitt smile and says: “how can you not<br>be romantic about baseball?”
There are moments in which I ask myself the same thing about programming.
We’re programming computers. We spend large parts of our days writing down<br>instructions for machines. Other parts of the day are spent making sure that we<br>chose the right instructions. Then we talk about those instructions: why and how<br>we picked the ones we picked, which ones we will consider in the future, what<br>those should do and why and how long it will probably take to write those down.
It can sound very serious and dry; a bureaucracy of computer instructions. And<br>yet.
And yet we, the ostensible bureaucrats, talk about magic as something that<br>exists — the good and the bad kind. There are wizards. Instructions<br>are “like a sorcerer’s spells”.
We don’t call them instructions, though, not when talking about what we produce<br>each day anyway. It’s code we write. Emotions are involved. Code, we say, can<br>be: neat, nice, clean, crafted, baroque, minimal, solid, defensive, hacky, a<br>hack, art, a piece of shit, the stupidest thing I’ve ever read, beautiful, like<br>a poem.
Some lines of code are a riddle to anyone but their author and the name code<br>serves as a warning. Other times, strangely, it’s a badge of honor.
Fantastic amounts of code have been written, from beginning to end, by a single<br>person, typing away night after night after night, for years, until one day the<br>code is fed to a machine and, abracadabra, a brightly coloured amusement<br>park appears on screen. Other code has been written, re-written, torn<br>apart and stitched back together across time zones, country borders and decades,<br>not by a single person, but by hundreds or even thousands of different people.
This world of programming is held together by code. Millions and millions of<br>lines of code. Nobody knows how much there is. Some of it is more than 30 years<br>old, some less than a week, and chances are you used parts of both yesterday.<br>There are lines of code floating around on our computers that haven’t been<br>executed by a machine in years and probably won’t be for another lifetime.<br>Others are the golden threads of this world, holding it together at the seams<br>with no more than a dozen people knowing about it. Remove one of these and it<br>all comes crashing down.
If you haven’t been here long enough and try to guess how much there is and how<br>many generations are layered on top of each other — you won’t even come close.<br>But stay around. After a while, more and more, you’ll find yourself in moments<br>of awe, stunned by the size and fragility of it all; the mountains of work and<br>talent and creativity and foresight and intelligence and luck that went into it.<br>And you’ll reach for the word “magic” because you won’t know how else to<br>describe it and then you lean back and smile, wondering how someone could not.
Follow me on twitter:<br>@thorstenball. Or send me<br>an email to<br>me@thorstenball.com. Or check<br>out my books at<br>interpreterbook.com and<br>compilerbook.com.
I also write a weekly newsletter called Register Spill . Read it and sign up at<br>registerspill.thorstenball.com.