Xah Programing Blog 2011-07

google earth flight simulator hud

Google Earth Flight Simulator Controls

Programing Exercise: latitude-longitude-decimalize. See: http://xahlee.blogspot.com/2011/11/emacs-lisp-exercise-latitude-longitude.html.

Unicode Symbols for Lock and Key

See bottom: Unicode 6 Emoticons.

Spent about 10 hours keyboard geeking again. Several major updates in the following pages. Addition of some 15 glorious photos of keyboards and their layouts.

utron keyboard
The μTRON Keyboard. image source

μTRON Keyboard

Ergonomic Keyboards: Microsoft 4000 vs Natural Elite

Yesterday, people on Hacker News site are discussing ergonomic keyboards. (Source news.ycombinator.com) Seems all are recommending the Microsoft Natural Ergonomic Keyboard 4000 Review.

I also love that keyboard. Used it for 2 years. Unfortunately, the stiff Spacebar is causing me hand problems. I spend 2 days trying to fix the spacebar. First by trying to remove the metal bar underneath, then tried to bend the metal, then tried to put lubricant in the key hole, then tried lengthen the poke, then tried to break the metal bar holder, then tried to trim the cylinder-poke's sides, then file it, and eventually cutting it out altogether. Ends up with a broken spacebar and nothing worked. (by the way, there's a blog on the web trying to tell you how to fix it. They don't work. It should be fixable though, if you are a tinkerer and lots tools and odd spare parts for spontaneous invention.) So i've switched back to Microsoft's earlier ergonomic model.

ergonomic posture laptop ergonomic posture

By the way, i've read extensively on the web about anything RSI since 1990 (before the web, it's mostly books about typing in libraries). Sometimes i thought perhaps i can do a summary, but, it turns out, i can't. The situation is too diverse, too complex. Causes of RSI are different for everyone. The only summary i could give, is to follow the general ergonomic advices. Namely:

More tips from my experience.

Thanks to Jon Snader for the tip.

Discovered the Fantom language. See bottom of Proliferation of Computing Languages.

Incredibly cute chick, gives us a tour of fancy animated desktop on linux.

“Ubuntu Linux Themes” demo by a cute chick “NixiePixel”.

Screen Size Comparison: DVD, iPhone, iPad, MacBook, Blu-ray

Microsoft digital media keyboard Flip3D key

Updated: PC Keyboard Modifier Keys — a Short Survey

FOSS Infighting: My License is Holier Than Yours

On www.emacswiki.org, there's this fact mentioned:

The [emacs lisp] manual has license GFDL and thus the DFSG (Debian Free Software Guidelines) don't consider it free.

Ain't it bizarre? FSF's GNU Emacs, the mothership of all Free Software, and Debian Linux, the mothership of hacker linux, originally with support of Richard Stallman, have come to this quarrel.

Such quarrel are quite severe and wide-spread among open source communities. BSD's antagonistic forks, GNU vs MIT/BSD/Unices, Emacs vs XEmacs, Free Software vs Open Source, the KDE vs Gnome, GNU vs Linux, Firefox logo vs Debian, the rise and fall and rise and fall of Java as “free” (aka the Java Trap), OpenOffice vs LibreOffice, Richard Stallman vs Linus Torvalds, Richard Stallman vs Eric Raymond, Richard Stallman vs everybody else, …

Ideologies, ideologies!

These tech geekers are supposed to be the ethics gods of humanity, peace, freedom, et al, in reality, they are just scumbags like most human animals on earth, when YOUR self-interest is involved.

Unicode: W3C Proposed Icons {Image, Video, Sound File, Trash, Keyboard, Mouse, …}

Origin of the “Grave Accent”/Backtick as Quoting Character

Kevin Buchs, asks in gnu.emacs.help about the origin of the convention of using backtick and straight quote, `like this', in GNU documentations, in particular, emacs. Quote:

Ok, dumb question to which I have been unable to find the answer and which is distracting me:

In emacs documentation, what is the origin of using the accent grave (backtick) to introduce a quoted phrase, often a command, while using an apostrophe to terminate it.  Example: (info) Keys and Commands: 1st paragraph: "binding" is quoted as such, but 2nd paragraph, `next-line' is quoted that way. If someone who knows the answer will take the time to answer, I promise I will document it on the Emacs wiki. Does this extend beyond emacs? Beyond GNU and FSF?


proper elbow position during typing
Proper Elbow Position During Typing

Google Doing Research: What is a Browser?

“What is a Browser”

