Today was fantastic. I woke up feeling like I had overslept and surely it was 10:30 already. Nope, 7. Showered in my fancy hotel room shower (nozzles at belly level and a console in the shower to select muzzle velocity and frequency of rotation! I stuck with the boring old head-level traditional shower).
The hackathon group was assembling when I got down there. Lots of people with laptops asking each other "is the wireless up?" "The wireless is up". "Is the wireless up? Jason's having trouble getting an IP address." "The wireless is up." "Do you know what the trick is with DHCP on Unix?" "It works on Windows 2000." "That's not the question I was asking." (Jason got payback when he watched my W2K laptop panic and hard reboot in front of his eyes)
Ewan and Lincoln ran a great meeting. They only had the vaguest of ideas of what they wanted to do when they arrived. It quickly became apparent that the interesting idea was a front end for all the data sources out there. A single API, rather than a zillion depending on which data source you're using. And consistent across Java, Python, and Perl.
There were architectural decisions (server or module?), use cases, tables of data sources and the languages that support them, and much more. At 11:30 we broke up into groups according to data source (relational, legacy flat file, CORBA, etc.) to discuss which specific formats and systems we'd support. Then we boiled it down to a few modules, assigned a designer and at least three programmers to each, and away they all went.
During the meanwhilst, I was writing the slides for my tutorial on Monday. I think it's going to go swimmingly. I'm unsure whether I should take half, one, or two hours. I have Lorrie, Cynthia, and Jennifer to ad lib on the life of a bioinformatician when I'm done, and to correct me should I get something wrong. It could end up being a short tutorial, but I hope not. Lorrie, the bioinformatics editor from O'Reilly, arrived near the end of my slide-making, and looked them over. She carefully chose her words and said "well, I'll certainly have plenty to heckle about."
Around 4:20, one of the biohackers gave me a ride downtown and I bought more food for the party. Meat! Garden burgers! Meat. There are only a few vegetarians (4 or 5) but they're bloody hungry people! I had a farce with the hotel when I got back. My room as a barbeque. I called for tongs and a spatula. "Has someone shown you how to use your barbque? We'll send someone." This guy didn't know how it worked. "Oh, it's not self-lighting. Do you have matches?" Off he goes to find matches. I call about the tongs and spatula again. "We're just trying to find some." The guy returns with the matches and verifies it works. He leaves, and I call about the tongs and spatula again. "They're on their way." The guy arrives with utensils and says "we're thinking of making up a kit--tongs, spatula, lighter." I think, but do not say, "yeah, that'd be a great idea. You know, with ideas like that, you should be in the hotel business!" Obviously nobody who has the $$$ to afford a hotel room like this at rack rates ever wants to barbeque.
The party was great. The booze ran out at just the right time, so everyone sobered up and wanted to go home before I had to kick them out :-) Lots of discussions, technical and non. There's an interesting dynamic here, with some tensions that are very interesting. Perl vs Python and Java isn't as big as I'd have thought--I think the Perl people are pretty mindful of the others. CORBA is a polarizing topic, as is XML. And I love to walk past a couch and hear "WSDL? That's nothing but shit". Amen, brother!
Tomorrow's more hackathon. They'll be developing the system they came up with earlier, as well as having some sessions on other topics. For instance, they introduced me to the subject of "fuzzies" tonight. Fuzzies are a pain in the ass to people who write sequence processing code. You'd think a DNA sequence would be easy to describe: starts at position X, ends at position Y. Most are like that, but some are expressed as "starts between X1 and Y1", or (better yet) "before X1". These are all fuzzies. Fuzzies don't scale "before X1 can be a *lot* of basepairs if you apply it to an entire chromosome. And their handling in various languages is dodgy--you need to preserve the fuzzy so you can output it later, you need to let people manipulate the elements of the fuzzy if they want to (start, end, feature before, etc.), and offer to resolve the fuzzies that are easy to turn back into hard coordinates. I expect there'll be a good half hour of this, at least, tomorrow.
Tomorrow I write quiz show questions. Lincoln's going to be on a team, and I'll ask some others tomorrow. I want someone I know on each of the teams, so I know there's a solid anchor. It's probably highly irregular and would get me frowned at if Quizmaster Orwant were here, but he's not, so I'm running it my way. If I keep up this kind of event tampering, I'll be charging protection money to the attendees in no time!
Dave The A/V Guy is here! He's been doing ORA events for years. I have fond memories of doing improv with him at the Atlanta Perl Tutorial. He loaned me some DVDs (I watched Tomb Raider after everyone left tonight), and tomorrow will have a cable for me to connect my laptop to the sexy sound system (I'll finally able to play my MP3s!).
So with visions of Angelina Jolie floating through my head ... g'night!
--Nat
...or be the central figure in Robert Redford's "Quiz Show II" sequel project...
(To anyone who hasn't seen the Redford-directed "Quiz Show", do so post-haste. It's a fantastic film.)
--rjray