All starchy foods make cholesterol go up, while all animal proteins make it go down, since digesting them consumes LDL. People only campaign against this scientific evidence because there are so many of us in the world, too many, and there isn't enough animal protein for everyone, especially if you focus on economically profitable production instead of distributed subsistence production wherever possible.
Personally, while living in Emacs (EXWM), I still can't live on eshell, the issue is "the terminal", too many commands are simply uncomfortable to use in eshell while run smoothly in a real terminal.
I've also tried some new shells, the one I last more is xonsh, but generally I came back to zsh even if I use in general much less the shell than before thanks to Emacs, the 2D shell.
Emacs completion also it's very nice for text, but slower than tab-cycle in zsh as well and for quick commands that's matter.
Have you tried Eat[0]? It's a reasonably fast terminal emulator that integrates with Eshell so that all commands run in Eshell have full terminal emulation (but they're still run in the original Eshell buffer, which makes it better than `eshell-visual-commands'). I haven't had any terminal emulation problems since switching to it.
With regards to completion, I use corfu, which gives me nice inline popups. I use the bash-completion package, so I don't have issues with programs that don't provide Eshell completions (which are basically all of them).
You have to turn on eat-eshell-mode to enable Eat's terminal emulation in eshell.
It runs full-fledged TUIs like vim and ncmpcpp in Eshell slowly, but is good enough for quick fzf uses. It's perfectly fine for "small" dynamic elements like the spinners and progress bars used by package managers.
Just remember to use system pipes (with "*|") instead of Elisp pipes (with "|") if you're piping data into an interactive TUI application like fzf in Eshell.
How does eat detect a visual command in eshell? I use vterm in Emacs for visual commands like nvim and htop. But it's triggered manually with a simple custom prefix command (just 'v') added to the actual command. I wonder if that trigger could be automated. It sounds from your description like vterm is faster than eat. If so, a similar automatic trigger for vterm could be very beneficial.
eat-eshell-mode doesn't detect visual commands and launch a separate eat buffer, like eshell-visual-commands do. It filters all process output in eshell and handles term codes. It turns the eshell buffer itself into a terminal, so that vim or whatever runs in eshell.
> It sounds from your description like vterm is faster than eat.
vterm is faster than eat, but a dedicated eat buffer is fast enough for most common TUIs. An eshell buffer with eat-eshell-mode is slower.
Visual commands only differs from normal commands by the escapes code they use (like enabling the alternate buffer, clearing the screen,..). Eshell can't deal with those (and shouldn't as it's a shell, not a terminal). Eat adds a layer that does process those escape codes and that's all you need to handle visual commands.
there are some quirks with it though, given it has a couple of input modes.
i think everyone should read its fantastic documentation 1st to avoid frustration, instead of just falling back to the local minima of trying to use their pimped up shell inside eat as is.
e.g. i had a 2 line starship prompt enabled in my macOS zsh and inside eat it made the screen scroll back and forth by half a page randomly as i was just typing regular characters at the prompt.
M-<left>/<right> moves the Emacs point in semi-char mode, but the underlying shell is not aware of it, so the next character input will happen at an incorrect position. M-f/b works though.
There is an auto-line-mode, which might be a good compromise, but i haven't tried it yet.
On a similar note mooltipass can export an encrypted backup of passkeys.
That said platform should support multiple passkeys so if you lose access to one you arent screwed over.
Not a cryptobro but... The only acceptable digital identity is or local (smart-card) or a blockchain kept by any connected citizen on his/her own iron. The Orwellian dream of the nazi will cause pain also to those who push it.
Aha... Interesting, I'm the sysadmin of myself so I verify myself that I'm entitled to be root on my iron. Sometimes politicians reveal themselves in their future program dreaming things like mandatory online accounts on corporatocracty-controlled servers for all...
Expensive PCs/homeservers means more people on mobile crap + someone cloud, means students who do not learn PCs FLOSS when they have time and so on. That's the real point.
While on one hand I suggest revisiting the old Ironies of Automation by Lisanne Bainbridge on the other I've noticed that what's really missing everywhere is IT education. I come from a Computer Engineering background and I saw absolutely NOTHING regarding IT except for a few mentions here and there; I had to teach myself. Those coming from CS see even less (at least speaking for EU universities, I don't know about the US but I suspect it's not much different).
There's an attempt to deny the need for IT knowledge and expertise at every level, Big Tech does it out of self-interest, while most others do it out of ignorance. They often claim, "Oh, it only takes a few minutes or days on your own; just a couple of clicks and you can do everything." Yet, those who say this don't actually know what they're talking about and refuse to even try to prove their own theory.
The outcome is even worse: nowadays, doing it yourself is a struggle even when you have the right skills. All recent software is built to be unmanageable because there's no operation/infra vision. Don't even get me started on documentation; everyone talks about the need for a "documentation culture" yet what actually gets documented ranges from nothing to total garbage (basically text that's useless unless you feed it to an LLM and hope it can make some sense of it).
To make matters worse, standard hardware is getting more and more expensive, first it was graphics cards, then RAM, and now NVMEs, with the result that many people simply don't want to or can't afford to buy, so they're literally living on someone else's computers even if they don't like it. This is especially true for students, who are at the best stage of their lives for learning and who won't have the time or energy to do it later on.
To complete the picture, the business model just isn't sustainable; no matter how much is invested, a real digital evolution isn't possible while living on the computers of four giants limited by their own services, and this implies that a social collapse awaits us regardless.
For me, the solution is managing to have enough leverage so that we can push for mandatory FLOSS and open hardware de jure in response, in order to limit the damage and geopolitical upheavals who push anyone to relocalize, which necessarily implies starting over on a small scale. I see something coming: Nostr, Meshtastic, the Fediverse, the rise of self-hosters and their average age show that there's still an active group of people who want a different world. But they are few and far between, burdened by significant technical debt in a world that's becoming increasingly hostile,and that's exactly where things need to change.
The problems caused by centralization, from various companies getting burned by relying on giant third-party providers, to banking scandals driving crypto (not stablecoins), to the need for resilience that requires cutting down on SPOF might actually make a difference. I hope it'll be enough, and I hope anyone who gets it does their part to spread that understanding while we still can.
I have a bit of unsolicited feedback (in this terms): the basic IT skills, not CS or CE, but IT, that everyone needs but most don't realize, including techies who often stay in their bubble and don't truly understand the classic desktop model despite having the skills to do so, are a bit different IMVHO:
- first of all, you need to know how to manage your own digital information. Even though it's taken for granted that a CS/CE freshman knows this, well, in my experience, that's usually not the case also for many PhD... Information management isn't just a taxonomy of files and dirs; it's also about evaluating, for example, what happens if the software you use for your notes is discontinued, or if your photo gallery disappears, and so on, and acting accordingly knowing your SPOFs and how to mitigate them;
- then you need to know how to write, in the broadest sense, which includes mathematical notation, generating graphs, "freehand" drawing like simple CAD, and formatting your work for various purposes and media, whether it's emails, theses, reports, or general messages. This is where teaching LaTeX, org-mode, R/Quarto, etc comes in. It's not "advanced" is the very basic. Before learning to program and no, Office suites are not an answer, they are monsters from a past era, made to makes untrained human with little culture to use a computer for basic stuff instead of typewriters, a student is not that;
- you need to know how to crunch numbers. Basic statistics are useful, but they're largely stuck in another era. You need to know how to do math on a computer, symbolic computation, whether it's Maxima or SymPy, doesn't really matter, and statistical processing basis. For instance, knowing Polars/Plotly/* at a minimum level are basic skills a freshman should have at a software/operational level, because they should be working in these environments from day one, given that these are the epistemological tools of the present, not paper anymore.
Then you also need to manage code, but in the broadest sense. A dSCM is also for managing your own notes and documents, not just software, and you need to know how to share these with others, whether it's Radicle or Forgejo or patches vua mail doesn't really matter, but this family of software needs to be introduced and used at least at a basic level. A DynDNS services should be also given so anyone could try to self-host the services they want.
Knowing how to communicate is an essential skill, and it's not about using Gmail or Zoom... it's about learning how to self-host basic communication services. It doesn't really matter if it's XMPP, Matrix, or Nostr, but the concept must be clear, and understanding the distributed and decentralized options we have today is vital. A student needs to learn how to stand on their own two feet, not on someone else's servers.
These are basic IT skills that aren't "advanced" at all, despite what many people think, or "sysadmin-level" and so on; they're simply what a freshman should have as someone who loves knowledge and wants to get their hands dirty.
I work in IT and can’t tell you the number of talented software engineers I’ve worked with who were just as bad (or worse) than the most tech illiterate HR person you could imagine. I’d add basic troubleshooting methodology to this list. So many engineers assume they know the problem and start headbashing a fix without bothering to evaluate the scope of a problem, form a hypothesis, or validate that their assumed fix actually worked.
The issue isn't the laptops, but the proprietary software and the fact that teachers don't know how to use even a desktop on average, so they're even less capable of teaching it.
IF you teach how to use a FLOSS desktop, you're providing what's actually needed in the modern world; if you do Big Tech a favor by using their services in schools, you get a collapse in cognitive ability, which is exactly what happened. People just need to understand this and actually have the will to understand it.
That's because you haven't seen IT in action outside of your job yet, I'm talking about its true potential. It's not about the terminal or Emacs (the 2D shell), it's about the paradigm.
If you teach free software, you're teaching people how to know, not just how to follow the tracks someone else laid down. You're teaching them how to tell if a news is fake or not, how to use a feed reader to follow various sources instead of relying on whatever aggregator is popular at the moment, and how to communicate from their own home without depending on third parties, and so on. You're creating a population that understands the meaning of digital ownership/property and knows how to manage it, so they aren't slaves to the tech giants and instead have a hunger for knowledge. In other words, you're putting the gnoseological tools of the present into the hands of the masses.
With the GAFAM model, which is basically just mainframes made worse and expanded, you're creating dependency instead. You're creating slaves, not citizens; people who just comment under articles provided by some PR hack, who don't know how to start a thread on their own topic or write their own piece, people who don't have a domain name as their home address IRL, and so on. People who own nothing and, as such, not Citizens, but subjects of the few who do own everything.
All starchy foods make cholesterol go up, while all animal proteins make it go down, since digesting them consumes LDL. People only campaign against this scientific evidence because there are so many of us in the world, too many, and there isn't enough animal protein for everyone, especially if you focus on economically profitable production instead of distributed subsistence production wherever possible.
reply