Monday, March 30, 2009

EclipseCon notes and git

Well, I'm back at my day job at Wind and am doing a little reflection on what happened last week at EclipseCon. Despite the rumored lower attendence, I met with pretty much as many people as I do every year, maybe even slightly more. And hopefully that'll translate into growth in the CDT community.

And I guess my talk on building communities was a little over the top on the subject of project "takers" that I had a number of people come up to me and apologize and offer to contribute in the future. I certainly didn't mean to offend or criticize. I just wanted to prepare project contributors that there are vendors and people who are happy to take your work for free and not give anything back. And, while that's frustrating, with open source licensing there's nothing you can really do about it but be mentally prepared to see it happen.

The one area where I saw a very interesting rise in momentum was with distributed version control at Eclipse and git in particular. It started with discussions at the councils on Sunday where it became obvious that we need significant community interest and willingness of the projects to drive this home to justify the significant cost to the Foundation. There were a couple of BOFs and panels that I missed but it sounds from Karl's post that the activity was significant enough for the Foundation to start putting a plan together. Very cool!

The more I talk to people and dig into it, I think git and DVCS in general is probably one of the most significant technologies driving change in the way we work on software development projects since objects invaded our world. As evidence of that, the thought of distributed source repositories opens the door to the IDE in the Cloud. The Cloud could be built around git repos and if I need to work disconnected, or work with command line tools, I just clone it onto my laptop and merge back later. And being the old "curmudgeon" C/C++ embedded tools guy, that's a significant admission...

1 comment:

  1. Exactly :)

    The cloud could offer you very simple tinderbox-like testing on a gazillion of architectures and access to huge machines for compiling (like those already available in amazon).

    It could also offer really easy cross-compiling setups.

    Or, crowd-sourcing style "expert help". "I offer $100 to whoever wishes to fix my bug in foo.c:100. Deliverable should be a patch with a signed-off-by, applicable by git-am, or a pull request
    that makes test "bar" pass".

    Or social networking style services "developers who used this API also used ..." embedded right inside the code editor (e.g., via special quickfixes).

    And at the end of the day everything is just stored in git, so you can clone to your laptop when you don't need the cloud's added value (and increased latency).

    This is probably the "flying cars future" but it is not impossible to implement either :)

    ReplyDelete