Programming is Art
Programming’s status oscillates between art, craft, and engineering in this exchange, with some likening code to a medium of personal expression and others insisting its primary purpose is problem-solving, correctness, and maintainability. Many see AI coding tools as a powerful but double-edged development: they can accelerate routine work and shift humans toward higher-level design, yet risk eroding deep understanding of code, code quality, and the pleasure of “hand-made” software. Comparisons to photography’s impact on painting and mechanized weaving highlight fears that much commercial programming will become commoditized, leaving only a niche space where people still code for love rather than money.
Is Programming Art, Craft, or Engineering?
- Many argue programming can be art: it involves style, aesthetic choices, and recognizable “signatures” in code.
- Others frame it as primarily engineering or craft: correctness, maintainability, and fitness for purpose dominate, especially in professional settings.
- Some distinguish: system design/architecture as the “art”, coding as technique to realize it.
- A few say the solution or user experience might be art, but the source code is more like a brush, not the artwork itself.
- Definitions of “art” vary wildly: from “expression of an idea/feeling” to “anything involving imagination and skill,” which drives much of the disagreement.
Hobbyist Joy vs Professional Reality
- Clear split between those who code for love (often outside work) and those who see it mainly as a way to earn money.
- Hobby work is described as playful, exploratory, unconcerned with strict fitness for purpose.
- Professional code is depicted as constrained, deadline-driven, “boring and standard,” often more craft than self-expression.
AI, LLMs, and the Creative Process
- Some treat AI as a powerful assistant: good for boilerplate, suggestions, refactors, and shifting humans toward higher-level design and product work.
- Others see it as demotivating and alienating: it erodes deep understanding, mental maps of systems, and the satisfaction of problem-solving.
- Strong disputes over code quality: some claim agents now write decent or even superior code; others see obvious bugs, over-engineering, and unreadable “vibe-coded slop.”
- Concerns that reliance on LLMs locks users into vendors and reduces code to a cheap commodity.
Economics and Markets for “Artisan Code”
- Several note that art is a luxury; businesses usually want cheap, good-enough software, not bespoke artistry.
- Comparison to commercial artists: most paid work is “everyday” commissions, not gallery-level art.
- Some suggest open source is the closest thing to a market for artisan code.
Historical & Cross-Domain Analogies
- Recurrent analogies:
- Photography’s impact on painting.
- Weaving and the industrial revolution.
- Chess and Go remaining “arts” despite superhuman AI.
- These are used both to predict programming’s commodification and to argue a niche, non-commercial “art of programming” will survive.
Identity, Status, and the Future
- Threads of anxiety about livelihoods being downgraded to “hobby,” and about a coming “culling” of routine coders.
- Others anticipate a future where mass software is AI-generated, while human coding persists mainly as a niche craft or art form.