Mark Atwood <fallenpega...@gmail.com>: > Let me just chime in with... bisect is awesome. > > When I first did a bzr bisect about 8 years ago, I was delighted and > peeved. Delighted because it's just so damn elegant, and peeved because > it's something that could have been tooled for 15 years sooner, but > generally wasn't.
I've actually considered this carefully, because...well, see below. On the one hand, yes, one does wonder why it wasn't thought of sooner. On the other hand, older VCSes were either (a) horribly slow, or (b) didn't have unitary changesets, or (c) both. There's a kind of Sapir-Whorf-like effect by which the limits of your tools become the limits of your thought. It would have been hard to imagine bisection in the presence of those limits. *I* didn't, and this is a specific technical area where I have a long history of thinking outside the current box, bracketed by inventing Emacs VC mode in 1992, the DRCS proposal in 1997, reposurgeon in 2010, and src in 2014. In fact, with DRCS I came *this close* to inventing the DVCS in 1997 - I had the basic idea of building a distributed store around a repository sync operation three years before arc and seven years before git. Probably would have gone the rest of the way if I hadn't gotten distracted by having to be Mr. Famous Guy for five years. Once you have DVCS, bisection falls out as a natural consequence because changeset checkouts are fast. I really don't think you can avoid having the possibility slap you in the face if you have any design sense at all. In particular, I don't think *I'm* dense enough to miss it. So, in a sense, bisection is a discovery I should have made. That's why I've spent some effort on the question of why nobody got to it a decade sooner than the bzr guys. And I think it's just that slow checkout speeds blocked our view. The biggest failure of imagination in my career was that I didn't see that a full open-source Unix was practical after the 386 reached volume ship in 1989. If I'd had a clue then I would probably have launched something like Linux myself, if my nerve didn't fail. But...I might not have had the capability to follow through. Hard to know. My *second* biggest failure of imagination was not grokking just how important version control was, even though I was a very early adopter of RCS/SCCS. If I had known to concentrate on that problem ... well, in the history we have, I anticipated the DVCS. I think it's quite possible I would have short-circuited fifteen years of wrong turns in VCS design before 1990. Difference is, that wouldn't have taken any nerve at all. Following through on the key insights, had I got to them, would have been easy stuff, comparatively - well within my capability and our tools at the time. Can't win 'em all, I guess. -- <a href="http://www.catb.org/~esr/">Eric S. Raymond</a> _______________________________________________ devel mailing list devel@ntpsec.org http://lists.ntpsec.org/mailman/listinfo/devel