FCK the tech geekers, the hackers, the linux/unix, emacs, fanatics, those who hog on slashdot, reddit, hacker news, who adamantly tell us how user interface should be, how code should be formatted, how we should use the web. F���ing idiotic scumbags.

Unicode Characters for Space

Here's some Unicode chars to represent Space:

CharUnicode NameCode PointComment
·MIDDLE DOTU+00B7Useful when you want to show space as visible chars
OPEN BOXU+2423Useful when indicating keystrokes
SYMBOL FOR SPACEU+2420Useful in programing contexts. This usually indicates the ASCII 32.

For more proper symbols to represent tabs, return, cursor pointer, …, in contexts of keyboard input, keyboard key symbol, visible glyph in text, programing character set, etc, see:

Today's tip for geeks.

Q: What to do when you see an attractive girl?

A: Rush out of sight quietly.

Samba's New Logo

Samba's old logo.
Samba Logo
Samba's new logo, 2011-05

The old logo is much better designed. It has spunk. The new is boring and lame.

For collection of logos of software, see: Logo Design in Software Industry.

Math: ID System, Number Base vs Number of Digits

Space-cadet, Lisp Machine Keyboards

Technology for Knowledge in Past Decades

Death of Steve Jobs vs Dennis Ritchie, John McCarthy

Why X11 Color Names Are Fckedup

Quote from Wikipedia X11 color names:

In computing, on the X Window System, X11 color names are represented in a simple text file, which maps certain strings to RGB color values. It is shipped with every X11 installation, hence the name, and is usually located in ‹X11root›/lib/X11/rgb.txt.

It is not known who originally compiled the list. The list shows a continuity neither in selected color values nor in color names, and many color triplets have multiple names. Despite this, graphic designers and others got used to them, making it practically impossible to introduce a more stringent and logical alias list.

Why it's like that? Because it's the unix philosophy!

Time to reread: The X-Windows Disaster.

The lisp derived functional language Qi, now has a home page at shenlanguage.org.

the Death of Dennis Ritchie

Emacs Cygwin gunzip Problem

Any programing language, that uses keywoards like BEGIN END instead of any [({brackets})] , is a fckedup language.

Emacs Lisp, Perl, Python: Building a Multiplication Table @ http://xahlee.blogspot.com/2011/10/emacs-lisp-perl-python-building.html

Stephen Wolfram: The Background and Vision of Mathematica

“Stephen Wolfram: The Background and Vision of Mathematica”

See also: Notes on A New Kind of Science

plt scheme lisp logo 1996
PLT Scheme's logo, ~1996.

Updated: A Lambda Logo Tour

Semantics of Symbols: Use of Unicode Subscript Digit Characters

Microsoft Arc Touch Mouse

Programing Language: LISP Syntax Problem of Piping Functions.

Why Doesn't Google Chrome Cache YouTube Videos?

Being a efficiency nerd, i have this unhealthy obsession about the efficiency of internet bandwidth use.

For example, if i'm watching a youtube video, and if it so happens that i don't want to watch it anymore, i usually take the trouble of right-click and stop downloading, even i still want to stay on the page (say, reading the comments), as some kinda sense to reduce “waste”. (even though my internet bandwidth is fast, unlimited, and far underused)

As another example, when the tech of live audio broadcasting thru internet (aka internet radio) started to show up in ~1999, where people can listen to it just like radio, like, leaving it on all the time, my thought was that, “O my fcking god, who invented such a thing that is extremely inconsiderate in using resources”.

