
You're probably reading this page because you've attempted to access some part of my blog (Wandering Thoughts) or CSpace, the wiki thing it's part of. Unfortunately you're using a browser version that…
You're probably reading this page because you've attempted to access some part of my blog (Wandering Thoughts) or CSpace, the wiki thing it's part of. Unfortunately you're using a browser version that my anti-crawler precautions consider suspicious, most often because it's too old (most often this applies to versions of Chrome). Unfortunately, as of early 2025 there's a plague of high volume crawlers (apparently in part to gather data for LLM training) that use a variety of old browser user agents, especially Chrome user agents. To reduce the load on Wandering Thoughts I'm experimenting with (attempting to) block all of them, and you've run into this.
If this is in error and you're using a current version of your browser of choice, you can contact me at my current place at the university (you should be able to work out the email address from that). If possible, please let me know what browser you're using and so on, ideally with its exact User-Agent string.
Due to an ongoing attack, you may need to change the "User Agent Brand Masking" setting so that your Vivaldi identifies itself as Vivaldi, instead of Google Chrome. This applies to even the current version of Vivaldi.
You may be seeing this through archive.today, archive.ph, archive.is, and so on. Unfortunately, archive.* crawls pages to archive in a way that is impossible to distinguish from malicious actors. They use old Chrome User-Agent values, crawl from IP address blocks that are widely distributed and not clearly identified as theirs, and some of their IP addresses have falsified reverse DNS entries that claim they are googlebot IP addresses (which is something that is normally done only by quite bad actors). I suggest that you use archive.org, which is a better behaved archival crawler and can crawl my blog (Wandering Thoughts).
Chris Siebenmann, 2025-02-17I'm a lot faster on it than anything else... I especially dislike those editors that show all of the commands on the screen. I'm not using it as an ide (although I worked with someone that did and his code sucked). I'm just logging in by ssh, editing a configuration file, and logging out.
I've used vim instead of vi for decades and haven't seen an issue with speed.
I went into the article expecting some nonsense about how I should be using vscode or whatever, but this was just about how having vim as the default editor is far better than having vi.
As my beard greys, I find that a reasonable take.
have you tried vim or neovim?
What's the link between your ex-coworkers bad code and VI again?
Thanks for the advice, but I predominantly use vi on remote systems for rudimentary config editing. It is perfect for this, as is tiny, present out of the box on many distros, and I do not need to switch my brain between nano and vim navigation.
Vi is primitive and clunky not because it's a bad design, but because it's from 1976 and computers have changed a lot since then. It dates from a pivotal point: when glass terminals had replaced teletypes.
Glass terminal means with a screen, so any point on the screen could be changed at any time. Screen means a CRT, and that means specifically text-only and single-colour.
But before microcomputers, before a mass market in software that individual people could get and use on their own computers. Vi was from the end of the era of computers that cost as much as a house and so which you had to share.
So, terminals with screens were becoming common enough that an editor designed for them caught on.
But it was before microcomputers, where the computer was so closely coupled with the screen and keyboard that soon they were built into the same casing.
Screen + keyboard + computer in one unit == Commodore PET.
Keyboard + computer in 1 = Apple II
Keyboard, screen, and computer all sold together: TSR-80
All 1977, the year after vi appeared.
Computers with their own keyboards, or in their own keyboards, led to keyboards designed alongside the computer's OS.
Before then terminals were printers with typewriters: instead of just printing, the keyboard sent codes to the computer, and the computer sent them to the printer. Replace printer with screen, this still happened.
A mass market in software for individuals led to UI conventions and keyboard improvements.
Typewriters only have Shift and Tab. But as glass terminals went mainstream, then microcomputers which came with their own dedicated keyboards, they sprouted lots more keys.
Vi is from the early stage: it expects "Esc" and there's a combo for that.
What came right after it was Ctrl and Alt... and at first they went a bit crazy and there was Meta and Hyper and so on too.
To this day, the meaning of "meta" has not been agreed. Emacs and relatives mean one thing, KDE and relatives mean a different key.
Along with these keys, and a way to represent them as bits in a byte, nicknamed after a very young Niklaus Wirth -- "Bucky bits".
(I am guessing this is from him having European teeth not as even and straight as American kids who if they were from families rich enough to send them to university, all had braces.)
Along with all those keys came arrow keys and forwards and backwards delete keys, and rows of F-keys.
And it shows because vi doesn't use all this. It uses letters and Ctrl and nothing much else.
Once all the keys were they, software started to use them. Result, a Cambrian explosion in UI diversity. That's the era Emacs is from.
Then, next, came a great extinction event, as most of the dozens of weird 1980s computer makers went broke, and the industry standardised on CP/M replaced by MS-DOS, and PC clones, plus off to one side a few makers of GUI computers: Apple, Atari with the ST, Commodore with the Amiga, Acorn with the Archimedes.
And a matching great extinction event in UI design, as IBM-lauout keyboard became the standard and GUIs standardised software UI. DOS standardised UIs on CUA as it fought to stop Windows taking over.
It failed. Windows uses CUA. GUIs and CUA killed modal editors and weird UIs.
The Unix world stayed on minicomputers and their single-user descendants, workstations. It avoided all this standardisation. Keyboards stayed weird, UIs remained chaotic.
That's why vi is still weird, and so is Emacs in totally different ways.
The sad thing is this:
Those standardised UI are good ones backed by millions in R&D spend. They are better UIs than vi -- any vi.
Vi users like the rich keyboard controls, and won't move. But CUA editors have equally rich keyboard UI and if you know it you can drive all GUI apps with the same UI. This is massively useful. You can drive the whole OS and all its apps at the speed and control and power of a Vim user who's been practising for a decade.
And it hasn't gone away because this is also the UI that all blind and visually-impaired users use, and those with serious motor coordination problems.
But the Linux shell came straight out of minicomputers and workstations and never got standardised like this.