EclipseCon Europe 2013 Day 1: Cat Attaks

Posted on in Blog

What a great day ! Sorry if this post is harder to read than usual, I did not have time to write it during the talks so I have to use my notes. I’ll try to do better tomorrow.

Single Points of Failure: The Human Element of Software Engineering (Brian Fitzpatrick)

After warm applauses to celebrate Ed Merk’s brithday, Brian gave us one of the best keynote we ever had at Eclipse Con. This is definitely in my top 3 with the EclipseCon France keynotes.

It started with a quote that well sums up the talk: "Engineering is easy, people are hard". Although most of us has spent 5 to 8 years learning computer science, we haven’t spend one single minute to learn how to work with others. That’s why we spend most of our time yelling and complaining, instead of doing what we like. By working on humility, respect and trust, one could really improve his work conditions.

One of our biggest issue is the genius myth: most of us want to be seen as smart, because we want to look like our idols (so true, for me that would be Donald Knuth or Bret Viktor ^^). There is no genius (well or maybe once every century). So this attitude only produces insecurity and inhibits progress because you’re so afraid of making it wrong. I think Biran got me when he quoted Tylor Durden :  You are not special. You are not a beautiful or unique snowflake. You’re the same decaying organic matter as everything else.
Then Brian defined the Bus factor principle, which is the number of people in your project that can be hit by a bus before your project collapses. Lose your individual ego, it won’t get you anywhere. What is important on the other hand is to have a strong team ego: be proud and be demanding of what your team produces, . Don’t erase your failures, document them.
Brian made us laugh with many stories, I loved that one : 
A manager loses 10 millions $ in one day. Then he gets to his office, prepares his demission letter. When called inside his CEO office, he gives the letter. The CEO reads it, and say “Why? I’ve juste spent 10 grounds forming you!”.
Don’t destroy bad habits, replace them with something better.
Really a great keynote, with many concrete advices I’ll definetely apply at home.

image

I did not attend Melanie’s Talk but so many people were talking about it that I at least have to put a picture :) She demonstrated how can Eclipse Sirius be used to define easy-to-access modelers to program a cat robot using arduino. The talk was definitely a success and you’ll probably have a chance to see it in future Eclipse events.
Due to the diversity of the persons (developers, designers, managers) and the artifacts (code, doc, test, bugtracker issues, builds…) involved in a software lifecycle, everyone uses different tools to handle related information. Lean/agile development is ony lean/agile if it is handled from end to end. Managing information in a spreadsheet somewhere in the chain and you’ll fail.
Thanks to the continuous integration & devops, we are now able to have a lean development on the software assets. But for the other artifacts, we need a software lifecycle integration (SLI) to link all this information. A good example is the gerrit mechanism in eclipse, in which hudson builds, reviewers and commiters can communicate very quickly and fail as early as possible. A similar mechanism must be made for scrum masters, managers… Federating is the keyword : find a common representation(model) to represent ALM information. Interesting talk, but I want to get more details about what’s planning for Mylyn 2.0.
Well the least we can say is that many cool stuff are coming in EGit. I personnaly use the command line, but that talk convinced me to give Egit a try. 
Egit 3.0 (June 2013) provides new merge options, rename detection, and the possibility to use expressions (head..3, commit id…) to reset.
Egit 3.1 (September 2013) provides new presentation modes in the staging area (tree, list) and filters. There’s also an interactive conflict resolution during rebase, and the integration with emf compare for models, 3 way compare and mylyn links in history & staging view.
Egit 3.2 (December 2013) will provide a lot of new features like
push branches (equivalent git push -u) and push tags wizards interactive rebase support, search for commits in the history view,  Merge drivers: binary & model-base merge drivers will be added to the text-based merge driver Support for HTTP

There are also a lot of performance improvements (like the clone and fetch operations which went from 60s to less than 80ms thanks to the use of bitmap indexes to reduce the “counting” phase).

The demo of these new features was really impressive: “compact tree” view, filtering, additonal Drag and Drop support to open files, completion showing previous messages and impacted files, interactive add… make rebase operations and staging area manipulation way easier.

Graphical interactive rebase, although still a work in progress, is clearly impressive ! It has all the feature you could expect (skip, edit, squash…). Just select the commits you want to rebase interactively, click on interactive rebase, open the new git interactive rebase view, use UI tod ecide what you want to do with each commit and just press start. Convenient!
image
Just to let you know that we’ll put the slides of our talk tonight. The talk went well, I’ll let you read the slides and ask questions if you’re interested.
Modeling Symposium
Always a good place to discuss with modeling enthusiasts. Many projects were presented (EMF Client Platform, EMF Rest, EFactory 2 - based on Xtext, OCL…). Eike Stepper presented the new Role-based security model provided by CDO 4.3. It allows the definition of fine-grained access rules on your CDO repository. For instance you can easilly forbid one user to have WRITE access on any element of a specific type. Cool stuff ! 
Sirius Booth
image
This year is particulalry busy as we also have to be at the Sirius Booth. Many many people interested in this new eclipse project, hope to see you all at the Sirius talks and especially at the Sirius BoF, were you will be able to build YOUR modelers for your needs with the help of the team :) 
I also had passionated discussions with Mylyn Intent enthusiasts, many exciting things should arrise in the Eclipse Luna release :)
Well that’s it for today, see you tomorrow! And as always, please do not hesitate to stop me and have a chat :)