toot.community is one of the many independent Mastodon servers you can use to participate in the fediverse.
A worldwide Mastodon instance from The Netherlands. Run by digital enthusiasts, inviting everyone, everywhere to join us in the #fediverse.

Server stats:

2K
active users

the world needs more recreational programming.
like, was this the most optimal or elegant way to code this?

no, but it was the most fun to write.

cause like, yeah, it's good to know how to write optimal code and how to make it elegant and easy to maintain, sure!

but one thing you have to maintain is your brain. If you're constantly driving your programming brain at maximum speed, maximum awareness of all possible caveats and vulnerabilities, always considering "how will I maintain this code in ten years time?" you're going to burn yourself out.

You're associating programming with a high-stress high-attention activity. That's going to make programming something that's categorized in your brain as no fun, never relaxing, never something you do just cause it would be interesting... you're going to start dreading it, even just a little. "oh well, let's get this over with."

That's not a good way to think about it in the long run.

we often say that programming is more an art than a science, but we need to treat it like one too.

Sometimes you need to paint a sunset not because someone paid you to paint a sunset, but because it'd be fun to paint a sunset.

we need a bob ross of programming

@foone Come now.

Programming is an engineering discipline! There are very few happy little accidents. You want code that does exactly what you intended it to.

Everyone understandably loves Bob Ross, I do too, but he isn't a good example for programmers, engineers, surgeons, or airplane pilots to follow.

@TomSwirly @foone "Drawing is an engineering discipline. You want a drawing that shows exactly what you intended it to. Get the drawing wrong and your building won't stand up or your part won't fit." It can be both things. Technical drawings are certainly a thing, but there absolutely is recreational drawing too.
Tom Ritchford

@pippin @foone Writing a program that doesn't actually work doesn't seem more frustrational than recreational to me! 😀

@TomSwirly @foone They don't have to "not work", but they might well do something different than originally planned, and they don't have to be secure/maintainable/readable etc. Look at the demo scene. Lots of recreational programming, and probably (especially with older hardware I expect) a lot of happy accidents being discovered and taken advantage of.

@pippin @foone Even in the demo scene, 98% of the accidents are errors that need to be corrected or else nothing will happen (I did write "very few happy accidents", not "no".)

And hacking on old machines is even more exacting. When people get unexpected results out of old gear, it's the result of a huge amount of systematic, exploratory trial and error, much closer to science than art.

1/

@pippin @foone I play jazz on occasion. In an improvised solo, no individual note is "wrong", even if it was unintended or in the "wrong key". You often play a couple of "random" notes, just to see where it will lead you.

In programming, you might have 100 possible keystrokes you could make at any point, of which 95 won't generate anything useful.

No discipline is all or nothing on this: but programming is very heavily biased toward pre-planning and systematic experimentation over chance.

@TomSwirly @foone And is it possible 98% of the lines an artist sketches are thrown away as they redraw, looking for a more satisfying line? (At least, if I tried to draw something it'd be at least 98%!) 🤷‍♂️

@pippin @foone

If a typical drawing is made up of 200 strokes, and each stroke has a 98% chance of being "wrong" and spoiling the drawing, then that would mean that 99.99999...% of drawings would be wrong.

(Nearly all drawings or paintings are built up of a large number of small gestures, and an error in any one of them isn't usually significant.)

I live with someone who's a trained draftsperson for art: this is a skill only peripherally related to what Bob Ross does.

@TomSwirly @foone Sorry, it feels like you may even be willfully misunderstanding now. 1. "98%" was just a callback to your words, not intended to be in any way an accurate number - I was trying to point out the similarity between a demo coder programming for fun and an artist drawing for fun. 2. Artistic drawings have no concept of being "wrong"; just because someone may spend minutes drawing and redrawing a line to find the "best" line to use doesn't mean any of the others were "wrong". 3. This is getting very tedious, very much buried in the weeds, and very little to do with the question of whether programming can be done for fun and as an art form, rather than as an engineering activity. I still say it can be both/either. I probably won't reply again. Thanks.