𝕽𝖚𝖆𝖎𝖉𝖍𝖗𝖎𝖌𝖍

       🅸 🅰🅼 🆃🅷🅴 🅻🅰🆆. 
 𝕽𝖚𝖆𝖎𝖉𝖍𝖗𝖎𝖌𝖍 𝖋𝖊𝖆𝖙𝖍𝖊𝖗𝖘𝖙𝖔𝖓𝖊𝖍𝖆𝖚𝖌𝖍 
  • 7 Posts
  • 368 Comments
Joined 2 years ago
cake
Cake day: August 26th, 2022

help-circle







  • So, I had an experience recently that has changed how I think about this topic.

    A few years ago, I gave my dad a laptop that I wasn’t using anymore. It wasn’t that old; I’d just gotten a newer one. I do not have Windows; never have, never will, so the laptop had Arch (probably) on it, which was going to be too much for dad, so I wiped it and put Linux Mint on it.

    I got the occasional call from dad; he got a new (to him, probably used) printer and didn’t know how to set it up, but mostly he just used it and didn’t seen to have any problem with it.

    OK, so about a month ago, he calls and says he broke the laptop and the keyboard didn’t work; a while back, with help from a church friend, he’d replaced the battery, but had missed a screw, had hot-glued something and gotten glue in one of the USB ports… I didn’t even want to know what all he’d done, but dad’s from a jerry-rig generation. Anyway, he’d missed a screw or something, and something was rattling around on there and one day the keyboard stopped responding.

    So dad goes out and buys a refurbished laptop, and calls me and asks what he needs to do to migrate over. The laptop came with a fresh Windows install - 10, or 11; I don’t know. So I tell him, I can help him get any data off the old computer, but he needs to decide whether he wants to switch to Windows; now’s his chance.

    Dad’s 80. He barely grasps computer concepts - hardware, he’ll mess around with, but software… for example, that version of Mint uses the same background for the session manager as the desktop, by default, and so he thinks they’re the same thing - it’s just sometimes it makes him log in. So given a choice to go Windows, he says he wants to stay with Linux because that’s what he’s familiar with. I’d like to point it here that he often forgets the name “Linux”; he just knows it isn’t Windows.

    Deep breath - we’re a 4-hour flight apart - we get a USB keyboard hooked up to the old laptop, he orders a USB stick from Amazon, and we download the latest Mint iso; the next day when the USB stick arrives I walk him through burning the image; booting the new laptop into the BIOS; changing the boot order; and eventually, booting into the Linux Mint install image. We get connected to the WiFi no problem, open the installer from the desktop icon, and then have some debate about dual boot. He says he’s probably never going to use Windows, and dual boot makes things a little more iffy, so he picks the easy route and just wipes the drive and installs Mint.

    The install process goes smoothly; he asked the occasional question about, e.g. the keyboard layout question, but mostly we chat while he watches the progress bar. We’re doing this over the phone, no video conference, so I’m mostly just listening to him describe what he’s doing and answering questions like, “it’s asking me for a name for the computer - what should i put in?” That’s done, we reboot, change the BIOS setting back (could have just left that one), reboot again with the USB stick out - and he’s back in Mint.

    I send him some instructions over email about setting up a Firefox sync account, getting prepped for a Wireguard install (because, if I’m doing family tech support, I wasn’t to be able to remote log in over VPN), that sort of stuff. Things he can do download or manage without me, to prep for the next stage.

    OK, some weeks go by without me hearing from him, and he calls yesterday for help with “completing the migration.” And here’s where I start to change my view on this. I find that he’s followed the instructions for Sync and that all his browser stuff successfully came over. That’s 90% of what he’s wants. I start what I think it’s the final configuration steps: setting up the printer, and he says, we don’t need to, it’s been working since we did the install. He must have configured it himself at some point. We unzip his old /home, I show him the software manager and how he can find and install stuff, we get Zoom installed and make sure the webcam, mic, and speakers work… and I decide to not fuss with getting a VPN into his laptop because everything is just working.

    My 80 y/o dad bought some random-ass refurbished laptop, and aside from helping him burn the iso and get the new laptop to boot from it… I did nothing. I mean, I provided some guidance for his username, the laptop name, setting the time zone during install; but aside from the iso burning and some trouble we had even getting to the BIOS and then figuring out the right boot sequence, he could have done this all himself. All of the hardware worked; he either added the printer himself and forgot, or Mint did it for him. I was certain we’d have trouble with the WiFi chip (may you be sent to the hell of being boiled alive, Broadcom), or the printer, or… something. But no. It all Just Worked™.

    Seriously. Except that the BIOS boot order makes things extremely challenging for newbies, and burning boot images onto a USB stick isn’t trivial (in retrospect, I should have just told him to buy an install stick from Mint; sorry, Mint), Linux has just worked. For a guy who isn’t clear on the difference between Firefox and the OS.

    I think it was the WiFi chip and the printer that caused my mental shift; these have been the traditional pain points. Maybe we got lucky. But I think the real reason is that some Linux distros have just gotten really good for novices.


  • Because it’s written in Rust.

    Seriously, though; there are a dozen widely used make systems, most of which are more widely used than just. People have ideas and think they can improve. As far as it goes, having a bunch of different make options is one of the least annoying areas; diversity is mostly hidden from end users, and you only really have to learn it if you plan on becoming a contributor.

    However, if you’re asking for a comparison table, a “why is this better than make, or ant, or maven, or cmake, or ninja, or just, or rake,” then yeah, I agree. Having a brief elevator pitch is appreciated.




  • Doesn’t it steal control flow? More like a break point, except you define where execution continues.

    I wonder if it’s a compile error to have multiple conflicting COMEFROM statements, or if it’s random, kind of like Go’s select statement.

    How awesome would it be to be able to steal the execution stack from arbitrary code; how much more awesome if it was indeterminate which of multiple conflicting COMEFROM frames received control! And if it included a state closure from the stolen frame?

    Now I want this.



  • That’s an interesting take - that Go program code is more complex than Rust - if I understood you correctly. I came across a learning curve and cognitive load readability comparison analysis a while back, which I didn’t save and now can’t find. I haven’t needed it before because I think this is the first time I’ve heard anyone suggest that Rust code is less complex than Go.

    Your point about the tradeoff is right, but for different reasons. Go executables have a substantial runtime (with garbage collection, one of those things that make Go code less complex), making them much larger and measurably slower. And then there’s Rust’s vaunted safety, which Go - outside of the most basic compile-time type safety - lacks. Lots of places for Rust to claim superiority in the trade-offs, so it tickles me that you choose the one truly debatable argument, “complexity.”


  • Thanks! Downvotes don’t bother me. I was a big KDE fan, a couple of decades ago, and plasma has been exciting to watch; I was just saying that I wish it’d been as far along when I was still interested in DEs.

    There are tiling communities, so I don’t feel a deep need to expound on this; it came across my feed only because I browse World occasionally, - in the name of Eris - and I still get curious almost every announcement. And, every time I try it, it looks very pretty, but I find it counter-productive and fussy, and I end up back in herbstluftwm.

    You are absolutely right about the script-ability strength of Linux, and I think KDE of pretty scritpt-able, too. It’s just not a core value, like it is in bspwm or herbstluftwm, and that makes all the difference.

    Anyhoo, cheers and have a great day!


  • While I ultimately think your solution is to use a different scheduler, and that the most useful responses you’ve gotten have been about that; and that I agree with your response that Linux distros should really be tuning the scheduler for the UI by default and let developers and server runners take the burden of tuning differently for their workloads… all that said, I can’t let this comment on your post go by:

    which is good, you want it to compile as fast as possible after all

    If fast compile times are your priority, you’re using the wrong programming language. One of Go’s fundamental principles is fast compile times; even with add-on caching tooling in other languages, Go remains one of the fastest-compiling statically compiled, strongly typed programming languages available. I will not install Haskell programs unless they’re precompiled bin packages, that’s a hard rule. I will only reluctantly install Rust packages, and will always choose bins if available. But I’ll pick a -git Go package without hesitation, because they build crazy fast.

    Anyway, I hope you find the scheduler of your dreams and live happily ever after.



  • Hmm.

    OK, so I haven’t used Neomutt (or mutt) in ages, but I assume it’s about as capable as aerc, which I do use. Aerc is an alternative to Gmail in a couple of ways:

    1. If you interpret the meaning the way you did, aerc can access a gmail account via IMAP, just like any IMAP client can. So it’s a replacement for GMail web
    2. It can be configured to use notmuch, which is the most GMail-like interface to mail in that it indexes email for searching and uses tags instead of folders - like GMail. So it’s a replacement for GMail in that it behaves the most like GMail without being backed by GMail (although, you can connect it to a GMail account email corpus if you like).
    3. It can talk to any IMAP server, so it’s a replacement for GMail in the purest sense: there is nothing GMail involved.

    I suspect Neomutt is equally capable; I’ve just always disliked the UI.

    What were you expecting? A promo for ProtonMail, or a replacement as in, “hey you can go here and register an email account, so it’s a replacement for GMail?”