Unrealistic, childish dreams show up even far into a career. I can imagine binaries all playing nicely together, no API entanglements, no version overlaps. No Binary Hell.

We all sing 'Kumbaya' together, and the world is a better place!

OSGi was that promise for me. I even experienced the productivity benefits first hand. As a product manager for a major Eclipse release. OSGi kept 700+ competing Eclipse modules in their classpath sandboxes, and it all worked great. 16 major releases in less than 12 months. Read more »

In this post, I hope to illuminate that OSGi is not only the red-headed stepchild of Java development, but also quite helpful, when used by smart people on the right project. How delicious it was Tuesday night, when OSGi stood at the center  of one of the most helpful presentations I have seen in my 15 years of Java.

In this presentation, OSGi wasn't even trying. OSGi is like that.

Backstory: OSGI Sux

Dangerous Fred

Every big team has seen one or two of these guys. Dangerous Fred. Brilliant and stupid at the same time, breaks the wrong rules and still gets pretty amazing stuff done. But you don't want him touching your code.

How many meetings do I have to go to, to keep Fred off my project?

I think I've been Fred in decades past, at least once or twice. Sure have written a couple things I'm not so proud of, on the way to becoming a slightly better programmer. Read more »

This is a follow up to previous day's swooning, whining, and boot licking.

Ten years of "the desktop is dead, web-apps are the only way" makes a great corporate religion. If you're a true believer in this religion, read no further - I'm a non-believer. Requiring a web app should never mean I don't want a desktop - even more.

I want web apps and mobile web apps, sure. But I want the default as a desktop app that can shuffle as much of the computing to the local CPU as is reasonable.

And of course, I want to write the app one time. The platform should be super powerful and fully developed by others. It should update automagically, have superb installers, and a  phenomenal list of features, yada yada. An impossible dream. Read more »

Woohoo! I'm in love!  What a great feeling, to find such a sweet platform that does almost everything I need, and most of it very well.

Sweet! I didn't know 

My main squeeze, Eclipse didn't know I was checking out other fish in the sea, but really I wasn't. I was just googling for "Swing OSGi" and here comes NetBeans releases an OSGi versionRead more »

The screencast below brings up many different approaches of modularity systems in Java. Hmmm. I never even considered anything beyond OSGi.

  • OSGi
  • JSR 277
  • JSR 294
  • NetBeans Modules
  • Maven
  • SMS
  • Jigsaw

Jaroslave Tulach, the guy who wrote the netbeans module system is interviewed here, it's a great discussion.

 

I used to be a really fast java programmer. If you wanted something written quickly, I was your guy. But that was "so last month...".

Certainly not today.

And it's a psychological struggle, because I'm fighting back the shame constantly. It's embarrassing as hell being this slow - even when no-one is watching.

Why so slow?

I'm working on my own software now. This is my nickel. Not billing others for my time, so I can do things right. Read more »

Every technology can enable questionable or even destructive uses. What follows is one that OSGI enables.

From that perspective, this screenshot is perfect OSGI anti-pattern. OSGI going to the dark side. (No, it has nothing to do with groovy or the plugin shown)

Read more »

The first thing you need, if you're going to do enterprise OSGI, is a starting template for a modular project.

5 minutes, right? We've all done this before. Right click in the IDE > new > project > yada yada

Not So Fast

True, that will do the trick in a non-OSGI world. But then there's all the other stuff like Read more »