Cool desktops don’t change
tylercipriani.com
tylercipriani.com
Not because vim vs nano vs emacs etc. Just that plain text is not enough.
I want to be able to encode more of my memory and context to my notes with a minimum of fuss, and therefore want to embed images (gasp!), tables, hyperlinks, and even file or sound embeds in my documents.
Yes, open simple file formats are better than closed complex formats (and doing text vs binary formats has something to say for it as well).
No, I don't like that Onenote's .ONE file specification is super complex and therefore only semi-open.
But I'm not about to lock myself into a DEC dumb terminals 80x24 limitations where I have to learn some greybeard's key bindings for everything, all for the privilege of losing all my ability to embed multimedia combined with said gatekeepers tut-tutting me that I should just make a link in my terminal to the local image file, nevermind that you can't copy/paste an image into a bash terminal and have the file be saved to that directory (ok it probably exists but is some obscure something).
So I watch Xournal++ very closely, specifically [this issue](https://github.com/xournalpp/xournalpp/issues/937) because it will have the total package, multimedia embeds, ink support, text support, file embeds, all in one file that I can syncthing save to wherever else I like.
But until then? Onenote desktop, sorry but not that sorry.
Maybe I'm just a weirdo. I love reading manuals and discovering interesting nuances in the things I use every day. Or picking some new software at random and learning about it just because it's fun and interesting.
This is especially true where there's a selection of tools that all work within a similar "market" space for X functionality - some are going to be less complex, some more intuitive for me personally, some fulfill a one-off need and their other functionality is duplicated by another system I know much better (and have put the time into learning).
That shouldn't take away from your enjoyment of reading through minutiae of various systems, but you can't reasonably expect a lot of people to match your enthusiasm for doing so.
It's entirely possible there's a community of people out there who don't mind reading about abstractions exported by tools. Especially if it means you'll save time in the long run.
The original post seemed to me to be a mild introduction to the concept that maybe you can get your job done more efficiently with extensible / combinable simple tools rather than waiting for someone to add a feature to Gnome.
It's totally fine if you don't want to do that. If the person in the cube next to you does that, how is this an insult to you?
Maybe you're not the audience for this article.
This isn’t to say I don’t enjoy learning apps anymore, I just have to guard my time more wisely.
Still, as front-end, I find myself mostly working through Windows VM's, on top of KVM. I pass through most of the hardware (usb controller, the main GPU), and get a native windows experience. Most work happens through Chrome, VS Code and Windows Termnal. I use PowerToys to get some kind of tiling window manager.
There are two reasons for this. One is that my workplace has security setups for Windows and Mac, but not linux. I can grant them full control over the VM I use for work, and can use the standard setup for vpn, etc, as well as ability to use all corporate resources with no pain or hacks.
The other is that a lot of things are more painless. Working across multiple monitors requires less setup, scaling 4k "just works", most hardware and front-end software I use behave as-well or better than on linux (particularly webcam + Teams, that I depend on heavily).
Also, as editor, I still use emacs for some things, when I just want to edit some file in a random directory.
But for development work, I've switched to VS code. The ability to ssh into any remote VM, container, etc, and be able to work directly on a remote server, complete with gitlens, debuggers, file browsers, shell access, etc, is a killer app for me. I also love the pane management, which provides the tiling window manager functionality I love from i3/Pop Shell. (Power Toys is ok, but not quite as efficient for me as i3.) Emacs CAN be set up to do those things, but that takes more effort, I feel, and still not the same user experience.
I was slightly disappointed by i3 and xmonad and built my own WM in lisp.
In the old days we used to write our own tools by extending and combining existing tools. Now people seem to just download python and use whatever library comes with it after a day or two of experimentation
Software is interesting and fun in different ways to different people; most people find tools accomplishing their goals with as little overhead as possible far more fun than reading technical docs. Not saying you’re wrong to like reading manuals, but it’s not a moral failure to have a cognitive profile, or heck, even a schedule that’s meaningfully hindered by your daily toolbox having reading prerequisites.
I don't get that allergy to reading. For a long time it has been accepted that you had to read a manual before using something relatively complex, as not everything can be expressed intuitively, and because intuition is not really universal.
Engelbart assumed people wanted an interface for "trained experts" -- the idea being computer applications were important enough for people to invest time in learning new concepts to make their work more efficient.
Larry Tessler and others argued you should present a beginner's interface based on existing metaphor. Larry eventually went on to work at PARC and Apple where his work inspired (and frustrated) generations of computer users.
Boarding noted that Tessler (and others in PARC) needed a raision d'etre inside the Xerox organization and partially used "building document handling systems for secretaries" to justify their budget. Kay was well known at the time for wanting to use computers in education, so it's no wonder the interface Jobs saw at PARC was one tweaked for beginners.
Do you know how many pages of software documentation the average person will read in their entire life? Zero. Why? They don't have to, and imposing that requirement yields no benefit. I'm always astonished by the perennial hubris required to glibly assert chemical engineers or historians or teachers or physicists or lawyers or doctors or librarians or literature professors (or even other developers who want to concentrate on other tasks) only avoid software tools with prerequisite study because they're too lazy to read.
The purpose of software is to help people more easily solve their problems. The bigger the barrier to entry— prerequisite study for example— the harder it is for most people. That's acceptable if the complexity is genuinely necessary to afford or augment expert usability in purpose-built software, but it almost universally compensates for ham fisted interface design. Interfaces that stop expert users from doing things efficiently and only afford beginner workflows are also poorly designed. Expert vs dumbed down is a false dichotomy.
For many FOSS developers and users, tolerating counterintuitive interfaces turned into a badge of honor, and that turned into an aesthetic preference. It's not the default state of software, it does exclude non-technologists, and is why FOSS alternatives are still alternatives for every application not specifically designed to be used by technologists, even though they're free. Every single one. Every professional photographer on the planet who relies on Adobe Photoshop would jump for joy if Gimp even came close to being a sufficient replacement. That preference is also why developers don't generally make significant interface decisions in any professionally managed software project.
Not having a technologist's domain knowledge or priorities isn't a contemptible moral failure. Having it doesn't come with design expertise— learning design takes a lot of study and practice, but I'm guessing you have other things you'd prefer to concentrate on learning. Which is fine. Just realize that assuming documentation is sufficient to guide users through software is primarily informed by your not understanding software usability rather than everybody else misgauging the importance of software documentation.
I do this stuff with my notes in Emacs and it's really nice. Emacs is a graphical application and its notetaking facilities are really outstanding. It even supports syntax highlighted, executable, exportable code snippets, as well as all the basic text formatting, hyperlinks, tables of contents, tables, etc. It's a great tool for developers and sysadmins to use for notetaking.
If you know Emacs isn't for you, that's totally fine, but I wanted to throw this out there for bystanders that when someone suggests to build your notetaking workflow around a great text editor, the proposition is not at all to somehow confine oneself to an 1980s terminal.
Even custom hyperlinks and text notes that refer to chunks inside PDFs are easy to do.
Thank you Richard
Why?
vim would not be what it is, without emacs to rage against.
Emacs is emacs because its extensible, between vim, neovim and vim9, im starting to think people might enjoy the extensibility seeing as that brings vim up to 3 scripting languages to write things in.
vim has become what it purported to hate
I've had many well-intentioned but ultimately abortive attempts to get on board with Emacs.
So, are images 'possible' or 'trivial'? Not trolling, and I do note that you say it's not part of your workflow.
so (out of the box) in org mode if you type [[./file/path/to.png]] it will turn into a link, if you hit Ctrl-c-x-v it will toggle between showing images as a link (which will open in a new emacs buffer) and just showing the images inline.
ALSO you can just drag an image file onto an emacs window and it will display it in a new buffer.
however getting it so that A) images are displayed automatically when you finish typing the [[path]] and/or B) dragging an image into emacs will result in a new link in orgmode... that's probably possible
This is the package you're looking for. Just drag and drop images into the org mode buffer and you're done. I've been using it for years to take lecture / book notes in org mode where I have to constantly take screenshots and embed them in my notes.
part A is still annoying though. if you have inline images toggled and type in a new image it still turns into a link instead of an inline image.
On the other hand: no, Emacs is not a WYSIWYG word processor. The need to support terminal as a display backend weights heavily on the pace of GUI improvements. That's because all interface elements need to be renderable on all backends (not strictly true, but the prejudice against GUI-only elements is significant). So if you hope to be able to easily and conveniently display something like this: https://klibert.pl/statics/vw-doc-view.png then Emacs is empathically not the best tool for the job.
Direct embedding binary data in the Org files would be cool for emailing Org files around, though. It looks like Org does support this kind of embedding on export, if you don't mind exporting to other formats when you send documents around.
Yea, you will get a lot of Emacs and Emacs with Org mode answers here. To be fair they not wrong :) As a complete emacs newb, start with something like "doom emacs" ! It's brilliant for beginners.
>Emacs is a graphical application
Too few ppl know this.
Including me until now. I will examine this emacs of which you speak. No promises but I can at least attempt to run it.
Goodluck :)
Get used to the basic workflow for a little while and forgive the monospace-ness while you evaluate the workflow. I like taking notes in Gollum wikis, the wiki format used by GitLab and Github. The project management features enabled by default in Doom will kick in for that. Decide how you feel about those.
If you like the workflow, take a look at org-modern and take a few minutes to work out the proportions for variable pitch fonts. Then you can have Org text render in a nice, proportional font that you like and use monospace only for the embedded source code (including shell languages) blocks.
As an alternative to the using git repos to store notes collected into projects, take a look at Org Roam v2 for keeping a topic-based knowledgebase that you can work with without thinking much about the filesystem, and which offers mindmapping features.
That stuff works great for me, has required zero substantial elisp knowledge to get working, and has been natural for me to ease into. I hope you find a workflow you like!
For now, I've settled on GoodNotes because it's good enough at PDF Backup, OCR Search, and drawing. I have given solid tries to Evernote, ZoomNotes, Concepts, and Notion, and they each are amazingly better than GoodNotes in at least one major respect, sometimes multiple, but none of them are good enough on those zero-compromise requirements and GoodNotes is. FWIW.
EDIT: Oh, while I'm flamebaiting, I also use my ipad camera to take pictures of screens. Life is too short to schlep screenshots between computers, especially the ancient ones that run scientific equipment (lots of 68000, XP on some recent ones). Printer emulators and java applets can get bent. Runs everywhere, my ass. Moore's Law has given us gigahertz and megapixels, and if I can use them to eliminate painful asinine pointless busywork that's my god-given right and nobody is going to convince me otherwise. Sometimes I even use my ipad camera to take a screenshot of something on my PC and toss it into the mix. Sue me.
Paste on your iPad
Clipboards are synced through iCloud.
if i had to share a screenshot from my laptop/phone, it is a matter of taking the screenshot and "sharing" via kde connect. take all of 3-5 seconds and this workflow is now available to everyone
I swear I'm not shilling for Google Keep, but I've found myself using it more and more over the last couple of years; it hits a sweet spot between "limited enough that I don't get distracted" and "advanced enough that I can still express myself".
The biggest praise is its ubiquity. It's just there when I need it. Interesting article + my in-the-moment thoughts? Google Keep-ed. Want to add a reflection at the end of the day with a picture? Google Keep-ed. Need to remember an address in the car? Toss it in the Keep and open it on my phone.
function qn ()
{
date_today=$(date +%F)
year=$(date +%Y)
month=$(date +%m)
day=$(date +%d)
FNAME="$NOTES_DIR/Work/journal/$date_today.md"
#FNAME="$NOTES_DIR/Work/journal/$year/$date_today.md"
echo "### $(date +%F' '%T)" >> $FNAME
rlwrap cat >> $FNAME #
echo -e "\n" >> $FNAME
}
I've tried a lot, but obsidian works for meThank you!
And exactly which one of them can't I do in asciidoc?
If it is more than step 1 cut, step 2 paste, the tool has too many steps for my workflow, which like other users have posted is mostly a braindump of knowledge or context around several tables, links, and images/screenshots, sometimes with digital ink if I'm on a device with an active stylus.
But for producing formal documents, I have checked out asciidoc before and have respect for its capabilities, I just don't consider it in the running for my particular workflow as I see it as a different tool.
I'm not after version control for my notes though I know many others like it.
I agree with you, though: Notes is really quite good. I'm not sure how Notes syncs, exactly, but for whatever reason it's not blocked by my employer.
Also sync is not that great for massive datasets: I tried to sync my 22k-ish Evernote notes to Apple Notes and it took days and I never got the same number of notes on all the different devices. If you are currently building your notes you will probably not encounter this issue, though.
I was considering obsidian, but the devs say that obsidian is designed for a maximum of 20k notes.
So, I'm already on the upper bound, as you are. Probably, obsidian would be slow if I import all my notes.
Evernote, on a Windows 10 Desktop, now works fast, at least for me. I think we undervalue this fact, we undervalue the fact that it is hard to make good note taking apps that can sync and search fast with more than 20k notes. I guess there are users with 60k notes!
They are currently still catching up to reach feature parity with the old native clients, but at least they are releasing more frequently --which means betting the house on Electron technology is paying off--.
I do not use Evernote any more (finally ended up with plain files in iCloud Drive and EagleFiler to top it off) but I am still following their releases as a paying customer.
In the meantime, I'm using stylyslab write [0] which uses svgz and is a good replacement for OneNote and a compromise I'm willing to make to not be locked in but tbh the OneNote app is just so much better.
I keep having dreams of making a linuxnote for OneNote files since the file format is technically open specs, but as they are super complex and I've barely opened a hex editor before I just don't know what I'm doing enough to actually try parsing the bytes of an arbitrary file yet.
https://orgmode.org/worg/org-tutorials/org-spreadsheet-intro...
But spreadsheets applications tend to be more useful than annoying. Doing tables with formulas in text docs are possible, but it seems more annoying than useful. In some instances I enjoy using jupyter notebooks.
On my scale of highly upvoted uninformed opinion, this ranks high up there, next to Bill Gates microchip vaccines...
Is this comment auto-generated? What do you mean?
Sowhat handles transactional data well, you could implement double-entry for example with relative ease. Other things include: links, events, quotes, tasks, formulas and a few organizational elements. I combine these elements in different ways depending on the problem.
I don't believe that, btw, just guessing at the mindset of the author.
Visual Studio Code is based on a much older line (visual studio) which dates back to 1997.
It's not nearly so new as it may seem, although I certainly appreciate the refresh from the older, more feature-filled (and feature slowed) visual studio proper.
Not to mention - most of the "new stuff" in visual studio code is really just a nice UI layer that's built using mature and incredibly battle tested tooling - HTML/CSS/JS.
It comes from the same parent company, with a lot of interest in solving many of the same challenges. The UI paradigms are obviously related, and if you've ever done any real VS project debugging, you'll find the structure of those configuration files very (very) similar to how tasks work in VSCode.
I don't believe the VSCode codebase ever actually pulled anything from the original visual studio, but the roots of the application clearly come from the same place.
Some people, a few for now, are migrating from VS proper to VS Code, including for languages like C++/C#. I am one of them.
I appreciate what VSCode is achieving, though, I can run on my Linux host and remote into my microcontroller bare-bones OS for debugging and everything works nicely together but it ain't no Visual Studio.
Should have called it something like "Technical Notepad."
> The Lindy effect is a theorized phenomenon by which the future life expectancy of some non-perishable things, like a technology or an idea, is proportional to their current age.
This implies that things that have been around for a short period of time do in fact have a short expected lifespan. You're correct that "A implies B does not mean B implies A as well", but that assumption is not needed.
Take any random thing and random time (with zero knowledge of actual lifespan), and on average, you are in the middle of it's lifespan. Therefore, if Thing-A has existed for 28 years, it is likely to last for another 28, if Thing-B has existed for 6 years, it's likely to exist for another 6, and so on.
It may be somewhat informative for comparisons but not in real life.
You are hiking away from a disaster with all your possessions and life's savings in your backpack, and are now at a muddy riverbank needing to cross. You ask me how deep the river is and I tell you the average depth is 6 inches. That sounds great, but I have most definitely NOT told you that you'll be able to get across without finding a deep spot and having to drop your backpack to survive.
Using this effect to make judgements about product lifetime is similarly uninformative. It is a hint leading to only a possible inference, not data leading to a valid prediction.
1. Not sufficiently useful relative to involved costs for most applications(data formats, configuration maintenance, etc.)
2. Disrupted by something that is "10x better" for the purpose(e.g. using a spreadsheet instead of a text editor for 2D, cell-oriented data)
3. Outside forces invading the ecosystem and obsoleting dependencies(new OS, hardware, etc.)
So what the Lindy effect describes in long-lived software is just the software that is relatively cheap to keep around, is hard to greatly surpass and resists invasion - which describes a lot of "worse-is-better" software, where the UX kinda sucks, and it's actually a bit too unstructured for any particular application, but not enough of these things that anyone cares to address it in the relevant professional scenarios where it comes up: instead the user just girds themselves to fight it into submission because they can spend six hours fighting it and one week debugging it or two weeks making a Right Thing that is much less compatible.
Your statement A:"The longer something has been around, the longer it will be around" is not the opposite of B:"the shorter something has been around, the shorter it will be around".
Rather they mean the same thing. 'longer' and 'shorter' here are just English language ways of referring to the same time t that an object has been around.
If someone tells you "the longer a distance is, the more time it takes to walk it", that is exactly the same as "the shorter a distance is, the less time it takes to walk it"; there's no logical leap there.
I could conceive a rule that says "archeological artefacts are likely to be around for a long time" and it'd be a mistake to conclude that this means that non-archelogical artefacts will only be around for a short time.
But that doesn't seem to be how the Lindy effect is formulated, either on Wikipedia or on your post, so there doesn't seem to be an error in applying it to new things.
the more something has been continued to be around due to be continuously and repeatedly selected from a pool of similar other somethings, the longer it will likely continue to be so.
Because this is a statistical effect (longer lived things are drawn from a pool of things, some of which are not long lived), you cannot invert it trivially.If there is no selection process, then the Lindy effect is either meaningless, or decomposes to an assertion that the current thing is the only way to do something.
Why can't we 'invert' it, just because it's statistical effect? Yes, in your formulation, some of the new things in the pool will go on to live a long time, while others will be selected out.
But so what? We are talking about the expected lifetime of an item in the pool, conditioned only on it's age. There's no fundamental problem making a statement that this expected lifetime is short for new things, even if some fraction of those new things will last a long time, right?
After all, we don't know any one individual item that's been around a long time will last a lot longer. We only know we expect it to. Because even long lived items have finite lifetime, hence they'll eventually die (and when they do it'll be really surprising, because they've been around so long; but it will happen eventually.)
And so the statement is always talking about expected lifetime, whether for items that have already lasted a long or short time.
(Hence I still don't think there's really any logical 'inversion' here.)
Everything that's new in the pool might be better than everything that's old.
All you can say about the old stuff is that it was better (by some metric(s)) than anything it had to compete with so far.
But you can't say anything about the new stuff. Sure, statistically it is likely that it will some blend of bad, middling and good, but you don't actually know the mix, or which term describes which items, until after the selection process (i.e. time) has taken place.
But I think you are outside the Lindy effect model at that point.
To put this in the example of the original post: The author says visual studio code is expected to last less time than VIM.
You could counter by saying: "hey, maybe, uh, the rise of Product Management as a discipline has meant that modern software overall will have longer lifetimes, and hence it's not fair to guess that VIM will outlive VSCode".
And that'd be a fine position. But imo the right way to frame that isn't "the author did an incorrect logical inversion of the Lindy effect model"; rather it would be "I don't think the Lindy effect model applies to this domain".
(No one is saying the Lindy model is universal.)
I guess you could say you want to apply it only within a given year of software; so, we're happy to look backwards and apply the Lindy model to software written in 2011, but we've no idea how to think about the lifespan of software written in 2022, and aren't allowed make any inferences from software written before 2022.
That's fine, but that's an additional constraint we've added, is outside the Lindy model, and, really, we're in "all models are wrong, some are useful" territory here, where I'd ask "is it really useful to throw away all that previous data? Wouldn't it be a better starting point to use the lifetimes of previous years as at least a prior?" And if you grant that, then I think theres no logical error here.
It "might", but the empirical observation behind the Lindy effect points that this is unlikely (if we take "better" to mean "more fit to live and grow old and still used").
Sure, we haven't seen the new things develop yet. But we have seen that most new things dont survice time: the things that survive are a small subset of each "new things" (say, vi and emacs, and not one of 100+ 70s programming editors).
Then if the software has been around for one year, the expected value of p is 50%. But if the software has been around for ten years, the expected value of p jumps to 0.5^(1/10) ≈ 93.3%.
In this way, if a piece of software has been around for longer, then it has a greater chance of sticking around. In fact, the expected number of years it has left is indeed equal to the number of years it has already been around, as stated in the article.
In practice this mechanism is more complicated, as all software is influenced by a changing environment, but this same idea is still at the core.
This reasoning is incorrect. You have to take the distribution of p into account.
In a world where almost every software has p=0.5 the software which has been around for 10 years is likely to have been lucky and not to have higher p.
that's comparing A->B with A->B. comparing A->B with B->A would yield "the less time a distance takes to walk, the shorter that distance must be"
Yes, that's the point. feral (your parent comment) has accurately observed that Etheryte (your grandparent comment) has mislabeled A->B as B->A. But feral is completely correct that "the more time something has already been around, the longer its future expected lifespan is" is exactly the same claim as "the less time something has already been around, the shorter its future expected lifespan is". Etheryte is making a pretty bizarre error; he seems to be under the impression that "a < b" is the opposite of "b > a".
To use your own example: You have to take a long time to walk a long distance. That doesn't mean you have to take a short time to walk a short distance.
You basically only know one thing about something, which is how long it has been around. The things that come to life and die that you observe will be, on average, in the middle of their life.
So if something has been around for five years, given no more information, your best bet is that it'll be around for another five years.
One year? Another one year.
Hopefully this explains well why the Lindy effect also says that something that's been around for a shorter period of time is more likely to disappear sooner.
You can see Notion come out, and go "wow, I find this good and I think it will keep being around and good for a while". Like the GP said, the fact that it is young doesn't mean it is doomed, or even that it is not good. The Lindy effect says nothing in that direction.
Sure, you can have a much richer model of the world than the Lindy model provides.
>fact that it is young doesn't mean it is doomed, or even that it is not good. The Lindy effect says nothing in that direction.
No; it says that young things are less likely to last than old things. If the average expectancy is small, sure it doesn't guarantee any one thing is doomed (some aren't) but it absolutely does tell you that most of them aren't going to last long.
Imagine a friend tells you that they know someone who is planning to become a professional rock star when they leave school.
They are probably not going to make it, because most people who try don't. You can't be sure, because some people do become rockstars. But it's not an error to be sceptical of their chances.
If you hear they are still gigging after 3 years, even if they haven't made it yet, you are probably a tiny bit less sceptical.
That all makes sense, right?
If you tell your rock star friend to go back to school, you are helping him minimize risk. The chances are that he won't make it, but that's not a consequence of the Lindy effect. It's because surviving in the rocking world is difficult as it requires that people pick your music repeatedly over other available bands, which is the requirement for the Lindy effect to apply, not its consequence.
More importantly, if you tell every rocker to stop and go back to school because their chances of succeeding are low, you end up with no rock bands. Because all rock bands have to start out being new.
Believing that most new rockers won't become big is fine. Believing that any rocker that is new won't make it is wrong, in fact you can be certain that some will.
We're not making absolute statements about either new or old things.
We're not saying any one new thing definitely won't last another 10 years, the same way we're not saying any one old thing will definitely last another 10 years.
The whole discussion is about what things are likely to do.
There's a place for formal logic in discussions of probabilistic models, but it can also confuse people.
> Believing that any rocker that is new won't make it is wrong, in fact you can be certain that some will.
If you were made to bet money repeatedly on whether a new rocker or an old rocker would still be a rocker in 5 years, you would end up with more money if you always picked the old rocker. This means that older rockers last relatively longer and new rockers last relatively shorter ("on average" / "by expectation" / "probabilistically"); that's literally the same statement.
That the underlying mechanism might be gradual removal doesn't change this, and doesn't matter.
I got the sense that the author is trying to say the latter, however what they literally said is more like the former: Visual Studio Code, specifically, is likely not to be around in 30 years. I can't argue with that.
Yes it is, in this context.
When you take into account more factors, then sure you can get a better prediction. But then it's not the Lindy effect anymore.
I'm talking about the Lindy effect only. Nothing else.
First sentence on the Wikipedia page:
> The Lindy effect (also known as Lindy's Law[1]) is a theorized phenomenon by which the future life expectancy of some non-perishable things, like a technology or an idea, is proportional to their current age.
Proportional.
So if we assume that's implicit in my example, how does the Wikipedia page on the contrapositive help now? (It doesn't, as my argument isn't relying on any property of it.)
I would read up on the topic if I were you. Statistics can be unintuitive sometimes, and basing your argument on supposition can be unreliable. I'm not sure about the correct answer here, but most folks get e.g. the Monty Hall problem incorrect if they rely on their intuition.
For a product at T = 0, why would it be optimal to assume its lifespan would be T = 0 as well, rather than the average age of all products?
No; not sure where you got that from.
>For a product at T = 0, why would it be optimal to assume its lifespan would be T = 0 as well, rather than the average age of all products?
I'm not saying it would be. (The original blog might, but that's irrelevant to my posts here.)
If you knew the average lifespan of all products, that would be your best estimate of the lifespan of a new product. (You can't use average age naively without thinking about right censoring.)
If the average lifespan of a product was short, then the average lifespan of a new product would be short. As the product aged, it's expected lifespan would increase.
I.e. the longer something has been around the longer it will be around, or, equivalently, the shorter it has been around the shorter it will be around (both obviously taking about expected times.) Make sense now?
But this is a stupid-obvious problem. The Lindy effect is easy to write out in formalisms:
age(x) > age(y) ⟶ life_expectancy(x) > life_expectancy(y)
Here's the claim that Etheryte says is the opposite of that: age(x) < age(y) ⟶ life_expectancy(x) < life_expectancy(y)
It is hopefully obvious that these two claims are identical, not opposites. But if it isn't, consider that we can rewrite the first one like so: age(y) < age(x) ⟶ life_expectancy(y) < life_expectancy(x)
Statistics aren't relevant to the question in any way; it doesn't matter whether they can be unintuitive sometimes.The moment you negate A, both positive B and negative B, satisfy implication.
I.e. you can't claim shorter life implies shorter life remaining. For that to hold you need equivalency, not implication.
Here is an example. Rain implies streets are wet.
Does no rain implies streets are dry? No. There could be a flood or street cleaning, or a pipe burst.
The Lindy effect says that entities with longer realized lifespans have longer expected future lifespans.
In other words, if one thing has been around for 5 years, and another thing has been around for 3 years, then we know three things:
1: The first thing's expected future lifespan is f(5) years.
2: The second thing's expected future lifespan is f(3) years.
3: f(5) is greater than f(3).
Etheryte claims, in a gross error, that this does not imply that the expected future lifespan of shorter-lived things is shorter than that of longer-lived things. This is ridiculous; the claim Etheryte denies is a simple restatement of the Lindy effect. For our two objects of ages 5 and 3 years, the "new" claim would tell us the following three things:
1': The expected future lifespan of the first thing is f(5) years.
2': The expected future lifespan of the second thing is f(3) years.
3': f(3) is less than f(5).
But 1' is exactly the same claim as 1, 2' is exactly the same claim as 2, and 3' is exactly the same claim as 3. No claim has been negated, only repeated.
Because it doesn't hold invariant to time.
It's not hard to make a counterexample. E.g. when Windows 3.11 existed for several years and Microsoft published Windows 95.
If we were to travel back then and use Lindy effect we would get wrong predictions.
Because it's such a simple heuristic it only demonstrates one way effect.
Obviously? Look at the statement of the Lindy effect:
> The Lindy effect proposes, simplified, that the longer something has been around, the longer it will probably stay around still.
What do you think the word "probably" means?
It would, if the only thing that could make the streets wet is rain; ie if we were in a limited model where that was true.
We're talking in the context of a limited model in this thread. My point was that the statements are equivalent in this model.
Alternatively:
Imagine we were talking about the size of a pizza and how big a dinner it will lead to.
A blog says "wider diameter pizzas generally lead to bigger meals. Narrower diameter pizzas generally lead to smaller meals".
The first comment here says "just because wider pizzas implies bigger means doesn't mean narrower pizzas implies smaller meals, the blog has made a logical error!".
I reply "in the context of roughly round pizzas the two statements are the same".
You then give the example about the rain and streets. Hopefully it's clear that your general logical point isn't relevant to the pizza discussion, where there is a relationship between width and area.
Similarly, in the Lindy model, which we are actually discussing, there is a relationship between age and expected lifetime. That relationship is more complex than the pizza one, which confuses things, but hopefully the pizza example makes it clear why there isn't a general logical error here.
We are in a limited model. Many factors affect software lifespan.
It's a heuristic at best.
By the author’s logic, COBOL programs still in use today will long outlive Linux. That could even be true.
Also someone commented about COBOL. Of course no one thinks COBOL "is around", what also means statistics about usage. COBOL is declining and almost no one uses it anymore, so it is safe to say "it is almost not around".
https://www.bmc.com/blogs/cobol-trends/#:~:text=According%20....
The only way we stop using COBAL in production this century is to have some kind of apocalypse, or maybe an apotheosis.
That includes the expectation that something young will be (on average) half way through its lifespan.
It works based upon the 100% certainty that whatever you are, at some point you will cease to be.
On average, regardless of what you are, you are in the middle of your life or existence (some very high variance here).
In order to generalise it to non-certain events, such as a program crash, you'd need to remove the certainty assumption and rejig the consequent statistics - it might be doable, but you wouldn't end up with something quite so clean and simple.
Is it more of a process thing (having to change unit tests, code review, hire new people, etc) that prevents this? Or is it just too risky given the important roles of the mainframes?
Such a change would be transparent to the end user.. Except for gotchas like not all users have the source code for all of their dependencies. What happens if you want to update your program and you have a dependency on a binary from some vendor who went defunct 35 years ago? You're stuck compiling against whatever artifacts you have so does transpiling to C still work?
And note that the Lindy effect is about the expected value (mean). The statement "probably run another T hours without incident" could be interpreted as relating to the median, which is actually a little less than the mean. So the statement should either be "the expected value of the number of hours until the system stops is T", or "the probability of the system running for at least another T hours is a little less than 50%".
[1] Calculation: Lindy proportion 1 corresponds to a Pareto distribution with probability distribution function `a / x^(a+1)` where a = 2 and the range of x is [1, ∞). The cumulative distribution function is `1 - 1/x^a`. So the probability of the remaining lifetime being less than or equal to the observed lifetime is CDF(2) = 0.75.
The basis for this kind of reasoning is essentially that, if you can assume that you are an 'average user' (and you don't have reason to believe you're especially late or early), the chance that your prediction about the longevity of the project is correct is most likely to be true if you 1/3 - 3x[1] the lifespan of the project currently.
That is because if say, you predicted VsCode existed a hundred times longer than it currently did, that prediction is only true if you are indeed among the first 1%. 99% of VsCode users making that prediction will be wrong.
[1]https://cdn.vox-cdn.com/thumbor/2VfpAbtj-yOq5gHhYIdgrAIdBuw=...
I think there is a linguistic ambiguity here. What is meant by "the longer something has been around"? Longer with respect to what?
If you mean to say if A has been around longer than B, then A will stay around longer than B (in expectation), then this law is commutative with respect to A and B and what you specify as "opposite" holds.
If you mean to say if something has been around for t then it will stay around for some f(t) where f is an increasing function, then again what you specify as "opposite" holds.
I think the error is interpreting these things literally. If we did, then if it were 1990 we'd say Windows wouldn't be see the next century. Probabilities are attached.
The Lindy effect is named after a restaurant, Lindy's, which ironically closed recently. If we were to take it as invertible, we would have to conclude that a brand-new restaurant, which opened an hour ago, is most likely to shut down one hour from now.
This is an obvious absurdity: if we wish to speculate on the longevity of new things, we can't use the Lindy effect to do so. It's a good heuristic for betting that something will continue, it's a bad heuristic for betting something won't.
A new restaurant that opened one hour ago existed for months during its planning stages. That restaurant will probably not survive its first few months of business.
Yeah but in an hour it most likely shut down in two hours /s
I really don't get the whole argument over this definition, to me it sounds like a funny observation more than a law of the Universe.
It's not useful if you're trying to decide whether Bob's Education Mill will last longer than the state-funded community college opened in the same year, there are plenty of other heuristics which we might use there, but not this one.
There are 10 things that have been around for 10 years.
I think it’s safe to say that there is less chance of any individual thing that’s 1 year old being around in 1 year than the things that have already survived for 10.
I think you wanted to write A implies B does not mean "not A" implies "not B" as well. B implies A would be: the longer something will probably stay around, the longer it already has been around.
I get the impression from these people that they are constantly typing things. In fact, they're typing so much that they can't possibly waste valuable seconds using a mouse. I must be misunderstanding what they mean because that just can't be right.
And what's with the "you can achieve the same thing faster, without breaking your concentration" in regard to using a spell-checker or a calculator or whatever. Are you being serious? I can achieve the same thing faster? I mean how long do you think it takes to check the spelling of a word? Even if I must look it up in a physical dictionary, how long are we talking here?
Guys, seriously, slow down. You're going to burn out. I don't want to judge because I don't know you. Maybe you're a rockstar, but I'd guess that if you're really going this fast, the quality of your code is suffering.
That said, I don't optimize heavily against this the way some folks do. I use emacs and org-mode and GNOME (well, whatever the System76 folks are calling their reskinned GNOME desktop :)) which I think provide a nice balance. Emacs lets me switch between files with a couple keystrokes rather than having to dig through 10 tabs, and GNOME I think encourages an alt-tab based workflow. I still use the mouse for most other things though.
I can’t speak for others, but I keep my hands on the keyboard a lot of the time because I’m reading. As a (neo)vim geek, the key is to be really good at moving through the code. Being able to jump from where you are to where you want to be in a file far away without stopping allows you to read the code in a more linear way than it’s written.
It's also less cognitive load when the keyboard shortcuts are internalized. This may be worth it for operations you do a lot.
> Even if I must look it up in a physical dictionary, how long are we talking here?
This, however, takes an infinite time.
Yes, you are misunderstanding. First, it's not only about typing but it's generally about doing whatever you are trying to do without unnecessary delays, including navigation between functions, files, windows, etc. Second, it's not just about saving seconds here and there: the end goal is to stay in the flow state, avoiding unnecessary interruptions and context switches. Every time you reach for the mouse and move the cursor or scroll a document you stop thinking at the problem at hand because you're focusing on the motion, and when you're done with the mouse you waste mental energy resuming your previous train of thought, maybe even forgetting something.
> Even if I must look it up in a physical dictionary, how long are we talking here?
This is actually a good example because it seriously disrupts your thinking by forcing you to pause for some seconds and completely focus on something else. I am sure proof-reading a long document in this way is much more mentally exhausting (and slower, but again speed is not the point).
... because I have well over 200 of own keybindings in my spacemacs dotfile already and quite a few of them don't do what I need in some particular situation or some underlying package got broken or, or, or...
> you're focusing on the motion, and when you're done with the mouse you waste mental energy resuming your previous train of thought, maybe even forgetting something.
That's because it's already half past 3 p.m and except having two or three coffees, I haven't eaten anything yet.
Besides, I highly doubt if I don't get any Nobel- or Turing-Award it's because I don't keep my fingers on the home row.
Using a mouse does not distract me at all. I don't think about it, consciously, any more than I think about the motions my fingers make as I operate the keyboard. I'm not thinking about the tools, I'm thinking about what I'm doing through the tools; my hands move automatically.
I suppose it is like learning a musical instrument. At first you have to learn how to operate the instrument, practicing the motions to build up muscle memory. Then you start learning to play notes through the instrument. Eventually you stop thinking about the instrument, or the notes, because all that has become habit, and you just think about the music you are making; the instrument feels like an extension of your body.
If you have had a long-standing preference to use only the keyboard, and not the mouse, perhaps the mouse feels distracting for you because it is not part of the instrument you have learned to play. Of course this could be a self-perpetuating tendency.
I have had a few co-workers who seemed to spend a great deal of time typing, but I have not generally been impressed with the quality of their work. In fact, the most incompetent developer I have ever met, an enthusiastic proponent of his favorite editor and its automation features, was also the most prolific, routinely churning out hundreds or even thousands of lines of awful, bloated, bug-ridden code a day.
The field of software development is large and varied, so of course it is possible that there are competent people doing solid work which really does involve a tremendous amount of fiddly editing, thereby justifying the otherwise inexplicable degree of attention given to sophisticated editors; but I cannot imagine what their working lives are like, and I hope I never have to find out.
It really drove me crazy when I went from being a linux partisan for being responsible for quite a few different Windows machines and on a given day I could be working with anything from Win 98 to Win ME to Win NT to various editions of Win 2000 and XP and if you had to find something in the UI it would be slightly different in all of those which was a cognitive load. Contrast to to Linux where I did it all on the command line and it stayed the same in that time frame.
Sadly Microsoft is kinda forced to follow the trends, everything moves in all direction (web, phones).
I remember being excited when I saw the first beta test of KDE but it seemed each version got a little bit worse after that and that's been the trajectory of the Linux desktop since 1995 or so.
awk, grep, tail, nginx and all that kind of stuff is fine.
(I tried taking the 1050 card from my media server I used for AI training long ago and put it in another cheap Linux box and put SteamOS on it. They claim it can run Windows games but it won't run anything out of my steam account including the games that the proton database claims works. That's the kind of brokenness as the expected condition that is endemic to the Linux GUI)
If I found a GUI app worked on Linux I'd be so surprised I'd have to file a feature report with their feature tracker.
Xorg has worked for decades, a multitude of window managers and desktop environments have been perfectly usable for decades, and a couple of million people (going by Steam HW survey results) seem to be able to run games via proton perfectly fine.
Doesn't mean you have to think it's perfect, doesn't mean you have to use it for everything, but 'can't use any GUI app on linux' is definitely a you problem.
Former Microsoftie here. While they are following trends, the actual impetus behind all the little changes you see all the time is that managers and ICs are incentivized to make "impactful" changes if they want good performance reviews. UI changes are a pretty easy way to have "impact". You can say something in your review like, "and X million users used the new taskbar that's in the middle of the screen".
When organizations are small, you have the resources to evaluate performance on a case by case basis because everyone works with everyone else to some degree. When organizations grow and you have layers of bureaucracy, inevitably some asshole middle manager gives someone a bad review for a bullshit reason (jealousy, racism, dislike, etc).
That's when HR swoops in and starts making processes and standards for everything to shield the company from lawsuits. Crucially, these processes and standards don't necessarily prevent the problem, but just let the company's lawyers argue that they tried to prevent the problem.
Now that you have processes and standards for everything, employees start gaming the system. The goal is no longer "do the thing that makes the company succeed". The company is so big that relatively few individuals have the power to swing the company's fortunes one way or the other. Instead, the goal is now "maximize my career growth".
Then you end up in the nonsense FAANGM situation where individual little teams are putting out crap and making decisions that make the company look dumb. Things that would be easy to ignore if a significant fraction of teams weren't doing it. All because they're doing things that maximize their "impact".
This is hard to correct because you don't want to be too harsh with your teams and hurt morale, and it's not like it's every team. So you try to be flexible, be tolerant of missteps as long as people show improvement, because if you just fired everybody who made boneheaded decisions in the name of "impact", the hit to moral would cause terrible attrition problems. And worse, some of them would sue the company, which was the problem you were trying to avoid in the first place.
s/company/university/g as needed.
It's one of those classic situations where every individual step in the process does at least kind of make sense, but the end result is bonkers.
Linux (and FLOSS in general) gives you the choice to have it the way you want it.
Also if you go past the 3 main desktops there are many many window managers, standalone launchers, panels from which you can pick up the pieces you want to build something you like.
The only thing really changing right now is Wayland and the switch from window manager to compositors and the related support software. There are getting to be a decent amount of options in that regard with a good crop of lightweight compositors and tools starting to mature.
Compare that with the start menu. I type something, and the chosen program changes every time. I type notepad++, it shows the correct program until I type the d, then decides I really want to open edge and search notepad++ on bing. Or it launches an uninstaller instead of the actual program.
Now one of these days ms is going to optimize the win+r experience, so have fun while it lasts.
The trick is to rely on decades of acquired arcane knowledge about .exe filenames. What a great UI!
I hate windows as much as the next person, but to be fair that's kind of how command-line life works on Linux too isn't it?
They attempted to make the new Settings panel the 'HQ' for everything, but in the process really buried some things (for technical people) under numerous additional clicks/sub-menus, if it's even there at all anymore. I think they've been addressing the concerns with new updates, but I still find myself floundering sometimes.
- After waking my computer from sleep, my last active window is not active any more. In fact, no window is active. I have to hit alt+tab to grab focus of the window again, or click the window (this probably wasn't caught because most people use their mouse for everything)
- There's new animations for the basic native Windows menus, including the Win+X menu I use for sleeping my computer, shutting down, etc. When you navigate to a sub-menu with the arrow keys, you have to wait for the animation of the sub-menu sliding out before you can interact with it. I've had to slow down my muscle memory to sleep my computer because otherwise I'll hit random other menu items cause the child menu didn't slide out fast enough to keep up with my inputs.
- I usually snap windows around with the Win+arrow keys shortcuts, but they added a new snap layout where sometimes when I do Win+up it brings the window to the top half of the screen. But that's also how you maximize a window, so I don't know how it decides which one it will do. In my experience it seems to be related to your key input speed.
- Sometimes I'll crop and resize images in Paint. They redid a bunch of the UI in Windows 11, and now when I use the resize menu, I can't hit enter to confirm the size I input. Again, seemingly this UI was only tested by people who use the mouse for everything.
https://docs.microsoft.com/en-us/windows/powertoys/run and check the search commands / hotkeys
My start menu / win-r days / open a shell to execute some commands are pretty much all over now and I just use PowerToy Run
Even after using W11 for a few months ("I will get used to it"), I still noticed everyday how I felt less productive and annoyed having to hover over the icon and try to find the correct window, vs just having them all laid out in the taskbar.
So what lighting hue was best? Irrelevant, the important thing was that workers perceived that management was paying attention to their wellbeing.
I think something similar is happening in Windows (and Mac!) desktops, where they change small things "for productivity", and the majority of people will think it's an improvement, just because it's different.
Bt a small subset of us opinionated people will be upset that our carefully tuned habits are disrupted.
Many of the possibly meaningless desktop changes are also meaningless in the sense that they won't affect any workflow, and are therefore benign.
I feel like I've never talked to a person, techie or not, who didn't agree it was incredibly annoying to have UIs that they're used to change out under their feet.
I'd say something like the "ribbon toolbar" upgrade of MS Office, which I think improved accessibility of functions, is one of the only examples I can think of. But then I'm not sure if that was just a case of getting used to the new layout.
Windows "Settings" versus the Control Panel is a counter example. It was a downgrade, it still sucks now, years later, but the Control Panel could be argued as 'dated' by some definitions.
I don't think it improves accessibility when I keep having to go hunting in different sections for the right button. (The ribbon in the Recycle Bin makes no sense to me either.)
I'll admit it can be daunting for a new user to see a lot of buttons, but if there is a tooltip or even a tutorial for each button showing where it can be useful, that shouldn't be much of a problem.
For me, the Ribbon is what made Office unusable. I've used MS apps since the MS-DOS and Xenix days. I remember the old MS menus (2 lines, bottom of screen, summoned with Esc) to CUA transition, then the horror of WinWord 1, then the passable WinWord 2, then the actually quite nice WinWord 6.
I still run Word 97 on Ubuntu under WINE. Works perfectly.
But after Office 2007, it is totally unusable for me.
I did say "But then I'm not sure if that was just a case of getting used to the new layout" - still open to that being the case.
Maybe it's like 12th edition text books, change for the sake of change. In the case of Office software, we need people to keep needing the 'basic' and 'intermediate' training sessions; we need credentials to justifiably decay with time?
In IT parlance, I guess lighting hues would be equivalent to the changing the window manager theme for a lighter/darker one ?
> So what lighting hue was best? Irrelevant, the important thing was that workers perceived that management was paying attention to their wellbeing.
I doubt it would work if they changed the place of tools, the layout of the factory, stuff like that.
I’ve been running SwayWM for multiple years and it’s been great. There’s not anything I’m aware of that I can’t do in wlroots compositors; I even have Zoom screenshare working on my work computer under SwayWM. Most stuff, like WebRTC, doesn’t even require manual tweaks; just need the right packages installed. And you get the typical Wayland benefits, like great support for heterogeneous DPI, reduced jank, and potentially better robustness. (Depends on compositor for now; but there is a path towards compositor crash recovery, which should make things far better.)
A comparable Wayland compositor to Xmonad will likely rise as a good successor in the future.
Efficient remote desktop. Won't happen, ever. Simply cannot happen.
Blits from offscreen to onscreen surfaces bypass the compositor, so it can't implement them as RDP commands and instead has to push the whole image across the pipe every time.
This is why xorgxrdp is so crazy fast and responsive compared to every single Wayland RDP server.
I use sway (a Wayland compositor) on all my machines. But all of my headless machines run xorgxrdp because there is nothing in the Wayland world that is even close. This is a fundamental problem with Wayland that cannot be fixed until there is a perspective change on the Wayland committees. Sending surface-to-surface-copy commands through the compositor clashes with their worldview, but without it we will never have decent remote display -- even (as they say) as "the task of a higher-layer protocol".
That said, the best way to go in the future is probably going to be something more like waypipe.
edit: People seem skeptical, but…
GTK4: https://discourse.gnome.org/t/gtk4-efficiency-and-performanc...
Qt 5: https://forum.qt.io/topic/67371/x11-forwarding-slow-on-qt-5-...
Electron/Chromium: https://github.com/microsoft/vscode/issues/5243
Even my terminal emulator of choice; only fallback is software rendering.
Hope you can stomach video codecs, because that’s where we’re headed unless you stop updating your software.
Yes, I've been hearing that for 14 years now about several workflows Wayland broke (remote clients, etc.) and it keeps not happening.
In favor of software rendering, because datacenters mostly don’t have that hardware. X11 is more likely to be replaced by Javascript apps than Wayland apps because even going through a browser to a canvas is a better remoting story than sending entire CPU-rendered video frames to a desktop with a GPU that’s nearly untapped.
It seems like some applications have been adapting their architecture to deal with the remoting use case. VS Code is widely publicized for supporting it, but I personally also use Neovim which is capable of doing similar things, and IIRC even Jetbrains has been working on this. Of course, that covers code editing, but only code editing. So that still leaves a lot out. That said, these solutions have very good UX and portability, so it’s easy to see why people prefer that.
Let’s say the world went Wayland. What do you do about the other stuff?
Well, there’s not nothing that can be done. For one thing, while I do think that the XRender world of abstraction is basically going to die, that doesn’t necessarily mean there’s no way that remoting could be improved. For example… it’s possible that some day, a solution like VirGL could allow hardware acceleration over a waypipe tunnel.
And also, while Xorg is no longer being maintained, XWayland is still in scope for maintenance. So for the foreseeable future, you can still make use of X11 tunneling just fine under Wayland. Is this ideal? Maybe not. However, it’s perfectly practical, and therefore I don’t see why it wouldn’t be a decent solution. I expect mainstream desktops and apps to continue to support X11 apps for years to come, giving little urgency to worry all that much about the remoting case.
As usual with software, the old thing is always deprecated before the new thing is ready. I’m pretty confident that Wayland has made the right architectural choices for the future, and now all that’s left for us is to fill in the blanks.
This is part of the thing that annoys me about Wayland boosterism: people complaining about the need to fix stuff I can't see, don't care about and honestly think does not matter to 80%+ of people.
Screen tearing? Never seen it. Don't care.
Different DPI on different monitors? Can be fixed on X. Works in Cinnamon. Also GNOME and KDE but I find them unusable.
HiDPI support? Don't care. Don't own a HD monitor. Don't use anything with a 3D card in it. It's for gamers AFAICS. I'm old and grumpy.
It works, there are games, Steam works on Linux now.
Trackpads? Oh, those toy things on cheap plastic laptops? Don't care. I use Thinkpads. I turn the toy pointer thing off.
For me, this all falls under:
Here's a nickel, kid, go buy yourself a console.
https://gitlab.freedesktop.org/wayland/weston/-/issues/467
The DRM KMS API can be used to pass HDR metadata to the monitor, so it's not impossible to write a software to take advantage of that, but I don't know any that does.
Well, I know, that's why I said it.
> There is a heck of a lot more use for a GPU other than gaming
I am aware. I just contend it's mostly minority stuff.
> including content creation
Do it for a living. Have done most of the last 25Y. Make my living doing it.
I do it in Markdown these days. Mostly in an Electron thing that's 100x bigger than it needs to be, but it works. Used to do it in Word. Outline Mode is gold for a writer.
I do it across 3 displays, 2 of 'em quite big ones.
On an Intel integrated GPU. Don't need dedicated silicon for that.
> which also benefits from higher resolution and dynamic range displays
Not for me.
> though X and Wayland can't handle HDR yet.
Don't care. Don't need it. My iMac probably can; I don't care on it, either.
The only thing in this department that my iMac does better is that when I plug in an external screen, the OS figures out its size, aspect ratio, and makes everything the same size across all screens. That is a fantastic feature, benefits everyone -- unlike the stuff you're talking about -- and Wayland can't do it, nor can X, nor can Windows.
> Graphics libraries like Skia
Never heard of it. Don't need it.
> browsers
I have nice smooth GPU-assisted scaling and playback on my cheapo Intel integrated chip, thanks. Less hassle with drivers, too.
> the Android emulator
What Android emulator? When I need Android, I use my phone. It has nothing I want on any of my desktops, ta.
> and so on all take advantage of your GPU.
And a cheap simple integrated one is 100% fine for this.
The Apple Silicon Macs are making this point very well. Their GPU is relatively simple but because of fast memory, shared with the CPU cores, it works better than the phat nVidia and AMD space-heaters.
Big discrete GPUs are a temporary passing phase that'll soon be as dead as spinning hard disks: IOW, a temporary trend only found in some fancy servers.
> OpenCL, CUDA,
Don't need it, never did, almost certainly never will.
> mixed-precision computing, transcoding, ray-tracing are all accelerated with a GPU.
And are also doable on a standard CPU, with less coding effort. Also, all things I've never really needed or wanted.
For clarity:
There are uses for this stuff. But honestly, most of them are ways to try to find ways to use the big fat hot special-purpose silicon designed solely to try to make games render faster. The stuff that is needed by more or less all general-purpose computer owners can be done perfectly fine at more than acceptable performance by small, simple, cheap, electricity-frugal GPUs that can be built into a small part of a multicore 64-bit CPU's die.
And that is the pattern of the future: smaller, simpler, cheaper GPUs, without all the fancy rendering stuff, sharing the die of a CPU. We will look back at the era of big fat 2-slot GPUs with multiple cooling fans and multiple power cables with the same amused derision as we look back at big clunky slow 5.25" mechanical hard disks now.
I hear you, and I know there are good parts in Wayland (I just dont know them yet) but dammit, it feels like the Linux desktop has just in the last few years started to become "nice and stable" and predictable compatible with many things, and now we starting from scratch :(
When I first started using Linux, graphics drivers were mostly drivers for XFree86. Today, the modern Linux graphics stack with kms/drm is used by most drivers, and now Xorg can use kms+drm instead.
Same for input drivers… but now most people on Xorg are using libinput, which is what Wayland compositors use, too. Libinput handles your mouse, graphics tablet, touchpad, keyboard, etc.
Even Pipewire! When pulseaudio started, a huge obstacle was indeed just buggy audio drivers. Undoubtedly we still have those. But also, it’s a much better situation today than it was. Also, a lot of the ideas already existed in JACK, Pulse, etc.
So while a lot of stuff is indeed newer and still needing to mature, the typical Wayland desktop shares a lot in common with a modern Xorg setup thanks to gradual improvements.
Sorta like how the state-of-the-art "Ox Cart" was probably better than the very first generation of an automobile.
I think we that is where the Wayland-vs-X11 currently is.
For what it's worth, I love my Ox Cart with years of patches and bells and whistle that I know just how to kick-and-push to make everything work, even those nvidia-drivers that came of course straight form hell !
There are many things my 2010 era Core2Duo running Ubuntu 10.04 can do that my fancy new Ryzen desktop with Debian 11 can't and won't ever be able to do. Things I cannot give up because they're too important for my daily life.
>And when Wayland finally happens? Well. I guess I’ll have no choice but to stop using computers forever ¯\_(ツ)_/
Wayland isn't going to happen. https://dudemanguy.github.io/blog/posts/2022-06-10-wayland-x...
Agreed, but it shows no signs of ever achieving that. Yes, it has mixed DPI support, which is not nothing, but that doesn't generally make up for the areas where it doesn't have parity with Xorg and never intends to reach that parity. (Network transparency, screen recording, ...)
> which is hampered by its complexity and reverse compatibility
Users don't care about technical elegance. If and when those things start causing user-visible issues with Xorg then Wayland might get a chance.
This has me curious: What sorts of tasks are you doing that only work on a machine like this? I love finding new things to do with old hardware, so I'm interested in your insights.
[1]ymmv, but personally the keyboard on an x61 is perfection, the screen however is very very very far from perfection
https://www.ubuntubuzz.com/2021/10/distros-which-adopted-way...
My favorite: drag-and-drop from file-roller into nautilus. [1]
Also, and more seriously - I think I'm not going to take you at your word on this one:
There are many things my 2010 era Core2Duo running Ubuntu 10.04 can do that my fancy new Ryzen desktop with Debian 11 can't and won't ever be able to do. Things I cannot give up because they're too important for my daily life.
I'd love to see a real example instead of this pithy line. My strong (STRONG) suspicion is that anything you can do on that old machine can be done on the new one just fine - although you might have to adjust a bit or learn a new tool, and that can be painful and annoying.
And if you consider that they made Wayland default on GNOME to force adoption and users usually go to Internet seeking for advice on how to switch back to X11 on GNOME, we will probably wait a long time for Wayland happen.
This is a big problem because this friction they add on purpose hurts users of other wm/desktops that don't get their preferred wm/de working correctly.
And it also hurts other open-source developers because it seems the only ones doing something right are the Gnome devs, when in fact the others devs are having problems only because Gnome devs.
This is just conspiracy theory.
Huh ! That is not a fair argument. The silent majority is by definition impossible (or very hard to find) and confirm if its true. Since you know... they silent and all !
1: I use text to speech a lot. For the last 20 years I've use Festival text to speech on linux. Specifically I've used Festival 1.96 because it has support for the best sounding voices, the enhanced Nitech HTS voices. No other voice set, not CMU arctic or any other, sounds as good. Modern distros don't package 1.96 and I can never get it to compile. Nitech HTS don't work in Festival 2.0. There's no other mature local linux text to speech software that sounds decent.
Every time I build a new computer I both survey the Festival 2.x voice sets and other linux TTS software, including any new weird stuff (like google tachotron, etc). I've never been able to replicate the functionality of my old linux install (or get Festival 1.96 compiled on a newer distro). I really would like the same functionality on a newer distro and I spend a lot of time searching and trying. So if you know an answer to this I'd love to hear about it (anyone).
2: It might be possible for me to get GNU Radio 3.6.5 installed on a newer distro but I laugh at the idea of getting all the out of tree modules from that era to compile on a modern distro. It's the norm for GNU Radio modules to be left behind and abilities lost with every minor version.
3: The Python 2.4 software imgSeek which indexes images and allows me to do MS Paintbrush style colored sketches to search for images.
Honest question: For what - Are you disabled ?
Sorry I'm not sure what the PC way is to ask that question ? I'm purely fact-finding and English and PC is not my first lang.
PS. Not saying you are wrong to use it like that, just out of interest is it possible or worthwhile to just run a VM for that ?
Are there any other parts of your life (none computer related) that you also running super-old-tech or versions ?
Lol i'm really really not insulting you, just want to know (learn). There are much to learn from extreme-outliers
Recently i updated my machine and it would fail to boot because NetworkManager-wait-online.service's invocation of `nm-online -s` would fail even when NM was connected, even when `nm-online` actual liveness check would succeed.
I spent hours reading NM code, wading through auto-generated GObject introspections and their XML bullshit to try to figure out why org.freedesktop.NetworkManager.startup was true, what the magic numbers in org.freedesktop.NetworkManager.Connection.Active.StateFlags meant, why my desktop wouldn't boot and couldn't even find what could could cause the state to change before I finally gave up and patched nm-wait-online to just invoke the codepath which did an actual liveness check rather than bumble through a bunch of dbus interfaces.
Gotta say I was missing the old KDE3 dcop after that... IPC is still such a PITA on linux.
I'd be very disappointed by this because I'm in a mixed DPI environment and I need its support.
Seriously though, I find hostility toward Wayland so weird. I could kind of understand it with systemd, but X seems perpetually stuck in 2005.
I think the hostility towards Wayland is pretty justified. It's a backdoor power-grab by the GNOME foundation and Red Hat, much like Flatpak, Libadwaita, and to a limited extent, systemd. I, like many others, am totally exhausted of GNOME trying to be the center of the desktop universe. Every couple years, they decide to redouble their development efforts on some useless, stopgap tool that ultimately ends up being underdeveloped and redundant. Making matters worse, they announce $PROGRAM to be the next big feature of Linux, and anyone who's refusing to embrace it is a luddite. In reality, most people can't switch to these alternatives because they're niche, and don't provide the same degree of functionality as their favorite Window Manager.
Furthermore, people don't hate the idea of something replacing X, people hate the fact that Wayland has been in development for more than a decade and is still considerably worse than Xorg with objectively less features and functionality. Adding insult to injury, a majority of these omissions are deliberately removed by the maintainers because the GNOME desktop doesn't need it, therefore everyone else doesn't. Take AppIndicator support, for example. Everyone has statusbar icons: Mac and Windows users alike deal with them daily. When developing Wayland though, AppIndicators were deliberately removed because GNOME didn't intend to use them. Worse yet, the maintainers refused to even support it in wlroots, their pittance of a cross-platform desktop library.
> I could kind of understand it with systemd, but X seems perpetually stuck in 2005.
X is indeed terrible software, and it's functionality is stuck not just in 2005, but rather the mid-90s. I really hate Xorg, which makes it even more infuriating that Wayland:
a. Doesn't support my hardware
b. Doesn't support my desktop environment
c. Makes it harder for me to stream my display, take screengrabs, and use my webcam
d. Deliberately removed functionality that I use on a daily basis, forcing everyone adopting Wayland to write their own implementation of a basic feature.
If I didn't know any better, I'd accuse Wayland of being a project deliberately designed to sabotage desktop Linux. It's a project with less ambition than Quartz, and less hardware/software support than x11. It has a weaker security model than the compositor in MacOS, and manages to have less features than even the compositor in Windows. How is that closer to "the future" than a feature-complete desktop from 30 years ago?
The only truly excellent thing to come out of Wayland was PipeWire. But PipeWire works just fine on Xorg machines too, so I guess we're at an impasse. Wayland fractured the Linux desktop for good, there is no "way forward" anymore.
It's a bit like complaining about factory conditions in China. I'd sure like to buy a computer from somewhere else, but I'm sort of left without a bunch of options so I shrug my shoulders and hold my nose and hope the market sorts it out. Ironically, this is one of the issues that puts me off upgrading to another HiDPI display, thus necessitating my need for Wayland...
Linux display servers need a lot of work. HDR content is right around the corner, and nobody in the Linux video stack is prepared. Wayland spends too much time twiddling their thumbs and making life hard on the rest of the Linux community, and Xorg's maintainers are gone. If you're going to use Linux, then by all means, use what works for you. That's the benefit of modular OSes! But we still need to push for more active development in this space. If Xorg is dead, then a lot of work needs to be done on Wayland to get them up to speed. If Xorg is not dead, then we need to find someone to fix it's longstanding issues.
> It's a bit like complaining about factory conditions in China.
Not really. It's more like complaining about a missing feature, say, thumbnails in the filepicker. At first it seems like such an egregious omission that it had to be a bug. But then people defend it, saying "it's not that big of a deal!" When you try to get people to corroborate your claims, people label it as hate speech. When users contribute code, fixes, patches and solutions, you see them all get turned down.
The goals of commercial interests, Linux software developers and Linux desktop users have never been more at-odds. Without a clear path forwards, we can't expect anything to get done. I think it's okay to beat a drum about this stuff online, because it's completely germane on a subject like this.
But Wayland's definitely a big one, touching really old assumptions around Linux desktops. There is plenty to start fights over. I still can't quite use it for all my apps because some stylus apps behave poorly. So I think I'll be in the latecomer camp. This is not a bad thing for me: it just means I've organized my life around using the tech to get a good result now, rather than putting my energy into developing the tech. I was on Windows for the longest time for the same reason.
I believe you, but personally buying my monitors in matched sets is easier than giving up network transparency, and I don't think that's an outrageous position worthy of the scorn that the Wayland folks seem to have for it.
> A quick environmental scan reveals two serious contenders: Xorg and Wayland. Open source precludes the idea of a grand conspiracy, so I'm not sure why no one's working on an alternative if it's as bad as you say.
There's no money in it and it needs a lot of boring grunt work. RedHat may be half-assing Wayland but that's still 0.5 more asses than anyone else is putting into anything.
I felt the same way until I tried to get Chromium working without turning into a blurry pixelated XWayland mess. I still run Sway, but the hours I've spent pouring over smug "It's working as intended! X is soooo 2005 anyway" posts while troubleshooting my Wayland config has been absolutely infuriating.
I've also had to pause updates from Visual Studio Code, while they have contributed a lot to Wayland support in Electron they sure do break it with regularity.
chromium —enable-features=UseOzonePlatform —ozone-platform=wayland
I’ve seen this work brilliantly on some GPUs and segfault at start with some.The Xorg we use today is miles ahead of the XFree86 days that I find it rather humorous people are still complaining. Sure, I can see from a dev point of view it still sucks to work with. But from a user point of view? It does everything I need it to, and more. I can run remote apps. I can run headless X (how I was doing headless Chrome way before anyone else). I can run multiple X servers on one machine and switch between them (one for multi-monitor productivity, and a second for single-monitor gaming since most games don't work great with multiple monitors). xrandr is a thing today. I can dynamically change just about anything on the fly. I haven't touched the Xorg config and modelines in about a decade now. Getting a GPU to work has never been easier. There is just insane flexibility in what you can actually do with X11 that the warts kind of just fade away.
Autoconfiguration is table stakes as well.
While I understand that it's probably my fault for not discovering the same combination of software components and configuration that you did through brute force... Xorg no longer makes me do these sorts of things. Probably because it's not in a hurricane of development where every wheel is reimplemented monthly. You want people to switch to Wayland? Restart development on Xorg and introduce lots of breakage until it's just as much of a pain in the ass as Wayland.
I've tried it as recently as this year. The deal breaker? Toolbar popups in LibreOffice would not show. While I could submit bug reports to hundreds of different projects wait for them to be a duplicate of a closed won't-fix-not-our-bug-good-luck-figuring-out-who's-bug-it-is-becasue-they-sent-you-back-here, I just don't have the patience I used to have for that. I got to get something done. So, back to xorg until some update discards my preference and loads Wayland again.
Yeah, why should I be mad? Just be patient another 13 years for the pain points (which simultaneously don't exist) to get worked out.
But the converse is also true. Just because it doesn't work for you, it doesn't mean that it's in and of itself bad. Why would you be mad at Wayland if Xorg works for you? In that case it seems like there's really nothing at all to comment on.
However, the fact that there is so much discussion around this leads me to believe that X doesn't work for many people and that seems to be the fault of Xorg, not Wayland, so I don't understand why Wayland comes in for so much of the criticism. Wayland devs identified some problems and set out to fix them, this shouldn't really have any impact on Xorg at all, right? Just continue to use X.
EDIT: And to be clear on a point, it's not that I think Wayland should be immune from criticism. It's missing features and there are probably things that are broken. But the tone of the discussion (and of other comments in this thread) is that Wayland is bad for the community. That its very existence is somehow an affront. That's what I don't really get.
You can't really raise the nvidia flag in an argumentative in a linux desktop discussion unless you want everybody to know you don't really want things to work well.
2. Screen sharing just works
2. Na, it doesn't just work. If you use firefox, Google Meet cannot detect the screen. If you use chrome but have multiple monitors it only detects the primary monitor. It's such a pain when Xorg just works.
Do yourself a favor
# ~/.bashrc
function py {
python3 -c "from math import *; print($*)"
}
$ py 3 + 3
6
$ py "sqrt(7)"
2.6457513110645907
$ py pi / 5
0.6283185307179586https://www.assertnotmagic.com/2018/06/30/python-startup-fil...
Disables globs for that particular command in Zsh.
Mostly because I am familiar with Python and I don't want to learn the syntax for the advanced expressions I will seldom use. c() s() etc instead of cos() sin() is not too bad, but if I have to do a specific rounding/truncation/modulo, I probably know how to do it in Python and I definitely don't know how to do it in bc syntax.
Of course a similar shortcut can be defined for your language of choice, if that's JavaScript/Ruby/R/... then you probably want to use that.
m () {
node -p "$*"
}
Not as elegant because it doesn't import all the Math functions but serves me for small calculations!The "innovations" toolmakers try to push on you will almost never be worth the cost of losing all your knowledge, customization to your uses, and muscle memory.
> Pick good, powerful, customizable tools.
In other words: know ahead of time what you need and how to achieve it efficiently. Discoverability on the command line is atrocious, which might be the reason it feels like such an achievement to finally learn that "tr" stands for "translate or delete characters" or how obscure command line options of grep or cut work to massage text files.
> The "innovations" toolmakers try to push on you will almost never be worth the cost of losing all your knowledge, customization to your uses, and muscle memory.
One could just as well argue that the mental resources and time needed to acquire these specialised skills are better spent to solve actual problems as opposed to do the same thing over and over again manually (otherwise they won't become "muscle memory") using archaic tools designed for completely different systems.
There's another side to the story and I remember vividly that programmers in the late 1980s and early 1990s argued the exact same way when defending their continued use of assembly language versus high level languages.
OTOH, ed is 3 years older (Wow! 3 years between ed and Emacs!), and I'm very happy I don't use it today.
In the Vi user's mind, there is no Emacs.
There are plenty of old tools in consistent/present use that are cumbersome wrecks, too. Curating good things and calling them some buzzword is silly.
The Lindy effect doesn't say that the things that have been around a long time have to be good. It just says that their expected lifespan is longer.
> There are plenty of old tools in consistent/present use
...that are examples of the Lindy effect even though they are cumbersome wrecks. The point is that they are still in consistent/present use.
... the search engine complaint strikes me as odd. For me, Google doesn't break my flow at all. I find myself searching the web all day long, as part of my job (and basically everything else, as well). My flow is searching the web a lot, typing some code, googling, typing some more, etc. So it's a completely natural extension of my flow to have Google do my calculations and unit conversion for me.
When people talk of futuristic scifi interfaces, they think some disembodied human voice (frequently female) complying with voice commands. But the reality is that Google is already here and I can have it convert between units, do calculations for me, even roll some dice! And I accomplish this just by typing natural language sentences!
That said, I really doubt that a comparable tool to Google’s calculator couldn’t be made, so I hope someone tries to do it. Not because I mind using Google for that (I don’t; I use it at least half of the time) but because a purpose built, configurable, extensible tool could probably go quite a bit further.
Say I want to do ZAR (South African Rand) to USD, Google is quick to provide an answer, But somehow I always managed to mess up the order.
I say ZAR To USD in the search box, But I really want (and should have learn by now) is USD to ZAR.
For one thing, switching GUI tools has almost no cost, if that tool doesn't have a significant amount of non-ephemeral user content.
It may be different for people with a strong muscle memory, but I can switch calculators or dictionary apps at any time. Basic GUI apps aren't skills you learn, they're things you get vaguely familiar with, the discoverable UIs guide you even if you don't know what you're doing. The learning time is minutes to days at most.
If I have to learn a new app in 3 years, that's fine. It won't take me much more effort than it probably would to maintain the config for enough Vim plugins to get it to act somewhat like I want it to.
I could probably even switch away from something as big as LibreOffice without trouble, if they used the same file formats and actually gave a reason I might want to switch.
Plus, Android itself is still new, and for most things, Mobile is what really matters to me. Note taking is worthless if I can't access or write down the notes when I think of them or want to check them.
Perhaps if I was doing more advanced programming, more of my notes would be taken at a keyboard?
These simple old tools seem really use case specific. Like, speed of text editing is less critical if most of what you do is interact with modern frameworks, where things might change too fast and the projects might be too big to memorize, and you're relying much more on IDE features to help you, and spending 2x as much time researching as actually coding.
Diagrams, photos, images, equations.
How do you vim your way out of that?
If they are going to use Lindy arguments on note taking, then it should be pen and paper.
If you still want to se technology, then use pen and paper to take notes then take a photo of the page afterwards.
"I’ve combined XMonad and Chrome to get little floating web apps all over my desktop"
WTF, that is the last thing I'd want. The world (even the Mac world) has finally moved away from the asinine floating-window fad.
> The problem with most notetaking apps is editing text outside Vim breaks my brain.
I see this as an unwillingness to learn. I felt like the tone of the article was of the sort where I was just there to be told that I'm inferior for using a mouse.
Microsoft Word is actually an older program than vim (not older than vi), so obviously the author should switch to Word to take notes instead of vim.
Having grown up with a mouse playing fps/rts games, I don't really get the hate. A mouse is an excellent tool.
- Repositioning the cursor by incrementally searching for the word you want to move to is more accurate, quite fast (3-4 letters is virtually always sufficient to find the word in question), keeps you in the text / document "head", and leaves your hands on the keyboard.
- Yank (y) + movement (w for word, ) for sentence, } for paragraph, 'yi<modifier>' for copy within marks (quotes, braces, angle-brackets, parenthesis, etc.) is also amazingly fast.
- Visual mode can be used to select specific blocks of text where necessary.
- If I want to select specific fields from a file, I'll usually either use tools for that purpose (cut, sed, awk), or read in the entire file and edit it down from within vim. The tools-based approach means I can reproduce the task readily if I need to do it repeatedly.
And finally, where I'm dumping text from some GUI app to vim ... it's still usually easier, faster, less error-prone, and more reproducible to grab the entire screenful of text without specifically selecting what I want (e.g., C-A or Cmd-A (Mac)), and then trim to size within vim. Again, vim's tools permit working with text as text rather than with text as a GUI presentation.
I'm not saying I never use the mouse for text selection, but it is far less common than you might think, and much more cumbersome.
In which case I'd agree, if you've internalised that mechanism.
You might struggle to use a mouse (lots of folks do) but for those of us that grew up using it as a much more accurate pointing tool... I'd wager none of the things you've listed present much of a challenge or thought.
Like this:
>it's still usually easier, faster, less error-prone, and more reproducible to grab the entire screenful of text without specifically selecting what I want (e.g., C-A or Cmd-A (Mac)), and then trim to size within vim.
That's funny - I found it incredibly quick and easy to simply select that portion of your comment with my mouse. I didn't have to trim, or take extra, or think about it. I just selected the content I wanted with the mouse in about a quarter of a second.
2. Text-based selection and interaction work at the context of text. It's really hard to express how powerful this is if you've not internalised it.
3. On many GUI-based devices, the mouse is no longer the mouse, but the finger. This raises a whole host of additional issues:
- You're now covering up what it is you want to select.
- Your selection is no longer based on a single pixel (the apex of the pointer itself) but a region.
- There's the inherent ambiguity between selection and movement. That is, when, where I'm touching the screen, do I intend to scroll the display and when do I intend to select or interact with elements on it? In over a decade's use of touch devices I've yet to see either hardware or software which isn't subject to this failure, constantly.
- Hardware keyboards are highly effective for text input. (I'm writing this on an Android device with an external keyboard. Touch keyboards ... suck and blow, as the saying goes.)
You might struggle to use vim (lots of folks do), but for those of us that grew up using it as a much more accurate text-manipulation tool ... I'd wager none of the things you've listed present much of a challenge or thought.
The point of vim (or Emacs) is that those keystrokes simply become internalised. I don't think through actions, they simply happen.
In a GUI, I'm constantly fighting the interface.
________________________________
Notes:
1. Along with a whole host of other editors, virtually none of which are currently extant or readily available: Wordstar, Mac Edit, MacWrite, DOS Edit, WordPerfect, AmiPro, the TSO/ISPF editor, VAX EDT and EVE, emacs, multiple generations of MS Word, Notepad, MS Write, the whole StarOffice / OpenOffice / NeoOffice line, etc. Vi/vim's pretty much always present, always works, and has evolved incrementally over the 30+ years I've used it such that I'm never faced with the prospect of discarding accumulated technical-knowledge capital.
Yes, the first few weeks were ugly. Steep learning curve. High payoff function.
I'm not sure, emacs by default runs in a graphical terminal and has features that are often easier to use with a mouse, like tab bars or mode line buttons. It feels more at home to me there than in a text terminal, even if the mouse can work with either.
I hear bicycles sometimes come with training wheels.
How would you distinguish an awareness of tool strengths, and a recognition that for the specific use in question, keyboard is generally faster / easier / more reproducible?
Because really, that doesn't sound like hate to me. It sounds like proficiency.
Or is there perhaps a hatered toward proficiency?
You think you're proficient - and hell, for your workflows you probably are.
I'm telling you - I spent two years in Vim (it's a phase) I know how to use it just fine, it just didn't end up mattering that much to my day to day life (It turns out I rarely just slam something out on the keyboard non-stop).
To the point where it was basically a wash on performance: small bump in editing speed, HUGE loss in hardware compatibility and flexibility. To the point I eventually stopped because it made pair programming a complete pain. Hell, I probably still have the old copy of my config & vundle setup somewhere in github - but it just DOESNT matter.
You've locked yourself into a world where you seem to think text manipulation is a big part of the day (and who knows, maybe you write novels or do spreadsheet manipulation all day, and it is!). But for me... I spend the vast majority of my time thinking/planning/debugging/discussing/researching/etc... Typing was less than 1% of all the time I spent at a computer. If it turns out I'm actually spending 1% instead of the 0.99999% I would using just vim.... who cares? Just seems to be you.
When I need to do heavy-duty text editing, especially of any kind of a repetitive nature, I transfer contents to a vim session and do the work there. Even on Android. (Thank you Termux, the One App on Android That Does Not Precisely Suck.)
You seem to think I'm making any number of statements I'm not. Specifically, I'm not stating that:
- Mice are useless. They're helpful for focusing the terminal window into which I'm typing. Or playing games. Or using graphics and audio software, often. Or within a web browser (though I also use text-based terminal-mode browsers extensively).
- That everyone should use vim. Emacs users are also permitted to live. And yes, both tools have, as I've noted, steep learning curves, but that comes with a high payoff function. There are a tremendous number of people who simply don't have high technical literacy, or even functional literacy. See my "Tyranny of the Minimum Viable User" (https://old.reddit.com/r/dredmorbius/comments/69wk8y/the_tyr...), and studies of US adult literacy rates (https://nces.ed.gov/pubs2019/2019179/index.asp). Neither of those are elitism, they are an acknowledgement of the cognitive landscape and a realisation that the overwhelming majority of people will not and/or cannot use advanced tools.
- That I don't use other editors / word-processing tools / development tools. I have, and some are listed here: https://news.ycombinator.com/item?id=31771672 But having learned vi / vim, and having had it available on the majority of computing environments I've used over the ensuing 35 years, it is the tool that I, personally, find most useful and efficient. I also* don't spend the bulk of my time actually typing text, but when I am, vim most gets out of the way of my actually doing so. Vim's design philosophy is that even when you're in the editor, most of your time is not typing, but editing (command mode), and that is in fact the default mode of vim. You leave command mode to insert or otherwise add or modify text, then return to where you can read, search, or make other adjustments.
Finally, there's that efficient use of time thing. It turns out that over a 30+ year career the hardest parts aren't learning new tools, and as noted, many people seem to have a strong resistance to actually learning vim, but forgetting the old ones. As I've gone through multiple generations of computing platforms (Commodore PET, CPM, DOS, Windows 3/95/NT/etc., VMS, MVS, Apple II, Mac Classic, OSX, PalmOS, iOS, Android, ...), what's struck me is how non-durable much of that knowledge has been. Ironically, one of the first computing platforms I'd been exposed to was Unix (on teletypes no less), though it was another decade or so before I was truly using it. And again, that knowlege has built incrementally over decades with very minimal resets.
Vi/vim being amongst those jewels. Your "phase" lasted two years. Mine's lasted 32. Vive la différence.
And, moreover, why does what works for me bother you so much?
The two or three weeks I struggled as a first-year uni student have payed off more than virtually anything else I'd learned in my years at school. Seriously.
I'm trying to slowly move towards using software. I'm still relatively young, but I don't want to spend my whole life adjusting my habits to new random changes.
Counterexamples - technologies that lasted a long time, then hit a hard dead end.
- NTSC / PAL video.
- Audio on magnetic tape
- Video on magnetic tape
- Manual transmissions in cars
- Daily newspapers
- Mimeograph machines
- Asbestos
Only in US, in EU about 80% of new cars have manual transmission.
Not aware of any eu stats
https://www.autocar.co.uk/car-news/new-cars/analysis-are-man...
An automatic transmission is a non-trivial amount of weight--especially on the small cars present in the EU--and affects gas mileage tremendously.
Driving a manual in heavy stop and go traffic, however, sucks rocks whether you are in LA or Palermo. You are continuously playing the "rolling game" in order to minimize stress on your clutch to avoid burning it up.
I presume these same forces will be the ones that cause the EU to switch to electric cars first.
This is a case of 'citation needed'. It's not like manual gearboxes are weightless. Then there the likes of CVT.
What do they add is to manufacturing costs. A simple manual transmission is, well, simple, and has looser tolerances (the driver compensates). Automatic transmissions require more exotic materials - in the past we had to use whale oil, which drove their costs to unsustainable prices in non-US markets.
> Surprisingly, the fuel prices in Europe are quite exorbitant. The automatic cars tend to be heavier and can even lead to a loss in the drivetrain, thus more of fuel consumption. On the other hand, the manual is much more economical and affordable to drive. The technological advancements are making the automatic more fuel efficient though.
modern automatic, the 7-10 gear kind with a high end smart enough controller, and even that is not a given. It's basically an epicyclic gear train + a torque converter sloshing in oil (basically using fluid as a clutch that never wears out), which has big loss overall (because fluid dynamics), and the added gears+smarts in control offsets that, but they're generally less efficient mechanically than a simple manual gear train.
That said, the "automatic" moniker these days covers a whole lot of varying technologies, including CVT, and automatic (single or dual, wet or dry) clutch+gear change, which are basically manual gearboxes except stick and clutch are not mechanically user operable but driven by servos. And there you get the benefit of the more efficient gearbox and the smart control (a.k.a shift to the higher gear possible ASAP when little torque is needed instead of having the engine stay at a higher RPM, which means more travel, which means more friction)
All things being equal, MPG ratings are usually (there are exceptions) a dead giveaway of the kind of gearbox.
(Oh, and I wouldn't be surprised the least if tomorrow I learned that gearbox control programs would be "tuned" to get good MPG tests with flying colours, the VW way.)
But all of this doesn't really matter, parallel hybrid (e.g Prius&al) basically requires a more complex drivetrain involving an epicyclic gearbox+torque converter (thus auto) (+ IIRC some kind of differential gear train) to mix the two mechanical power sources that can rotate at different speeds (including not rotating at all), and serial hybrid is basically an EV, except with a power generator on board, and EV means either no gearbox or low-count gear one that is entirely driven automatically.
So, manual is going to die anyway as we're being pushed towards low emission vehicles.
Also, a factor of stick being popular in EU is also that in most countries its product bracket and image used to be placed as luxury/high end, and thus used to be subject to higher taxes/insurance premiums for some reason, which pushed the market towards the cheaper option.
Of the set the two that come closest to being interfaces are 4 & 5, the daily newspaper and manual gearbox with its shift lever. In both cases, the actual interface component --- articles written by reporters and published by a specific organisation, and a rod through which a vehicle's drive mode is selected, are the parts least changed.
Even the mimeograph's function still remains, though in most cases it's either through a smartphone or tablet (which reproduces text ina mobile manner which can be shared with others) or a printer-copier of some sort, usually functioning on either a xerographic or wet-ink jet process. In the latter case, the output (print on paper) remains.
In the cases of video formats, audio and video storage media, and structural materials, the components of the end result (video streaming, on-demand audio and video playback, and various structural members and fabrics with specific properties) have changed, but their fundamental functions and perceived endpoints are ... largely ... what they were previously. Enough so that someone from an age in which the technologies you mention were in widespread use would recognise the current replacements.
Interfaces do tend to be exceedingly durable. In large part because they address not just mechanism, but human interactions. The former may change rapidly, the latter not so much.
* NTSC / PAL video, and audio / video tapes
Better isn't always better. This is a philosophical point, so I'll just give the gist: I believe that advancing something, doesn't necessarily make things for the user better. For example, Netflix is by technical measure "better" than going all the way to a video shop with your friend, finding out they don't have what you really wanted, spending ages deciding on what to watch, going all the way back home, and sitting through the film in one sitting. Which experience did you prefer though, and more importantly, which one was better for you as a person?
* Manual transmissions in cars
What? I know in the U.S.A. most people drive automatic cars, but at least in Europe this isn't so. It's not because they're not available, it's just that nobody wants to drive them. Personally I find them boring and toyish, but I can't speak for the reasoning of others.
* Daily newspapers
There was _a lot_ wrong with newspapers back in the day. One huge thing they had going for them though (which nobody realised was even in question at the time) was that they were written by professional journalists, and they had standards. Now my "news" is given to me by half literate emotional reactionists.
I live in Europe and still get most of my daily news from the morning paper - a paper with professional journalists and correspondents with standards. The articles are also available on their (paywalled) web site, but I prefer traditional paper.
As european I dissent.
I've yet to see a GUI (FVWM, KDE, Gnome) that offers something X/Athena/Motif didn't nail 30+ years ago.
Instead of virtual desktops, I just start another VNC session because I don't like losing everything if one session goes down. macOS already has virtual desktops, so no need to reduplicate the effort.
Look, in the case of all other software, I believe strongly in "release early, release often". Hell, I damned near invented it. But I think history has proven that UI is different than software. The Firefox crew believe otherwise. Good for them, and we'll see.
HN-safe archive link: https://web.archive.org/web/20120511115213/https://www.jwz.o...
Software performance improvements tend to come from hardware (Moore's Law, still-ish), and software algorithm (in the old-school sense of how information is actually processed) improvements. Leaning on the UI for massive performance enhancement is a bit like expecting order-of-magnitude income improvements by increasing your working hours. There's only so much time in a day, and there is only a limited rate at which humans can interact with digitised information --- generally text, images, video, audio, and data.
The Mother of All Demos was fifty years ago ... four years ago:
https://news.ycombinator.com/item?id=31676445
And yet, it incorporated very nearly all the basic human-computer interface principles still used today.
Apple's Macintosh has seen two principle variants of its desktop UI in the 38 years of its existence. And the second, OSX / Aqua, is now older than Mac Classic was when OSX was introduced by eight years. Apple are highly conservative in UI changes.
I'm not principally an Apple user, or fan. But for my desktop, I use an environment inspired by the Mac's predecessor, NeXT, namely Windowmaker. There's been very little development in years, but the product is stable, and still works even on retina-class displays. The fact that I don't have to go hunting down new interactions every few months or years is a tremendous advantage. And if you want, twm is still a serviceable window manager.
My own tools collection strongly resembles Cipriani's. Applications and tools learned decades ago still provide me regular use. I can do what I intended when I want without being buffetted by constant winds of change and shifting fashions. And quite frankly, it's awesome and a bit of a superpower.
Anyway I actually found myself looking around at Enlightenment as a desktop environment just to see if I could get that old HR Giger theme going again. My .fvwmrc from those days has to be around somewhere as well. Some of these tools don't so much become obsolete as converge on an essential form. Not old, perfect.
I too enjoy Linux Desktops and MDMA :D (/s /s /s)
So not sure if 3 different tiling WMs in 12 years is now good or bad, but apparently I'm open to some change after all, but usually only if pushed.
This talk is from 2011 so that should hopefully make it pass the Lindy threshold ;)
https://www.youtube.com/watch?v=r_8om4dsEmw
EDIT: Wayland support seems to be on the way but there are some outstandings: https://github.com/qtile/qtile/discussions/2409
Having said that, I do think that there's mostly improvement in our GUIs as well, bad ideas that crop up now and then usually disappear quickly.
Yes org-mode, but I've tried multiple times to pick up org-mode but all the concepts and keyboard shortcuts that need to live in my brain just get wearying, maybe I take on too much too soon, but onboarding say Obsidian or Logseq just isn't such a cognitive drain.
People use Google/ddg for calculators/weather/etc because the search engine can work out what their intent is. Remembering a bunch of cli app names and how args are parsed etc, is again more cognitive load. There's no discoverability other than reverse searching your shell history and trying to remember the thing.
I used to envy people like the author who have this workflow that totally works for them, it's lots of Linuxes, lots of CLI, some tiling window manager, cool stuff. I'd love to be like this. However, it all involved cognitive load that GUIs, Search Engines and human focused design abstract away to reduce that load. So use whatever works for you and ignore what's cool.
I have a Thinkpad X230, the model up from the author, running Silverblue and Gnome. Works great. Things will probably change along the way, that's fine, the cost of managing those changes is still lower than learning to live in a CLI.
Doom emacs has extremely easy ways of installing both of these packages in the setup.
I didn't even notice, happily using my markdown notes.
A quick tip, imitate this however you see fit -- setting `XDG_CURRENT_DESKTOP`:
$ cat ~/.config/environment.d/envvars.conf
XDG_CURRENT_DESKTOP="${XDG_CURRENT_DESKTOP:-sway}"
... so that `xdg-desktop-portal-wlr` can share your screen by knowing the environment you're inFor whatever reason this isn't set by Sway. This will only set it if another DE hasn't already
Set it by exec'ing from your sway config instead. Otherwise every session under your user will think it's running in sway, even if it isn't.
How to do that is explained in the xdpw wiki.
>For whatever reason this isn't set by Sway.
It's because sway generally doesn't do any kind of integration with anything not related to Wayland, which in this case is systemd and dbus. It gives you the tools to do it yourself.
Distros that provide pre-configured packages of sway should ship such a config by default. Eg OpenSUSE has https://github.com/openSUSE/openSUSEway/blob/ee8fe750a843165... + https://github.com/openSUSE/openSUSEway/blob/ee8fe750a843165...
It looks like this (on Fedora) is generally dealt with by the 'sway-systemd' package.
That provides a drop-in config (/etc/sway/config.d/10-systemd-session.conf) that runs a script and prepares the environment for you (including this variable)
$ dnf whatprovides /etc/sway/config.d/10-systemd-session.conf
[...]
sway-systemd-0.2.2-1.fc36.noarch : Systemd integration for Sway session
Repo : @System
Matched from:
Filename : /etc/sway/config.d/10-systemd-session.conf
It's rather similar to the openSUSE approach you shared, but seemingly a little more robust:
https://github.com/alebastr/sway-systemd/blob/main/src/sessi...As long as you do this in your Sway config, it should be fine:
include /etc/sway/config.d/*
I forgot about that adventure until now -- with something like this, you don't need either 'manual declaration' approach reallyI initially missed it moving to Sway because I literally copied my i3 config and only changed it slightly
Lol we up to 330+ comments and we talking mostly the correct way to edit text files and where/how those windows should live and behave etc.
Of course i3 + 'doom emacs' is the correct answer but happy to continue to hear all the other options, even if they are all wrong /s :P
https://en.wikipedia.org/wiki/Bc_(programming_language)
I use it also for the most trivial stuff and is way more immediate than firing up any X based graphical calculator.
The problem is that github encourages the exact opposite. Constant code churn, because if people see a project with last commit "2 years ago", they assume it's dead instead of just complete. Why do I know that? Because I have also caught myself doing that.
It's why I left first Windows and then Mac.
My computer is my workstation, and I don't want anything changed without me asking.
With FOSS, that's what I get. With Win/Mac, I was at the mercy of the landlords.
Still miss how keyboard-accessible early Windows was out of the box, however.
And even they had a ~4 year period (2016-2019) of putting out sub-par, handicapped laptops.
Nowadays, framework's making some pretty great laptops. Repairable, linux-friendly, and nicely proportioned. Don't like them sticking a giant logo in the middle of the lid though, ruins the look a little.
Python is a lousy calculator, unless you want to program it.
0
$ python
Python 3.10.5 (main, Jun 6 2022, 18:49:26) [GCC 12.1.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 1/3
0.3333333333333333
If you're going to keep using EOL versions, that's on you.>>> 1/3 0.3333333333333333
What version?
$ python3 --version
Python 3.9.9
I'd expect your result with `1//3`.Hell - just the KEXT changes break about 20 different things in my workflow.
honestly, as someone who uses a mix of all three major OSes (Windows/Linux/Mac), Mac has been the least pleasant dealing with upgrades - they make as many breaking changes as linux, and they have dogshite docs.
(But "pluma"? "Caja"? Wtf names?)
And none of this "eternal improvements" bs. At least nothing visible in the ui or anything. For all intents and purposes it is evolutionarily flat. Which is exactly the way I like it.
(Except, maybe there is something cleverer than just slapping windows on top of each other willy nilly. I know there are alternatives. I have not been driven to explore there much.)
(Also, the Windows OS is flaming garbage. Possibly literally malicious. I don't know how they stay in business.)
You don't have to be best, just better than the alternative.
MacOS comes with specialized set of hardware. So good luck tailoring Mac, without it costing like an average Ferrari.
Linux is just worse for average user. Not average HN user, mind you. But people who struggle to figure out print screen.
I fought with Linux in the past. It's death by thousand gremlin bites.
Big part of that is lack of drivers, but there are also major fractures in the space: Gnome vs KDE, X.org vs Wayland, etc.
My experience as well. I wanted to set up a small pi box that i could just keep with me and code on in my downtime. I of course could just use a laptop but this whole setup fit in a small stethoscope case and would get me more used to linux.
There's just SO many small things that don't quite work right, and the attitude of the userbase unfortunately tilts towards elitist if not downright hostile.
I still want to learn more and get better with it, but I spend enough of my time at work reading doc's and trying to debug, I don't love when my freetime feels almost the same.
Pluma -> Stylo pen. It literally means feather, but you'd obviously guess why it persisted on that name.
It may not last forever, as kids, or new jobs or new hobbies come to disrupt the harmony, so enjoy your sweet time.
The only reason I can see is if they outlaw general computing (including linux) and we're all stuck running Patriot Windows 3000.
And even then it's gonna be underground.
What is the deal with all of that think junk? ... I mean, ok, ok, I know many people like thin laptops. What about all the rest of us? I need to type, damn it!
$ units 100EUR USD
* 105.88302
/ 0.0094443845
In which case it is useful to enable the service to update the exchange rates: sudo systemctl enable units-currency-update.timer
(or something like that...)Anyone recognize this? I can't remember the name of this product.
bc -l
is missing?
It is a funny omission in an article about using old programs -- it is arguably older than vi (not vim).
If, on the other hand, a given desktop depends on some bizarro set of 20 different services, interfaces, libraries and apps which can only work in one way on one platform, and it's near-impossible to move the settings somewhere else, and most apps can't even use it, that desktop sucks.
I don't want a cool desktop, I want a desktop that doesn't suck.
Edit: Never mind, I see that’s not the case here after looking at their submission history!