This post originated from an RSS feed registered with Java Buzz
by Marc Logemann.
Original Post: Open Source CMS - Scary world
Feed Title: Marc's Java Blog
Feed URL: http://www.logemann.org/day/index_java.xml
Feed Description: Java related topics for all major areas. So you will see J2ME, J2SE and J2EE issues here.
I recently decided to use a CMS for my various websites (private and commercial ones) and i thought that there must be something useful in the open source area. So i started the search 3 days ago and during the search, i allways checked http://www.cmsmatrix.org/matrix to see if the actual product has feature A or B. Its really a nice comparision site.
I am coding Java on regular basis, so my first idea was to use a java open ource CMS. Of course it doesnt take long that you arrive at OpenCMS. I studied their materials and screenshots to get an impression. The first thing i noticed was their horrable UI. Again it came to my mind that too many developers simply ignore user interfaces. This is ok as long as you keep your software away from a public audience, but this is not the case here. But ok, if its really good, i could live with some ugly interface. But another no go, and this is perhaps a personal choice, is the non-existance of frontend-editing.
Today, i think you cant live without this. Too many people have seen CMS systems like RedDot, Interred or others, providing exactly that. All in all, my first impression of OpenCMS was not good enough to give it a deployment tryout.
Then i saw Nukes on JBoss. But to be fair, i dont think any Nukes based system is a real CMS, so i instantly went further in my search.
Another java based open source CMS lately seen on some java portals like TSS was Magnolia. It uses the brand new content repositories JSR 170. I have not spent too much time on the site, but all i see was quite promising but they are in an early state, so there is not too much in there. No workflows, no versioning and some other essentials. But they have a really breathtaking HTML interface which works on more than one browser. This is by far the best browser UI i ever saw. Check their Video out. To summarize it: I like it, but one have to do a lot of templating and programming, because there is not much built in. One would ask for a menu component which generates menu, but you have to do that the hard way. Perhaps i will come back to it, not only as a user, but eventually as some comitter.
Later on i found Jahia. Its definitely the product with the most weird license practice. Its not free as free beer but you can pay your license by contributing or pay it as usual of course. But aside from this mentioned practice, the featurelist looks promising. BTW you better dont compare Jahia against Magnolia on CMSMatrix, because you will get a horrable Magnolia picture, but one reason is that cmsmatrix is still based on Magnolia 1.1.
Then i tried several PHP based CMS systems. I started with the actual go-to-guy in terms of open source CMS software, Typo3. To be honest, i thought that this will be my CMS of choice beforehand. I bought the really nice Typo3 book called "Typo3" and reading the first pages was real fun, its a hardcover book with some sense for typography and style. But the fun ended when i entered the Typoscript section. Frankly, i have never seen such a braindamaged approach to templating/configuration of a CMS system. My bet is, its faster to learn java than Typoscript and its semantics. Many people knowing Typo3 only from articles, recognize Typoscript as a templating language which is totally false. Instead its a weird object registry comparable to the windows registry. I could go deeper here, but at the end, i dont waste my time with a badly designed system. There are over 2000 pages of documentation, normally i would say: "cool, an open source project with actually something to read". But there is a reason for 2000 pages and its not because its the most complete CMS in the world.
I continued my search with some other php CMS projects with some community behind. I tried EZPublish, Mambo and WebGUI. To summarize these, i can only say that these projects, like many other PHP projects feel like playing tools, started by some HTML/Javascript savy frontend designer or a programmer with 2 years experience on his back. Most systems require that you go their way or no way. I have not seen a mature templating technique in one of them and this even with a great base framework for templating available in PHP called smarty. When i see menu-components echoing HTML markup inside core logic, i can only think of a programmer who had never attended software design classes. But dont get me wrong, the mentioned CMS were the better ones in the PHP area, i crawled some other sites with unbelivable rubbish calling itself CMS. Its the same as in the commercial CMS market, there is hughe defragmentation with a lot of trash
everywhere.
So what is my conclusion? Commercial Software has an easy game in this area. I know at least 6 commercial CMS systems, outperforming any open source CMS by factor 3 in terms of functionality and design. So what will i do? I will try using Magnolia because its one of the few i saw, that has potential. If they only would provide a better developer-joining-path, i dont see any build.xml file and there is no standalone WAR archive. And the response in the maillist i got to create the build.xml from scratch is quite crazy when their IDE is capable of generating the build.xml based on the project definitions. But things will develop i hope and i will do my best to contribute, but i really dont want to write a build.xml file as my first action on that project, thats quite unusual for a project with some months in existance, but it seems that most developers (if not all) are inhouse of obinary, the supporting company.