Well, Day 1 of the Subversion Vision Conference is complete, and what a day it was! It’s remarkable how wide and how deep the conversations required to explore the next evolution of a piece of software can go. I’m really glad that these conversations could be held in-person, though — as a remote employee for the past five years, I honestly think I’d forgotten just how much information you could transmit and receive in such a setting.
The day officially began when our host at Google’s NYC office greeted us and carded us through the secure entrance. After a bit of fun spent simply trying to find the conference room, Hyrum Wright (WANdisco) and I settled into our spots and cracked the lid on the first discussion topic: the feedback that we had each received from our respective employers’ enterprise Subversion customers about Subversion’s benefits and shortcomings. We took a break from that discussion when Jon Trowbridge (Google, primary author of their recently improved Subversion backend) dropped by to say “hey” and chat about the Subversion filesystem design. We were joined shortly thereafter by Greg Stein, and now with the full number of today’s expected attendees present, we proceeded in earnest.
There are different ways to approach the vision and roadmap topics, and I think we tried them all today. We summarized the must-, already-, and maybe-if-it-pans-out-haves for Subversion 1.7. We started to project just a bit about what 1.8 might contain by virtue of existing feature development inertia, but realized quickly the unfortunate fact that even a single release out, we had insufficient data to plan the release. (Which is, of course, largely why we’re all here.)
So we changed tactics a bit to try to evaluate existing plans for addressing some of the larger complaints we’re hearing about Subversion these days:
- performance shortcomings
- lack of support for enterprise-level authentication and authorization mechanisms and protocols
- lack of repository-dictated client configuration
- weaknesses in the merge tracking and logic
- lack of robustness when renames occur
- some scalability concerns
These topics went pretty deep — we only touched on the first three of those suckers — and we found ourselves trying to answer some pretty tough questions about Subversion’s compatibility promises. See, it’s relatively easy to write new code paths to support new features. But to write new code paths while insuring that old ones continue to work in perpetuity? That’s not always so easy. My gut instinct is that we’re going to need to deal with some harsh realities in this space pretty soon. In the same way that revamping the working copy library via the WC-NG effort will serve as a catalyst for new feature development on the client side, we need to find a way to get that kind of an overhaul done on the server side (and the spaces between), too.
As developers are wont to do, we branched off into short sidebars at multiple points in the day. It just made sense to take advantage of the face time to discuss some Apache Software Foundation policy matters, opine on ways by which we can attract and retain new talent in the community, take inventory of the remaining work for Subversion 1.7, and even throw out some strawman proposals for implementing certain features or enhancements.
Overall, it was positive day. It was a bit less structured than my personality naturally begs for, but definitely not time misused. I anticipate a productive day tomorrow, when we re-adjourn at 9am joined by the final two expected attendees: Stefan Sperling (elego) and Karl Fogel.
I’ll bring this post to close now. I’m compelled to turn my attention to another pressing question: was it wise to have consumed so much amazing Lombardi’s pizza tonight?