Just as a story would, your program represents a human explanation and interpretation of its topic. You have a huge amount of qualitatively different ways to express what you’re programming, and each one paints a very different mental picture of the forms and processes your program represents. Some ways may be objectively better, and some may be objectively worse; others are a matter of taste.
Once you have a broad outline, the majority of your creative time is solving a series of small puzzles—understanding how to write each small part, and how to organize it and phrase it so that it fits into your narrative and is obviously correct. You’re forced to organize each piece artfully, because otherwise the greater whole is going to be impossible to hold in your head at once, and you will make a lot of errors.
A lot of that work seems similar to the process of writing both fiction and (I presume) non-fiction. You’re working under stricter stylistic limitations when programming, since the language must be completely precise, but you tend to make up for it by working with a palette of ideas which are more numerous and more alien than anything you could ever write into a character-based story.
Just as a story would, your program represents a human explanation and interpretation of its topic. You have a huge amount of qualitatively different ways to express what you’re programming, and each one paints a very different mental picture of the forms and processes your program represents. Some ways may be objectively better, and some may be objectively worse; others are a matter of taste.
Once you have a broad outline, the majority of your creative time is solving a series of small puzzles—understanding how to write each small part, and how to organize it and phrase it so that it fits into your narrative and is obviously correct. You’re forced to organize each piece artfully, because otherwise the greater whole is going to be impossible to hold in your head at once, and you will make a lot of errors.
A lot of that work seems similar to the process of writing both fiction and (I presume) non-fiction. You’re working under stricter stylistic limitations when programming, since the language must be completely precise, but you tend to make up for it by working with a palette of ideas which are more numerous and more alien than anything you could ever write into a character-based story.