Elevator Software in Java

Posted in Uncategorized on December 19th, 2010 by Eric Bruno

Eric Bruno originally posted this on Dr.Dobb's Journal | Eric Bruno Blog.

>

I do things in my spare time that some might think are strange. Like, develop messaging software, real-time trading engines, and now scheduling software for elevators. Did you know that elevator software is a complicated mix of real-time theory and scheduling algorithms? Cool stuff.

I've even created a neat little graphic simulator to visualize the scheduler. It simulates people on different floors randomly requesting transport to other floors, while it realistically inserts people traveling from ground to upper floors "early in the day", and then upper floors to the ground floor "later in the day."

And, I've done this all in Java. Combined with a real-time Java VM, this could actually be used to power a bank of elevators for some of the taller buildings in New York City. And, I did it all for fun... imagine that!

Happy coding!
-EJB

Apache resigns from JCP

Posted in Uncategorized on December 9th, 2010 by Eric Bruno

Eric Bruno originally posted this on Dr.Dobb's Journal | Eric Bruno Blog.

>

Apache has left the Java Community Process, although it's very unclear as to why. For instance, they claim they've resigned because the community has failed to support the JCP as an open specifications process. In reality, they've quit because Sun and now Oracle have not agreed to give them the Java compatibility test kit (Java TCK) for free. Nothing has changed in terms of the the openness of Java or the JCP process; in fact, it's only gotten more open as Sun created the OpenJDK and released it as GPL a few years ago.

It's unfortunate to see Apache leave, as I'm a fan of what they do, but you cannot expect one entity to dictate to others when and how to give their software away. That's my opinion. Read the press release here to form your own.

-EJB

Java SE 7 and 8 are approved

Posted in Uncategorized on December 7th, 2010 by Eric Bruno

Eric Bruno originally posted this on Dr.Dobb's Journal | Eric Bruno Blog.

>

The JSRs for both releases were approved by the JCP committee yesterday. While my opinion is that this was just a formality (i.e. Oracle wouldn't have stopped their work on the releases either way), having approval clears the path to a few more years of Java community development.

The vote wasn't without its drama, as Apache and Google voted no to both according to The Register. No surprise there.

Go NetBeans!

Posted in Uncategorized on December 2nd, 2010 by Eric Bruno

Eric Bruno originally posted this on Dr.Dobb's Journal | Eric Bruno Blog.

>

Years ago I was all over Eclipse. I used it every day and loved it. I was introduced to NetBeans when I wrote an article comparing the two, but continued to use Eclipse out of familiarity. But when I joined Sun in 2006, I was exposed to it more and more and fell in love with it. It was my IDE of choice for years.

I still use Eclipse for some of my consulting work, but I prefer NetBeans when I have a choice. It looks like Oracle is growing fond of it also. Their plans for NetBeans 7.0, which is available as a beta, is chock full of new features, most of which center around deep integration with Oracle products and JDK7.

The NetBeans IDE 7.0 Beta features language support for the JDK 7 platform; enhanced integration with Oracle WebLogic server; support for Oracle Database, GlassFish 3.1, Maven 3, HTML5 editing; and more.

I'm quite interested in the HTML5 editing features. And with a planned release in early 2011, I can only hope there will be a bundle available with the new JavaFX 2.0 as discussed at JavaOne this year. That would be the bow on top.

Happy coding!
-EJB

JavaFX 2.0 Early Opinion

Posted in Uncategorized on November 30th, 2010 by Eric Bruno

Eric Bruno originally posted this on Dr.Dobb's Journal | Eric Bruno Blog.

>

My friend and co-author, Jim Connors, posted a recent blog entry about his early opinion of the upcoming new JavaFX 2.0. In summary, JavaFX 2.0 will provide a universal Java API accessible from any JVM-supported language (i.e. Java, JRuby, Groovy, Scala, and so on), and will no longer support JavaFX Script.

Other benefits to this move are improved performance (especially with the new Prism graphics engine), Swing interoperability, and a better development and debugging environment.

You can read more about the new JavaFX 2.0 roadmap here.

Apple Joins OpenJDK

Posted in Uncategorized on November 12th, 2010 by Eric Bruno

Eric Bruno originally posted this on Dr.Dobb's Journal | Eric Bruno Blog.

>

According to AppleInsider.com, Apple and Oracle have formed a partnership to ensure future versions of Java will be available on the Mac OS X platform. Apple has agreed to contribute the JVM code for the Apple platform to the OpenJDK project, and Oracle has committed to producing timely Java releases for the OS X platform going forward.

Open and closed Java

Posted in Uncategorized on November 11th, 2010 by Eric Bruno

Eric Bruno originally posted this on Dr.Dobb's Journal | Eric Bruno Blog.

>

Oracle is planning to continue Java development in, primarily, the open through the OpenJDK. However, there are quite a few features planned to remain proprietary, and the code for them will not be contributed to open source. For instance, according to Oracle's Henrik Stahl, aspects of Java such as Java for Business, Oracle's JRockit Mission Control, JRockit Real-time, and JRockit Virtual Edition will be proprietary add-ons that you'll have to pay to use.

This isn't a shock to me. Remember that Oracle owns Java now, and they have the right to do with their IP as they please. I wouldn't be surprised to see other new features, such as advanced garbage collection and other performance improvements, become part of the proprietary Java version in the future also.

On a positive note, Stahl mentions that Oracle estimates that code from JRockit will be the single largest contribution to OpenJDK since its inception. That's a lot of otherwise closed/proprietary code to become open-source. That's a big step for Oracle, in my opinion.

Happy Coding!
-Eric

Wither the JCP

Posted in Uncategorized on October 22nd, 2010 by Eric Bruno

Eric Bruno originally posted this on Dr.Dobb's Journal | Eric Bruno Blog.

>

A while ago I had predicted that the JCP would fall apart under Oracle's watch, and this appears to be occurring. First, statements from Mark Reinhold about JDK 7's "Plan B", where Oracle would simultaneously create a JSR and release Java SE 7 at some point in 2011 indicated this. Second, with IBM joining OpenJDK and abandoning Apache Harmony, it appeared that Oracle and IBM would be able to steamroll the JCP approval process going forward. Now, third, the resignation of Doug Lea from the JCP committee further indicates the deterioration of the JCP. There may even be other resignations we haven't yet heard of, or are yet to come.

In my opinion two things may come of this:

1) Oracle will accelerate the Java release cycle and, for the most part, good new features will be put into the JVM. This is at the risk of not having enough community involvement.

