The case for Nushell, https://www.jntrnr.com/case-for-nushell/.

Relevant article about shells, and how Nushell pushes the boundaries further. I highly recommend reading it.

#shell #nushell

The case for Nushell

Sophia June Turner

@hywan @Keltounet Question: "can the state of shells be improved enough to overcome the inertia of sticking to what you know?"

This is the wrong question. It presupposes zero cost of transition, while the cognitive workload of learning a new shell rises exponentially with age (hint: I'm nearly 60, shells are harder to adapt to than a new GUI). Stability and continuity are essential prerequisites to productivity!

@cstross @hywan we could say the same for languages, both in real life and computing. I'm 56 and enjoying learning both Rust and Japanese 😅

And looking into nutshell too.

@Keltounet @hywan Computing is not my job. It hasn't been my job for over two decades. Time spent learning a new shell or thinking about computers is time *wasted* from the non-compsci point of view.

Thing is, the question about the utility of switching to a new shell has embedded ideological assumptions that implicitly privilege computing over applications. To 99% of the world applications of computing are the priority; the machines and software are just an annoying drag on getting stuff done.

@cstross @hywan I see your point 😁 I'm a lower level kind of guy anyway
@Keltounet @hywan There's a deeper point: the past 70 years of computing have focussed on a spurious vision of progress that forgets to consider the utility of a stable platform. Operating systems in particular are driven by commercial goals (sell more software! Get more Linux desktops out there!) that are actively inimical to the needs of their users. Forcing users to learn a new way of working every year—even if they don't need to—is crazy. And it renders computers inaccessible to the elderly.
@Keltounet @hywan I watched my mother progressively (and completely) lose the ability to use her iMac during her final decade because Apple kept f*cking around with the Mac OS X user interface, the way Mail worked, the colour of the window maximize/minimize buttons, and stuff that probably looked trivial to a 30-something UI designer but was deeply disruptive to an 80 something with impaired memory. And by losing that access, she lost touch with friends (via email).
@cstross @hywan and considering this is Apple we are talking about, others have been worse in that respect...
@cstross @Keltounet It was disheartening to see recently how my parents, both mid-80s, struggled when they went from Windows 10 to 11 with a new computer. My mother is more flexible, but I learned my father (whose main uses are email and editing amnesty international letters) does *everything* by rote with nearly no conceptual understanding, and the — in my eyes small — changes from Windows 10 to 11 were absolutely debilitating for him.
@cstross @Keltounet Trying to help him through this change was one of the hardest things I have done for years. At some point we were both angry at each other and I tried to just break it off to just get out of that situation, but he persevered, and then we actually got him a little further until he said, I think I can handle this on my own now. And I am sure doing that actually on his own again later was still really hard for him.
@jyrgenn @cstross @Keltounet Some years ago I spent many hours trying to help a professor with early Alzheimer's cope with a campus-mandated update from Windows XP to 7 and it was not easy.
@jmccyoung @cstross @Keltounet I can imagine that.
Not the case with my father, though. He is not mentally impaired at all, but he has never been a very technical person, and learning new things has indeed become more difficult with age. Interestingly my mother, who has never been a technical person at all, finds it myself easier working her way through these things. But with her, too, I can hardly bear watching how she does things.

@jyrgenn @jmccyoung @cstross @Keltounet

[edit: oops, I must have applied the 'not' to two clauses and not just the one, apologies! I'm leaving this here to not make the replies look weird, but can remove if you want]

fwiw, all of these have a *time cost*, and most people cannot dedicate a hobby worth of time for the weeks it takes just to get their functionality back

@NireBryce @jyrgenn @jmccyoung @cstross @Keltounet yeah, but this entire conversation opened up with Charlie Stross scoffing about how technocapital looks down on and flattens everything under its gaze because it cannot help but See Like A State, and now people are casually eliding the difference between the accessibility requirements of the GUI and command-line shells as if they're the same thing.

so are we supposed to be discussing this with nuance or are we moving on to "new UX is bad therefore let's make everyone work to death with pickaxes and shovels"? because the last time I heeded people on "just leave old people alone, they can't learn new things" my grandmother never learned my proper name before she died. or do we want to perhaps consider that perhaps someone's hobby project isn't a sinister plot to uninstall bash from your computer?

@jubilee
(I read a second "not" into the statement I was replying to, also. oops)
@NireBryce ( I honestly don't think anything you said was wrong, the thread had just reached critical "how did we get here?" levels even for my ADHD. )
@jubilee automatic follow for the James Scott reference!
@jyrgenn @cstross @Keltounet I’m curious what your thoughts are on the barrier to conceptual understanding. There are lots of skills where doing things by rote is totally fine (riding a bike) and many where a lack of conceptual understanding gets you in trouble (writing code). Some people readily adapt to learning concepts. Some people struggle. It’s not always easy to navigate urgency of need, learning preference, and/or capability.
@jyrgenn @cstross @Keltounet it’s not just the older folks in the higher decades .
Any time we do an OS upgrade migration at work 75% of the end users have some kinda melt down on the raw upgrade so I work on making it look and feel as much like what they are accustomed to as possible and then train them on the minor differences
@MishaVanMollusq @cstross @Keltounet Absolutely. My parents started working with computers only in retirement, which I think makes it extra difficult, with no work experience with computers before. But other non-technical people have similar difficulties, I know.
I sometimes get angry working with Windows myself, but that is different. As a Unix+Mac user for decades I feel with Windows that in some places no one even bothered to try to make it *good*.
@jyrgenn @cstross @Keltounet I do half my real work at the command line or in power shell on Windows .
It’s designed for people with little to no computer skills and yet I often see people unable to cope. One of the problems being a lot of adults are rote learners and not extrapolative interactives. Windows can be distracting to such people as there are usually five distinct ways to do the same task. It’s kinda wibbly wobbly but not timeywhyme
@MishaVanMollusq @cstross @Keltounet Rote learners, yes. My father absolutely, that is why so relatively small changes threw him completely off the track. My mother has weird ways of doing things, but she is interested in trying to make things work for her, willing to experiment.

@Keltounet

You probably didn't mean to "waddabout" there but I regret to inform you that's how it came across.

The point under discussion seems more like,

"Is there room for incremental improvement which does not require a whole new way of working with a computer every few years?"

I'm learning 3 human languages in my 40s and regularly pick up new skills related to computing but also, "please stop changing stuff for what feels like change sake".

@cstross @hywan

@Keltounet @cstross @hywan I've been harping on this for years. Arbitrary UI changes to make something perpetually new and shiny has a huge negative economic impact that is never considered. It wastes people's time. Not everyone wants to have to relearn their tools, they want to use their tools.

@cvoid @Keltounet @cstross @hywan

Software in "the cloud" has fully unleashed this form of petty violence and theft of time.

It's astoundingly arrogant, as though somebody grants themselves permission to rearrange others' desks in the dead of night.

@cstross
I would agree many UI changes in all manner of tools seem to be change for its own sake (where improvements are not clear, or worse, where the UX feels worse), as if the decision makers need to feel productive
@Keltounet @hywan

@tshepang @Keltounet @hywan UI changes in corporate products seem to happen purely to justify the product manager's request for a pay rise at their annual review! And at Google, old products get killed ruthlessly to make way for new products because that's the only way a manager can earn promotion.

This shit is actively hostile to the users' interests, but it's ubiquitous.

I mean, Canonical think 5 years is "long term stable" for Ubuntu, which is bullshit: should be AT LEAST a decade.

@cstross
would you say new kernels, old (and loved) userspace
@Keltounet @hywan

@cstross @tshepang @Keltounet @hywan I mean, on the other hand, 10 years LTS is... really expensive if not impossible. Computers are not some magical thing frozen in time. Maintenance costs rise fast, and not linearly with time, especially with context change.

I totally agree with your point on the UX change ofc, but for example, in terms of shell, as he mentioned in the article... Nushell is not really meant to replace your use of shell. It is built to replace glue scripts. And yes. needed.

@Di4na @tshepang @Keltounet @hywan

"Maintenance costs rise fast"

... which is why IBM mainframes still happily run Series 360 assembly programs from the early 1960s, the hardware is all hot-swappable and fault tolerant, and the main backward compatability issue is finding folks who know what the bottom of the application stack is even supposed to do (the original designers all died of old age).

The inevitability of perpetual churn is a lie. It can be avoided.

@cstross @tshepang @Keltounet @hywan I mean yes, it costs so much to run stuff still on these machines that the estimated cost reduction from moving away from them and paying for the churn is regularly considered order of magnitude cheaper than to keep paying that cost. Ofc the cost of switching is high because it has accumulated over time.

I have seen the accountant doing the maths, I have been in these rooms. It can be avoided, totally. But the costs is rarely one anyone is ready to pay.

@Di4na @cstross @tshepang @Keltounet @hywan the implicit choice here is that the costs went up _because_ everything else rode the churn ladder - parts that we invented 50 years ago to satisfy needs in say, electronics, have had their prices bottom out entirely because they are simple commodity parts - what's implicit about computers that prevents us from thinking in this way? If you are making an accounting package with legal changes, sure, but word docs?

@cursedsql @cstross @tshepang @Keltounet @hywan multiple things.

But mostly, because these parts are not the cost. The costs are the design of the board to fit them to our needs. That cost has dropped a bit but not that much. And if you go find an electronic board from 50years ago, you will quickly find out that most of the part are not produced anymore. That it is the wrong voltage for the modern part that replaced them. That the connectors do not fit. Etc.

The parts still exist. Sometimes.

@cursedsql @cstross @tshepang @Keltounet @hywan but combining them together in a way that fit your current needs and the rest of the world they interact with? Not so much.

An example. Most of that IBM 360 emulated stuff mentioned above? Only handle really specific text encoding. Better hope you do not need an apostrophe or an accent in your last name.

@cursedsql @cstross @tshepang @Keltounet @hywan also better hope you don't plan to still use them by 2039. Or that someone was paid to handle the millenium bug.

Even if the parts stay still, the world does not.

@Di4na @cstross @tshepang @Keltounet @hywan and in 2039 the system 360 would have an operating lifecycle of 75 years, an absolutely heroic effort compared to what we do today; through hole parts are still working fine today, and many of the processors that weren't hyper proprietary from the 70s are still around and work fine (6502, etc) - anyway I respect your opinion for say "the modern business" but conflating those with the populaces needs has an inherent impedance mismatch

@cursedsql @cstross @tshepang @Keltounet @hywan you realise i spent multiple years of my life trying to rebuild electronic cards to keep high speed trains from 50 years ago running?

Also the ibm 360 was less than 1% of the systems at that time. It surviving is an exception showing how hard it is. And costly. And how only a few can do it?

@Di4na @cstross @tshepang @Keltounet @hywan I assure you, they are paying in dealing with the various forms of churn instead. It just comes out of a different budget.

@Di4na @cstross @tshepang @Keltounet @hywan the idea that a stable UI is something “magical” is pretty bizarre.

Required changes in gesture or keystroke should be carefully minimized and the vast majority should be optional.

Backwards compatibility is THE most important feature of any software product upgrade, but somehow that seems to be a forgotten principle. It’s perhaps only a small part of why we have a sense that our devices are losing rather than gaining utility. But it’s part of it.

@mtobis @cstross @tshepang @Keltounet @hywan ah yes, the most important part is to keep the UI that most of humanity cannot use.

Magical indeed.

@Di4na @cstross @tshepang @Keltounet @hywan

Nothing prevents a complete UI upgrade as long as the old one is still the default for existing users. But changing either the existing UI or any existing APIs for existing users is a betrayal. I don’t understand why this isn’t obvious.

@mtobis @cstross @tshepang @Keltounet @hywan and i don't understand how my point is not obvious either.

So maybe we should both realise our arguments are not as strong and evident as it looks.

@Di4na @cstross @tshepang @Keltounet @hywan

Yes perhaps I miss your point.

Mine is that i do fail to see why machines that are two orders of magnitude more powerful than thier predecessors can’t do exactly what their predecessors did in exactly the same way.

Maintaining software shouldn’t be a major expense. If it is, I think it is usually indicates a misdesign at some level of the stack. I can think of exceptions, but usually.

@mtobis @cstross @tshepang @Keltounet @hywan all of our stuff was deeply misdesigned because it was designed for a far different set of people and it only embedded that. Which means it all depends now on only having these people as customers. And once they become less than 10% of the user base, yes you break their stuff in order to serve the rest.

@Di4na @cstross @tshepang @Keltounet @hywan

Just fork it.

Geez. Is that so hard?

@Di4na @cstross @tshepang @Keltounet @hywan

I guess you're talking software services, while I'm talking local executables. But that's a key part of the enshittification process.

e.g. I just want to run the version of Photoshop I (thought I had) bought. I don't want Photoshop as a "service".

@Di4na @cstross @tshepang @Keltounet @hywan

An interesting example is that I had built an artistic style around pushing a feature of iPhoto to an extreme. Some might call the result buggy.

I did an OS upgrade and my iPhoto was "upgraded" with it. As a consequence the "bug" I had come to enjoy went away, and I stopped producing anything of the sort.

Maybe I was in a very small group. Maybe I was alone. But **I** didn't want the upgrade and should have been given the choice.

@mtobis @cstross @tshepang @Keltounet @hywan i mean if you want to keep using it, yes. The rest of the world move. Software does not live in a vacuum. If you stop updating it, it stops working.
@Di4na @cstross @tshepang @Keltounet @hywan why does it stop working? It doesn’t wear out like a car.

@mtobis @cstross @tshepang @Keltounet @hywan because it is not a car. It is the car, the road, the bridge and the pollution regulations. It depends on a ton of code that does not ship with it but with the computer that also change.

Way to talk to a graphic card, memory, way to understand mouse inpute and sounds, way to draw characters on the screen or how to explain which colour is which. Ways to open a file. Code from the 90s does not magically run even if you have the old version.

@mtobis @cstross @tshepang @Keltounet @hywan a car is mostly self contained. Code is not.
@Di4na @cstross @tshepang @Keltounet @hywan it is comtained in other code, which also doesn’t rust or wear out, to which the same principles should apply. Failing on backward compatibility destroys value, usually for no justifiable reason.
@Di4na @cstross @tshepang @Keltounet @hywan early MSwindows was scrupulous about supporting MS-DOS apps, wjich in fact basically saved me from manually retyping my doctoral thesis in LaTeX from the niche app I was using. There is no reason this can’t continue other than perverse motivations destroying value.
@mtobis @Di4na
what are examples of these perverse motivations
@cstross @Keltounet @hywan

@tshepang @Di4na @cstross @Keltounet @hywan Someone closer than me to commercial coding should answer but I’d suggest that a satisfied user who can achieve their goals doesn’t need to buy more software.

So the business model needs to set up either subscription models or ways to break what already works and force replacement.

“planned obsolescence”

@mtobis @tshepang @cstross @Keltounet @hywan i literally am a commercial coder. It does not work as you say. I understand that it sounds like a good story, but it is not how it works.

@Di4na @tshepang @cstross @Keltounet @hywan

It's certainly a real motivation, whether conscious or not.

Like any long-time intensive user, I have lots of stories of things going away for no apparent reason, which was infrequent in the 80s and 90s and 00s. So how is this not a decline in utility in exchange for all your efforts?

@mtobis @tshepang @cstross @Keltounet @hywan and yet i can buy a super cheap pretty resilient and safe toaster for a lower price than in the 80s and that works as well rn.

So it seems... that you are comparing different products and wondering why one has different modalities than the other.

It is because they are not actually the new version of the older. They are a different one.

@cstross @tshepang @Keltounet @hywan my favorite is the switch to forced updates for the default use case so you are guaranteed to always be on the update treadmill when you absolutely might be the worst person for it. Automatic upgrade to Windows 11? Get that crap out of here.
@cstross
(Minor detail - 5 years LTS is free support, ESM is paid support for up to 10, though I think 14.04 is the oldest you can get it for, they haven't actually sunset any of them yet.)
@cstross @tshepang @Keltounet @hywan I genuinely think that the "gotta ship if you want promo" attitude that pervades so much of the tech industry is a profoundly negative thing for the customer, for the employees, and for the companies themselves
@BoredomFestival
what attitude is this... can you explain further
@cstross @Keltounet @hywan