Eclipse 4 is Coming, Are You Ready?

Juno, the next Eclipse release train, will be the first time the default Eclipse platform will be based on Eclipse 4.   This means all the packages on the eclipse.org/download page will be based on Eclipse 4, so lots and lots of people are going to be using Eclipse 4.  The Eclipse 4 team has done a great job on the compatibility layer so we are expecting a smooth transition.

Eclipse 4 also presents a great opportunity for RCP developers to build even better RCP applications.  EclipseCon 2012 features a ton of sessions to educate developers on how to benefit from Eclipse 4.   Many of these sessions are being provided by the Eclipse 4 committers, so you get to learn from the experts:

– A 3 hour tutorial from Kai Toedter on ‘Creating Rich Clients with Eclipse RCP 4.x

The Eclipse 4 Platform Explained -Tom Schindl

Eclipse 4 API: The Path of Least Resistance – Eric Moffatt

Eclipse 4 meets CDO: Now You See It, and So Do They! – Eike Stepper, Eric Moffatt and Tom Schindl

Eclipse 4.2: Tips on API best practices for a 3.x plugin running on both platforms – Eric Moffatt, Remy Suen and Paul Webster

Eclipse 4’s Modeled UI: Providing you with the Tools to Chart you own graph – Remy Suen

– and Experiences from porting a commercial RCP application to Eclipse 4.x – Fredrik Attebrant and Anders Forsell

Of course there will also be lots of time for networking and meeting the committers working on Eclipse 4.   If you are involved in Eclipse RCP development or building Eclipse plugins, EclipseCon is going to be a great way to make sure you are ready for Eclipse 4 and Juno.

Centralized Management of Code Quality

Our vision for Agile ALM Connect is to bring together the leaders of different tools that are being used across the application lifecycle.   Therefore, I was very happy that Olivier Gaudin, co-founder of the Sonar open source project,  agreed to speak at Agile ALM Connect about how continuous inspection of code is an important aspect of continuous delivery.

Olivier also agreed to answer some of my questions about Sonar and how Eclipse developers can use it.

1. Sonar is an open source platform to manage code quality.   How does Sonar work?

Sonar is a centralized way of managing code quality. This enables teams / departments / organizations to define a shared set of quality requirements and manage it collectively. Sonar provides automatic code review through static analysis and to a certain extend dynamic analysis. It also provides manual review capabilities for quality defects that can only be detected by human-being (accuracy of a comment, expressivity of the name of a method…)

Sonar is based on a 3-tiers architecture :

  • a database to store the results of analysis. Sonar today supports Oracle, MS SQL server, MySQL, PostgreSQL and Derby.
  • a web server to report the results of quality analysis
  • a set of analysers that can be triggered as a simple batch or through ANT, Graddle or Maven to integrate the project build mechanism

