DMX 4 is really progressing fast now. I’ll try and give you an idea where it stands. Unlike construction, in software I can’t take a picture and show instantly what has been done and what needs to be done. I’ll have to make do with words.
Completed
A new interface concept
The new interface has been designed with one goal: to avoid any page refresh. This means that on the main screen we find the old main views collections, categories, search, and my subscriptions as well as the details view and possible child windows of addons. This has been achieved not in the least through the application of the latest suite of ComponentArt UI components (2007.1). This is a fabulous product to work with and I’m very happy with the results in DMX. A lot of work has gone into wiring these controls and developing additional JavaScripts.
A new data model
A major upgrade is the opportunity to weed out illogical or non-functional parts as well as adding new functionality. This also applies to the database. The new model now allows for dynamic localization and more sophisticated locking (necessary for WebDAV). It also paves the way for integration with Windows workflow (.Net 3) which I expect will have some impact on the corporate market over the coming years.
Another change to the data layer has been to move some of the stored procedures into code. This will allow the custom attributes to reach more places in the module.
A new extensibility model
Although much remains intact from the previous version, some work has gone into developing new techniques to extend DMX without impeding performance. The way the new menu (which will replace the old toolbar) is built requires less code and yet provides more flexibility. I hope this will prove valuable in the future.
A new search solution
Enter Lucene, an open source search library. The old solution based on Windows Indexing Service has always been a headache as it depended more on the specific setup of the customer. This invariably leads to lots of support questions. Indexing Service is also an ill-documented and inflexible solution from the developer’s perspective. I’ve always resented to have implemented the switch to cancel ‘renaming file extensions’. It was necessary as the Indexing Service needed the extension to index a document. Now, with Lucene, I’m in control. It is also famed to be lightning fast, so what more could you want. O yes, to break off search into its own provider. Done.
Still to be done
WebDAV
Work is almost complete on this part.
Synchronization client
I’ve planned to add a Windows client that allows a client PC to synchronize a directory with a DMX collection. It’s still on the drawing board.
Put the bolts back in and close the hood
Some of the basic functionalities (delete, subscribe, etc) have to be put back in and the product has to be wrapped, tested, etc.
Anything else
In Dutch at the end of a business meeting the agenda will state “WVTTK” (wat verder ter tafel komt), which means as much as “whatever crops up”. In my experience the closer to the end of the project we get, the less surprises. The downside is that the project is less capable of dealing with surprises at that stage. Lets hope the last few weeks are smooth.
Planning
It looks like a test version could be available at the end of the month. Then, if all goes well, it should be RTM at the end of June.