Nov 07 2011
As I mentioned late last week (done so because it took that long to finalize some details), Ben the Pyrate and I were invited by Bread for the City to take part in what they called Broadband Bridge, a technology discovery faire for the public. Broadband Bridge contacted us because one of their major projects - adding broadband Internet access to the services offered by Bread For the City - dovetails with the spirit of Project Byzantium if not the two use cases we had in mind when we started building it. In truth, there is absolutely no reason that one could not build and maintain a community mesh with Byzantium. Anyway, Ben and I polished our presentation up a bit by working on it in Google Docs during the week and we got everything pulled together for Saturday afternoon.
We milled around a bit while figuring out who was who and where everything was, a slightly uncomfortable turn of events. I felt as if everything was organized around us but we weren't actually privy to the layout of things. Presently, two of the organizers who had invited us found us in the crowd (maybe it was our standard issue black trenchcoats) and after describing what we had on us (a presentation on mesh networking and Byzantium in particular) we figured out where and when we could present. The tech faire was standing room only, with other projects' tables arrayed around the building's lobby and attendees milling around all over the place. As we are wont to do when out and about, Ben and I had to be very careful about turning around too fast lest our backpacks accidentally knock something over. On the one occasion that there was an unintended gravity test (which wasn't our fault, incidentally), we took a few minutes out to improvise repairs on the apparatus in question.
Ben and I decided that we were going to do a live demo of Byzantium at the tech faire, and set about building a couple of USB keys that had the latest build of Byzantium on them. Assembling the module with the latest build of the code is actually very simple, and we've got it down to more or less of a science these days; installing the underlying Porteus Linux distribution even easier because only the copying of files is necessary. The problem we ran into at the moment was creating a persistent storage file to hold some of the stuff that would be generated at boot-time. Ben and I fumbled with it a bit and by working in parallel we eventually got one build, the necessary information copied over, and then cloned to the other USB keys for the demo. I'm not entirely certain of what happened - I suspect a recent system rebuild had something to do with it - but at this point it's academic. The mad scramble was over and we swiftly booted three laptops, two running Byzantium nodes in a mesh and a third off to one side as a client idling on the web chat server.
Due to the rather tight schedule at the tech faire, about an hour for every presentation and things in a bit of a state of flux, Ben and I didn't have a whole lot of time to work with. I think we had half an hour at most to present. Part of the problem was that we were unsure of the nature of the crowd we were talking to - were they technologists? Hackers like us? Everyday folks who were curious? Where do you take the average and where do you err on one side or another? So, as we are wont to do, we jumped off the cliff, flapped our arms really hard, and flew pretty well. A few minutes in someone was kind enough to bring a microphone and PA amplifier upstairs so we were able to stop shouting over the noise from the weird accoustics in the building. We've given this presentation a few times so we dropped five or six slides on the fly, all of which were the technical ones that would have lost our crowd. We also took care to steer our presentation back onto the track of community wireless and away from crisis mitigation. All in all we got the gist across, as evidenced by the questions from the audience at the end of our half hour.
I don't know if anybody was using the mesh we'd set up prior to the presentation; we didn't have time to mention it explicitly, and the room we were in was earmarked for the use of an existing working group and we didn't want to get in their way. So, we reluctantly shut our laptops down and immediately ran into some developers affiliated with Open Technology Initiative. We spent the next couple of hours comparing notes and talking about the guts of our respective networking projects, especially the pros and cons and some of the architectural tradeoffs that have to be made. We discussed some mesh routing protocols in particular and what we found them useful and not useful for. More importantly, we discussed some possible attacks against mesh networks, especially those that form organically and not as the result of any sort of plan. This is definitely something that we have to start baking in right now, and I think I have enough information to start working on a post. But, that's neither here nor there. We still have an alpha release to get out there.