Comment by bambax
14 hours ago
I strongly agree that programming is art, but I think there's a difference between other art forms.
A novel is both how it's made and what it is, and so is a piece of music.
Programming produces two different outputs: the code and the program. What users consume, and care about, is the program. The code may or may not be read by other programmers but it's not the main output. (It would be extremely weird to output code in a language that can't ever be run.)
And so I think the beauty or effectiveness of the program matters more than the beauty or elegance of the code. Those are not entirely orthogonal of course, but only loosely coupled.
A programmer should care a lot about the program, and a little less about the code. Vibe programming (where the programmer doesn't care one way or another) to me is a crime; but you can certainly use AI to code, and still care about the finished product, and make it good.
I don't think this is necessarily true. My personal belief is that any functional thing can be turned into art if it is made with deep respect and intimate knowledge of the telos of the object. You make something so well that you see something really beautiful or important in it/with it/through it that you can't help but capture.
Technical communications serve mostly functional purpose but there were technical documents that ascended their pure function. One of the most famous drawings in the European art history is, in fact, a technical document[0].
I also really love looking at arcitectural drawings, there are a lot of architects and drafters whose technical drawing carries so much artistic quality to it (and not merely quality of execution) that I personally call them artists[1].
And before I get mocked about whether code that makes a spreadheet software is art now -- I don't know, I am not a programmer but I think it can be -- surely there is something else to code than just the software it produces? Speed? Efficiency? Balance? Elegant architecture of ideas that says "yes, I know you, the next maintainer of this codebase, will need to extend it one day, and this is why I made it very simple for you"? It might not talk to an accountant who ends up using the spreadsheet but it can talk to another programmer.
0: https://en.wikipedia.org/wiki/Vitruvian_Man
1: https://en.wikipedia.org/wiki/Marion_Mahony_Griffin
> A programmer should care a lot about the program, and a little less about the code
This gives me vibes of like saying to artists "you should care about the painting but less about the brushes and paints"
The tools you choose and the lines you scribe all contribute to the whole. It all matters to some extent
Also, newsflash: the code is the program
What the phrasing really meant was caring about the result, not the program, and it has the same energy as people saying mass-slopped books are as good as regular books because they are entertaining.
In the long run, what matters is the maintainability of the code. And the security, and the performance. All that comes from the code. The most beautiful code with proper layers of abstraction is gonna turn to shit when business needs come into play and there's not enough time to rearchitect the system properly.