[HN Gopher] The Beauty of Programming
___________________________________________________________________
The Beauty of Programming
Author : andsoitis
Score : 40 points
Date : 2025-09-24 04:51 UTC (2 days ago)
(HTM) web link (www.brynmawr.edu)
(TXT) w3m dump (www.brynmawr.edu)
| Animats wrote:
| (2001)
|
| It was more fun then.
| colonCapitalDee wrote:
| I like how Frederick Brooks put it:
|
| """
|
| Why is programming fun? What delights may its practitioner expect
| as his reward?
|
| First is the sheer joy of making things. As the child delights in
| his mud pie, so the adult enjoys building things, especially
| things of his own design. I think this delight must be an image
| of God's delight in making things, a delight shown in the
| distinctness and newness of each leaf and each snowflake.
|
| Second is the pleasure of making things that are useful to other
| people. Deep within, we want others to use our work and to find
| it helpful. In this respect the programming system is not
| essentially different from the child's first clay pencil holder
| "for Daddy's office."
|
| Third is the fascination of fashioning complex puzzle-like
| objects of interlocking moving parts and watching them work in
| subtle cycles, playing out the consequences of principles built
| in from the beginning. The programmed computer has all the
| fascination of the pinball machine or the jukebox mechanism,
| carried to the ultimate.
|
| Fourth is the joy of always learning, which springs from the
| nonrepeating nature of the task. In one way or another the
| problem is ever new, and its solver learns something: sometimes
| practical, sometimes theoretical, and sometimes both.
|
| Finally, there is the delight of working in such a tractable
| medium. The programmer, like the poet, works only slightly
| removed from pure thought-stuff. He builds his castles in the
| air, from air, creating by the exertion of the imagination. Few
| media of creation are so flexible, so easy to polish and rework,
| so readily capable of realizing grand conceptual structures....
|
| Yet the program construct, unlike the poet's words, is real in
| the sense that it moves and works, producing visible outputs
| separate from the construct itself. It prints results, draws
| pictures, produces sounds, moves arms. The magic of myth and
| legend has come true in our time. One types the correct
| incantation on a keyboard, and a display screen comes to life,
| showing things that never were nor could be.
|
| Programming then is fun because it gratifies creative longings
| built deep within us and delights sensibilities we have in common
| with all men.
|
| """
| 9dev wrote:
| That was delightful. Thanks for sharing.
| ge96 wrote:
| I miss getting lost in something, forcing yourself to stay up to
| achieve the vision
| jmclnx wrote:
| From 2001
| Krei-se wrote:
| I liked my programming at work, but i love the programming i can
| do now with 0 pressure and constraints. I can see every line and
| working function mirrored in my real environment and not being
| extracted by some outside owner.
|
| Then there's the free choice of hardware and stack, you never
| have to bend for some culture, styleguide or vendor lock-in.
| Blobs? coreboot makes your hardware feel like a living thing.
|
| Since then i stopped to think of programming as work and dreading
| it. It's the complete platonic realm of ideas dancing in very
| real electrons.
|
| Thanks for the article, it's a great reminder about how lucky one
| can consider himself and nice to see likewise minds.
|
| Forge on!
| skn3 wrote:
| This is why you should program for fun instead of just for money.
| Sure its fun creating some interface for an API. Sure its
| interesting to figure out a problem some customer is having.
| Sure, it can be rewarding to create a new system as part of your
| companies product. But you know what is really fun? Creating
| something from scratch. Sculpting it. Refactoring it. Trying
| things. Cutting things. Learning things. Exploring new ideas. All
| of the stuff that typically doesn't fit well when money is
| involved.
|
| If you really want to reconnect with the pure art of programming,
| just start a hobby project. Burn that candle at both ends. Grind
| through the self doubt. Grind through the challenge. Just keep
| perusing that 1 idea. If you finish it, you created your own
| little universe. If no-one sees it, who cares? Art is a form of
| expression and so is programming.
| jibal wrote:
| > Mandelbrot just made up these arbitrary rules about this world
| that doesn't exist, and that has no relevance to reality, but it
| turned out they created fascinating patterns.
|
| Er, no, that's not at all what happened. Mandelbrot was trying to
| model real-world observations like the length of irregular
| coastlines varying based on the scale of the measuring unit, and
| the growth and decline of pond scum populations.
|
| Also
|
| > As any mathematician knows, you literally can have a set of
| mathematical equations in which three plus three equals two.
|
| is quite wrong unless you're simply redefining the strings
| "three", "plus", "equals" and/or "two" to mean quite different
| things.
|
| > Remember the person in school who always got the right answer?
| That person did it much more quickly that everybody else, and did
| it because he or she didn't try to. That person didn't learn how
| the problem was supposed to be done but, instead, just thought
| about the problem the right way.
|
| That is quite confused and conflates several different things.
|
| > The story goes that the great German mathematician Carl
| Friedrich Gauss was in school and his teacher was bored, so to
| keep the students preoccupied he instructed them to add up all
| the numbers between 1 and 100. The teacher expected the young
| people to take all day doing that. But the budding mathematician
| came back five minutes later with the correct answer: 5,050.
|
| If this actually happened, I doubt that it took him as long as
| five minutes. And how does that square with "did it because he or
| she didn't try to" ... surely Gauss tried to find a simpler way
| to calculate the sum. Also, Gauss had vastly more impressive
| achievements than this, although I suppose it depends on how
| young he was at the time.
|
| > A great mathematician doesn't solve a problem the long and
| boring way because he sees what the real pattern is behind the
| question, and applies that pattern to find the answer in a much
| better way.
|
| Mediocre mathematicians do the same--I'm not even that, but I was
| on my high school math team and was routinely tasked with finding
| shortcuts to the answer. And great mathematicians spend their
| time creating, not solving math problems (or calculating sums,
| which can barely be called math).
|
| But yes, programming is great fun and much of that comes from the
| ability to make things happen in the real world--that's why I
| switched from my plan to be a math professor to becoming a
| programmer when I discovered programming while in high school
| many decades ago. And now I'm retired and still program both for
| the joy of it and the pragmatic results.
___________________________________________________________________
(page generated 2025-09-26 23:00 UTC)