Xah Lee
xahlee.info · Personal blog · on HN since 2007
Xah Lee writes tutorials and essays on Emacs, keyboard layouts, ergonomics, Lisp, and programming languages.
What HN saysHN links it for keyboard ergonomics and Emacs key advice, including how to press Control. It also comes up in nostalgic keyboard history threads.
264HN people shared it
198linked it in comments
91stories submitted
1.4Kstory points
5 months agolast shared
2007people per year2026
Most-shared posts
- 1History of Emacs and vi Keys (2010)6 people · 179 points · first shared 2013 · 85 comments on HN
- 2∑ Xah Code5 people · 166 points · first shared 2014 · 63 comments on HN
- 3Ergonomic emacs keybinding5 people · first shared 2010
- 4Algorithmic Mathematical Art (2004)4 people · 168 points · first shared 2017 · 22 comments on HN
- 5Dvorak vs Colemak (2010-2020)4 people · 84 points · first shared 2020 · 159 comments on HN
- 6The TeX Pestilence (Why TeX/LaTeX Sucks)4 people · 16 points · first shared 2017 · 14 comments on HN
- 7Lisp Machine Keyboards4 people · 6 points · first shared 2019 · discussion on HN
- 8Xah Keyboard Guide4 people · 3 points · first shared 2013 · discussion on HN
- 9Famous Programers with Repetitive Strain Injury (2022)4 people · 1 points · first shared 2022 · discussion on HN
- 10Osx keybinding4 people · first shared 2016
- 11Homepage4 people · first shared 2017
- 12Space cadet keyboard4 people · first shared 2018
- 13TRON keyboard4 people · first shared 2019
- 14Emacs macos emoji4 people · first shared 2022
- 15Alexander Grothendieck cartier.pdf4 people · first shared 2014
What HN people wrote when they linked it
brudgers · 2023-11-07
For emacs ergonomics, use a keyboard with Ctrl and Alt on both sides of the spacebar.
Xah Lee is right about that. http://xahlee.info/
The odds that you can create a custom layout more ergonomic than using an appropriate keyboard are not great.
The odds that you can do so more quickly than Amazon can deliver you an appropriate keyboard are vanishingly small...
As Larry Ellison said, "You are holding it wrong."
Good luck.
0db532a0 · 2019-11-30
I regret being so cynical about this post and the book I mentioned.
It's a really nice book. Lots of beautiful illustrations and interesting ideas with code snippets for generating those illustrations. I found it fascinating as a kid. The message wasn't too important for me, and I didn't really have the background to draw my own conclusions from it anyway.
Someone on IRC, who was a big fan, introduced it to me.
I actually started programming with this very book, copying the examples from it into Python and then Scheme (introduced to me by that same guy) and Common Lisp. I respect Wolfram's dedication. It's the type of dedication that brings us things like Mathematica and TempleOS.
The guy who introduced me to this book and then Scheme had contacts at Wolfram Research and later sorted me out with a free copy of Mathematica. I could never have afforded that with my pocket money, and I wasn't at university yet. He was a big underdog in the community and had his own problems too. What a great guy.
He's still going strong today: http://xahlee.org/
There's something to be taken even from book like this. It would be good to revisit and re-evaluate the book as someone who now has a semblance of an education in the area. I wish I didn't sell it.
tom_ · 2024-10-12
I just leave Ctrl where it is and press it with the knuckle of my little finger. I do it just like the guy in the pic on this page, pressing the control key with his little finger: http://xahlee.info/kbd/how_to_press_control_key.html - because that pic is of my hand. (Xah might not recommend doing this all the time, but I've been doing this for nearly 20 years now and I've had no problems.)
ChainOfFools · 2024-09-05
I would add one of my guilty pleasures, Xah Lee, who still updates his unironically retro blog quite regularly, although a lot of his content is in vlog format as well.
Sadly he may not actually be as earnestly nutty in person as his online persona would suggest.
https://xahlee.org
Findecanor · 2024-07-04
Interesting. Back in the '80s, the ergonomic keyboard [0] designed as part of the Japanese TRON project was originally supposed to be produced in three different key pitches for differently sized hands, based on measurements of Japanese people [1].
Another aspect was that some key columns were splayed, being more apart further away. It has inspired many follow-ups in the DIY ergo-mech scene in more recent years.
[0] http://xahlee.info/kbd/TRON_keyboard.html
[1] https://www.semanticscholar.org/paper/An-Implementation-of-the-TRON-Ke…
starik36 · 2024-07-02
Brings back great memories of laying out WordPerfect keyboard overlays at my University Computer Lab job back in the day. And helping students to Bold (F6) and Underline (F8) their documents.
Good times. http://xahlee.info/kbd/wordperfect_shortcuts_strip.html
oblio · 2023-07-17
Frankly, this is sidetracking the topic a bit, but that's one of the things I hate about Vim.
The freaking movement keys. The amount of rationalizing about them is INSANE. CRAZY. MADNESS. "Touch typing"/"more efficient"/bla bla, with 0 studies backing it.
Why do I say this? They shouldn't be in a line. No mass manufactured device in the last 30+ years has them in a line. They're... you know, up is up, down is down, left is left and right is right. Yet some people will defend the setup to their deaths.
And the reason they're like that is... because a terminal 50 years ago, that probably only sold tens of thousands of units, at best, had the setup like that to make it cheaper to produce:
http://xahlee.info/kbd/history_of_vi_keys.html
It's basically the QWERTY keyboard story all over again.
Backwards compatibility is a major pain in the neck.
e40 · 2023-06-09
There was spam, for sure. There were also "kill files" for readers, which were immensely helpful in removing trolls from your stream. And there were some epic trolls, back in the day. Xah Lee comes to mind. He actually has an interesting website ( http://xahlee.info/ ), which I found recently when searching for a solution to an elisp problem. Yes, he was a troll on comp.lang.lisp.
bloblaw · 2022-12-15
> If you don’t (need to) care about Unicode, maybe
Perl has had strong unicode support since Perl v5.12 (~2010).
references:
1. http://xahlee.info/perl/perl_unicode.html
2. https://stackoverflow.com/a/6163129/12458
> If you think pythons package management is not disastrous enough, maybe.
Huh? I've used PAR::Packer with great success since 2005.
> If you do not (need to) consider Windows, maybe.
Microsoft used to ship Perl scripts to work with COM and WMI with their NT4 and Windows 2000 resource kits. Perl works *extremely* well with Windows.
I mean, there are lots of reasons to choose Python over Perl, but IMHO, these are not those reasons.
I use Perl as a better-bash. If I was writing a modern website, a large application, or any ML related work...I'd choose Python. But for complex system administration, I'm picking Perl. YMMV
wahnfrieden · 2022-10-22
Glove80 is the leading current closest competitor for the 360 imo, main diff being low profile v1 kalis
http://xahlee.info/kbd/glove80_keyboard.html
Izkata · 2022-07-02
> Then they learn about the Scunthorpe problem and beyond.
I comment pretty regularly on youtube to get random thoughts out of my head about the video I'm watching (I'm under no delusion that someone relevant will see my comment), and all the spam replies I get use unicode numbers in the username to share phone/telegram numbers. Circled numbers [0] are a favorite, though not the only ones they use. The Scunthorpe problem doesn't seem very relevant here.
[0] http://xahlee.info/comp/unicode_circled_numbers.html
medstrom · 2022-03-18
Yes! I don't lock my hands on the home keys, so roaming around the keyboard isn't a carpal tunnel nightmare as some make out. I just move my whole arm a bit.
I rest my hands on the laptop's left and right edges, not on the home keys... and no I don't "hunt and peck", I touch-type at 90wpm. But I love function keys, give me more function keys! I dream of the Hyper7 [1]
[1] http://xahlee.info/kbd/hyper_7_keyboard.html
bottlero_cket · 2022-02-07
Xah has written a lot of great informative and opinion content on his blog. There is like a decade of posts covering a large span of topics like math, emacs, web dev, etc.
This is just one post I bookmarked, but you can link dive wikipedia-style.
http://xahlee.info/kbd/keyboard_hardware_and_key_choices.html
gaws · 2022-02-07
> math, emacs, web dev, etc.
And sex: http://xahlee.org/sex/all_things_sex.html
His Emacs-specific content is great, but the last thing I want to read are his creepy, gremlin-like takes on relationships and sex.
astrange · 2021-06-23
Alas it's been a long time and I don't remember enough anymore. I just remember what I used to remember.
There's some here (http://xahlee.info/Netiquette_dir/death_of_a_troll.html) and classic discussion can be found at (https://wiki.c2.com/?SocialProblemsOfLisp). The rest of the odd pattern of every Lisp programmer I've ever met being an asshole is mostly lost to IRC history, but I guess RMS is another example.
tpmx · 2021-05-19
In like '00 I got painful carpal tunnel syndrome symptoms after working intensely as a full-time developer for 3-4 years.
The solution was: Microsoft Natural Keyboard Pro (Photo: http://xahlee.info/kbd/Microsoft_natural_keyboard.html) plus a fantastic heavy-duty "telescopic" keyboard/mouse tray that Ikea designed and sold for a few years.. You screwed it into the bottom of the desktop. The key was allowing the keyboard to be angled slightly away from the body, while also allowing it to be as close to the legs/knees as possible - thereby minimizing the wrist angle.
Is anyone aware of any modern replacements for the above? DIY/mechanical? (Mostly the keyboard itself - would love a mechanical keyboard witht the same 3d layout.)
Qem · 2021-04-20
Related:
http://xahlee.info/python/quality_docs.html |
http://xahlee.info/comp/which_programing_language_has_best_doc.html
It's curious, despite not a example of a great language, PHP has great documentation.
I tried Pharo, and a great functionality there I miss in other languages, is the search by example ability. Saves a lot of visits to stackoverflow. See for example:
https://avdi.codes/in-which-i-make-you-hate-ruby-in-7-minutes/
ilaksh · 2021-01-17
I use vim frequently. But I think that people should realize and be able to admit that vim and emacs are outdated. They can still be useful especially for people like me who have a sunk cost in learning them. But the honest evaluation is outdated. For example, the core modal interface of vim is related to historical limitations at the time it was created.
http://xahlee.info/kbd/keyboard_hardware_and_key_choices.html
Basically historical happenstance has become part of multiple religions defending dated programs.
My current favorites are Jupyter Notebooks and the combination of gedit with fish shell.
VSCode is great but a lot of times feels like overkill and a little bloated.
dexen · 2020-10-13
>futuristic
Presumably through Vortex'[0] similarity to the Symbolics PN 365407[1][2] keyboard, with its very distinctive design that manages to capture at once both futurism and timelessness.
Disregard the 2020's clunky cherry switch keyboards, acquire the OG Best Keyboard.
--
[0] https://mechanicalkeyboards.com/shop/images/products/large_VTG47BEG_5.…
[1] http://xahlee.info/kbd/symbolics_keyboard_pn_365407.html
[2] http://coder.zoomquiet.top/data/20130716102310/index.html
victoriasun · 2020-07-31
Those far keys are usually triggered by your weakest fingers -- return, for example, is triggered via your pinky and can often require you to stretch your pinky (and ulnar nerve) in unergonomic ways, leading to Cubital Tunnel Syndrome.
I find that a good introductory layout to this kind of keyboard is the Kinesis Advantage 2 [1]. As you can see a bunch of common keypresses usually delegated to the pinkies have been set on the thumb clusters. On my Ergodox, I also have symbols layers that allow you to reach common symbols without moving my fingers significantly from the home row. It definitely takes an adjustment period but my RSI definitely thinks its worth it!
[1] http://xahlee.info/kbd/kinesis_keyboard_howto.html
peter_d_sherman · 2020-07-14
Related:
Interesting Hypocycloid image (from xahlee site, which follows):
https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcTXszjXrEnqc9Ha…
Epicycloid and Hypocycloid:
http://xahlee.info/SpecialPlaneCurves_dir/EpiHypocycloid_dir/epiHypocy…
Evolute:
http://xahlee.info/SpecialPlaneCurves_dir/Evolute_dir/evolute.html
(Star Trek IV, Computer administering test, to Mr. Spock:
"Adjust the sine wave of this magnetic envelope so that anti-neutrons can pass through it but anti-gravitons cannot.")
Google Image Search, "Hypocycloid":
https://www.google.com/search?q=hypocycloids&tbm=isch
StavrosK · 2020-05-23
That's a great idea, especially with my programmable keyboard, thank you. I'll have to see if KDE supports this, but I think it's likely.
EDIT: Turns out it's trivial, I love Linux:
http://xahlee.info/linux/linux_add_keyboard_shortcuts_to_switch_to_app…
geowwy · 2019-11-20
I had the opposite experience. My 60% keyboard ruined my hands with RSI.
I strongly recommend Xah Lee's advice to anyone suffering from RSI: http://xahlee.info/kbd/ergonomic_keyboards_index.html
In my opinion the ideal setup for people people with RSI is a 80% keyboard, a seperate number pad, and a programmable keypad for commonly used shortcuts.
Symbiote · 2019-11-20
I cringe slightly when I see people designing mechanical keyboards like this [1]. That's a great "standard" layout! It's split, it still has space around the arrow and navigation keys to aid finding them by touch, and the numpad is on the left.
But there's a 1.5cm (or so) tilt on the thing! Removing that is always the first thing any ergonomics guide instructs, but here it's a fixed part of the case.
Many DIY split ergonomic keyboards either have many tenting/tilting options, or are flat allowing you to make your own [2].
[1] https://geekhack.org/index.php?topic=103144.0
[2] http://xahlee.info/kbd/diy_keyboards_index.html
klez · 2019-11-09
Nice to see someone developed a plug-in[0] for the Michela machine[1] (the one used in the Italian Parliament). The one used in the Parliament is actually just a midi keyboard, which means it can be reproduced with a relatively cheap 2-octaves off-the-shelf midi keyboard.
[0] https://github.com/benoit-pierre/plover_michela
[1] http://xahlee.info/kbd/i/michela_stenotype_system_81845.pdf
melling · 2019-07-14
It’s disappointing that there’s so little innovation. Surely, we must have learned more about ergonomics in the past half century?
The DataHand was a
new interesting “keyboard” design in the 1990’s, about 25 years ago.
https://en.m.wikipedia.org/wiki/DataHand
Btw, Xahlee has a great article on keyboard switches:
http://xahlee.info/kbd/keyboard_switch_mechanisms.html
1kGarand · 2019-07-03
This [0] is an excellent resource for ergonomic keyboards.
The common myth is that programmers type a lot. We do not. We spend a lot of time in front of keyboards, but most of that time is spent thinking.
People who write a lot of emails type way more characters per day than programmers.
Still, ergonomic keyboards are nice. I think Microsoft wireless one is quite good and affordable. I would love me a kinesis, but never managed to pull the trigger.
[0] http://xahlee.info/kbd/ergonomic_keyboards_index.html
emmanueloga_ · 2018-11-07
I'm not suggesting that you support "contempt", but the person behind the writings, and only if you enjoy the writing style.
Also, Xah also has all sorts of other documents were he carefully tries to avoid the mistakes he criticizes in other documents, and were contempt is not the main driver. I'm sure he spent countless hours writing those materials and he's made those documents available for absolutely free! [1]
The best intellectual and artistic endeavors are deeply flavored by the emotions of their authors, which gives the works a measure of authenticity. I personally can appreciate that, the same way I can also appreciate a lot of forms of dark humor.
Also, I'm OK with others not sharing that appreciation.
1: http://xahlee.info/comp/comp_lang_tutorials_index.html
hackermailman · 2017-02-12
Xah Lee still updates his 1995 domain http://xahlee.org/ "the hacker news yc is truly idiotic. when in tablet, need a microscope to read. 1990s html, written in a born dead arc lisp."
enigmango · 2016-12-13
Probably this:
http://xahlee.info/UnixResource_dir/_fastfood_dir/fastfood.html
I hadn't heard of it until now. Thanks for the good read!