# Better late than never

I've been meaning to post my slides from my dissertation presentation for awhile. In general, I'm committing myself to practicing more "science in the open" (meaning my presentations/posters/code), so here is the embed link. Better late than never I always say.

I gave this presentation at Northwestern University on June 4, 2013 in order to attain the degree of Doctor of Philosophy in Biological Sciences. It goes along with the publication "Use of a global metabolic network to curate organismal metabolic networks". It also goes along with the MetExplore application that I've detailed in the projects tab.

# Man, I wish inspiration could strike me so I could just name this website

I've been working with my friend for awhile now and for the entire length of our project we've struggled to name it. Over the last week we finally bit the bullet and decided that we would finally name it so other people could start using it.

It was a struggle.

# A little something extra for managing PyMongo

I really dislike boilerplate code, it drives me a little bit crazy. Starting database connections falls squarely into that realm. So in the vein of "sharing is caring" here is what I'm currently using with pymongo. It's pretty simple, but why code it twice right?

# Wild unsupportable claims about how Product X sucks!

I read an article in the last month that really rubbed me raw, it was this one:

Why you should never use MongoDB

Why does it bother me so much? Mostly because it’s bullshit, but I also feel that NoSQL solutions (and MongoDB specifically) are getting an undue bad reputation due to “MongoDB/NoSQL is bad” articles making great link-bait. Even more than that, people present themselves as experts when in reality they just make extremely broad claims about a lack of suitability without properly defining what their REAL needs are that make a technology so poor.

# Is it Easter time yet?

I'm developing an node.js application with a friend and after a few weeks of actual coding we decided to change the name of one of the models from "Organization" to "Board". Pretty simple change actually, the design of the app had changed slightly enough that the rewording would make more mental sense for us.

So as I'm on the call I change the initial model details in the file and then change it in the router file where I know it's been used so far. Before I add the changes and commit though, I just run a quick check to make sure that it doesn't appear anywhere else like so:

\$ grep -R organization .


...and then I got this fun little surprise.

# What to do with 1,000 business cards?

Well, at least they make great structural support.

# Working with Windows

So, you're working with windows, either by choice (wait. what?) or force (gah, somebody else making computer purchase decisions), and you're a programmer. Not just any programmer, a terminal acolyte that's chosen sides on the great vi/emacs holy war. I'll be blunt, that first sign-on is painful. But hey, the world keeps turning and it's best to stay on top of technology. Here's how I've adjusted, with the all the steps (minus getting vim happy) coming from my Windows trailblazing amigo Dan McClary.