Live data from Hacker News

Why is programming an art

blooki.st

21–30 of 45 posts

Re: Why is programming an art

#21

>> I wonder if sometimes all those books actually help you develop an efficient coding practice or are they just some sort of distraction towards your creativity. That. I'd even go a bit further and say they actually hinder your creativity: can you even think of heroic fantasy without falling back into Tolkien's imagination?

If you think creativity is hindered by rules and best practices, you're a beginner and likely will produce chaotic and derivative crap.

You have to know and understand the rules before you can break them in a meaningful way.

Re: Why is programming an art

#22
post #7

Earlier quoted context omitted.

English, and many other gendered languages, have a long history of using the masculine in place of an unknown. Using "he or she" instead is, in my opinion, both annoying to write and read.

I think they is nice alternative

I usually use they, but now that I think about it, I'm going to start using s/he. It's the same number of characters as they and you can just pronounce it like she when reading it aloud or in your head, since she is the underused pronoun anyway.

Re: Why is programming an art

#23
post #18

Programming is an art, but as you get older and more experienced, you become less able to express yourself in a way that doesn't seem both rote and belabored. It is closer to making furniture than painting or sculpture, as it tends to need to be practical in some way. But if it were furniture making, you'd continually be presented with new designs, new types of wood and other materials, and new tools to make your fur…

i.e. it's not an art - it's a craft.

It is both. Code and the effect it produces can be a thing of beauty, ugliness, or both, and at times the emotion and creative energy put into it would make it rival any art. But, I agree that more often it is like a craft because it tends to evolve into larger projects that need more skill and technique.

Creatives/artistic types enjoy modular, greenfield development or pushing the limits of confinement to produce something of beauty and use. Practical/craftsman/engineer types enjoy using technique to build, design, and maintain large systems because they enjoy process, skill, and established ways of doing things. There is room for both.

Re: Why is programming an art

#24
post #3

I totally agree that programming is an art, but the art lies in the result, not in the "coding style". Who cares how Michelangelo held his brush or his chisel; what matters is what he made.

But the code is what you make. ;)

It's the one thing that is all yours.

Re: Why is programming an art

#25
post #3

I totally agree that programming is an art, but the art lies in the result, not in the "coding style". Who cares how Michelangelo held his brush or his chisel; what matters is what he made.

That's akin to saying: Who cares how Carmack held his keyboard; what matters is what he made.

The code you write is an intrinsic part of the result. There goes form and function as one. There can be art in the function as can be art in the ideas embodied in the source code that carries out the function.

Re: Why is programming an art

#26
post #10

By these vague definitions is there any professional endeavor that isn't an art? And if not haven't we just removed all unique meaning from the word 'art'?

This is one of the themes in the film A River Run Through It, where a father tells his two sons that they have to find/achieve art in whatever they choose to do in life.

An easy way to think about this is to remember those times when somebody in the workplace does something above and beyond expectations, eg. they solve a problem in particularly brilliant fashion, and colleagues see it and say 'this, this is a work of art.'

Re: Why is programming an art

#27
post #17
post #8

I believe programming is an art because "Programs must be written for people to read, and only incidentally for machines to execute." (Abelson, SICP) This heart of the matter, and it means programming is an art, a social one. Like marketing or graphic design, it's an art for other people. Programs must be written to be as readable as possible, to as many people as possible, while still being functional and elegant. T…

> This heart of the matter, and it means programming is an art, a social one. No, it doesn't. It just means that programming is inherently about communication (among other things). That does not, by a long shot, make it art.

It raises an interesting point, however.

Things that are made for practical purposes are not art, right? The thing with software is that the code is hidden from view.

There is an opportunity to make something practical by writing very impractical code, that for example, has variables named after fantasy characters, functions having some sort of narrative arc to their naming, maps "drawn" in ASCII...

TheGoblinKing.smites(our_hero) could be a method to reverse an array.

Again, highly impractical, but with a practical result.

Architecture has a similar duality, but in a different kind of way... buildings are indeed functional, but is there no art to the practice of designing them? No room for ornament, expression, or "impractical" intent? For example, ideologies can be encouraged through buildings by manipulating people's response to their sublime grandeur or nostalgia... this seems like a much more artistic and philosophical pursuit that goes well beyond just the pure function of the building as a place to keep things separate from the outside world.

Re: Why is programming an art

#28
Not sure how to frame this nicely. The page needs to play better with mobile devices. There is an ever-present back-arrow covering text that gets more obstructive as the page is zoomed. When I decided to follow it to see what was so important that it get in the way, the page it took me to was completely unusable. That aside, I was happy to see that I could actually pinch zoom as some sites block this behavior. Chrome on Galaxy S3.

Re: Why is programming an art

#29

I wrote on these very same points recently, but argued differently - https://news.ycombinator.com/item?id=5804423

Sorry nobody upvoted you. I much prefer your argument! I particularly liked the phrase The execution might as well be left to an automaton. This is the part of the profession - tedious trivial logical translation from specification to program - that I refer to as 'floor sweeping', rather than programming proper (analysis/design/interesting problem solving stuff). Perhaps the percentage of our industry remaining to be liberated from that drugery is high, unfortunately the liberators must be themselves.

Re: Why is programming an art

#30

>> I wonder if sometimes all those books actually help you develop an efficient coding practice or are they just some sort of distraction towards your creativity. That. I'd even go a bit further and say they actually hinder your creativity: can you even think of heroic fantasy without falling back into Tolkien's imagination?

It's been argued by a famous artist (Chuck Close), that these kinds of limitations actually allow people to be more creative. When you narrow down your available techniques/tools, you eliminate paralysis of choice, and are forced to be creative with your small toolset. Think "Javascript the good parts".

http://www.charlierose.com/view/interview/11264

Post reply on HN