Rebooting my blog

I’m bringing in the new year at home, sleeping off a bad cold. Really, it’s a 2009 cold and with it will go the last remnants of that year and the last decade. It’s 2010 and time for some major changes around here. I’ve been compiling a lengthy list of New Year’s resolutions, life goals, and To Do lists. I won’t bore you with them but, if you’re reading this, one resolution is well on the way to being met.

My blog was neglected for the last half of 2009. I haven’t been totally offline. I’ve continued posting regularly to my photo blog and twitter (which feeds my Facebook, Myspace, and LinkedIn accounts) as well as making daily posts to robots.net. But my personal website has fallen into disrepair. It’s time to reboot things. First off, you may notice I’ve moved my blog to its own domain, steevithak.com, from its old home on my business website.

Over the last few years, I’ve consolidated my online presence from lots of different user names to just one: steevithak. It’s hard to spell, nobody knows how to pronounce it, but it’s uniquely me and gives me a user name that’s always available. Don’t worry, only machines refer to me as steevithak. If you’re human, keep on calling me Steve in person.

Back to my blog; I started blogging 1999 before it was commonly called blogging. I wrote my own set of PERL scripts to manage the process. So in rebooting my blog, I was faced with a 10 year blog archive in a one-of-a-kind format. The earliest blogs lacked titles and none of them were tagged with keywords, so I decided to manually convert them one at a time, adding the missing elements. Over a period of time, I reconstructed my entire blog archive using Pivot.

As the end of 2009 neared, Pivot 2.x was released, so I converted everything to that format. In December of 2009, I made a last minute decision to switch again to Word Press, which offered several features Pivot lacked. Pivot 2.x also proved to be mind-bogglingly slow, perhaps because it couldn’t deal with a 10 year archive stored in a flat file database! The conversion from Pivot to Word Press initially looked difficult but I found a script that was able to move the entries and titles. I modified it to also preserve the keywords I’d spent so much time adding.

So the new website integrates my blog, my photostream, and my twitter feed in one location. The blog will continue to be syndicated to my robots.net and Advogato.org profiles, manually for the moment but I think a Word Press plugin supporting the mod_virgule XML-RPC protocol may be forthcoming.

Now all I have to do is make life in 2010 interesting enough to blog about! I’m not worried. Something tells me we’re in for a good year.

May Miscellany

Time for a quick update. May started off with the VEX Robotics World Championship here in Dallas. I was one of the judges evaluating the 270 teams and their robots. I’ll probably write a little more about it in an upcoming issue of Robot Magazine for those who are interested.

I created a robots.net twitter feed and robots.net facebook page for robots.net this month. So far the facebook page is ahead with over 160 fans while the twitter feed only has about 38 followers so far. To be fair the facebook page went online a couple of weeks earlier so we’ll see if it hangs on to the lead over time.

I’m still struggling to find time to devote to mod_virgule but squeezed in a few more hours of C coding on the new HTML parser. It’s now running on a test server with a subset of Advogato’s database. So far, so good. Blog aggregation and parsing seems to be working, as do local blog posting, article posting, and article comments. The magnitude of the changes makes this update a bit of scarier than usual for robots.net and Advogato. If nothing breaks in the next week or so of testing, though, I’ll cross my fingers and make it live.

I continue to drag my Canon 40D around with me everywhere and since my last blog post, I’ve shot photos of the Funky Finds Spring Fling craft show in Ft. Worth, the Aveda Walk for Water event in Dallas, the aforementioned VEX Robotics World Championship, the Cottonwood Arts Festival in Richardson, the 2009 DFW Dragon Boat Festival in Las Colinas, oh, and a few pics of my friends at Vivanti Group in Deep Ellum. In the retro-photo department, I posted some BW 127 photos shot with a Kodak Brownie Reflex Synchro. Yesterday, a package arrived containing that rarest of things, color 127 film, from a small manufacturer in Canada. I’ll probably run a roll through the Bencini Comet S sometime soon.

Advogato blog topics

