I've recently been spending some time trying to re-learn Povray, a wonderful language/program whereby people enter a programmatic/mathematical description of elements in a scene (in polygons), and the program takes that and produces an image of it. In some ways, it's like the edit engine in Second Life, but with less of an emphasis on scriptability and physics, and much more power on the graphics end of things. Typically people use a wireframe editor or something similar rather than programming it directly, but as I haven't seen anything I've liked yet for Linux, I'm currently doing it by hand. Initially, I want to reproduce my sigil (the thingy on my main website). After that, I'll just play around and see if there's anything else I want to do. There are some amazing artists out there, but I don't particularly want to spend the time to get quite that good. So far, I have something that roughly looks like my sigil -- I don't have all the rays coming off of it yet because I want to fix the proportions of everything else first. One of the things that still hampers doing things in Povray is very poor documentation. My favourite database has a really nice online documentation site -- even the competition has some good docs. I wish someone would do something similar for Povray. Na klar, I can remember my father playing with Povray back when we were running DOS 4 -- it's a program with a long history.
I recently grabbed some music from a russian pop group I like, Splin. Some of those who know me know that I learned to read the Cyrillic alphabet a few years ago as part of the first part of learning Russian (I had to drop the class for reasons unrelated to class content). This is kind of helpful in some cases, but it's very frustrating in that I have almost no vocabulary for Russian (similarly to how I can recognize much of the Hebrew alephbet but know pretty much no Hebrew). A few days ago I found a Russian-English dictionary online, and plugged in the name of one of the songs, only to find that, much to my amusement, the song was called russian-english dictionary. It wasn't a complete surprise -- I recognised the middle word as Russian for the Russian language, but it did amuse.
Today, after hanging out in the CS Lounge for awhile, a guy came up who had screwed up his libc and thus could not boot his system. This being the CSLounge, he was offered an endless stream of advice, much by people who can get by comfortably on Unix but don't *really* understand it intimately. One of the gems of the evening, for example, was the idea that the kernel needs libc. Being an old hand at Unix, I suggested we tell the kernel to run the emergency static shell as init, and go from there. Unfortunately.. it turns out that Ubuntu doesn't provide a statically linked shell by default (bloody stupid). I'm not sure anyone else there really understood the problem or what should've been a simple solution, because they don't understand how linking works. Oh well. It turns out, now that I look at it, that Fedora also does not provide an emergency static shell -- it's an optional install (called sash). This is sad -- it's a basic recovery tool. I'm going to talk with some friends I have who have industry ties to see if it can at least be part of the default install for the distros they influence. In the meantime, CMU CS folk, if you're going to claim to really know Unix, please get a clue on how program linking works. In particular, take a look at the following commands: ldd, nm, ar, ranlib, and ldconfig. Understand the difference between compiling with -llibrary -Llibrary_path and listing the object files for that library during final program linking, and for bonus points, understand how dlopen() and dlsym() fit into the whole picture. When you have done all that, you have a clue how libraries work (note that although I phrase all this in terms of Linux and more generically Unix stuff, the same concepts exist on Windows and OSX). Oh, and to everybody running Linux, make sure sash or some other statically linked shell is installed on your system. You may hope to never use it, but if you ever need it, you'll be glad it's there.