The DARPA Bay Area Hackfest is coming up in a couple of weeks, and I'm excited to spend the week at NASA Ames talking about great ideas and hacking on cool technology. This is the second DARPA Hackfest, a series organized by DARPA/MTO Program Manager, and my predecessor in running GNU Radio, Tom Rondeau. I'll be back in the Bay Area for the full week of the event, November 13th through 17th - let me know if you're in the area and want to meet!

I'm also quite honored to be on the list of invited keynoters, and will be speaking late in the day on Tuesday, per the agenda. As one of the goals of the event is to attract folks who perhaps would not otherwise be involved, interested, or knowledgeable about wireless, RF, and Software-Defined Radio, my talk will be about SDR and the open-source ecosystem that continues to push the technology forward. You can read the abstract for my talk, in the form of a blog post, here on the DARPA webpage.

Tom ran a half-day workshop at the GNU Radio Conference last month as part of the run-up to his hackfest, and wrote a retrospective about that, and GRCon more generally, here on the DARPA blog. I'm in whole-hearted agreement with the thoughts he shares in his post, so I won't echo them here, but there is one part of his post I want to touch on:

At the workshop, we allowed people to look at the drone and SDR system we’ve been putting together, and we walked attendees through the steps of uploading, installing, and running gr-uaslink. Part of this procedure includes installing and running a drone simulator that accepts commands from gr-uaslink so that anyone can start exploring the SDR links without needing a drone and the full hardware setup. I would estimate that well more than half of the workshop attendees managed to get the full gr-uaslink to simulator working, which is really quite an accomplishment for these kinds of hands-on workshops.

I want to highlight just how big of a success this is. While a 50% success rate might not sound amazing, it's actually quite significant. If you think about the complexity of setting up a system that allows you to interact with the wireless controls of a drone with no prior coordination, a 50% success rate in a crowded room in a half-day workshop is a substantial accomplishment, and really speaks to how far the open-source community has come in enabling this sort of work (this was done using a custom GNU Radio Out-Of-Tree module, gr-uaslink).

At the same time...

There were two big challenges faced during the installation. The first problem is the different ways people had installed GNU Radio, and some of these made it difficult to get all of the necessary software to link up properly. A bigger problem a significant issue for much of the open source community: confusion between Python 2 and Python 3. Some workshop attendees were able to work through this, but these were time-consuming processes that made it hard for people to complete the full exercise in the allotted time.

We continue to see issues like this that might be frustrating or annoying to seasoned developers but are considerable barriers-to-entry for people just getting started. Tooling is a difficult problem, and it's clear we have a lot of work to do in making things more accessible. As Tom says, this isn't a problem just for GNU Radio, but for the open-source software world, generally. It's arguably even more difficult to solve in the open-source community where developers are often volunteers, and are focused on the areas of the project that interest them rather general project health. [Note: I recently wrote about this from a slightly different perspective, here: Build Your Portfolio with Open-Source].

If you'll be at the DARPA Hackfest, please come find me and say hello! If you'll be in the Bay Area and want to meet up, shoot me a note on Twitter or by e-mail and let's coordinate =)