Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cross-project-issues-dev] Eierlegende Wollmilchsau

Thanks Ed! (and Michael for the picture). This is awesome and I’m glad we’re finally talking about this. In fact, I think we also need to go beyond the contents of the simrel repo and also consider popular 3rd party plug-ins, Pydev and Nodeclipse come to mind. And Andmore which is coming in Neon will also make this much worse and I’m planning on helping clean that up.

You bring up a great point about the Toolbar. It’s the most obvious affect of the tragedy of the commons, and it’s why I’m having a personal war against it. Do these buttons really need to be in the face of the user all the time? How often are any of these actually used versus the real estate they take up. Wouldn’t it look better if we had fewer toolbar buttons but make them a little bit larger to make them easier to understand for new users? How do we make this better?

And yes, the Launch Bar. Lots of Eclipse veterans complain about how it doesn’t fit in with the rest of the toolbar. But take a look at the New Connection… item and how it really doesn’t fit in the 16 pixel height. It looks horrible. When you turn off most of the toolbar buttons like I always do in my workspaces, the Launch Bar looks kinda nice and it’s really easy to swap launch configurations, modes and targets and hit the start button to kick off a launch. Now, clearly as this picture shows, it sticks out a bit too much. But I’ve always said I am open to find a solution that makes everything look better.


From: <cross-project-issues-dev-bounces@xxxxxxxxxxx> on behalf of Michael Scharf <eclipse@xxxxxxxxx>
Reply-To: Michael Scharf <eclipse@xxxxxxxxx>, Cross project issues <cross-project-issues-dev@xxxxxxxxxxx>
Date: Wednesday, December 9, 2015 at 9:53 AM
To: Cross project issues <cross-project-issues-dev@xxxxxxxxxxx>
Subject: Re: [cross-project-issues-dev] Eierlegende Wollmilchsau

Hi Ed,

I think this is a great experiment. For reference I added a screenshot of how the "eierlegende Wollmilchsau"
looks like on a mac:

And the find dialog is so wide, that it does not fit on my screen (note some tabs are cut off at the right side):

Running an empty instance takes about 15-20% cpu, but id did not cause the initial
resource consumption you have seen...

The eclipse capability explorer

For years I wonder how much effort it would be to create a meta plugin
that reads all the UI extension points and creates a representation of
what different features add to the UI.

I mean: often I install a feature and I have no idea what it actually
contributes to the UI. So, imagine there would be a tool that allows
you to explore all the extensions a specific feature adds to the IDE. Imagine
you could just select a feature and see what it contributes. It could
be some tree ore a rich text representation. Or (the luxury version),
it could highlight the additions in the UI directly.

Of if I could click (with some magic modifier keys) on some UI component
and it would tell me which feature contributed that element.

What I am talking about is a tool to explore the UI and to understand
how things are wired together and who contributes what.

If we spin this idea further: what if I could just interactively add/remove
extensions to the UI? If we would have a tool that allows the user to
experiment with all 'Capabilities' (not only the ones provided by some
extensions) (Note: capabilities are set in the org.eclipse.ui.activities extension
point using activityPatternBinding):

Wouldn't an 'eclipse capability explorer' be a great meta tool?


On 2015-12-09 7:54, Ed Merks wrote:

We've created an all-in-one Eclipse product affectionately called Eclipse Eierlegende Wollmilchsau. For the linguistically challenged, it's the Eclipse Egg-laying Wool-milk-pig.   Like the ultimate all-in-one farm animal, this Eclipse product can do everything because it installs everything on the release train.  Unfortunately, it's not pretty.   I've opened to track this issue.  It's probably best that follow up discussions take place on this Bugzilla.

To give it a try, use the Eclipse Installer, switch to advanced mode, and locate this product in the Applications product catalog; typing "wol" in the filter will locate it quickly.   Probably you'll want to pick the Mars version so that your bundle pool fills with useful things you might want to install some other time.  We generate this product such that it installs all the categories on the release train, except the the RT category.

