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!

Wednesday, January 27, 2010

ModeShape - a unified content bus for Magnolia?

While Oracle is working on delivering everything you might ever need from a single vendor, the real world is a mess. Always has been, always will be. (Reminder: politics has to do with people, not technology).

The real world means that you have a lot of information hubs (call them silo's if they are proprietary and provide no open API to access their content). Content Management Systems like Magnolia CMS have provided a very open architecture to access these hubs, in part because Magnolia is running on the Java platform, which has been built for such integration, and in part because Magnolia's design is so open. However, each such integration still means the developer needs to understand the target API, a fact that quickly becomes expensive.

Wouldn't it be much nicer if the developer could just ignore the fact how and where data is coming from, and simply use JSR-170 to access it?

Enter ModeShape:

ModeShape (formerly "JBoss DNA") is a JCR implementation that provides access to content stored in many different kinds of systems. A ModeShape repository isn't yet another silo of isolated information, but rather it's a JCR view of the information you already have in your environment: files systems, databases, other repositories, services, applications, etc.

To your applications, ModeShape looks and behaves like a regular JCR repository. Using the standard JCR API, applications can search, navigate, version, and listen for changes in the content. But under the covers, ModeShape gets its content by federating multiple back-end systems (like databases, services, other repositories, etc.), allowing those systems to continue "owning" the information while ensuring the unified repository stays up-to-date and in sync.

So, if all goes well, ModeShape will provide a seamless extension of our existing content repository architecture. Instead of e.g. creating a new workspace and importing data from a third party system, you could just use ModeShape and add a connector to said system. If you are lucky, such a connector already exists. ModeShape is LGPL and as such I hope that it will gain wide adoption as a transparent wrapper for JackRabbit. Used in this way (provided the performance hit is small), nothing changes from the perspective of Magnolia (or the developer) but eventually, it will simplify content integration on the JSR-170 level, something that would definitely be a boost to the importance of the specification.

And with some luck, the world will be less messy even for those that don't shell out for Larry's vision of one provider for all things IT.

Thursday, December 31, 2009

Happy Old Year, Happy New Year for Magnolia CMS

We are happy to say that 2009 has been the best year ever in Magnolia's corporate history. We are entering 2010 in a very strong position. We have a great team, a great product, great customers and our financial position is strong. Our license revenue has increased more than 60% for the third year in a row and has now reached about 75% of total revenue, clearly in line with our strategy to leave services to our partners and focus on product development, sales, marketing and education.

On the documentation front, the realization that documentation is as important as the product has resulted in significant more investment into documentation. While unfortunately, some of it has not yet left a visible trace, documentation has significantly improved in many areas. Most importantly, we have just added a full-time technical writer to our team and fully expect our vision for the documentation become a reality in 2010 (some pretty exciting ideas - stay tuned!)

In addition, 2 more new positions will be filled in January, making Magnolia bigger and stronger than ever. So expect great things form us in 2010 - and we expect great things from you! We have seen growing community activity, many cool modules have been developed and the Magnolia Conference was a personal highlight in my life. Thank you for your continued support!

So Happy New Year to all of you. We are looking forward to a fantastic 2010 together with you!

Wednesday, September 30, 2009

Magnolia Conference Keynote

Tuesday, August 11, 2009

Dynamic Redirects

Have you been in the situation where you want to shorten URL's in your communication? For instance, it is time for a new Magnolia newsletter, the 8th one in our series. Our newsletters are located at http://www.magnolia-cms.com/home/news/newsletters/newsletter-8.html - not exactly brilliant from a communications perspective.

Magnolia allows you to add VirtualURIRedirects, and I have written about their usefulness before in the context of site restructuring.

For our newsletter, we typically add an entry in the configuration like this:


In other words, we add a static entry that forwards www.magnolia-cms.com/nl8 to our newsletter location deep within the site hierarchy, and makes it much easier to send out links or twitter about it.

So far so good, but today saw the 8th time I needed to add such an entry; and what is worse, I realized that we forgot the redirect for our 7th newsletter (which was sent out while I was on holidays, and the person doing the job did not know he had to add it).

Time to dig a little deeper into Magnolia, and avoid future work and worries!

Since sometime in Magnolia 3, you can use regular expressions in the VirtualURIMapping configuration. Here is what you need to do

  1. copy an existing configuration
  2. instead of the default class (aptly named "DefaultVirtualURIMapping") use the class RegexpVirtualURIMapping
  3. define your match ("fromURI"), in our case "/nl([0-9]+)$" which means any URI starting with /nl followed by digits and nothing more (the $ means end of line). The parenthesis denote the dynamic part, which we need to determine the correct destination in the last step:
  4. define your target ("toURI"), in our case the newsletter page deep within the hierarchy, with an added twist: we dynamically add our match to the page name, i.e. "newsletter-$1.html". In this case $1 means replace "$1" with whatever was matched in step 3 between the parenthesis. (And yes, you can have more than one set of parenthesis and reference the matches with $1, $2 etc).
The resulting entry should look as follows, and all you need to do now is activate your configuration and enjoy!


As you can imagine, this is also great for search-engine optimized landing pages.