Catching up on everything else.

Sep 08, 2012

I suppose I should talk about work a bit.

I don't ordinarily do that, because I think there's a conflict of interests between writing in a personal blog and talking about things I get paid to do, but sometimes it can't be helped. The last couple of weeks have been spent preparing for a fairly major server migration (e-mail service for a couple of offices and a couple of dozen employees), which for once didn't involve significant hardware wrangling (though that's going on in other areas) but does take a fair amount of time (most of it spent writing documentation) for support afterward. Or, to put it another way, I've been on call since the switch was pulled and fielding support requests (paradoxically, over e-mail). This is why, in case anyone from the TARDIS warming party last weekend stumbles across this post, Lyssa and I ducked out when we did. She had to work and my pager went off.

The migration is also why the Byzantium development sprint was pushed up a week. We didn't get a whole lot of coding done, unfortunately (there's only so much we can do until the control panel refactoring project is done) but we were able to close out a lot of tickets in the bug tracker and brainstorm requirements for the other major functional change we have planned. As I've mentioned a few times in the past we want to implement interoperability with other mesh networking projects out there, and we've been meeting with representatives from them whenever we can to put our heads together, lay out what each of us have going on, and figure out what we have to do to make our respective projects work together with as little trouble as possible. From what we've determined thus far, there are many strategies that can be used to not only detect another mesh, but figure out what kind it is. So many, in fact, that if we don't do it right the first time out it's not going to work at all. With things like this, coding is the last thing you should be doing. Thinking is what you should be doing, and coding comes later. We also experimented with a couple of distributed software applications that weekend but I don't think we tried as hard as we could have that evening, and should schedule a more concerted effort for another time.

And so to that end, Project Byzantium's core team was invited to participate in the International Summit for Community Wireless Networks in Barcelona in October. Sitwon, Haxwithaxe, and I will be flying to Spain for the conference, where we will not only be attending the conference but we'll be running a think-tank panel on Friday, 5 October 2012 at 1745 hours GMT+1. I don't know if videos of the conference will be made available, or if they conference will be livestreamed, but we're going to ask the conference organizers to put our slides on their website as soon as possible.

This also means that we've had to line up some extra equipment for this trip. These days it's the exception and not the rule that your phone will work properly overseas, so Hax and I had to buy secondary cellphones. Most countries on the rest of the planet have GSM cellular networks that have different frequency spectra configured, and it's wise to purchase a quad-band GSM cellphone to be sure that it'll work everywhere you go. Then we had to find pre-paid cellular plans for Europe (not bad, but per-minute rates will get you in the end); that said, I think we're going to be relying on VoIP for nontrivial voice and video communications while we're over there. We're still getting the details worked out, so I don't have much more to say on this topic, other than it seems complicated until you actually sit down to figure it out. was our go-to site for helpful information, and I recommend it highly if you've never done any international travel. I'd also like to thank the friends and colleagues who took the time to answer my admittedly dumb questions; you know who you are, fistbump, et cetera.

A couple of weeks ago Australia passed a law in which communications providers can be forced to store all of a customer's traffic before a warrant has been issued. The civil liberties implications aside, this law can be potentially abused to force the retention of traffic for anyone and everyone in Australia under the guise of determining who might be up to no good (sound familiar?). This has infuriated not a few privacy activists and information security practitioners (because data retention systems and surveillance mechanisms can be compromised by attackers as well as abused by the people tasked with using them), and a new meme was released into the wild. Cryptoparties, as described by Asher Wolf, are parties where people get together to learn basic operational security, install basic cryptographic software, and teach each other how to use it safely while eating pizza and drinking beer. Everything from Tor to Truecrypt is taught. Cryptoparties are taking place around the world at a rate of one a week with more on the way. They are being organized in the wiki at along with resources for prospective attendees, and they are being announced on Twitter on the @cryptoparty feed in particular, and with the hashtag #cryptoparty more generally. If you're interested in attending (and I strongly suggest that everyone find and attend a cryptoparty near them) check those two places first.

Incidentally, I'm one of the organizers of the Washington, DC cryptoparty. It's probably going to be held at HacDC late in September or October, but this is a busy time of year for the HacDC physical space so there isn't a solid date yet. When there is, I'll post it far and wide. So, bring your laptops, bring your own beer, bring your Luther Blissett nametags and your Groucho glasses, and a little local hard currency to help defray the cost of pizza delivery. The corrupted nerds will train you up.

Seeing as how I feel as if somebody entered me into a butt kicking contest while I have a bum leg, I've finally reached the breaking point. I have too much data to sort through, to be blunt. Between all of the files on Windbringer (now well over three quarters of a million and growing daily), nearly a dozen e-mail accounts, and data in services all over the Net trying to find anything in a hurry has become difficult in the extreme. While waiting for messages to migrate from server to server I did a couple of searches on "personal search engine" and discovered an application called Recoll for Linux. Recoll is basically a GUI front-end to a bunch of scripts that determine the MIME types of files, run them through dissectors to extract their contents, and store them in Xapian databases where they can then be searched. After a little jiggery pokery I turned Windbringer loose to index my home directory, a task that I let run overnight. The next afternoon when Haxwithaxe, Sitwon, and I were arranging lodgings and telecommunications for the conference in Barcelona I was using Recoll to search Windbringer in realtime and use the information to help set things up. Accessing Recoll's search indices was practically transparent as far as my workflow goes, and I've been using it pretty heavily since then. In point of fact, in just twelve hours Recoll has become indispensible to me. I've already written a couple of utility scripts that make it a better fit for use on laptop computers, and I'm strongly considering retiring some of the information indexing agents in favor of a new generation of agents that index directly into Recoll rather than page, text, or e-mail me alerts.

My only (very minor) complaint about Recoll is that while the indices are being updated by the recollindex daemon system load goes up (and thus, system responsiveness goes down). This can't be helped because the application has to find all of the new and recently updated files and re-index them, otherwise your search index will be out of date and less useful to so. So, keep this in mind. That said, I can't recommend Recoll enough if you're a Linux user, see if your distro packages it and if it does give it a try. You won't be sorry.