Some immediate observations.  The toolbar has a lot of buttons, some of them very large compared to the others.   Unless you're blessed with a very wide monitor, they won't all fit on one line.   Do we really need all these buttons in all perspectives?

Open the Error log when the installation first starts.  Clearly there are some ill behaved plugins.  ECF contributes some things that don't work well.  BPMN2 and Papyrus don't play well together. Nor do Eclipse FX and Papyrus.  There's a battle for key bindings. Scout feels the need to inform the user of fact that it's started.

Open the Progress view and note that there will be jobs that never will finish.  What are these jobs trying to do?

One reason we created this product is so we can test what's going on with all the preferences.  There are certainly a great many of them.  In fact, if you try to visit them all, you'll run out of SWT handles, so don't do that.  With the latest version of Oomph, the preferences dialog includes an alert (little light bulb) down in the bottom left of the preferences dialog that allows you to initialize all preferences to their defaults; it will show only if you enable the preference recorder (via the button to the right of the help button).   A great many preference pages change preferences just by virtue of visiting the page and hitting OK.   With the preference recorder, this results in many preferences being recorded that you've never actually changed to be different from the default. Using the alert button, Oomph automatically visits all pages without recording any changes.  It must periodically dismiss the preference dialog to ensure it doesn't run out of SWT handles.   You might want to give that a try; please read the Help documentation of the "Preference Initialization" dialog.

Some things to note afterward.   How many preferences cause UI freeze report? Now that all bundles have been started, the jobs on the Progress view go crazy and they never ever finish.  My computer fan comes on.  It's not pleasant.  Restarting the IDE helps put a stop to this.   I believe it's the Linux tools doing this.  Does it make sense to have Linux tools on my Windows machine?  Probably not, but why is it an option if it makes no sense? I.e., can't the category requirements include filters to eliminate these choices? There are also several linux tools in the General Purpose Tools category, e.g.,  docker, changelog, and rpm.  Are these really general purpose or Linux specific?  Certainly RPM does not play nicely on my Windows box; jobs that apparently never finish, but work very hard doing goodness knows what...

In the Error log you'll see many new errors.   Papyrus is a big offender.   Please someone on the Papyrus team, review what is going on with all your preference pages!  They just don't work at all. Also note that Oomph logs warnings for all pages that come up in an invalid state initially.  Once the user navigates to this preference page, they can't leave.  No page should be initially invalid.  Thym and Linux tools are offenders in this case.  LDT, Data Tools, and BIRT should all have a look at this log because visiting their preferences result in errors.

Also have a look at Help ->  About Eclipse Platform -> Installation details and turn to the Plug-ins tab.  Type "examples" in the filter.   There are a great many of them!  Does it make sense for people to install examples in their IDE?   Aren't examples meant to be something I can easily add to my workspace (File -> New -> Example..) so I can see the source and play with it?   Why are examples available for installation on the release train?

The following example features are categorized as available for installation.  I believe none of them should be.


In other cases, the project SDK includes a dependency on the examples feature.  I found EMF examples on the train, but I don't believe that EMF itself contributes them, so someone is generously doing that on our behalf.

If you love Eclipse, please give the Eclipse Eierlegende Wollmilchsau some of your love.  Or just ignore it, and accept the fact that Eclipse as a whole is an ugly pig.

cross-project-issues-dev mailing list
To change your delivery options, retrieve your password, or unsubscribe from this list, visit

This transmission (including any attachments) may contain confidential information, privileged material (including material protected by the solicitor-client or other applicable privileges), or constitute non-public information. Any use of this information by anyone other than the intended recipient is prohibited. If you have received this transmission in error, please immediately reply to the sender and delete this information from your system. Use, dissemination, distribution, or reproduction of this transmission by unintended recipients is not authorized and may be unlawful.

Back to the top