Sponsors


Blog powered by TypePad

« Awkward Talk | Main | Janitor Joke »

March 03, 2005

Eclipse Con 2005: Visual Studio

VsdotnetThe speaker was so well rehearsed it was unnatural.  His words seemed carefully chosen and were perfectly consistent, each one associated with this feature or that.  He spoke in trademark terminology and seldom referred to useful abstractions like "extension" or "plugin."  The contrast to every other session I'd attended thus far was striking. 

He spoke a little fast but you had to forgive him; it took guts to give Visual Studio (VS) presentation to a den of Eclipse-developer lions.  I was open-minded, hoping he would compare VS's extension mechanisms to Eclipse's.  The growing .Net customer base is nagging knowledge that, someday, we might require increased support for VS extensions (along with Eclipse).  I wanted to know how I could write plugins in such a way that they could easily port to VS, later, if necessary.

The first line out of his mouth was (paraphrasing) "Visual Studio is, without question, the world's premier development environment..."  Just walk up and whack the lion in the jaw why don't you?  Not a good start.  He then proceeded to show us a cube-block diagram of the VS layers.  The VS Core, Team Server, and something else was positioned along the x-axis, at the base layer.  At the next layer, various language (C#, etc) silos stacked on top, along the y-axis.  Vertical industry 'packages' stretched from each language silo towards the center of the cube, along the z-axis.  Spheres indicated a certain customizable combination of related elements from each axis.  It was colorful and slick.

He went on to talk about five things that "...if I know developers, I know are important."  I thought, OK, here comes the meat I was looking for.  Each iteration his five-point-plan began with "And if I know developers, I know that..."  But the meat never came.  All we got was a garden salad explaining how we could create macros, move view/editor menus around, set code-preferences, or... I forget.  Call the lion an idiot, why don't you?  Eclipse can do macros and change code-prefs?  Who cares?  I've come to expect this stuff from my IDE like a carpenter expects a saw.  My buddy looked at me incredulously at this point.  I was embarrassed for the presenter. 

VS is extensible but, at best, it's unexceptional and, at worst, superficial.  It can probably be extended in interesting ways but it wasn't presented to us this day.  With limited exposure to VS at this point, as best I can tell, extensibility is not part of the VS ethos. 

One difficulty seems to be the lack of terminology for discussing extensions to VS, where extending it is the primary goal.  In the end, VS seems to be just an IDE for .Net, not a platform for extensibility.  This is great if you're building solutions on .Net but it's in stark contrast to the openness of Eclipse.

But the Eclipse-lion abuse didn't end there.  He plowed ahead, moving smoothly into a lengthy overview of the various levels of the Microsoft VSIP program.  I stopped listening intently and drifted into an acute awareness of the difference between Microsoft's and Eclipse's view towards developers.

Microsoft wants your money while Eclipse.org just wants your contribution.  To quote my buddy Zack, "I love how people at this conference ask questions about getting more Eclipse support for this or that... The answer is always either 'It's being considered by X,Y,...' or 'Do you want to write it?  We'd love for you to help us out with that.'"  He's right; Eclipse.org has the feeling of community ownership on a scale unlike anything else in the history of software.

I don't remember how the presentation ended, but it didn't end well.  His pointer for writing code that plugs into both Eclipse and VS was to "Write your own abstraction layer if you want to."  Thanks.  Several conversations later, the consensus was that we all felt like we'd just been given a sales pitch.  It was offensive.  This guy wanted to sell us something.  All Eclipse is selling is lots of free, highly useful code and a belief that everyone will be better off if each of us stops reinventing the wheel and focuses on building real value for our customers.

Eclipse_3

TrackBack

TrackBack URL for this entry:
http://www.typepad.com/t/trackback/277049/1957155

Listed below are links to weblogs that reference Eclipse Con 2005: Visual Studio:

Comments

You pretty much nailed it, Ben.

I don't know, I sat in this talk too, and asked the question about having plug-ins that work in both Eclipse and Visual Studio. He said 'sure' but didn't say how, which is something I expected him to get into.

The thing I got out of the talk was that there are many user customization things that VS does really well, like moving menus around, defining macros, assigning an icon to one and dropping it in a toolbar, that Eclipse should definitely be doing. I chose to look at it as the presenter giving us ideas for things we should put into Eclipse.

Rational Rose XDE is available for Eclipse and Visual Studio:

http://www-306.ibm.com/software/awdtools/developer/rosexde/

They had the same code for the application and used a compatibility layer for each IDE so that it would work in both IDEs. I was on the QA team for the compatibility layers as a co-op student.

The compatibility layers worked pretty well but it was a completely custom job and probably took a lot of effort.

Post a comment

If you have a TypeKey or TypePad account, please Sign In