Routing v0.2 Released

I’ve released a new version of Routing v0.2.1. This update resolves issues with the route preferences and correctly prioritizes static routes. The internal route decisions are now handled by a scoring system. There are still a few bugs, but Routing is fast moving toward something usable.

Head over here to grab the latest version. I also wrote some documentation this evening for you to examine!

No comments.

Links: August 12th


New Scientist has an article on the 10 things you didn’t know about humans.

Remember the Ukranian president Victor Yushchenko who was poisoned back in 2004? The doctors who treated him speculate that the strange skin growth he suffered from may have saved his life.


Joe Uhl has a fascinating article on improving PostgreSQL performance (although the tips can be adapted to other DBMSs).


Those jobless figures you hear about on the news–a “meager” 9.4%–might be wrong. Current estimates, including people who have stopped looking, peg unemployment at between 16 and 20 percent. Yeeouch. It explains some of my acquaintances who have been laid off (and good luck finding a job here locally–I’m glad I’ve been doing some freelancing!).


Read more about the Large Electron-Positron Collider and how it discovered Z bosons with mass that changed during different times of the day. Spoiler: It wasn’t the boson.

The Earth’s mysterious hum has finally been tracked down. There’s also another but much older article detailing specific locations.

Wired science has a lot of good related articles all linked together. Here’s one about Earth’s “breathing” cycles. In related news, Earth may have another billion years (bringing the total to 2.3 billion) before the sun fries us all to a crisp.

The first ever asteroid to be tracked from space to ground was recovered back in March.

New Scientist describes five snacks shaped like the universe. While you’re reading, you may as well take a look at a gallery they listed as a related article.

Cassini has spotted a peculiar anomaly in Saturn’s rings .

Planetary collisions do happen and it’s quite spectacular.

Speaking of big things (although things that aren’t really big), it appears that monstrous rogue waves are surprisingly common.


Twitter isn’t as popular among young people as it is among people between 24 and 54 (I’m not one of them). This corroborates with some of my younger colleagues and peers. They see twitter as a pointless waste of time! Oh, if only people in my age group had such insight.

If you like spending time in coffee shops with your laptop, you may have to reconsider.

Windows developers: version checking is evil. No really, it is! Don’t do it. Ever.

Scott Hanselman has an article on 10 things developers should know about Windows 7.

Take the search engine blind-folded taste test.

Here’s how to scale up a quantum computer.

Testing the Limits

Improbable Research tests the limits of the post office by sending a variety of packages with different shapes and sizes. The verdict is counter to what many believe of the post office: most of the weird items made it through. Of particular note: The postal clerks simply noted that bare items (there were many) must be wrapped. Wrapped or not, the bare items (including a football) were still delivered.

No comments.

PHP Routing

If you’ve ever written web applications in Python using Pylons or TurboGears (>=1.1), you’re probably familiar with an incredibly handy tool known as Routes. It’s modeled after the Ruby on Rails routes system and does quite a marvelous job at mapping friendly, SEO URLs to useful code. If you’re not aware of it, you really should check it out.

However, I was curious to see if it were possible to create a Routes-inspired PHP library that would perform essentially the same task. I’m sure there’s an already-written PHP routes system, and I’ve allowed myself to fall into the not invented here trap. But, that’s part of the fun in coding: If you don’t like what someone else wrote or you want to give it a hand yourself, no one is stopping you. It’s great.

Thus, I’ve written Routing, the PHP routes system. It’s similar in syntax and intent to Python Routes with the exception that it’s PHPized (in other words: bastardized). If you read the sources, you might be able to see a little Python influence here and there (along with my frustrations toward PHP as a language vented in silence). I wouldn’t recommend it as anything short of entertainment as yet; I haven’t cleaned up the sources, and I expect they’re going to be really messy for a little while. The route search mechanism is awful, and I plan on refactoring it in a future revision. For now, the system works, and that’s good enough. (That’s my INTJ side talking.)

So, if you’re curious enough to take a look, head over to the Routing Trac page. I have some downloads posted there in a variety of formats (.zip, .tar.gz, and .tar.bz2). There’s no API documentation yet. I’m going to add it soon. Since Routing was born on Wednesday, August 5th, 2009 it’s quite young. However, I have some preliminary unit tests written (also incomplete) that you can read to get a general understanding of how Routing works. If you’re more interested in the principle behind Routing, you might want to read the documentation for Python Routes. Routes and Routing work roughly the same with the exception that Routing, unlike Python Routes, is extraordinarily buggy. I hope I can evolve this into something of an acceptable sibling to Routes but that will take time and a whole lot of effort. I have a few additional ideas, too.

1 comment.