> I like it when new ideas for the text come to me as I’m writing. The writing process itself — the thinking that goes on in the moment — is important to me, not just the result.
This. Applies to me while writing text, writing code and writing data analyses.
Playing go is art. Go was even considered one of the four main arts in ancient China. Along with calligraphy, instrumental music and brush painting[0].
It didn't stop AlphaGo from beating the best human go players, though.
Why are people mixing everything up? Since when code has a soul?
AI can be just a tool. You use it the same way you use a keyboard, a computer, a pencil, etc. I'm pretty sure you can build art with it, much like using any tool. People are making art with ascii. You can do art with anything.
But AI can also be much more than a tool, and why can't it have a soul? What's a soul anyway, except something that humans are making up to convince themselves that they are more than flesh and bones? Mythos will not do the same "art" as Fable or Astra would do. AI in 20 years will very likely produce art indistinguishable and as profound as human art. Obviously, humans at that time will always invent new criteria to say why this "art" is not good enough.
Since always, it is often just not recognized. Perhaps the same way how a newspaper article has soul and a fingerprint of the author, though you may not recognize it while reading.
> But AI can also be much more than a tool, and why can't it have a soul? What's a soul anyway, except something that humans are making up to convince themselves that they are more than flesh and bones?
I’m finding this fascinating personally. The lines people are drawing to try and keep themselves inside some definition they can mark as special.
If you don't know what a soul is, and you think it's something people just make up, then you are missing out on the experience of being human and you have a bigger problem than not being able to understand what art is.
Is it this fuzzy blob of ineffable experiences, aesthetics, qualia, self-reference, dualism, spirituality and other things? I don't need to reject all this to notice that its fuzziness makes it impossible to operationalize.
Where’s the contradiction?? X can be just Y, and X can be much more than Y. No contradiction, just an observation that you can use it one way or another.
Nothing ever is just a tool. Saying that X "can just be a tool" is a fundamental violation of that statement; saying then "X can be much more than just a tool" is a violation in form of a contradiction. It's very easy to parse...
Lovely to read, but AI will surely remove a lot of software engineering with little creativity.
Programming for money means managing a codebase and that's more akin to biology. You add inhibitors, promoters, etc. depending on the current requirements of the environment.
When excel is good enough to do that, people will use excel and not pay you to manage a monolith or even allow R/D to start from a blank slate with a new take.
What you create on a blank slate with your ideas might be art, but it's usually not evolving, you keep the picture, album etc. frozen in that state.
System design and architecture are the art. Programming is a set of techniques useful in realizing these compositions.
I've never once in my life looked at a piece of code and thought "I am in the presence of god". However, the systems composed by code can often elicit this response.
Labels rarely fit well. We can't even agree on the definition of "art".
I would prefer to say "fascination", because for some people, writing code is their fascination. Is it art if only they would label it so? Because I'm pretty sure that if a "code artist" showed their code to 10 other experienced developers, not only would some of the others not consider it art, but likely some of the others would consider it low quality.
Are code golfers artists? Fetishists? What if they believe theirs is the only way - the true artistry of coding? Would all of our single-responsibility, immutable core/imperative shell hybrid-functional code be discounted as garbage? (Not poking at the code golfers; I think they do it for the challenge, not because they believe that is how code should be written; but it illustrates an extreme.)
For most people, I think it's fair to say they write code because they are trying to make something happen. If their code runs without errors, in the necessary time, and without exhausting the computer's memory, then I believe most would consider that code "good": it does the job.
Are they working with others? Will others need to read it? If so, perhaps the most artistic code is not the best code to write. I know many professionals dislike working with the code artist who makes code that is unreadable to all but the most skilled developers, because it causes friction and leads to misunderstandings and bugs.
Now we have reached the point where general purpose code is so easily and correctly built by our AI tools that there is no practical point to writing it ourselves.
Are the AI-naysayers, the purists, writing their own libraries? Are they building everything from scratch? If not, they are not the true code artists. They have made practical concessions. They just haven't graduated to the realization that code is a commodity.
I suspect the people most against use of AI for building are the people who lack the creativity - the idea sources - and live just to translate requirements into code. They will gradually find fewer opportunities, and this threat is what probably makes them get emotional when looking at AI-built products.
I never liked the idea that programming is an art. When there's a problem that you're trying to solve there's usually only one or two good ways to solve it and hopefully you know one of those approaches. When you start getting creative is when you start running into long-term problems, especially maintenance.
It's like chess. When you're an amateur you think your moves out, strategize, think that you're a genius for seeing three moves ahead for a few pieces. When you're a professional you view the whole board and know the standard strategy that works best for the situation. After all, chess is a solved game.
When I work with other programmers or on an old code base I want it to be boring and standard. I don't want to have to trace through six files just to figure out what's going on in one simple method call.
I believe there are many top level chess masters that consider chess an art. Same for programmers, to many of the best, it is an art form or at least a craft that they take very seriously. And many would disagree that programming is solved. "Boring and standard" can be a sign of quality, but it also applies to those code bases that don't solve any interesting problems and just drown in boilerplate, kept alive by dozens or hundreds of programmer drons just working to collect their paychecks.
These articles and comments on them always seem to conflate programming with programming at one's job. And it makes sense, for most people that's one and the same. But if we're talking about programming and art, I think that is a major distinction.
To provide an example, I will use an existing comment here from WCSTombs: "programming is primarily problem solving, which isn't fundamentally artistic because its main goal is correctness and fitness for purpose".
I don't consider the programming I do at work to be art or expect to ever approach art. It fits their definition. But I could see some of the programming I do for pleasure to fall within that category. Correctness is nice I guess, but fitness for purpose was never a consideration in my hobby programming, quite the opposite, actually.
I was programming for a long time before I ever starting programming for money, which is why I feel strongly about this distinction, but it may be that in the current day and age, I am just being a boomer about the whole thing.
imo, designing the solution (architecture, algorithm, data structure) is the art.
I can steer agent to write code that I’m comfortable reading and maintaining. If it goes off the rails, I can just tell it to refactor. I can ship and get sales faster than if i were doing 100% coding by myself.
After thinking about it, I realized my initial resistance was mostly because it challenged decades of my technical habits and comfort zones. But if I steer it properly, it can basically handle the whole engineering process better and faster than I can.
In the end, it pushes me more into the managerial side of things. talking to people, aligning the product with what customers actually need, getting more sales, etc. And i'm really happy about that.
But i think this won’t work for every engineer. Some people just really hate the management side of things.
I like and believe in this paradigm, because I'm an artist ... I'm a painter and a musician, fiction writer and coder. Each satisfy something different for me intellectually. I can sink my mind fully into whichever I'm absorbed in. And I'm a perfectionist at each.
But I'm 46 and I was never able to make a living painting, writing or playing music, although I spent years trying my hand at those things while waiting tables and driving cab. Apparently the only creative output people are willing to pay for from me is what I can do with creative code. And that's fine. To me, it's just as expressive and it still lets me incorporate all the narrative and visual ideas I have, if they let me be free with it. I get $300/hr to be free with it, even now when in theory you could ask AI to do it, and I feel well compensated and appreciated.
But that being said, art is a luxury that only makes sense to pay for if you either want it to simply appreciate it, or if you see some advantage for your business by comissioning it or sponsoring it. You write as someone who views building their business as a sort of art, and those are the kinds of people I've been lucky to partner with, who also view their creative employees as artists who provide hard-to-calculate extra value through their perspective and creativity. But that's a genuinely hard sell to investors these days. I mean, my specialty was bespoke websites and apps for 20 years. But I was sought out for that. I never once went and tried to convince someone that bespoke code and art would be better for their bottom line. In fact, I spent most of that time telling people to get a wordpress site or to hire the cheapest offshore freelancers who could build them a minimum viable product.
I'm glad that people who are building their dreams still appreciate the artistry that we engineers and designers put into what we build, but I'm even less sure it's good business for a startup now than I was 20 years ago.
I suppose the one thing you do get if you hire an artist (speaking also as someone who is in charge of hiring them) is some measure of loyalty and the lucky chance at seeing something that no one has done before. That's hard to quantify on a spreadsheet, and it may only reflect slowly over time on your customers' loyalty to you. A google doodle or some other tiny, fertile patch of ground that you're willing to pay $5k a month for to some whacko like me or one of my artists.... that may end up being the heart and soul of an otherwise sterile, interchangeable brand. But we have far fewer saints and patrons than we did in the 90s, and I have to admit, overall the culture has degraded to the point that very few people care anymore about authentic or original art... of any discipline.
And I totally resonate with the pleasure of crafting code and the artistic aspect of it.
However, it is not just that, and when it comes to making a living, then the story changes.
And for that second part, man is AI a killer tool.
And I'll add,: even for the first part, the story isn't black and white.
If you use AI very carefully and in a collaborative manner, meaning not for the "creative writing" part, but for the "looking over your shoulder part" and "making suggestions" part.
> However, it is not just that, and when it comes to making a living, then the story changes.
Isn't this the case with all art?
There are many commercial artist that are putting some of their creative input to the side to make something that sells. That doesn't stop it from being art.
There are photographers that in their daily lives make school pictures or journalistic picutres while they may be more interested in making artistic pictures.
The same used to be for painters (a lot of the great painters actually) used to mostly make portraits or commission pieces to order, not to their taste.
Same goes for writers, videographers and other arts.
I think a key difference is that most programming careers, the artistic outlet (code) is not what is being sold to customers. The customer might feel something if the app works fast, but they won't feel anything about the fun bit packing and struct-of-array design you did for personal enjoyment
Sure but most day to day professional photos are not shot because the subject is so interesting or the composition is so intriguing. They are shot to accompany a flyer, sell a product or to give a grandchild picture to their grandparents, or to get a picture on your drivers license. Even though the photographer uses a lot of techniques and knowledge to frame their shots and get a good picture, artistic values that is often not the function.
> I love building startups, and they love writing code. For me, building projects is a way to make money. For them, programming is art.
At its very high points programming approaches art, but programming is primarily problem solving, which isn't fundamentally artistic because its main goal is correctness and fitness for purpose, not aesthetic value. I'm pretty sure for most of us the choice to use LLMs or not has nothing to do with it being art or not art. If I estimate a cost-benefit analysis, the true cost of using the LLM is much more than it would likely ever provide, so it makes little logical sense to use them except in very limited situations.
By the way, I have to say this is a really strange type of article, an explanation of the supposed opinions and attitudes of non-AI-users written by an AI user, seemingly without any input from the former group. It reads a bit as if it's building a strawman to justify the author's own views.
> problem solving, which isn't fundamentally artistic
I would argue that problem solving is actually what makes any art art. When making "traditional art" you are constantly solving problems. For example, how do I make this piece of rock look like a greek god, what parts to chip off, what tools to use etc.
Art is not always made for aesthetic value, most traditional art is probably created for profit. That doesn't make it not art.
I think you might have the (in my opinion wrong) notion that there is only one "correct" way to write code. This is not true, so much so that you can identify a programmer by their signature style. Similarly to how you may identify a writer by his writing style.
I don't know. I have a fascination with code structure which is definitely primarily aesthetic, not practical --- which is a compulsion I have to suppress when doing code professionally for practical reasons. (Sometimes you have to deliver.)
I find it incredible when the concepts in a system fall into place and start lining up and you get these unexpected relationships that "just work". It's beautiful in the same way mathematics is beautiful. It's lovely when something is made of lots of pieces at first and then suddenly collapse and simplify into a single structure.
I also enjoy other bits of programming. I like the flow state, I like the act of creation, I like feeling like I have an impact, I like being paid. So it's not like people fall into one category or another, and it's not like programming is one single thing. There's room within any discipline for creativity and for art.
I think many professional artists probably spend much of their time problem-solving, too --- authors trying to fit plot points together, sculptors working out which materials will work with which ones.
Mathematics also strives for correctness before aesthetics, but is often considered an art. Programming is little different imo.
When you have scoured your deepest understanding for hours - or days - in order to rewrite a function so that it is easier to read, shorter, and a thoughtful expression of your own insights and understanding; then you will see how programming can be art.
I agree about the cost-benefit of LLMs being negative from a logical perspective, art aside.
I'm bothered by the exact quote you pulled from the article, although I didn't mention it, because it's reticent of a certain hypocritical hot take among founders and business/marketing types who can be "generous" toward their engineers because they believe that their own artistic contribution to the project is some messianic vision of it that far outweighs the quotidian questions about how it's actually built. I didn't really want to weigh in on what I felt was that tendency in the post, because I do work successfully with a lot of people like that and I often admire the sweat and work they put into their own side of running things... but those kinds of statements do come off as somewhat patronizing if they're not backed up by truly massive amounts of hard work.
This. Applies to me while writing text, writing code and writing data analyses.
It didn't stop AlphaGo from beating the best human go players, though.
[0]: https://en.wikipedia.org/wiki/Four_arts
AI can be just a tool. You use it the same way you use a keyboard, a computer, a pencil, etc. I'm pretty sure you can build art with it, much like using any tool. People are making art with ascii. You can do art with anything.
But AI can also be much more than a tool, and why can't it have a soul? What's a soul anyway, except something that humans are making up to convince themselves that they are more than flesh and bones? Mythos will not do the same "art" as Fable or Astra would do. AI in 20 years will very likely produce art indistinguishable and as profound as human art. Obviously, humans at that time will always invent new criteria to say why this "art" is not good enough.
Since always, it is often just not recognized. Perhaps the same way how a newspaper article has soul and a fingerprint of the author, though you may not recognize it while reading.
> You can do art with anything.
Sure and anything you do can be art.
I’m finding this fascinating personally. The lines people are drawing to try and keep themselves inside some definition they can mark as special.
Contradictio. Going back to Seven...
> AI can be just a tool.
Nothing, ever, is just a tool.
Are you going to expand on this or should we stand in awe?
Programming for money means managing a codebase and that's more akin to biology. You add inhibitors, promoters, etc. depending on the current requirements of the environment.
When excel is good enough to do that, people will use excel and not pay you to manage a monolith or even allow R/D to start from a blank slate with a new take.
What you create on a blank slate with your ideas might be art, but it's usually not evolving, you keep the picture, album etc. frozen in that state.
I've never once in my life looked at a piece of code and thought "I am in the presence of god". However, the systems composed by code can often elicit this response.
I would prefer to say "fascination", because for some people, writing code is their fascination. Is it art if only they would label it so? Because I'm pretty sure that if a "code artist" showed their code to 10 other experienced developers, not only would some of the others not consider it art, but likely some of the others would consider it low quality.
Are code golfers artists? Fetishists? What if they believe theirs is the only way - the true artistry of coding? Would all of our single-responsibility, immutable core/imperative shell hybrid-functional code be discounted as garbage? (Not poking at the code golfers; I think they do it for the challenge, not because they believe that is how code should be written; but it illustrates an extreme.)
For most people, I think it's fair to say they write code because they are trying to make something happen. If their code runs without errors, in the necessary time, and without exhausting the computer's memory, then I believe most would consider that code "good": it does the job.
Are they working with others? Will others need to read it? If so, perhaps the most artistic code is not the best code to write. I know many professionals dislike working with the code artist who makes code that is unreadable to all but the most skilled developers, because it causes friction and leads to misunderstandings and bugs.
Now we have reached the point where general purpose code is so easily and correctly built by our AI tools that there is no practical point to writing it ourselves.
Are the AI-naysayers, the purists, writing their own libraries? Are they building everything from scratch? If not, they are not the true code artists. They have made practical concessions. They just haven't graduated to the realization that code is a commodity.
I suspect the people most against use of AI for building are the people who lack the creativity - the idea sources - and live just to translate requirements into code. They will gradually find fewer opportunities, and this threat is what probably makes them get emotional when looking at AI-built products.
It's like chess. When you're an amateur you think your moves out, strategize, think that you're a genius for seeing three moves ahead for a few pieces. When you're a professional you view the whole board and know the standard strategy that works best for the situation. After all, chess is a solved game.
When I work with other programmers or on an old code base I want it to be boring and standard. I don't want to have to trace through six files just to figure out what's going on in one simple method call.
To provide an example, I will use an existing comment here from WCSTombs: "programming is primarily problem solving, which isn't fundamentally artistic because its main goal is correctness and fitness for purpose".
I don't consider the programming I do at work to be art or expect to ever approach art. It fits their definition. But I could see some of the programming I do for pleasure to fall within that category. Correctness is nice I guess, but fitness for purpose was never a consideration in my hobby programming, quite the opposite, actually.
I was programming for a long time before I ever starting programming for money, which is why I feel strongly about this distinction, but it may be that in the current day and age, I am just being a boomer about the whole thing.
I can steer agent to write code that I’m comfortable reading and maintaining. If it goes off the rails, I can just tell it to refactor. I can ship and get sales faster than if i were doing 100% coding by myself.
After thinking about it, I realized my initial resistance was mostly because it challenged decades of my technical habits and comfort zones. But if I steer it properly, it can basically handle the whole engineering process better and faster than I can.
In the end, it pushes me more into the managerial side of things. talking to people, aligning the product with what customers actually need, getting more sales, etc. And i'm really happy about that.
But i think this won’t work for every engineer. Some people just really hate the management side of things.
But I'm 46 and I was never able to make a living painting, writing or playing music, although I spent years trying my hand at those things while waiting tables and driving cab. Apparently the only creative output people are willing to pay for from me is what I can do with creative code. And that's fine. To me, it's just as expressive and it still lets me incorporate all the narrative and visual ideas I have, if they let me be free with it. I get $300/hr to be free with it, even now when in theory you could ask AI to do it, and I feel well compensated and appreciated.
But that being said, art is a luxury that only makes sense to pay for if you either want it to simply appreciate it, or if you see some advantage for your business by comissioning it or sponsoring it. You write as someone who views building their business as a sort of art, and those are the kinds of people I've been lucky to partner with, who also view their creative employees as artists who provide hard-to-calculate extra value through their perspective and creativity. But that's a genuinely hard sell to investors these days. I mean, my specialty was bespoke websites and apps for 20 years. But I was sought out for that. I never once went and tried to convince someone that bespoke code and art would be better for their bottom line. In fact, I spent most of that time telling people to get a wordpress site or to hire the cheapest offshore freelancers who could build them a minimum viable product.
I'm glad that people who are building their dreams still appreciate the artistry that we engineers and designers put into what we build, but I'm even less sure it's good business for a startup now than I was 20 years ago.
I suppose the one thing you do get if you hire an artist (speaking also as someone who is in charge of hiring them) is some measure of loyalty and the lucky chance at seeing something that no one has done before. That's hard to quantify on a spreadsheet, and it may only reflect slowly over time on your customers' loyalty to you. A google doodle or some other tiny, fertile patch of ground that you're willing to pay $5k a month for to some whacko like me or one of my artists.... that may end up being the heart and soul of an otherwise sterile, interchangeable brand. But we have far fewer saints and patrons than we did in the 90s, and I have to admit, overall the culture has degraded to the point that very few people care anymore about authentic or original art... of any discipline.
And I totally resonate with the pleasure of crafting code and the artistic aspect of it.
However, it is not just that, and when it comes to making a living, then the story changes.
And for that second part, man is AI a killer tool.
And I'll add,: even for the first part, the story isn't black and white.
If you use AI very carefully and in a collaborative manner, meaning not for the "creative writing" part, but for the "looking over your shoulder part" and "making suggestions" part.
Isn't this the case with all art?
There are many commercial artist that are putting some of their creative input to the side to make something that sells. That doesn't stop it from being art.
There are photographers that in their daily lives make school pictures or journalistic picutres while they may be more interested in making artistic pictures.
The same used to be for painters (a lot of the great painters actually) used to mostly make portraits or commission pieces to order, not to their taste.
Same goes for writers, videographers and other arts.
At its very high points programming approaches art, but programming is primarily problem solving, which isn't fundamentally artistic because its main goal is correctness and fitness for purpose, not aesthetic value. I'm pretty sure for most of us the choice to use LLMs or not has nothing to do with it being art or not art. If I estimate a cost-benefit analysis, the true cost of using the LLM is much more than it would likely ever provide, so it makes little logical sense to use them except in very limited situations.
By the way, I have to say this is a really strange type of article, an explanation of the supposed opinions and attitudes of non-AI-users written by an AI user, seemingly without any input from the former group. It reads a bit as if it's building a strawman to justify the author's own views.
I would argue that problem solving is actually what makes any art art. When making "traditional art" you are constantly solving problems. For example, how do I make this piece of rock look like a greek god, what parts to chip off, what tools to use etc.
Art is not always made for aesthetic value, most traditional art is probably created for profit. That doesn't make it not art.
I think you might have the (in my opinion wrong) notion that there is only one "correct" way to write code. This is not true, so much so that you can identify a programmer by their signature style. Similarly to how you may identify a writer by his writing style.
https://en.wikipedia.org/wiki/Code_stylometry
I find it incredible when the concepts in a system fall into place and start lining up and you get these unexpected relationships that "just work". It's beautiful in the same way mathematics is beautiful. It's lovely when something is made of lots of pieces at first and then suddenly collapse and simplify into a single structure.
I also enjoy other bits of programming. I like the flow state, I like the act of creation, I like feeling like I have an impact, I like being paid. So it's not like people fall into one category or another, and it's not like programming is one single thing. There's room within any discipline for creativity and for art.
I think many professional artists probably spend much of their time problem-solving, too --- authors trying to fit plot points together, sculptors working out which materials will work with which ones.
When you have scoured your deepest understanding for hours - or days - in order to rewrite a function so that it is easier to read, shorter, and a thoughtful expression of your own insights and understanding; then you will see how programming can be art.
I'm bothered by the exact quote you pulled from the article, although I didn't mention it, because it's reticent of a certain hypocritical hot take among founders and business/marketing types who can be "generous" toward their engineers because they believe that their own artistic contribution to the project is some messianic vision of it that far outweighs the quotidian questions about how it's actually built. I didn't really want to weigh in on what I felt was that tendency in the post, because I do work successfully with a lot of people like that and I often admire the sweat and work they put into their own side of running things... but those kinds of statements do come off as somewhat patronizing if they're not backed up by truly massive amounts of hard work.
Code is beauty
Creativity is king