Older blog entries for ncm (starting at number 424)

13 Sep 2011 (updated 13 Sep 2011 at 10:09 UTC) »

I'm tardy mentioning that this is the time of year when we commemorate the day that the U.S. descended into abject cowardice, bombing thousands who had nothing to do with the event, and shredding every hard-won liberty gifted to us by our forefathers. The number of individuals killed in that event was about equal to the number who died the previous week, and that week, and each week since, of lung cancer. The individuals personally responsible for those drawn-out, painful deaths walk around loose to this day.

On the up side, this was the first Monday in several weeks that Firefox hadn't crashed over the weekend while I was away. I guess this means 6.0.4 is better than 6.0.2.

I re-implemented rsync globbing recently. I think my code is probably better than Tridge's, but I haven't looked yet.

ryuslash: Your dilemma has been hashed over by many, but it's a false dichotomy. There's room for different licenses, for different purposes. People get passionate about the BSD license when they think about writing code at one job and then not being able to use it when they move on to another. People get passionate about GPL when they think about their work being taken by a competitor and used against them. Which of those scenarios bothers you more dictates your choice. Sometimes it's one, sometimes the other, sometimes something else entirely, and you use the license that achieves what you want. Licenses aren't religions, they're just machines.

I just learned that Brendan Kehoe died last night. Sic transit

This is a post in support of the Tau Manifesto, and Tau Day, 6/28. It's silly to memorize an absurd number of digits of pi and then be obliged to double them before they are useful. Calculators need a "tau" τ key. Programming languages need a TAU constant. Where else than in a formula involving pi do you encounter an r² without a ½, or an r³ without a ⅔?

I have discovered that the top of a broiling pan -- the bit with the ripples and slots -- is the perfect place to perch a laptop that (stupidly) depends on cooling air from underneath. Turn the thing upside down, so it doesn't scratch the table when you put it down.

1 Jul 2011 (updated 1 Jul 2011 at 01:50 UTC) »

I just got a DSL line in. In my area, only AT&T can touch the wires, so I had to get an AT&T landline ($17/mo), and then order Sonic.net DSL service ($15/mo, 2.4Mb/s). It took from 22 May to June 11 to get a dial tone, and until the 17th to persuade AT&T to turn on the data service. Sonic.net were very helpful and courteous throughout. I just wonder why they're still running kernel 2.4 on their shell-account box. (Apparently DSLExtreme was good, once, and now isn't.)

The current unstable Debian kernel, linux-image-2.6.39-2-amd64, reliably panics on my boxes. This happens on an old Core2 duo and a new i7 quad. It's hard to be sure, but it appears to fail to mount / ("[: not found, mount: not found" etc.). A bit of googling hints that it's really a problem with old udev versions and initramfs, but updating those and their dependencies and reinstalling the .deb doesn't help. It boots a 2.6.37 kernel from the same respository without complaint.

This i7 quad is new. Astonishingly, it feels faster than the core2 even at the Grub prompt.

19 May 2011 (updated 19 May 2011 at 19:17 UTC) »

I have finally discovered a clue why Metacity sometimes loses its ability to manage windows and pointer focus. It happens when I run a Qt program. I didn't realize this until I ran a second Qt program some time after the first. (The programs were Qgit and Valkyrie.) It doesn't seem to matter whether it's Qt3 or Qt4. It's hard to blame Qt for this, but I find myself avoiding Qt programs anyway. Restarting Metacity doesn't help; it's as if something is messed up in the X server. Maybe I'll switch to a new window manager. Can't switch to a new X server!

12 Apr 2011 (updated 13 Apr 2011 at 05:48 UTC) »

Thanks to new member DRMacIver, I have learnt of a new language called Clay that seems possibly interesting. Indeed, besides details arising from its immaturity, Clay's only readily apparent oddity is that argument passing is strictly by reference. Otherwise, it has proper destructors, supports full-on generic programming cleanly, and lacks what Stepanov called "O-O gook". Is this the fabled Glorious Successor to C++ of song and story? If not, it's the closest approach I have encountered.

6 Apr 2011 (updated 6 Apr 2011 at 19:20 UTC) »

Hating every existing language is the first glimmer of awareness.

The second comes when you have started inventing languages meant to be better, and find that they are all worse, except the ones that are far, far worse. They share almost all the fundamental flaws of the language you hate most, but with extra fundamental flaws of your own. If you are perceptive enough, you discover you have no idea what really makes a language useful.

The third comes when you realize that no one language is right for everything or everybody. You begin to think your only hope is a completely specialized language, such as one uniquely suited for left-handed color-blind cartoonists, or for cats. ("No one could reject a language made just for them!" But they do.) Real problems refuse to confine themselves to what your language is supposed to be best at, and keep washing over into where it is worst. ("But it has first-order functions, and it's case insensitive! Who really needs speed anyway?")

The fourth is when you realize that ideology works no better in language design than in governance, and let real problems constrain the design. Creativity thrives on constraints. Discovering what are the real problems turns out to be way harder, even, than getting a language to help solve them without itself becoming a worse problem. Poisonous complexity emerges at every turn. Formalisms stubbornly refuse to solve problems all by themselves, or prevent them.

Finally you realize that while luck is the lion's share of what makes a language successful, failure can always be traced to fatal flaws the designer was (and usually still is) blind to. First your language has to be good enough, which is nearly impossible, and then it has to be impossibly lucky on top of that. Then you have to work hard, too.

People use a language despite everything about it. Now, as in any quest for enlightenment, we return to the beginning.

1 Apr 2011 (updated 1 Apr 2011 at 12:14 UTC) »

This is the first laptop I have ever had whose battery was good for more than 45 minutes. It says it's good for three or four hours, and seems to be. I know I have mjg59 and arjan to thank for this, among others.

I'm getting increasingly testy toward people who think they know all about radiation exposure, and how many millisieverts they can absorb without worrying. (I'm talking to you, Ryan.) It's not about radiation you can measure with your handy geiger counter or dosimeter. It's about radionuclides, isotopes of common elements that get incorporated into your body, in your lungs or bones or thyroid, and then sit there irradiating one spot day in and day out. An invisibly microscopic speck of plutonium in your lung exposes you to a tiny, tiny dose of radiation -- practically negligible, by Federal standards, but the alveolus where it lodges is where the cancer will start, ten years on.

One of my daughter's chickens was eaten by a "ring-tailed cat", a native Californian predator not closely related to Felis cattus. I had never heard of them, but '49ers were known to have kept them as pets.

Google has finally jumped the shark. They actually hired James Gosling, whose last gig was to drive Sun Microsystems into penury and Oracle. Now, Sun seemed to last as long after he started his campaign, there, as Google likely had left anyhow. But! we now know the instrument of their doom. (Notice how, nowadays, Google Maps often doesn't finish sending its map tiles? Hmm. And they hired Avery, too. Double hmmm.)

This is the place where I complain about Linux Inotify. Would it have been so hard to report the inodes?

Can somebody tell me why Linux distributions continue shipping the terminally ugly Liberation fonts, when Linux Libertine is sitting right there?

415 older 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!