Sonar support today 14 programming languages (Java, C#, Cobol, PL/SQL…)

2. How would you suggest people use Sonar with Eclipse?

Our vision has always been that code quality should be managed in a centralized manner but this is clearly not sufficient for code quality management practice to becomes part of the developer’s daily job. This is the reason we have built a plugin for Sonar in Eclipse to extend the quality management. This plugin shows quality defects to the developer as he reads or changes code. This provides him a very good opportunity to improve this code at a small cost and to make a quality check prior to committing changes to the SCM. On top of this, a Sonar Mylyn connector allows to track all open reviews assigned to the current user.

3. What do you recommend for people who want to get started using Sonar?

My recommendation is to give it a try, to find out by yourself the value to get out of the tool. There is a two minutes installation guide and even a one minute if you are on linux. Sonar will provide you a lot of information about your project, but most importantly it will provide hotspots, risky areas in your projects and items that could be fixed immediately.

Once you are convinced Sonar should be part of your software factory, you should start making analysis part of your builds: daily analysis is what we recommend. Then you need to spend some time deciding about the quality requirements, i.e. what quality defects are not acceptable in your organization. You are all set to start fighting you technical debt: this is what we call Continuous Inspection. When you are comfortable with the platform, you can start adding plug-ins to extend functionality and fit your needs.

Learning from your peers

At any technology conference attendees expect to learn from the industry experts, EclipseCon and Agile ALM Connect certainly deliver the experts.  However, learning from the experiences of others is equally important.   That is why this year the EclipseCon and Agile ALM Connect program has a big focus on learning from your peers.    There are some amazing organizations doing amazing things with Eclipse and you see a snapshot from these EclipseCon sessions:

And for Agile ALM Connect we have talks from companies that have very impressive track records for delivering software.  There is a lot to be learnt from their experiences:

The program committee has really selected an amazing line-up of sessions from different industries.  Certainly a lot to learn from your peers.

  

What is the Best New Eclipse Product in 2011?

Each year companies and open source communities release some amazing new products/projects based on Eclipse.   It really is amazing the innovation and creativity that happens in the Eclipse ecosystem.   Last year we recognized many of these new product at the New Product Showcase at EclipseCon 2011.   The winner of the Hot New Product award was the Chronon Debugger.

We are pleased to announce the New Product Showcase for EclipseCon 2012.   If your open source project or your company has released a brand new Eclipse-based product or project in 2011 then you should consider participating.     New doesn’t mean a new version, new means something first released to the community in 2011.   It can be a new Eclipse project, a non-Eclipse open source project or a commercial product.   The attendees of EclipseCon and Agile ALM Connect will be voting during the showcase to decide the Hot New Product for 2011.

We have limited space so if you want to participate then sign-up soon.

Adventures in Developer Advertising

During the month of January I have been doing some advertising for EclipseCon 2012 and Agile ALM Connect.   This year we are in a new location (Reston, VA) and Agile ALM Connect is a new conference, so we wanted to make sure the word got out.  I am a big believer in sharing data and marketing experiences, so I thought it might be interested to share the experience we had with the different advertising outlets.

We setup  (or at least attempted to setup) advertising campaigns with Facebook, LinkedIn, Twitter and Stack Overflow.   Stack Overflow is one of the top sources of referrals to the eclipse.org web site, so I thought it would be interesting to see if we could drive traffic to the eclipsecon.org site.

First off, Twitter was quickly disregarded since you needed a budget of at least a $5000/month.   My budget across all media outlets was less than the minimum required by Twitter.   It is obvious Twitter is for the big-time advertisers, not the long-tail.

LinkedIn allowed for small budgets but the results were very disappointing.  I setup campaigns for each EclipseCon and Agile ALM Connect.   After 1 week, I had a total of 5 clicks, at a cost of $3/click.   [As an aside, advertising is often measured in click-thru rate (CTR) and cost/click.]  LinkedIn kept recommending for me to increase the cost per click but frankly paying $5 for someone to click on a URL is hard to justify, so I ended the campaign.

Stack Overflow required a minimum of $2500/month but considering their importance in the Eclipse community I decided to give them a try.   The results were disappointing.  We had a 0.07% CTR and that results in an average $5 cost/click.  Not really the best results.  Half way through the month we updated the ad and started to get closer to a 0.1% CLR but still not great.

Facebook drove the best results for the money.   The Facebook CTR was a dismal 0.02% but they charge by the click, not by impression, so the campaign averaged $1/click.  From an advertiser point of view, the nice thing about Facebook is that I was able target the ads to specific countries, states, cities, companies, keywords etc. etc.  Facebook’s ability to target ads is definitely impressive from an advertiser perspective.

In summary, Facebook was definitely the best value.   There also seems to be a lot of Eclipse community using Facebook, we have 20K people following the eclipse.org fan page, so something definitely worth pursuing in the future.

FWIW, we also advertise EclipseCon and Agile ALM Connect on the eclipse.org home page.  In fact, we also sell advertising space to Eclipse Foundation member companies that want to reach the Eclipse community.  Based on past experiences, the click-thru rates for ads on eclipse.org typically range from .1% to .3% and a cost/click at $1.37-$2.00.   We also have Promoted Downloads where the CTR ranges from .4% to 1.4% and a cost/click at $0.53-$1.80.

What are other people finding from your advertising experiences?   Any suggestions for other sites or other experiences?

EclipseCon 2012: Most Popular Tutorials, so far

When you register for EclipseCon 2012 and Agile ALM Connect you are asked to pre-select the tutorial you want to attend on Monday.   We do this so we can ensure the more popular tutorials are in the bigger rooms and to make sure people have a place to sit  (three hours can be a long time to stand).  This past week I was looking at the registration data and thought it was interesting to see the most popular tutorials so far.  Here are the top 6 (out of 16):

  1. Creating Rich Clients with Eclipse RCP 4.x
  2. Mastering OSGi with Ease
  3. What every Eclipse Developer should know about EMF
  4. DSLs for Java Developers With Xtext
  5. The Git Tutorial
  6. Dynamic Server Applications with EclipseRT

Interesting that each major conference theme is represented: Eclipse 4, OSGi, Modeling, DSL,Agile ALM and EclipseRT.

If you are going to EclipseCon andAgile ALM Connect there are two incentives to register early: 1) ensure your first pick of tutorials is available and 2) register before February 14 for the early bird price.

See you in Reston!