Tuesday, February 16, 2010

Oracle, Sun & Java

Magnolia CMS is running on the Java platform. According to Wikipedia:

Java refers to a number of proprietary computer software products and specifications from Sun Microsystems, a subsidiary of Oracle Corporation, that together provide a system for developing application software and deploying it in a cross-platform environment. Java is used in a wide variety of computing platforms from embedded devices and mobile phones on the low end, to enterprise servers and supercomputers on the high end. Java is used in mobile phones, Web servers and enterprise applications…

Now that the deal between Oracle and Sun is through, it is interesting to see what this deal could mean for Java, and in turn for Magnolia CMS. As stated above, Java is used anywhere, but most interesting for us it is used on enterprise servers and for enterprise applications. Now, if anybody on the planet can claim to be "enterprise", it's got to be Oracle. It is a safe bet that Oracle will be very interested to keep Java healthy, for various reasons:
  1. many of Oracles enterprise applications are written in Java
  2. many of Oracles customers run server software written in Java
In the last couple of years there was a lot of discussion about Open Source Java. Whatever the outcome there, as much as Oracle means enterprise, Oracle means proprietary. It is unlikely that Oracle turns into a major driver of Open-Source Java or Open-Source in general. That might be regrettable, but doesn't mean anything worse than Java has been under SUN, which until recently was not interested in Open-Source Java either.

Unlike SUN, Oracle makes heaps of money and can afford to drive Java further to increase its value chain and fend off the likes of Microsoft, who with their own proprietary .net platform are the only real alternative for the enterprise business Oracle is interested in.

What it means for anything Java that is non-enterprise is anyones guess, but that is of little concern for us, as Magnolia is running on a server.

So (enterprise) Java will be stronger with Oracle, and I for one am happy that a solid and strong company like Oracle is brewing our Java now.


Wednesday, February 03, 2010

Groovy.times{Magnolia}

Forbes has published an interesting article about CTO's favorite choices of programming languages. Its author Dan Woods argues that Groovy combines the best of Lisp, Ruby and Python, but in addition:
"From an operations perspective, Groovy is deployed like Java, so data center staff that can handle Java won't be surprised by Groovy."
Dan ends his article with the words
"… if you are starting from scratch on an advanced Web site, it will be hard to do better than Groovy"
Of course, we at Magnolia CMS could not agree more. Magnolia is written in Java and provides a fantastic framework to build web sites efficiently.

However, developing and deploying apps in an enterprise environment like the Java platform involves a certain effort. Typically, a developer uses an IDE (Integrated Development Environment) in which code is written, compiled, deployed to a test server and tested. This cycle is well defined and has massive benefits in the Enterprise world.

Now as Joe Walker rightly notes:
"There's a fairly obvious link between developer productivity and the edit/compile/test cycle. One of the big things wrong with Enterprise Java is that you swap the edit/compile/test cycle for an edit/compile/deploy/test cycle and one of the things right about PHP is that edit/compile/test is just edit/test."
When you quickly wish to try out something new, build a prototype or add a feature for a demo, a more agile framework would be considerably more fun for the developer, could save a lot of time and lead to a better result. More agile means that the edit-compile-deploy-test cycle needs to be simplified.

Enter full Groovy support in Magnolia. With the next release (4.3, out in March) we will introduce full-blown support for Groovy, which allows for a much more agile approach to implementing new functionality for your web site, while retaining the full power, scalability and security of the java-stack.

With Groovy you can add new functionality at runtime without a edit-compile-deploy-test cycle. The edit-compile-deploy-test cycle is reduced to edit-test like in PHP. This really cuts down on the time it needs to try out some stuff, build ad-hoc functionality or prototypes/demos. It will also be extremely helpful when building import scripts or run reports.

View Greg's video of what we have achieved with Groovy support in Magnolia so far.

Tuesday, February 02, 2010

Getting serious

Magnolia today announced the appointment of Andrew King as the new Head of Business Development for Magnolia Americas. Andrew is coming to us from competing Alfresco, and as such he brings with him excellent industry knowledge, and he gets Open Source. Combining his expertise with the outstanding product that Magnolia CMS really is leads to excellent motivation on all sides, and we look forward to make many more customers happy than we already did.

I am really excited about Magnolia making headway into the US. After all, I personally founded Magnolia Americas in summer 2007 and spend considerably time there laying the foundation of our success. With Andrew, we hired a "native" who understands the US market and has worked with European companies before. This will be of great benefit for our clients as well as our partner channel in the USA. Developing the latter is Andrew's first priority, in line with our corporate strategy of growing with our partners. Our non-compete partner strategy should be a strong incentive for potential partners in the USA, and we look forward to partner with some excellent companies in the USA.
Having Andrew on board is certainly a milestone for our US business. Expect more good news to come!