Complaints about Linux, GNU, etc.
Note that the information on this page is fairly out-of-date!
I'm a programmer, and I've been programming for a long time.
I've used several different environments for programming, but nearly all of
them have been pretty simple.
I used Microsoft's Visual Studio at one job, but mostly used it as an
But that was my closest approach to using an IDE.
For most of the last 15+ years, I've used GNU emacs on Linux as my "IDE".
I have a very bad memory, especially for things that are arbitrary.
I have always been this way.
It took me a fair while before I could reliably remember the PIN for
my credit card, and I'm still not solid on my cell phone number.
I once bought a self-help book for improving your memory - I was never able
to complete the first introductory exercise.
An example of how this affects my programming work: the "vi keys" have never
worked for me - they are too arbitrary.
As for the hundreds of key bindings in GNU emacs: skill with them is
forever beyond my reach.
I am lazy.
That, combined with my poor memory for arbitrary things, means that I am not
anxious to try out new things - they are usually far too frustrating for me.
My eyesight is not bad, but it is slowly going.
That means that microscopic fonts on small monitors don't work for me.
I have small hands.
In particular, that means that I *must* be able to have a "control" key on
my keyboard that is on the left end of the home row - I simply cannot reach
one that is two rows down.
I similarly prefer a large "return" key, although as long as it is on the
home row and at least two normal keys wide, I'm OK.
I regularly sit in front of my computer monitor for long periods each day.
I can no longer do that with straight high-contrast black and white text.
I have set my "xterm" to have black text on a tan (colour #c09060)
background - I find it much easier on my eyes.
Because I've been at this for so long, I started before there were any
computer mice to use.
So, I'm a pretty good touch typist, and expect to do everything I need to
do with just the keyboard.
Given my poor memory, this means that I use the same set of key bindings
a lot, rather than take my hand off the "home position" to use the mouse.
I mostly stare at program text, debugger output, etc.
So, I want the maximum amount of that that I can get on the screen.
My 1280x1024 monitor is rotated to a portrait mode, and that gives me room
for two 80-column text windows, with one Gnome toolbar to the right, and
no other GUI stuff taking up space on my screen.
Each of those two windows has 96 rows of text.
The emacs one loses two for the status line and the prompt line - menus are
If a system cannot allow me to come very close to this setup, then I will
not be happy trying to use it.
Many (most?) of the names of free software projects are essentially
That matters for people like me who have very poor memories.
It also matters for people trying out Linux as an OS alternative.
It matters because the user may know what they want to do, but cannot
find the tool to do it, because the tools all have meaningless names.
You just have to "know", which is the wrong way to encourage new users.
It used to be that a Unix user knew what all of the files in their home
directory were, since they had put them there.
The number of configuration files has grown, but is manageable when the
user has to create and set them up manually.
However, there are now a large number of configuration files and directories
that the user has not setup, and has no idea of the purpose of.
Some of those directories are quite large.
This makes it more difficult for the user to make meaningful backups of
their own stuff.
Some of the configuration stuff does not need to be there at all - it is
a copy of default configuration with perhaps a small number of actual changes
made by the user.
I eventually gave up on my home directory - everything I care about is in
a single directory within my home directory, and that is what I back up
and look at.
Why does Ubuntu insist on having wrapper packages containing stuff that
everyone needs along with stuff that ought to be completely optional?
In the past I ran into this with Samba stuff, for example.
I don't have a good example right now - its been a while since I got
annoyed that something I will never use was being updated and I couldn't
afterwards go and remove.
Backspace and Delete
Come on people!
My keyboard, like virtually all of them, has both Backspace and Delete keys.
They are both fairly easy to reach.
The operations they do are very useful, very common and easy to understand.
They are not confusing to beginners or anyone other than those who are
used to the idiocy that GNU and Linux have tried to impose.
Taking away one of these keys just because GNU emacs wants to use
"control-H" as a help key is just stupid.
It is things like this that will forever prevent Linux becoming mainstream.
I have managed to make them work each time I've installed a new system for
myself, but the last time required help from an emacs guru, plus xterm
flags in a startup script and .Xresources settings.
Emacs and Colours
By default, even "emacs-nox" wants to use xterm colouring to display colours
when doing various things.
I don't have a really big problem with this, even though I'm not used to it.
The problem is that with my tan background colour, some of the colours it
uses are virtually invisible.
I have the same problem with "ls colours", so don't use it.
I pass a bunch of flags to "xterm" when I start it with an emacs in it, which
manages to suppress everything except boldface.
Boldface I like, but emacs seems to copy the tagging when you copy something
from, e.g. a C buffer, to a buffer in another mode which doesn't do tagging.
In the past, I've used a quite simple X window manager, twm.
When I moved to Ubuntu, with Gnome, I decided I should try to move into
the modern world, and embrace GUI stuff.
I'm OK with Gnome, after some fiddling.
I tried to use one of the GUI tools for email.
That experiment lasted a day at most.
The problem is that the tools (Evolution and Thunderbird) work on the view
that they are the only thing you are using.
They have very large windows.
They also do not let you use an external text editor (which would be
awkward given their window size).
When I do email, I often want to grab stuff from other files, and I want
an editing environment that I am efficient and comfortable in.
So, those GUI tools are not used for email - I use "pine" to read mail and
"mail" to send it when I don't need attachments.
With this latest release of Ubuntu (10.04 Lucid Lynx), the simple "mail"
program no longer works properly.
Lines typed into it do not wrap correctly, and "control-C" requires a "return"
That simple program has worked correctly for decades - what have they done
to break it, and why did no-one notice?
(I have a 10,000 line window output history, and I like to see the emails I've
been sending - using "mail" lets me do that.)
Monitor Power Save
I've got xscreensaver setup to put my monitor into powersave mode, since
my monitor works fine with that.
(I also have my monitor rotated to portrait mode, but that's another issue.)
Since I've long held the belief that power cycling electronic things can
shorten their lifespan, I wanted to avoid turning my monitor on and off.
At some point I learned about "xset" (wow - a reasonable name!), and found
"xset dpms force off".
I created a quick script that waited 10 seconds, then issued that command,
and put a toolbar item for it into my Gnome toolbar.
Then, when I was done with the computer for a while and wanted the monitor
to go to sleep, I clicked on that, quickly moved my mouse pointer out of
the way (actually, I hid the status bar first), and then the monitor would
go to sleep.
That got broken with this release of Ubuntu, and there seems no likelihood
of it ever getting fixed.
It's something about an interaction between what "xset" is doing and some
lower-level laptop controlling thing that I'll never use here.
I got a cellphone for emergency use about a year ago.
Since I was getting one, I got one with a camera and a flip-open keyboard
that I could use for notes, etc.
It's an LG-9100.
Supposedly I can plug it into my computer via USB and have it show up as
a USB mass storage device.
Nope, never works.
USB sticks work, my PSP works, my Kindle works.
I chased this on bug forums for a while, but there seems to be no fix -
there is some timeout down in kernel USB-land.
I've tried BitPim as well, but it won't recognize the phone directly.
If I hunt through menus for settings, and force a manual phone detect, then
lie about my carrier, I can make it work.
But, as they say in the docs, transferring files via BitPim is quite slow.
And, guess what, it crashes if I ever try to take a picture or movie off
of the phone.
It worked for wallpaper flash files on the phone's internal memory, but
not for what I really wanted to get out of the phone.
Luckily, when I bought the phone, the micro-SD card came with an adapter
to turn it into standard SD, and I already had a standard SD-to-USB
adapter from my digital camera.
So, with a stack of two adapters, I can get stuff on and off my phone,
but I sure hate stressing that little spring-driven connector in the
phone all the time!
I detest Linux system administration.
This of course is partly because I'm lazy, but mostly because of my
Virtually nothing about administration makes sense to a beginner, and I
will always remain a beginner, because I'm never going to remember all of
the obscure things one needs to know.
Some folks thrive on this stuff, but not me.
An example I recall related to the ssh server daemon.
I was going to be out of town, and wanted remote access so I could read
email, work on stuff, etc.
What I ran into is that after installing sshd, there was no way to stop
I would kill the process, and it would just start up again.
There used to be a nice GUI admin tool for that stuff, but it is now gone,
with no replacement that knows about sshd.
This may relate to the partial implementation of "upstart", which has
broken all my hard-won knowledge of dealing with system daemons and
where the control files are - I no longer know.
Because I've been a computer geek for a long time, and run a nice Linux box
with a good internet connection, I'm the logical person to run email and web
setups for a local group I'm in.
OK, so I have to take time to learn to work with Apache.
Eventually, I was done, and it worked.
Then they moved to Apache2, and most of what I knew was now wrong.
My main issue is that they have made it quite hard for paranoid people
like me to be fairly confident that the setup is safe, while still having
the desired functionality.
I want the absolute minimum number of Apache modules to be enabled.
My websites are very low traffic, have no CGI, do not allow indexing, etc.
I serve what is probably all HTML 1.0, with no scripting.
A friend forced some ugly CSS stuff on one site, and I will forever hate it.
But, I have to have a bunch of modules enabled to get even simple stuff
like defaulting to "index.html" when a directory is visited, enabled.
I had my dual-virtual-hosts config working, and it seems to still work,
but about once a month I get an email complaining about a missing virtual
host or something.
I got tired of my old Lexmark ink-jet printer/scanner always being out of
ink (it dried out all the time, and their almost non-existant support for
Linux meant that tools for unclogging weren't available), so I recently
spent some money and bought an HP CM1415fnw multi-function colour
It is far overkill for what I need, but hopefully the ink won't dry out
(I'm still running on the demo cartridges, and expect to have to get one
set of regular ones).
Prints OK, but a friend and I had some severe troubles getting the driver
to properly put images full-sized on the paper.
Whenever I log in, some HP requester pops up saying it couldn't find a
I have no idea what a "system tray" is, and I very much doubt I want one
cluttering up my system.
If it doesn't matter that there isn't one, why does it always complain?
A big problem with the printer software chain is that if I print a PDF,
using either "evince" or "acroread" (more "easy to understand" names),
and the printer is set to colour, then 50% of the page is full of black
Switching to monochrome output fixes this.
Also, the Lexmark scanner worked fine with the great "Simple Scan" program,
but the new HP one doesn't work at all, and even fails sometimes with XSane.
USB issues seem to be a common thread here.
I have a USB mouse (it came with an adapter for the mouse port, but that
got zapped), the printer and an ACP UPS also hooked up.