

Thorsten Ball - How can you not be romantic about programming?
source link: https://thorstenball.com/blog/2020/09/08/how-can-you-not-be-romantic-about-programming/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

How can you not be romantic about programming?
08 Sep 2020
There’s a scene in Moneyball in which Brad Pitt’s character, the manager of the Oakland A’s, is watching a recording of one of his players trying so hard to run fast that he stumbles and falls. Lying on the ground he’s angry at himself, because he doesn’t realize that right before he started his run he hit a home run and scored the game-winning points. Watching the scene, Pitt leans back, smiles a Brad Pitt smile and says: “how can you not 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 instructions for machines. Other parts of the day are spent making sure that we chose the right instructions. Then we talk about those instructions: why and how we picked the ones we picked, which ones we will consider in the future, what 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 yet.
And yet we, the ostensible bureaucrats, talk about magic as something that exists — the good and the bad kind. There are wizards. Instructions are “like a sorcerer’s spells”.
We don’t call them instructions, though, not when talking about what we produce each day anyway. It’s code we write. Emotions are involved. Code, we say, can be: neat, nice, clean, crafted, baroque, minimal, solid, defensive, hacky, a hack, art, a piece of shit, the stupidest thing I’ve ever read, beautiful, like a poem.
Some lines of code are a riddle to anyone but their author and the name code 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 person, typing away night after night after night, for years, until one day the code is fed to a machine and, abracadabra, a brightly coloured amusement park appears on screen. Other code has been written, re-written, torn apart and stitched back together across time zones, country borders and decades, 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 lines of code. Nobody knows how much there is. Some of it is more than 30 years old, some less than a week, and chances are you used parts of both yesterday. There are lines of code floating around on our computers that haven’t been executed by a machine in years and probably won’t be for another lifetime. Others are the golden threads of this world, holding it together at the seams without no more than a dozen people knowing about it. Remove one of these and it all comes crashing down.
If you haven’t been here long enough and try to guess how much there is and how many generations are layered on top of each other — you won’t even come close. But stay around. After a while, more and more, you’ll find yourself in moments of awe, stunned by the size and fragility of it all; the mountains of work and talent and creativity and foresight and intelligence and luck that went into it. And you’ll reach for the word “magic” because you won’t know how else to describe it and then you lean back and smile, wondering how someone could not.
Recommend
-
9
But does it help you ship? 25 Aug 2020 Whenever I’m not sure whether I’m spending my time on the right thing I ask myself: does it help me ship? If what I consider working on is not the thing we want to s...
-
11
No, typing can be the bottleneck 01 Sep 2020 One of the eternal laws of the internet dictates that as soon as one person says they have a new thing that lets them type faster — a keyboard, a keyboard layout, an editor con...
-
13
What you think is bad about remote work, can, well, actually be good. 22 May 2020 I’ve been working remotely full-time at Sourcegraph for slightly over a year now and, in the five ye...
-
11
How much do we bend to the will of our tools? 04 Feb 2020 A few months ago, while looking at some code, a little light bulb that I didn’t even know existed went off in my head: “This was only written in this way, because...
-
15
Learn more programming languages, even if you won't use them 09 Apr 2019 This article has been translated into Spanish:
-
8
The Tools I Use To Write Books 04 Sep 2018 This article has been translated into Russian: Полезные инструменты для написания книг
-
16
The Lost Chapter: A Macro System For Monkey 28 Jun 2017 If you don’t care about the Who, Where, When, Why, How and the Why Is It A Lost Chapter? and want to skip to the What: I wrote a new chapter for
-
17
Writing An Interpreter In Go: The Paperback Edition 22 Feb 2017 If you’d asked me a only few months ago if there’ll ever be a printed version of Writing An Interpreter In Go I’d...
-
9
Why threads can't fork 13 Oct 2014 There is an interesting thread on the Go issue tracker about daemonizing processes. Most of the thread is not about daemon...
-
8
Software Cover Versions And Programming Licks 02 Sep 2012 The next time you’re trying to think of something you could put into code and you shrug of ideas because they’ve already been implemented, try this: Write a
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK