4 ms·
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
by magpi3 5y ago
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 there is some overlap, after all programmers need to think about user experiences as well, but that's not the same thing.
- qsort 5y agoThere 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.
- karlerss 5y agoI 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.
- marcus_holmes 5y agoGetting 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.
- a4isms 5y agoAnd 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.
- robotresearcher 5y ago> Writing for people to read is not “very logical and very precise.” It’s “very expressive,” There’s a continuum between writing technical manuals and ‘Ulysses’, with airport-bookstand thrillers somewhere in between.
- a4isms 5y agoHey, late reply. I agree with your general point, and would add that the highest logical/precise human-readable text is more likely to be specs, e.g. RFCs, ISOs. A Technical Manual would need more attention to the human experience than a spec, IMO.
- vidarh 5y agoA lot of creative work is precise too. The number of writers who e.g. use spreadsheets or similar to keep track of scenes, characters and arcs is fairly substantial. While the specific final words are less precise, there's a lot of rules to adhere to in order to write well as well. And the best programming is often very creative.