Fully retired now and one of the things I’d like to do is get back into hobby programming through the exploration of new and new-to-me programming languages. Who knows, I might even write something useful someday!

  • 0 Posts
  • 30 Comments
Joined 1 year ago
cake
Cake day: July 4th, 2023

help-circle
  • They are just the biggest asshole in the room.

    So one day the different body parts were arguing over who should be in charge.

    The eyes said they should be in charge, because they were the primary source of information about the world.

    The stomach said it should be in charge because digestion was the source of energy.

    The brain said it should be in charge because it was in charge of information processing and decision-making.

    The rectum said nothing, just closed up shop.

    Before long, the vision was blurry, the stomach was queasy, and the brain was foggy.

    Assholes have been in charge ever since.



  • Why not? The last decade before semi-retirement I had all the different ways to get in touch with me restricted to my phone. My work computer had no email client, no messengers, nothing. I even helped lead the charge to eliminate desk phones.

    That little display may have been the single greatest priductivity booster ever. It stayed on a shelf across the room on do not disturb. The only people allowed past the DnD were my wife and my son. If there really was a work emergency, a manager or coworker knew where to find me to tap me on the shoulder.



  • The Stalwart mail server allows for that. They call them “spam traps”.

    Basically, it’s a real email address that literally never gets used or referenced anywhere, thus assuring any email received is unsolicited by definition. Stalwart’s spam engine uses any such email to help train the spam filter.

    I can’t imagine that Stalwart is only one implementing such a system.

    I’ve never used Stalwart, but it’s the email server I’ve selected should I decide to do what everyone tells me I shouldn’t: run my own server for me, my wife, and the two domains we control. Their documentation is basically a master class in email.



  • Canada used to recommend 1 car-length for every 10 miles per hour. Along with metrification, that was changed to 2 seconds, but it’s been set at 3 seconds for a long time.

    I’ve yet to drive in traffic where even 1.5 seconds is manageable. More space than that and some slips into the gap, even if that leaves something like a loaded tractor-trailer hanging a second off their rear bumper.


  • Edit: Bear with me while I sort out the difference between my display and the resulting code block. Ok, close enough.

    Ok, thanks. I would instead (and prefer to ) do something like this:

    function test(&obj, &obj2, &a) {
    $obj---->doSomething()
    ---->--->doSomethingElse()
    
    $obj2--->doSomething()
    ---->--->doSomethingElse()
    
    $a-->--->doSomething()
    ---->--->doSomethingElse()
    }
    

    In this case, the “>” are showing the tab stops and the “-” the resulting white space. Note how all the calls are lined up. (My preferred alignment style, not necessarily anyone else’s.)

    Yet another edit: I see that I missed addressing alignment on other than tab boundaries. To me, that’s just sinful! 😀


  • The way you explain it sounds like how tabs works in MS Word ( or other word processors ).

    That is exactly how they work, and after 40 years, I still struggle with the whole “tab as a shortcut for spaces” thing. It’s not that I started with word processors, either, just that as soon I started working with them, everything got so much easier for me.

    There are some code-specific things that keep me from just going back to a word processor, but I think our code editors are missing some useful features that are found in word processors.


  • If I correctly understand what you are saying, you are describing “relative” tabbing, where /t moves a constant distance from the current position. I prefer “stopped” tabs where /t moves to the next tab stop. If my /t doesn’t create the spacing/alignment I’m after, I just tab to the next position.

    Thus, I would set mine with the first tab position (for indenting) at 1.5 cm and subsequent tab stops at 3, 4, 5, … cm. That way I’d get perfect alignment with both fixed and proportional fonts.

    I’d also set line-wrap or line-continuation to use a hanging indent based on the start position of the line being wrapped or continued.

    I’d also set a boundary between code and comments so that lines always wrapped before the boundary and using the comment character at the end of a line would jump to the other side of the boundary with optional leaders (the characters, usually periods that connect the end/beginning of a gap). In an ideal world, I would be able to “hide code”, pulling all the inline comments into a “hanging indent” structure with their “parent” comments.

    Yes, before the advent of IDE editors and all the fancy intellisense stuff, I used word-processing software for coding. 😀


  • jadero@programming.devtoProgrammer Humor@programming.devwait what
    link
    fedilink
    arrow-up
    11
    arrow-down
    1
    ·
    6 months ago

    Why not tabs for both indentation and alignment? (Actually, I see indentation as just a specific use of alignment.) Word processors have been doing it for decades (and typewriters for over a century!). Surely we can convince our code processors to use user-definable, fixed position tabs instead of relative position “tab = x spaces”.

    Keeping the [TAB] character in the file then allows everyone the layout they like.

    Or has working solo for 40 years fried my brain?


  • I was referring more to the people around me who are outside tech. Based on interactions with friends and family, I’d guess that a little over 50% know what a bookmark is, around 25% actually use bookmarks, fewer than 5% know what RSS is in very general terms and I know only one other person who actually has any RSS subscriptions.

    I know people who work in IT who have never heard of RSS!

    Just thinking about how far we have to go and how badly trained people are sometimes makes me want to cry. And I’m just a hobbyist; what must I be missing out on?


  • I host a personal instance of GoToSocial, because it’s written in go, a language I want to learn. It supports RSS for those without a Mastodon account. (Not that anyone knows what RSS is. Most of the people I know are surprised when I show them how to bookmark something! 😀)

    I also use RSS-Mastodon services to stuff my feed with things I’m interested in. This is not just for websites, but other socials that support RSS. So far, I’ve had the best luck with Mastofeed. (There is a different Mastofeed project that lets you embed a Mastodon feed into your website. I haven’t yet tried that, but it’s on my list.)


  • I think “federated” is in danger of becoming synonymous with ActivityPub. I haven’t investigated the inner workings of ActivityPub, but I can’t imagine any way for my personal ActivityPub server to interact with other ActivityPub servers except through some kind of automation.

    There are other federated systems out there: email, RSS/Webmention, Bluesky, Usenet, etc.

    I don’t think anyone is less federated just because they choose to bridge to a federation rather than run the federated software directly.





  • I’d be very interested in learning more about how Canada manages “software engineer.” Because whatever is being done certainly doesn’t seem to include mandating where regulated professionals must be employed or punishing failures.

    Saskatchewan’s electronic health records system (eHealth) has had a couple of egregious failures that it shouldn’t have taken a “software engineer” to prevent.

    Several 911 services became unavailable during an outage that happened to also disrupt point of sale payment systems nationwide.

    Both of the relevant companies are telecommunications companies (Telus and Rogers, respectively), where one would expect “software engineering” to be conducted by “software engineers” regardless of regulation.

    A quick search for breaches in critical personal information will show that Canada is performing about as well as the US. Which is to say, abysmally.


  • I’ve got just 2 now. Codium and Blackbox.ai. Not because they’re the best, but because I’m a cheapskate hobbyist and they’re free :)

    I’m only just starting to play with AI tooling, so I don’t have an opinion on which is better, but something about the way Blackbox worked within VSCode means I went through the hassle of getting it installed to vscodium when I switched.

    I suspect that Codium might be better at oddball stuff, though, like OpenSCAD. Blackbox seems to just make bad guesses while trying to regurgitate code I’ve already written. Codium seems to have at least a primitive idea of what’s going on with OpenSCAD. But Blackbox does a great job of cleaning up my comments and even generating decent comments for uncommented code.

    FWIW, Codium actually labels OpenSCAD as “experimental”, but I don’t know if that’s just boilerplate for something it’s never been trained on or whether there is some training data in its system.

    Blackbox is a pain to work with in other ways, though. It was like pulling teeth to get an account and I still can’t find anything on their pricing–or any documentation, for that matter–despite language suggesting that there are different tiers and a chat UI that offers different settings (like web browsing mode and fun mode). And the Blackbox name isn’t doing it any favours, given that “black box” is a generic term in the AI community and others. It’s own chat doesn’t seem to know that a question about the service might be about the service instead of the generic term.


  • Oh, I didn’t know that Excel could do JS. I haven’t touched it since I got out of the field a decade or so ago.

    One of the things I did was quite a bit of Excel consulting and training. I remember the joy of trying to decode massive formula cells, especially when there were nested IF()s. My rule of thumb was that anything with more than three functions in one formula got converted to a custom function, even if it didn’t have general utility.

    I found that anyone who could construct and understand those massive formulas were generally capable of dealing with the equivalent VBA with a bit of training. Also, it was generally true that if they couldn’t handle the relevant VBA, they were in no position to deal with massive formulas anyway.