Built Backwards?

I've noticed in alot of our projects, we've been ripping alot of the "features" from Liferay and it got me thinking...  Maybe we built Liferay backwards and judging by the new features we've been implementing (plugin system most notably), I'm almost certain we did.  The portal might be the most featured packed portal out in the market but unfornately, most projects we've been doing has used only a handful of the features at any given time and rarely needs or even want the other features included.  While it's definitely great that we have so many features, we've made a grave error in not making  these components optional.  Instead of becoming a more flexible product we actually became the very opposite.  Our product has become bloated.  I'm glad the core dev team has seen the problem and moved quickly on correcting it.  I've been playing around with the new plugin system and it just seems to open a door to so many different possibilities.  Maybe one day we will finally see a Liferay Lite (Literay?!?) and everything is optional.  That would definitely make Liferay portal truly flexible and perfect for just about any site.  I guess for now having a portal with too many features is (WAY) better than having a portal without any features.

Modularity and bloat are different. Modularity is more about choice and less about performance. While I don't mind having too many features, when I am building a solution on top of Liferay, it really doesn't feel right to download stuff that I eventually disable because I'll never use it.

Of course, sometime in the future the feature might be enabled but that means I'm ready to download it.

Eclipse SDK/IDE and OSGi is doing the right thing here.
I totally agree Eclipse (never used or even know what OSGi is) is built the correct way. Nice core and great plugin system. This entry was written over 2 years ago! It's amazing to see how far Liferay has come. Everything can be a plugin now, even the ext!