Of course, i know that these are extremely silly concerns, but i simply just have it in me, and continuously trying to brush such idiotic thoughts away. (i should know, cuz i wrote a ton despising those “hacker” coders who habitually diddle their code for the “idiom” fck, thinking that they'd squeeze a few cpu cycle out of it, for example, in particular, the perl mongers peddles this idea, which i think died out gradually starting in ~2001 to ~2005.)

But anyway, i have a question, which prompted me to write this. When you watch a youtube video, after you finished watching, sometimes you went to watch others or do something but happened to land on the same page and want to watch it again. I'd thought that Google Chrome would have cached the video, so it doesn't have to re-download the 30 or so megabytes again. But apparently, it doesn't seem to be the case, because you can see the downloading progression bar going. Why's that? Is Chrome's behavior dependent on your net speed or it does always re-download? I can't figure why it won't cache.

Source plus.google.com

keyboard buckling spring
buckling spring mechanism.

Guide to Keyboard Key Switch Mechanisms

Perl Expert Randal Schwartz = Fun Chatty Fellow

Linux Outlaws - Interview with Randal Schwartz

Randal Schwartz, the perl expert, is caught on video in this interview.

A very fun, chatty interview. Randal tells you how much you'd make if you write a successful O'Reilly book, and on Perl 6, singing in karaoke, attending tech conferences and his record of free pass for ~15 years, his visit to Stonehenge (Randal's company is stonehenge.com) and much more.

The interview is informal, more or less random chat among 3 geeks, which you get to know Randal the person.

The hosts are Fabian A Scherschel (the German guy drinking beer) and Dan Lynch (UK guy, on voice only). They run Linux Outlaws, which publishes podcast on linux and tech.

See also: Perl Books Survey 2002

Xah's Programing Language Tutorials

Post from g+.

For those of you programers, i write tutorials for several computer languages, Usually i cover only the basics, with lots examples, and without any “engineering” or “computer science” talk. I want it that way so that programers can quickly learn the language as it is. Like, if you type THIS, then THAT will happen on your computer.

2 decades ago, programers can know it all. But today, like most sciences, programing has branched into hundreds of specialized fields and tens of general purposes computer languages, all widely used.

If you want to learn the lang, please give my tutorial a shot. Let me know what you think.

Of the following tutorials, the Emacs Lisp is the best. Most in depth and comprehensive, and no commercial book comes close in either aspect, except the GNU Emacs Lisp Reference Manual.

Emacs Lisp Tutorial

Perl am quite a expert, but my tutorial of it really doesn't cover that much, but covers more for Python, even though i haven't coded Python professionally.

The HTML CSS tutorial is good for you to pickup. The language are really trivial, but they are most about tips and tricks.

Xah's Web Dev Tutorial (HTML, CSS, JavaScript)

I haven't really picked up OCaml, but this tutorial in my opnion gives you a functional understanding (in the approach i mentioned before), better than other tutorials i know of, because they always talk about currying and other jargons in some computer science way, half of them they don't really understand.

OCaml Tutorial

PHP Tutorial

On the Curry–Howard Isomorphism of SQL and NoSQL with Church-Turing Perspective

Can someone summarize this into just few paragraphs?

By just the supporting voice for NoSQL it oozes, i think it stinks shit.

Maybe the author mathematicians are just trying to get themselfs published by hip factor.

No, i haven't read the article. But am sure it's scumbag.

For explanation, see: Are You Intelligent Enough to Understand HTML5?The NoSQL Movement.

Hi my fellow hacker news reddit slashdot readers, FCK YOU!

Geek Humor: Stack Overflow Offline Page

Open Source = Power to the People?

Recently discovered a communism expert Catherine A Fitzpatrick. See update at: Software Freedom is Free Speech or Free Beer?

lisp history, MULTICS vs UNIX, PL/I, …

Got this accolade, and it made my day:

The original version of MULTICS (the predecessor of UNIX (TM) , the precedessor of Linux) was written in PL/I. (Yes, I'm as old as that.......) kind regards, andy

PS. and one more note: Xah Lee wrote very well about the history of LISP/AI/functional programming, to my opinion.

From this thread:

Newsgroups: comp.lang.lisp
From: “Antti Ylikoski” 〔antti.yliko…@elisanet.fi〕
Date: Sun, 31 Jul 2011 18:14:23 +0300
Local: Sun, Jul 31 2011 8:14 am
Subject: Re: Lisp Celebrities and Computing History from 〈Worse Is Better〉

Source groups.google.com

It was a comment to my article: Lisp Celebrities from Worse Is Better. Mark Tarver, the elusive computer scientist who created the Qi language, also commented.

See also:


Found this comic:

fault-tolerance NoSQL
Comic by John Muellerleile (@jrecursive)

See also essay: The NoSQL Movement.

Perl, Unicode, Unicode 6 Fonts

3 Bleeding-edge perl articles on Unicode. See bottom of Python: Unicode Tutorial 🐍.

Check out Symbola font. See: Unicode 6 Emoticons.

Thanks to Andrew Kirkpatrick.

How to Download All Your Emails in Gmail?

Lisp Celebrities from Worse Is Better (commentary)

Perl Python: Print Version String from a Script

Motherboard Specification: MSI MS-7548 (Aspen)

Preliminary report of a little programing challenge last week: Lisp, Python, Perl, Ruby Code to Validate Matching Brackets.

What Programing Language are the Largest Website Written In?

HTML5 {meter, progress} Tags

Perl Script to Delete Duplicate Files

Are You Intelligent Enough to Understand HTML5? (rant)

Patreon me $5. Ask me question on patreon