Thursday, January 26, 2006
CMS Directory and Matrix
I found a CMS directory online. It is missing many CMS's but it still has lots of good information.
This CMS matrix lists many of the open source CMS's that are out there today.
This CMS matrix lists many of the open source CMS's that are out there today.
Wednesday, January 25, 2006
Java Content Manager - Initial List
After doing a little research I found a list of CMS's that might meet my requirements. Over time I plan to give each of them a try and will do my best to document my findings.
I plan to take a look at the following CMS's:
I plan to take a look at the following CMS's:
- OpenCMS
- Magnolia
- Slide
- Jackrabbit
- eXo
- Rhythmyx 5
- Liferay
Tuesday, January 24, 2006
Searching for a Java Content Manager
Through my consulting and full-time work, I learned the value of a Content Management System (CMS). The big benefit is that the chore of maintaining a web site's content can be taken out of a developer's hands and given to someone who is less technical. In an ideal world this person would be the business user who best knows the content.
Unfortunately, the only good Java CMS that I have worked with has been part of a framework called Blue Martini. While the Blue Martini web framework itself is far from perfect, its CMS, Enterprise Desktop, makes it worth the trouble. The problem is that the framework is far too expensive for myself and for many of my clients. I need a CMS with similar capabilities, but with a much smaller price tag.
The optimist in me says that good, reasonably priced CMS' exist for other languages (e.g. PHP), so one has to exist for Java, right?
Hoping that the open source community will once again come to my rescue I have begun a search for a replacement CMS that costs nothing to very little and that meets my other requirements (see below).
Before I get started, what content do I want to manage?
Unfortunately, the only good Java CMS that I have worked with has been part of a framework called Blue Martini. While the Blue Martini web framework itself is far from perfect, its CMS, Enterprise Desktop, makes it worth the trouble. The problem is that the framework is far too expensive for myself and for many of my clients. I need a CMS with similar capabilities, but with a much smaller price tag.
The optimist in me says that good, reasonably priced CMS' exist for other languages (e.g. PHP), so one has to exist for Java, right?
Hoping that the open source community will once again come to my rescue I have begun a search for a replacement CMS that costs nothing to very little and that meets my other requirements (see below).
Before I get started, what content do I want to manage?
- Images
- Copy (i.e. the text on the page)
- Downloadable files (e.g. PDF's)
- Some layout attributes - not really content but
- Must be accessible from Java code. At one time I wanted the CMS to be written in Java too since it just seemed "right", but I now realize that this is a "nice to have" and not a hard requirement. Another nice to have is support for JSR-170.
- Is just a CMS or can be used just as a CMS. Many of the CMS's out there are tied to a web or portal framework. I don't need the framework. I want a CMS that can be used with any framework or with any Java application
- Allows a snapshot of the most current content to be taken and moved to other environments. For example, I want to be able to add content that is under development, take a snapshot of this content, and then move it to a test environment where it can be reviewed as a complete site. Once the review is complete then the content snapshot would be moved to a production environment. Many CMS' allow individual pieces of content to be modified and tested before being published to production, but they do not allow the entire site to be tested and published at one time.
- Supports internationalization of content. I need to be able to insert multiple translated versions of a piece of content and to have the CMS return the correct version based on the user's locale.
- Must have a rich user interface. The UI can be a thin web client or a thick client. What is important is that it must be easy enough for non-technical people to work with.
Why Am I Doing This?
This is my first serious venture into blogging. Prior to now I hadn't taken the plunge into blogging because I didn't think that I had the time to do it well. Further I didn't think that there was an audience out there who would be interested in reading what I had to say. Essentially, why should I take the time to blog when I might be my only reader?
Well, I've decided to make time to blog and I have decided that at the very least writing will help me better organize my thoughts and better understand the topics that I write about. And if I'm lucky a few people might stumble upon my writing and find it helpful.
In this blog, I plan to write about my experiences with the tools and technologies that I use every day. In particular, through my software consulting work with Landers Consulting, Inc. I utilize a lot of open source technologies. As most software folks know, one of the frustrations of using open source software is the lack of quality documentation and real world examples. Hopefully my posts will help fix this problem.
In addition to open source, I plan to write about the following topics:
Well, I've decided to make time to blog and I have decided that at the very least writing will help me better organize my thoughts and better understand the topics that I write about. And if I'm lucky a few people might stumble upon my writing and find it helpful.
In this blog, I plan to write about my experiences with the tools and technologies that I use every day. In particular, through my software consulting work with Landers Consulting, Inc. I utilize a lot of open source technologies. As most software folks know, one of the frustrations of using open source software is the lack of quality documentation and real world examples. Hopefully my posts will help fix this problem.
In addition to open source, I plan to write about the following topics:
- Software architecture and development - nothing specific, just my musings on the industry
- Java - any Java technology or tool that catches my fancy
- C# / .NET - same as above