Don’t trust Cloudflare with your personal data https://shkspr.mobi/blog/2020/09/dont-trust-cloudflare-with-your-personal-data/
Writer, artist, game developer. Looking for meaningful work, with a lamp, in broad daylight.
Recent twts from felixp7
@prologic (#tsgn7tq) The quirky error handling, that makes code more verbose than in any other language, C included? The so-called object system, that’s basically just syntactic sugar for calling functions with a struct as first argument?
@prologic (#tsgn7tq) Yeah, Go was a reaction to that, and an understandable one. Too bad it throws out the baby with the bathwater and forces more code complexity in some ways to get around its limitations.
@prologic (#tsgn7tq) I prefer C++ myself, for a number of reasons, but my current project sticks to C, and you know what? As you can see from the same article, C can be a perfectly good language, clean and safe. But only if used with a little care. And the GNU project is infamous for bloat and other crap hidden under the overwrought carpet of their coding “standards”.
Drew DeVault knocks it out of the park again with A tale of two libcs, or, why radical simplicity matters: https://drewdevault.com/2020/09/25/2020-09-25-A-story-of-two-libcs.html
#Politics and plumbing: an allegory https://felix.plesoianu.ro/blog/politics-and-plumbing.html
I continue to be amazed at the simplicity and clarity of the curses API. 40 years ago, people wrote libraries for themselves. They were their own first users. Then came friends and colleagues. If the code was broken or poorly designed, it was literally personal.
Hot take: programming language designers who shorten “function” to “fn” betray a profound misunderstanding of what makes programming tedious.
I’m no C programmer. Faced with the question of how to slurp in a text file from disk without getting over my head into the mysteries of malloc / realloc and pointer manipulation, I remembered: wait, I have a whole scripting engine right here. That’s what it’s made for!
And… it’s alive! I have the beginnings of a curses binding for Duktape! But… why did I have to look at the hello-world example in the source archive to figure out how to name a simple global function?! It’s not obvious, and that’s what the programmer’s guide is for.
I get the impression that lately Rust and Go fans are waking up to the reality that C and C++ got the way they are through decades of hard work, which can’t be rushed, and that neither memory management nor OOP or module systems were broken in the first place. Surprise!