2) The OpenJDK will gain a lot of momentum in the community, and will take a life of its own. This is at the risk of forking the Java language and platform.

If you're a Java developer, you really should follow this one as it develops. At some point we may need to voice our opinion as a group to ensure the continued success of Java the language, and platform.

Java on Mac OS X

Posted in Uncategorized on October 22nd, 2010 by Eric Bruno

Eric Bruno originally posted this on Dr.Dobb's Journal | Eric Bruno Blog.

>

Two days ago, with the release of the Java SE 1.6_22 update from Apple for Leopard and Snow Leopard, Apple distributed a deprecation notice for Java on OS X going forward. Although a little vague, this implies that Apple will not continue to port Java to the Mac platform.

In a way I don't blame them; it's not their software, and a lot has changed and continues to change in the world of Java. However, not having an option to run Java on a Mac is heart-breaking to me. I just love my MacBook Pro and OS X in general, and I'm not ready to switch away. However, as a Java developer, if Oracle or some other vendor doesn't step in to provide Java on the OS X platform, I may have to switch after all.

Apparently, after reading through some material online, Steve Jobs replied to a user email saying that Apple's release cycles for Java don't match Sun/Oracle's, and that may not be the best way to go about it in the future. This implies, to me, that Apple really would like Oracle to take over the job of porting Java to the OS X platform. If that's indeed what Steve wants, I would agree that it's the best situation, as Oracle will assuredly keep the OS X version of Java as up-to-date as the Windows and Linux versions.

Are you a Mac OS X user? What would you do if there is no solid plan for Java SE on OS X in the future? With the Apache Harmony project status questionable (yet still optimistic) the situation may be even more dire.

Oracle Stacks the JCP

Posted in Uncategorized on October 12th, 2010 by Eric Bruno

Eric Bruno originally posted this on Dr.Dobb's Journal | Eric Bruno Blog.

>

What's really going with the Oracle/IBM agreement for OpenJDK and future Java development?

What's really going with the Oracle/IBM agreement for OpenJDK and future Java development?...

The news yesterday is that IBM ditched Apache Harmony (all but killing it) and has backed Oracle and the OpenJDK project, putting its development time and resources there. In my opinion, this move helps to ensure that Oracle will get the speedy approvals it needs to get the Java SE 7 and Java SE 8 JSRs approved and out the door in its desired timeframes.

What does IBM get out of it? After all, they're placing developers and other resources on the OpenJDK project and that costs real money with a commitment over time. I'm not entirely sure, but I assume they'll have more control over its future, and some more leverage in getting its own versions of the Java VM (i.e. IBM's J9) approved as an officially licensed VM. IBM had none of this, and no control over Java, once Sun had released it as open source. This new agreement could potentially change that.

For now, it looks like the first victim will be Apache's Harmony project, which has been moving along only with IBM's support for years now. Although Java's source code is open source, Sun never released the full Java compatibility test kit (JCK) to the community, and this had been a point of dispute between Sun and Apache for quite some time. Without passing the JCK, you cannot call your software "Java" or Java compatible in any way, because you can't prove to yourself and others that it implements the Java language specification correctly and completely.

From what I've been seeing and hearing, most people look at this as good for Java and the community for the most part. My only question is, what made this deal so sweet that IBM, the target of much of Oracle's propaganda and competitive press over the past year, has agreed to jump in and help Oracle? Time will tell.

Happy coding!
-EJB