Open Source development! - Journal of Omnifarious
Oct. 2nd, 2005
08:26 pm - Open Source development!
I've spent a bunch of time this weekend adding the substructure for an interesting feature to Mercurial. The feature will enable people to pull down specific changes from repositories instead of just pulling down all the changes the repository has that they don't.
It's been fun. I got to write a graph traversal algorithm for finding all paths in a DAG from one set of nodes to another. All nodes it selects are reachable from at least one node on each end. Nodes on either end that are not reachable from any node at the other end are also dropped. It only works for the special case of the nodes already being topologically sorted.
But, it was still a bit tricky. I'm proud that in the code I finally tested I've only been able to find one bug so far. :-)
I need to find a way to do more of this kind of development. It's been forever since I've been really excited by any job I've had. Mostly the managers and schedules manage to bleed all the excitement and interest out of the job for me. Of course, it also helps that I want to actually use the features I'm helping to add.