After a couple of posts from EclipseCon, it’s about time that I write something up about EclipseCon. Following yesterday’s postponed travel day, my arrival this morning was fairly uneventful. About the only thing worth discussing was Fox Rental Car’s (I know, I’d never heard of them either) decision to rent me a PT Cruiser instead of the Ford Focus I expected. PT Cruiser? Seriously?
But anyway, the show has been quite impressive thus far. Attendance has been great; I know they sold it out, and while I don’t know what the actual number, just about every session I was in today was near capacity. Even the late afternoon Next Generation Client panel I moderated was well attended, at a time when people usually begin to run out of steam and retreat into email.
To break the show down, I thought I’d do another Q&A:
Q: First, why no pictures of the show?
A: Easy, I forgot my camera.
But to me that’s not really news. Given the nature of its architecture, the Eclipse community has been diverse for a long time now; Eclipse didn’t kill off Borland’s IDE business, for example, just by offering a commoditized feature set – if all Eclipse was was an IDE, it never would have attracted the attention it has. Eclipse has been about community for a while now; certainly it’s more diverse than ever – the attention to dynamic languages, for example, is great to see given our long crusade on their behalf – but to me there’s an element of business as usual about it.
Q: Well, if it’s not diversity, what is the theme so far?
A: To me, it’s maturity. Though I arrived too late to see it, Joel Spolsky gave what was, by all accounts, a bang up presentation this morning (no surprise there). The key message? How to build a blue chip product. His formula for doing that? Make people happy, think about emotions, obsess over aesthetics.
Those ideas might not immediately associate themselves with notions maturity, but think about it: if Eclipse can develop a TextMate-ish affection for aesthetics to compliment their diverse functional abilities, that’s a mature product. Of course, it has a loooong way to go in that department, as I’ve discussed before.
Q: You think aesthetics matter that much – in an IDE?
A: There’s a reason every Rails core commiter is on TextMate, and it’s not purely the editing and autocompletion. Pretty is a feature.
Q: Ok, but it can’t just be that? What else proves Eclipse is maturing?
A: T he attention to dynamic languages; while many in the Java camp are dismissive of the theat/opportunity that dynamic languages present, Eclipse is forging ahead and building relationships with the PHP community (Eclipse, IBM and Zend announced the approval of the PHP IDE project today) and Ruby (Radrails won the Best Developer Tool award – a fact that has not gone unnoticed in the Ruby community). Yet another sign of maturity.
But perhaps most convincing was the plenary given by John Wiegand and Erich Gamma, which discussed – among other things – the evolution of Eclipse’s governance processes. One of the big steps? Assigning individual ownership and accountability not solely for project direction, but for performance. Seems obvious, but not every project does that.
So for me, EclipseCon this year is about a maturing, expanding platform and organization. Some of its aspirational, no doubt, but it’s interesting to watch either way. Particularly because maturation doesn’t come without a price.
Q: What do you mean?
A: Well, it’s a fairly simple equation: larger organizations with lots of products are more difficult to manage and drive forward than are smaller organizations. They’re less nimble, by default. As Eclipe matures and grows, they will have to watch for a tendency to become bogged down in breadth and complexity.
Q: You’ve mentioned dynamic languages a couple of times; what have you seen or heard at the show on that topic?
A: Well, I’ve overheard quite a bit of hallway chatter about languages such as PHP, Python, and Ruby – and Mike mentions here that a Microsoft rep was all over the Radrails guys – but the most substantive discussion came in a session I attended this morning called Scripting Eclipse. While it was more focused on the concept of scripting than dynamic languages, the latter ended up dominating commentary.
The really facinating thing about the session for me was that while lots of folks were using languages such as Perl, Python, Ruby – even TCL, either in or out of Eclipse, no two commenters were using it for the same tasks (outside of the obvious stuff such as web applications). Some were using it for testing, others as quick and dirty front ends for legacy back ends, others still for standalone application development. This in part led to a lack of clarity in terms of what, precisely, scripting was used for and where/how to make the transition from Java to a dynamic language of choice.
Someone raised the point that these languages were more accessible than, say, Java is to ordinary non-programmer resources, which in turn led down a path of discussion around whether that intrinsically good or bad.
One interesting complaint was made regarding Jython; one developer mentioned the fact that it was not at all difficult to get Jython to crash the VM, indicating that there’s further work that needs to be done there.
Q: What of the session you moderated, the Next Generation Client platform panel discussion; how’d it go, and what was the news there?
A: From my perspective, it went fine; the panelists (Bill Scott from Yahoo, Jeff McAffer from IBM, Mark Anders from Adobe/Macromedia, and Max Carlson of OpenLaszlo) offered differing opinions, but did so productively. This review, despite referring to me as a chair, seems to validate that supposition. We had an interesting debate on the merits of single look and feel cross platform vs native look and feel, but the panelists indicated that this was more due to the nature of the implementations (browser vs rich client) than any true philosophical distinction.
When queried on questions of persistence – i.e. the offline question – there was agreement that it was an issue, and one to be handled, but not much in the way of concrete predictions or plans.
Perhaps most interesting was the question raised by an audience member of whether or not there was a rule of thumb in terms of when you might use Ajax vs Flex/Laszlo vs RCP. My answer, based on some of the panelists earlier responses, is that there simply isn’t one. Thin and thick clients alike have weaknesses, but both sides are hard at work in addressing them, and in the process are becoming more like each other than not. This blurs the line between Ajax and RCP, making hard and fast rules of picking a platform not particularly viable.
Q: What else?
A: No mas, no mas. A sizable portion of readers are telling me to write shorter posts, and while it’s too late for that here I can at least limit the damage.
Q: Ok, how about plugging your talk for tomorrow: what time, what room?
A: 9:45 (a nice, developer friendly hour), Ballroom ABGH.
Q: Any thoughts on what someone attending will get?
A: Well, I just saw that the session is on Cliff’s Recommendations (Doug gave it a nice plug as well – thanks to both of them), but that he’s concerned that the “risk with this talk is it might be aimed at marketing folks who are truly clueless with open source.” While there is a certain amount of context setting, I do try to keep it constructive for a variety of audiences, and I will be using the version of the deck I delivered to the Eclipse Board and Council, rather than the Marketing folks. Remember, everyone’s a marketer.
Update: Forgot the disclaimer – apologies. So, Adobe, Eclipse, and IBM are clients, while OpenLaszlo, TextMate and Yahoo are not.