Quite a walk down memory lane.  Thanks Tom.

My own memory involves paper tape and card decks as the persistent source with text files being ephemeral in the early days. It was much harder to keep variants in this form, but much easier to remember which version was the correct one. I'm sure others kept their main deck of a program with small batches of variations carefully managed with notes and rubber bands.

It was excruciatingly challenging in some ways to collaborate with others in this mode... though it was higher fidelity to sit down with a printout of a program and go through the logic line by line with a colleague than to wait for them to try to merge their code with yours from a revision control system and for them then to ask you oblique questions via e-mail about their (nearly) orthogonal changes relative to yours. The former was less "efficient" but required more reflection on the motivation of specific changes and/or choices in coding style and algorithmic design.

As a student of collaboration, and a long time user of revision control in code and in documents, I am a big fan, but also share the author's curiosity as to "what is next?". I've used visual programming languages and even dabbled with evolutionary programming, but don't see a clear next step. It feels as if we might be on the blind side of a phase transition, not so much in version control as in collaborative or collective problem solving, facilitated by algorithmic languages and version control systems.

A biological (genetic, regulatory network) metaphor seems apt for this next phase?

- Steve
I suspect some of us will be interested in this brief history of version control.

http://www.flourish.org/blog/?p=397

--tj


============================================================
FRIAM Applied Complexity Group listserv
Meets Fridays 9a-11:30 at cafe at St. John's College
lectures, archives, unsubscribe, maps at http://www.friam.org

Reply via email to