In June 2011 there will be a Day Of DotNetNuke Europe in Hamburg, Germany. I have submitted several session proposals, one of them a session on how to apply the Telerik controls in order to improve User eXperience (UX) of any DNN module that you have created. For the DNN Events module (for which I am team lead), we are currently busy on a new version that has the first implementation of Telerik controls in place. I could have used Events as an example, but this is a complex module, which makes it difficult to illustrate the advantages and the how-to of Telerik controls.
So I looked around to see if there were DNN core modules lurking around that did not get any attention in the past year, modules that are not that complex and that could use a refresh.
And I found one: the DNN FAQs (Frequently Asked Questions) module. After an online chat with Chris Paterra (DNN Corp Senior Developer/Project Manager and Team Lead of the Extensions Forge Team), he was more than happy to assign me as Team lead for the DNN FAQ’s module (you bet he was).
So here I am: a DNN core module that has got no real attention whatsoever over the last 2-3 years and a session to give on the DNN Europe conference mid June about my experiences with adding Telerik controls to the module and the lessons I have learned.
What am I planning to do with the DNN FAQs module?
I want FAQs to become active and live again. Therefore, I have the following actions in mind for the module:
- Migrate the solution to Visual Studio 2010
- Restructure the solution
I want to simplify the structure, reorder the various files in logically named folders
- Use automatic DNN5 manifest creation, PA and source pack builds
I will use the MS Build for DotNetNuke extensions that we have created and made public on CodePlex. This will save a lot of time during development and packaging
- Improve the solution to work in DNN5 and build warning free
In a first inspection, I found deprecated code in the module, there are warnings during the build, it is using the ‘old’ connection string, the HTML is not XHTML compliant and more. I will also use ReSharper to do basic code clean-up.
- Convert the solution to C#
Yep, C# it will be, since that is the language of choice of my company (XCESS), as well the choice of the DNN future. I will use automatic conversion tools to do most of the plumbing for me.
- Hardening the DNN FAQs table structure
A short look into the current table structure reviewed that it can be improved.
- Implementing Telerik controls
Telerik controls can enhance the UX en UI of any DNN module. Using the DNN Wrappers, you can add the Telerik controls freely (in compliance with the Telerik license) to your module.
- Reviewing and implementing requests for enhancements
If you have any wishes, bugs, feature enhancements, suggestions for DNN FAQs, add them in the issue tracker on CodePlex. Please keep in mind that I want to keep this module simple and straight forward. So any request to enhance it into a full fledge knowledge base system with bug tracking, workflow and scheduled e-mailing capabilities will not be honoured. Sorry.
A new release for DNN FAQs is already in the works
My plan is to create a release after step 4, so everyone can profit from the work done so far. I finished with steps 1 and 2 last weekend, so a release candidate should not be weeks away. Any changes I make to the solution and source are reflected in CodePlex, since I am using CodePlex-TFS for source control.
Feel free to follow the progress and comment on that.
Interference with DNN Events?
Does this work on DNN FAQs mean that the improvements of DNN Events will slow down? By no way. A new version of Events is in the works, and by no means the progress on Events will be hampered by my work on FAQs. I have interested one of my colleagues at XCESS (Maarten Kosse) to join me in the work of FAQs (he has some time after working hours left), so it will not be all my blood, sweat and tears, but his as well.
I have made up my plans and expect to create a number of blog posts about my experience with the DNN FAQs module. Stay tuned!