13 Mar 2006 ncm   » (Master)

Delivered the Toshiba laptop running Ubuntu to my brother, to general approval. I got the automatic wireless network configuration working, but had to turn Ethernet off because the sky2 driver was too flaky. The Flightgear flight simulator got fixed in time for delivery. Unfortunately I had to install Macromedia's proprietary flash player, as too many of the pages he depends on demand it.

Cranky observation of the day: planetary scientists crowing about liquid water on Saturn's moon Enceladus are going on record saying very silly things. Actually look at those jets of ice particles: they're collimated. Vapor doesn't expand into a vacuum that way. How would that happen? If you're desperate you might imagine parabolic nozzles embedded in the ice and pumped at extreme pressure. A better guess would be that the ice particles are carrying electric charge away from the surface, as part of the electric circuit Enceladus is part of (Enceladus is a conductor moving in Saturn's magnetic field), but you won't find any mention of that in any NASA/JPL/ESA press release.

nconway: The answer to your questions is very simple: don't define a local variable until you have something to put in it. Of course this advice is easier to follow in C++ than in C, where variables may be defined anywhere in the block. If you must code C, either compile with a C++ compiler (and explore other language refinements while you're at it), or add an extra "{" before each variable definition in the middle of a block. (Just pile up extra "}}}" closes at block end.) In practice this is rarely needed, because there's usually something useful to put into variables even at the top of the block. Where it is needed, it makes finding the definition easier. (When coding C++, I always leave an extra space between the type and the local variable name, just for that reason; it's the least intrusive of all possible markings.)

The "gnome-panel" auto-hide feature has been nonfunctional for longer than ever before. Usually it is broken in one major release and fixed in the next, but it's just stayed broken through 2.10 and 2.12. It always seems to work, but later when I look at the bottom of the screen, there it is, un-hid and covering up my browser's status bar.

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!