That also means it's been five years since Millennium let me go. Having spent over ten years there, it sometimes seemed to be my entire post-graduate life even long afterwards. But now, while I remember many episodes from that time, it definitely feels like the past. As does Codon, even though that was much more recently.
It also means 15 years since I stopped showing up at Harvard regularly, though my defense wouldn't be until the following spring.
Perhaps most significantly, it means I've been in bioinformatics for twenty years. The exact moment I became a bioinformaticist is a bit hard to pin, but it was in 1991 that I decided that this was my career path. I had dabbled in writing some software before that, but planned on a career in conventional molecular biology. Those twenty years have seen an awful lot of changes. When I first came to Harvard, I was shown how to use ftp and tar and gzip, and those are still workhorses for me. But I had not yet discovered Perl (though I had seen ads for a book on it) and the Web was several years in the future.
The concept of relational databases were being thrown around a bit, but I didn't really understand them or their advantages, and many proponents wouldn't bother to explain them. They were clearly big, arcane things that "real programmers" were needed for, along with some serious hardware. Now, I can easily fire up SQLite or MySQL (or a number of other engines) on just about any machine, and indeed SQLite runs on my phone. On my phone? I was just starting to picture getting a portable computer in 1991 and the idea of a mobile phone wasn't at all on the radar.
I spent much of my first graduate rotation writing code to parse Genbank entries to build a database of exons and their translations. Not helping the process was the fact that Genbank was rife with misannotations, with many exons on the wrong strand or incorrectly annotated for frame. Another chunk of time was spent on a BLAST parser and my own sequence reading/writing tools. Genbank is pretty clean of that, though mislabeled sequences and contaminating vector seem to be recurrent problems without end. If I want to parse Genbank, read/write sequences or parse BLAST, I simply install the appropriate BioPerl module (or BioJava or BioPython or Bio*). It certainly allows for much more rapid prototyping and construction of tools.
So farewell to 2011. 2012 is already looking to be an interesting year. I'm off-site today, but when I return my "to do" list has a bunch of items I've never had before: check plates, start cultures, run PCR. I'm still running a lot of bioinformatics as well as managing outsourcing relationships for sequencing, but for the immediate future I'll be spending multiple hours a day at the bench. And the truth is, I'm enjoying it so far. I still get a thrill from finding something cool in a new genome sequence, but there is also a thrill to seeing actual biology emerge from the actions of my own fingers.