Zaitcev brings up the issue of blog posts that aren’t directly related to free software development in Advogato’s recentlog. I seem to remember this issue coming up sometime in the past. Zaitcev occasionally posts about topics other than free software such as Anime. This annoys ekashp, who would prefer that free software developers limit their interests (or at least their blogs) to posts about free software. For my own part, I don’t find it strange at all that free software developers have varied interests beyond software itself and I enjoy reading about them.

Perhaps I’m biased, because I too write about whatever random things I find interesting. Sometimes I write about software but just as often it’s music, art, books, or robotics. My case is interesting because my blog is syndicated to both Advogato and to robots.net. I think to meet ekashp’s ideal, I’d have to limit my blog to software development related to robots. Otherwise, I’d risk being off-topic on one of the two sites with any given post. Instead, I throw caution to the wind and assume that if a topic is interesting to me, it might be interesting to someone else too.

In any case, Raph created Advogato’s blog ranking system so that each user could define their own ideal recentlog. If you consistently find someone’s blog uninteresting or annoying, go to their profile page and give their blog a low interest ranking. Blogs ranked below 3 will not show up in your view of the recentlog.

Websites come and websites go

O’Reilly shut down the wonderful Meerkat aggregator website a while back and now I see that Raph may be shutting down Advogato.

Yet another website I frequent, on the subject of Free/Open hardware, almost shut down in June. FreeIO.org has been run by Diehl Martin for years, providing GPL’d hardware designs. Unfortunately, Marty has pancreatic cancer and decided he didn’t have time to run the site anymore. After seeing his shutdown announcement, I offered to take over hosting and maintenance of FreeIO.org. We completed the transition in August. We’re still pondering the longer-term plans for the site.

I’ll miss advogato if it shuts down. Thanks for the effort you put into Advogato and mod_virgule, Raph! I’m still running robots.net on my own version of mod_virgule but I’m guessing mod_virgule is not likely to survive long without Advogato, so it may be time to rename my version and go off in my own direction with the code. There are lots of enhancements I’ve wanted to make like dropping the specialized XML templates in favor of standard XHTML templates, replacing the template processing code with the XPATH support available in libxml2, maybe replacing the flat-file db with SQL support. There’s still a lot of potential in the codebase; it’s just a few years behind the times at this point.

I still haven’t found a good replacement for Meerkat. I’m trying to use Technorati. It looks pretty but it’s riddled with technical problems and there are apparently no humans at the other end to talk to, just faceless form emails promising replies that never arrive. Technorati only manages to update from robots.net maybe one out of every ten times I ping them. Complaints about the Technorati ping problems and their non-existent technical support are common. I’ve tried several of the recommended work-arounds for the ping problem but none have worked for me so far.

Mod_Virgule Update

I’ve posted another release of my mod_virgule fork this week. Grab the source or take a look at the changelog. This one includes the new and improved configuration handling code. Instead of loading and parsing the entire website configuration on each and every hit, it’s now loaded once per Apache process and stored in thread-private memory that persists across requests. Much more efficient. I also did some more general code cleanup and removed more of the hard coded stuff that makes it hard to use mod_virgule without editing the source code. There are still one or two hard coded things that I need to make configurable. Maybe in the next release. It’s getting close to a completely configurable system that could be compiled, installed, and configured for any site. Anyway, the new code has been running on robots.net for a couple of weeks now and appears stable.

Mod_Virgule Update

I’ve been working on mod_virgule code again. I finally addressed one of the long-standing mod_virgule ToDo items. One of the many inefficiencies of mod_virgule was that it had to load and parse the site configuration XML file on each and every hit. Now that we’re compiling against Apache 2, we can use the newer APR memory management code. So I’ve modified the code to use the thread-private memory pool for configuration storage. Now each Apache process loads config.xml one time at start up. I still stat the config file on each hit to see if a reload is needed. The new code is running live on robots.net and I’ll release a new rev of the source soon if it all holds up okay for the next few days.

I posted something about this on the mod_virgule development mailing list but I think the list is dead. I haven’t received anything from the list since last December. The list webpage seems to be gone as well. Is anyone out there still interested in mod_virgule development? Let me know and I’ll start a new mailing list if there’s any interest.