"A PHP interface to a web services layer that allows users to federate and orchestrate functionality from other services, applications, and data stores." That's how Damien Howley, Mindtouch evangelist, described the current DekiWiki release. I was spending a couple days on the show floor at ZendConf helping Bitrock who had a pedestal in the Microsoft booth. Mindtouch had the pedestal next to us in the booth, and during one of the slow periods on the floor Damien gave me a demo of their latest technology.
I wasn't going for it. It's an open source wiki, developed by MindTouch who then provides enterprise support. I'd seen the demo a few years ago, and it was essentially some nice touches on a wiki for the enterprise user like a good WYSIWYG editor. Then Damien gave me the new demo. Mindtouch has added Dekiscript as a programming language within Dekiwiki. Think Javascript added to HTML pages and dynamic content development only applied to wiki pages. Now I'm NOT a wiki sort of guy but I couldn't help to be amazed by what I saw.
I wanted to explore the idea of what this might mean for enterprise applications development a little more. I signed up for a free account on their Deki On Demand hosted service. (These free accounts no longer exist.) It took me a few minutes to get going with the user guide, and I thought I'd try something simple like pulling together a dynamic "bio" page. I grabbed content from my existing bio, and then using the WYSIWYG extensions environment, I quickly added the embedded DekiScript extensions for photos from Flickr, the last few blog posts from my feed, and a Twitter widget.
So the following fragment from the page:
Recent Photos:
{{ flickr.Badge{tags: "Stephen Walli"} }}
Recent Blog Posts:
{{ feed.List{feed: "http://feeds.feedburner.com/OnceMoreUntoTheBreach", max: "6"} }}
Recent Tweets:
{{ twitter.current{name: "stephenrwalli"} }}
Produces the following:
There's a complete security model embedded in the wiki as one would expect. There's support for writing your own templates, and site wide CSS, etc. There's support for writing your own extensions (and sharing them in the developer community). There are also large scale adaptors (e.g. SugarCRM, Microsoft SQLserver). So this is where it gets interesting. How fast could an enterprise IT developer with a little Dekiscript knowledge and the toolkit of extensions and adaptors start to build interesting applications. I don't mean a more interesting content management system. I'm thinking of complex content-centric multi-departmental work-flow environments like patient or legal case management systems. Is it still enterprise IT development if they install DekiWiki and develop dashboards with some simple scripting and drag-and-drop goodness? How soon before enterprise business people step around the IT department to do their own "development"?
Thanks for the nice write up. You're absolutely right! We want end users to be able to adapt dashboard to their needs over time. IT might create the first iteration, but why does IT need to be the bottleneck for every little tweak. That's what is killing IT with overload and is also why non-IT departments hate IT's slowness. Now, combine this with a wiki model where every change can be traced back and reverted easily (think source control!) and with a comprehensive security model, and you get a glimpse of what Deki enables you to achieve. :)
Posted by: Steve Bjorg | 09 October 2008 at 07:19
Thanks for the great review of MindTouch Deki. Keep up the great writing and we look forward to reading more from you. Cheers!
Posted by: Sarah Carr | 09 October 2008 at 11:59
Thanks for the review. When looking for a good, open source wiki I had glanced at MindTouch once before but did not see any mention of a free or open source version. Even after reading your review my eyes were drawn away from the singular mention of "open source" on the front page to the "how to buy" button which quickly scared the crap out of me given a $0 budget.
Alas, it is my fault for not digging further to realize that there is an open source version. And don't get me wrong, I believe software developers deserve to get paid and the freemium model is a good one. Just didn't seem obvious at first. Your review caused me to take a second look and I'm downloading now.
Cheers!
Posted by: Corey Shields | 14 October 2008 at 05:42