Monday, February 16, 2009

Method history - time dimension of code repositories

Recently I've been looking into various aspects of integration between various version control systems and Itellij IDEA - one of the best Java IDEs around. Although they did a great job with their new version in terms of performance and feature set, but I feel that VCS is conceptually on the same level where VisualStudio with MS SCC API was decade ago. Yes, JetBrains have added integration of changes between SVN branches, but frankly speaking, do you really need this is your IDE or external tool will work for you?
I feel that we need more fresh ideas in this space. Something that you typically don't expect, out of version control like git-bisect. For instance, it would be much more interesting if I will be able to view revision history on the level of individual methods in Java code, rather than on the file itself. This way I would be quickly answering questions like "who and why wrote this piece of s..t?". This question very often comes to me even if I'm hacking in my own code, not only someone else :) Git-blame is similar, but it does not understand the programming language (which IDEA does very well), so it is operating on the level of lines, rather than meaningful pieces of code.

No comments: