Twitter github

ECF Presentation @ RSDC 2006

I have the pleasure to speak at this year’s Rational Software Development Conference. I will be speaking about ECF. The presentation is currently available in ECF’s CVS. I plan to give an introduction to ECF, some background on why it exists, some demos, an API introduction and wrap it up with where ECF is headed. Hopefully I won’t ramble too much 😉

Also, if anyone is in the area and wants to grab a beer to talk Eclipse/open-source, please give me a holler 😉

Furthermore, I’m debating whether I can ECF-enable Wayne’s Sudoku application on the two-hour plane ride to Orlando 😉

Class of 2006

This year, Eclipse is participating in Google’s Summer of Code. Google has been kind enough to offer some money to students to work on an open-source project of their choice. Eclipse has 11 (!) projects this summer aiming to enhance various aspects of Eclipse. Here they are:

* ECF BitTorrent Provider (#144133)
o Student: Remy Chi Jian Suen
o Mentor(s): Chris Aniszczyk, Scott Lewis, Wayne Beaton

* Word Wrap for Text Viewer and Editor
o Student: Ahti Kitsik
o Mentor(s): Philippe Ombredanne

* Generic form description and a prototypical implementation of a render engine for Eclipse RCP
o Student: Steffen Grün
o Mentor(s): Gunnar Wagenknecht

* Enhancing Mylar’s Bugzilla Integration
o Student: Jeff Pound
o Mentor(s): Mik Kersten

* Mylar Trac Connector Plug-in
o Student: Steffen Pingel
o Mentor(s): Mike Kersten

* Real-Time Shared Editing
o Student: Mustafa K. Isik
o Mentor(s): Scott Lewis

* Shared Code Plug-in (SCP)
o Student: Marcelo Mayworm
o Mentor(s): Scott Lewis, Ken Gilmer

* Eclipse RCP Installer/Packages Generator
o Student: Jacobo García
o Mentor(s): Francois Granade

* A Distributed Object Application Debugger for the Eclipse Platform
o Student: Giuliano Mega
o Mentor(s): Fabio Kon

* Basic Eclipse Mono Development Environment and Contributions Towards an Eclipse IDE Generator
o Student: Rebecca Chernoff
o Mentor(s): Doug Schaefer

* Duplicated code detection tool (SDD)
o Student: Iryoung Jeong
o Mentor(s): Pascal Rapicault

I’m personally thrilled about each of the projects (a few that involve collaboration, which Eclipse desperately needs). A special IRC channel has been setup for the students: #eclipse-soc. I encourage everyone to help out the students if they have time 🙂

Yellow is the new Black…


So, as I mentioned before, I transferred teams to Lotus recently (I have no responsibility for Lotus Notes, don’t hate me). My focus will be to work on OSGi Services (Equinox in terms of Eclipse) in the next coming months, particularly focusing on the OSGi Declarative Services implementation. There is currently a lot of exciting work in this area and the implications that it will have for Eclipse as a platform are exciting :). (In terms of what should be services and what should be extensions…, etc…) I’m also excited because this is the first time I will be actually working on something Eclipse-related directly… I also will have the honour to push some bugs onto Wassim.

Forced best practices?

When I’m not being offered a $20 ($20, Canadian that is) bounty to implement PDE Extreme Self Hosting, I tend to surf Eclipse bugzilla. There was a recent bug posted that dealt with forcing the JDT to seperate source/output folders by default. I personally think this is a good idea and should be enforced as a default preference. If you think it is a good idea too, please vote on the bug.

Eclipse Bounties?

After reading John’s latest post on DTP issues, I was thinking why not we take some cues from our opensource brothers and do something like bounties for Eclipse (For example, look at Gnome and its bounties)? Eclipse is one of those unique opensource projects that has a decent financial backing from corporations, why not give a little love to some bounties? Thoughts? Am I crazy? Can I live off of just solving Eclipse bounties all day (and be able to buy some toys?)

Callisto & EMF

EMF was the first project I hacked on with Eclipse back in the day (technically, it was PDE). I remember spending many painful months working with EMF/GEF together (screw you guys and your different commandstacks ;p) only to realize GMF was on its way out. Here’s a quote from Dave Steinberg (EMF committer extraordinaire) about EMF and what it provides to Callisto:

The Eclipse Modeling Framework provides powerful generative and runtime capabilities for applications based on structured data models. From a simple class diagram or an XML Schema, you can generate a complete Java implementation of the model, along with an editor for it, and take advantage of EMF’s facilities for persistence, notification, validation, and change recording in your application. Callisto includes EMF 2.2, which introduces many exciting new features: a simplified XMLProcessor API for XML persistence; cross-resource containment support; new code generation patterns, allowing, for instance, for all signs of EMF to be suppressed from generated interfaces, or for no interfaces to be generated at all; encryption support in resources; improved XML Schema generation and round-tripping; an extensible model exporter tool; an improved, extensible code generator; and various performance improvements and usability enhancements.

Just to highlight, one big issue I faced with EMF before was around the realm of security (storing sensitive data in your easily opened models). Well, as part of the Callisto release, EMF has finally added the ability to encrypt resources (thanks Marcelo / Ed!). To use encryption, you have to persist your resource properly. For example, this would do:

Map options = new HashMap();
options.put(Resource.OPTION_CIPHER,
new CryptoCipherImpl(“mykeykey”));
resource.save(options);
resource.load(options);

IRC, It’s good for the community

I just want to update people on the status of Eclipse’s IRC outreach. For the first time lately, I’ve seen over 100 (!) people in #eclipse which is much better than the 7 or so people that used idle in there (that just happened to be the committers that idled in #eclipse-dev too) a few months ago. I encourage people that have spare cycles to burn to idle in #eclipse and help out people (show that Eclipse is a friendly community). Thanks to all who currently help out (thanks Paul Webster and Nitin)

If you need help getting on IRC, I’d check out the Wiki page.

GMF 2.0 Project Plan Posted for Comments

The project plan for GMF 2.0 has been posted and there has been a request for comments. To me, the GMF project is huge in terms of what impact it may have on tooling in the future… it’s only time…

Don’t know what GMF is (wouldn’t surprise me that much since people who start using GMF usually come from the land of GEF which not many people are from)? Take a look at the GMF Wiki for some good tutorials that can help you get started. If that isn’t enough for you, I’ve been working on a new article about GMF that builds off my old (and famous) “Using GEF with EMF” Eclipse Corner article. I’m going to take the EMF model used in that article and using GMF to generate a graphical editor out of it (and hopefully show that GMF saves you a ton of time if you have ever dabbled with EMF/GEF before).

Also, on a side note… anyone else annoyed when you goto “www.eclipse.org/{wtp,dtp}” you get nothing?

Common Navigator Goodness

Browsing the Eclipse newsgroups today, I came across Michael Elder‘s blog post on a simple common navigator example. There was also an EclipseCon presentation regarding the common navigator. Spread the knowledge 😉

The second day…

On the second day of Callisto,
my Eclipse committers gave to me
CDT and proof that Eclipse isn’t just a Java IDE
And a Graphical Modeling Framework (GMF) for free.

Ok, the song and verse is lame, no more 😉 Here’s another quote from a committer (notice that these guys aren’t all from IBM ;p)

The CDT brings to Callisto a development environment for writing C and C++ programs. The JDT sets a high bar as far as Eclipse IDEs go and we are constantly working in catch up mode. For Callisto, the CDT provides an Editor with all you’re regular Text Editor features such as language specific keyword highlighting and content assist. It also provides an index of the user’s code to provide search and code navigation features. As well, there is a framework for integrating build tools and debuggers to complete the edit, build, debug cycle. In this release, we’ve focused on a faster, more scalable indexing framework as well as a flexible build system that allows for per resource builds as well as a new experimental internal builder that eliminates the need for MAKE files. As well, we have the beginnings of a framework for supporting additional compiled languages such as Fortran by the Photran project, and hopefully more such as C# and Ada in the future.

— Doug Schaefer, CDT Lead, QNX Software Systems

Another interesting note about the CDT is that it is scalable to handle large projects. I recall at EclipseCon hearing all about how the CDT can do such marvels as work with the Mozilla codebase (I think a flash demo is in order Doug ;p).