The Future of Content Management
asserttrue.blogspot.com
asserttrue.blogspot.com
For instance, I've dealt with CMSes that have tried to remove HTML from their core content only to be forced to store HTML strings in their data stores and use an editor like FCKEdit or TinyMCE in later versions of the product. The problem has never been the extra structure and sequence that HTML lends to the content. The problem has always been that it has been cumbersome to transform this structure and sequence. When someone wants to change their website so an article written on one HTML page is now spread across 5 pages, it shouldn't require them to have to jump through hoops to accomplish this. Or if somebody wants to convert a written article into a spoken recording, a CMS should be able to handle this.
It's alright to store content in its final publishable state of HTML, so long as you make it easy to transform that content into different representations. How you store the intermediary data does not matter. It's the transformations between final content states that are the key. But today's CMSes make it so difficult to transform content. Think about it. How straightforward is it to move a website from one CMS to another let alone from say, a website to a printed book? I honestly think the future of CMSes lies in something that looks a lot like Yahoo Pipes rather than some centralized repository enterprise battleship clunker (can you tell I've had to deal with some crappy CMSes)?
FWIW, that's exactly what I'm working on.
Where am I now?
Heh. I mentioned that looking for duplicate files is harder than I thought it would be. I'm actually on my third try. The first one was when I thought "I can do this with a script", the second was with .NET, where I aimed bigger, but found not nearly big enough.
So, I've just completed the work on the file crawler, and the next bit is submitting the crawl results to the index. I've done this part before, and I don't expect it to be particularly hard, but I have to find the time for it. After that, something resembling a UI (I am trying to solve a problem), then put the whole thing out there with a big fat "alpha" disclaimer (probably Apache license, since I'm using so much of their stuff).
And that's what I'm doing, and where I'm at.
Hope this helps.
Done correctly, this would make notions like "backups" completely obsolete, and "my files" would exist on any computer that allowed me to log in to the appropriate service.
Fast, decentralized, redundant network systems are a beast to engineer though, but it's do-able.
Bonus points if you figure out how to let users store private data on such a network, and keep it private, while also allowing them to share specific files with specific individuals or groups of individuals.
Pull that off, and you'll have the holy grail of data storage.
I've only got some rough notes on this; I don't think I'd start trying to actually implement it for another two years yet.
Beat me to it! I'd rather take a vacation. :-)