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

"If you are an Ops engineer, we are all Devs now. Because, Ops is becoming all code driven."

This was the general agreement among the participants at last week's 'State of the Cloudy Union' meetup. 

At First, It Was a Wise Crack

The first guy that popped this out at the meetup was saying it like he meant it to be a wisecrack. But everyone seemed to instantaneously agree. Read more »

Pick One? Or Two?

Let's keep the message simple. We are crossing a chasm - right here and right now. Much will be said as the crowd crosses, but the essence of the moment is a very simple shift. We now get to have both of what used to be either/or. Read more »

I just committed a 15 minute bug fix that cost me 5 challenging days. That's a [nominal] $4000 bucks down the drain, all to the negative - with no offsetting gains.

If you are a developer, this blog is for showing your manager why fixing stuff later can sometimes cost 150 times as much. Just one example, but at least this one is clean, and it's real. Read more »

    Tends to believe that all things in software development can be automated, regardless of evidence to the contrary.
    Obsessed with teasing out the common elements to every two or more tasks, refactoring the code to automate the common elements.

For Those Who Want To Get Started With OptaPlanner

If you want to get started with OptaPlanner, the first thing you want to do is review the examples that come with it.

The second thing you will want to do is write your own HelloWorld. Hah! Not so easily done. Not that the existing examples don't provide all you would need, they provide that and much more. But they are written for a different purpose - to impress you quite artfully with just what OptaPlanner can do. That requires a lot of UI and persistence code, among other things. And it all might seem like it is very tightly woven together. It's not, but that doesn't make it much easier for someone like me to extract the essence of OptaPlanner into it's basic code fragments in a 10 minute code review.

If you run the examples that come from OptaPlanner and they don't blow you away with their power and art .... perhaps you haven't done much programming yet.

Yet what I needed was just the basics. Since it wasn't there in the examples, I created this git project to do just that. 270 lines of code, even including eclipse and maven project infrastructure.

Just fire it up, and you'll see the exact minimum of code to make the simplest OptaPlanner example work. Read more »

It's a competitive world out there. Simplicity is inevitable, just a question of what's going to deliver the simple solution first.

NOTE: This blog is written by a Chef loyalist and is not to be taken as anti-Chef in any respect. There is already solid traction to remedy much of what is written below, so hopefully this blog will become very dated, very quickly! July 25th, 2014. Read more »