Live data from Hacker News

Programming and Writing

antirez.com

11–20 of 87 posts

Re: Programming and Writing

#11
post #7

It's an interesting perspective, but from what little creative work I have done I would say the big difference is programming is very logical, very precise, and creative work is very expressive, and very, very imprecise. Creative work really requires you to listen to how you feel about the final product, how it sounds, how it is experienced, while programming is really about being organized and correct. I suppose the…

There is definitely some creativity involved in programming tasks, and meticulous calculus when writing fiction as well.

Deciding how to structure your code is half logic and half aesthetics, the fact that we spend a large chunk of our time refactoring, i.e. switching around pieces of code so that the code does the same thing is a testament to this.

More broadly, I feel like "X is like Y"-type articles are somewhat of a Rorschach test. Things we are experienced at are by definition things we spent a lot of time doing. It's inevitable one will try to self-reflect and draw parallels.

Re: Programming and Writing

#12
post #7

It's an interesting perspective, but from what little creative work I have done I would say the big difference is programming is very logical, very precise, and creative work is very expressive, and very, very imprecise. Creative work really requires you to listen to how you feel about the final product, how it sounds, how it is experienced, while programming is really about being organized and correct. I suppose the…

I strongly disagree. When building a software product for humans, the first question I ask is "how should it feel?". In the end, this is the only thing that matters. The "feel" summarizes all "technical" aspects too - correctness, reliability etc. While developing a product, I never stop asking.

Re: Programming and Writing

#13
This is all true, but it's a truth that omits the things that really matter. You can write a perfectly "functioning" novel that is dead upon the table. This is because a good novel has something beyond both its form and its content, an epi-phenomenon so to speak, which we can call "magic" or which we might say is the sum of the observations and feelings it gathers together from the total life experience of an individual and what they have managed to free from the deepest parts of their mind.

This can be as true of a Science Fiction novel as of any other. It doesn't mean the work has to appear "elevated", but it is the heart of the thing even in a fairly generic work.

Re: Programming and Writing

#14
post #13

This is all true, but it's a truth that omits the things that really matter. You can write a perfectly "functioning" novel that is dead upon the table. This is because a good novel has something beyond both its form and its content, an epi-phenomenon so to speak, which we can call "magic" or which we might say is the sum of the observations and feelings it gathers together from the total life experience of an individ…

I agree with that. For me this part is about doing something I never did while programming, but I did as an amateur actor for a couple of years. That is: what happens on the page needs to surprise you, like if events and words flow as you are only the tool, but happen independently of your will. It's a complex state to achieve, but I think that if you fail to do it, the reader can tell.

Re: Programming and Writing

#15
post #7

It's an interesting perspective, but from what little creative work I have done I would say the big difference is programming is very logical, very precise, and creative work is very expressive, and very, very imprecise. Creative work really requires you to listen to how you feel about the final product, how it sounds, how it is experienced, while programming is really about being organized and correct. I suppose the…

Getting a joint right when making furniture from wood requires a lot of logic and precision, probably more than coding in my experience.

But this is the difference between "art" and "craft". The art is deciding what to build, how it should look and feel. This part is imprecise and emotional. It depends more on talent than practice, and is the bit that needs a muse or inspiration.

The craft bit is building it. This part is logical, precise, and needs to be done competently so it doesn't obscure the "art" part (great art can be ruined by bad craft, but good craft with no art is just boring). This needs lots and lots of practice.

This duality applies to writing, coding, sketching, music, movies, any creative practice.

Re: Programming and Writing

#16
post #7

It's an interesting perspective, but from what little creative work I have done I would say the big difference is programming is very logical, very precise, and creative work is very expressive, and very, very imprecise. Creative work really requires you to listen to how you feel about the final product, how it sounds, how it is experienced, while programming is really about being organized and correct. I suppose the…

And yet, we say that “programs are written for people to read.”

Writing for people to read is not “very logical and very precise.” It’s “very expressive,” and sometimes, although the part the compiler reads is correct, the thing the human infers from the program is imprecise and expressive.

Working with code teaches that code is experienced, too. We read a thing, go hunting for its downstream dependencies, learn other things… Coding is an experience as much as walking through a building is an experience.

Architects of buildings work with precise engineering, but they also craft experiences for humans. I am cautious about drawing parallels between code architecture and physical architecture, but the parallel between the work a code architect performs—creating a precise thing for the compiler and simultaneously creating an imprecise experience for the programmer—and the work a physical architect performs is much more sound.

My thesis, therefore, is that programming is the art of doing a precise thing for one audience—the machine—and a creative, imprecise thing for another audience—the human who experiences the code.

Re: Programming and Writing

#17
"My hypothesis is that this initial design will greatly inform what will happen later: growing organically something that has a good initial structure will result in a better system, even after years of distance from the original creation"

Very true, but also not something you should focus on too early.

You'll need a lot of experience for this initial design phase to be really fruitful.

Re: Programming and Writing

#18
post #9

Cool! Some of my favorite sci-fi writers are programmers or former programmers — Andy Weir, Charlie Stross, Dennis Taylor. Although that may have more to do with me (as a programmer) than with any relationship between fiction and software.

Have you read Weir's Project Hail Mary yet? If so, did you like it as much as The Martian?

Re: Programming and Writing

#19

"My hypothesis is that this initial design will greatly inform what will happen later: growing organically something that has a good initial structure will result in a better system, even after years of distance from the original creation" Very true, but also not something you should focus on too early. You'll need a lot of experience for this initial design phase to be really fruitful.

My view is that iteration of the core design is equally important to the the iteration that's done on the rest of it. The difference is that each 'product' in a field is a new iteration on the core design. This is what makes experienced engineers so valuable over inexperienced ones - the experienced ones know the history and know the previous iterations so that they can make the 'right' next step.

Re: Programming and Writing

#20
post #14
post #13

This is all true, but it's a truth that omits the things that really matter. You can write a perfectly "functioning" novel that is dead upon the table. This is because a good novel has something beyond both its form and its content, an epi-phenomenon so to speak, which we can call "magic" or which we might say is the sum of the observations and feelings it gathers together from the total life experience of an individ…

I agree with that. For me this part is about doing something I never did while programming, but I did as an amateur actor for a couple of years. That is: what happens on the page needs to surprise you, like if events and words flow as you are only the tool, but happen independently of your will. It's a complex state to achieve, but I think that if you fail to do it, the reader can tell.

Both are dealing with the “magic” of transformation. Programs transform data. Fiction transforms desire.
Post reply on HN