Xplanets is a simulator that shows a spaceship moving through the solar system. The spaceship's movements are influenced by gravity from the sun and the planets according to Newton's laws, and by the acceleration that the engines provide. The planets move around is (simplified) round orbits.
The libcomm library is designed to facilitate handling structured messages between programs. The messages consist of three parts: a keyword, a body, and a delimiter. The keyword is used to identify the message for dispatch on the receiver. An example of the usage of this library might be to facilitate the communication between a GUI frontend and a program doing calculations in the background (the "backend"). Since the messages are human-readable (as opposed to shared memory or binary messages), it allows the backend to be tested separately from the frontend, either by a human or by a testing script.
DIY kernel upgrades
I'm used to installing a new kernel if it contains a bugfix or feature that I'm looking for. If you use LILO _and RTFM_, it's not that difficult.
Having said that, I think that the packaging systems of some distributions make it very difficult to install anything that's not in the distribution's preferred packaging format. One self-installed piece of software can invalidate your whole packaging system database. I don't think I need to elaborate on that.
That's why I favor distributions that do not have a packaging system that functions like a straightjacket. (such as slackware or linuxfromscratch)
So my take on it is that DIY upgrades will be limited to people with at least an understanding of of what constitutes a Linux system, and which pieces depend on each other.
Those that do not have that understanding have the option of learning that, or waiting for the distribution vendor to help them out.