Learn More





DNN Community Blog

The Community Blog is a personal opinion of community members and by no means the official standpoint of DNN Corp or DNN Platform. This is a place to express personal thoughts about DNNPlatform, the community and its ecosystem. Do you have useful information that you would like to share with the DNN Community in a featured article or blog? If so, please contact .

The use of the Community Blog is covered by our Community Blog Guidelines - please read before commenting or posting.

Books I'm reading

During my career in computers I have been an avid reader of technical books.  Computers in general, and programming in particular, are constantly evolving fields that require you to constantly refresh your skills to stay current and relevant.  One of the ways, as a Software Development manager, that I use to distinguish people who have a programming job from those who have a profession is by the number of technical books and magazines I see on their desks.  I have found that those who have a passion for reading tend to be better programmers because they are constantly learning new skills or improving on their existing skills.  Whether it is a book on CS theory or just the latest tome on ASP.Net, each book provides some insight into how other people solve common programming problems. 

I took a brief hiaitus from reading during the holidays, but over the last couple of days I have started reading Framework Design Guidelines and Presenting Windows Workflow Foundation.  These books have been on my "wishlist" for a little while and I think are very relevant to what is going on with DNN platform development.

Framework Design Guidelines was written by Krzysztof Cwalina and Brad Abrams 
from the MicroSoft .Net team.  This book is essentially seven+ years of design knowledge crammed into 300+ pages.  I really like that they include small blurbs from many developers both inside and outside of MicroSoft to get their "views" on designing frameworks and APIs for use by other developers.  The book spends a lot of time teaching you the lessons learned from the .Net developers and will hopefully will improve the way I think about building public APIs in the future.  I really think this is a must read book for anyone who has to write any sort of development framework or who is looking to improve an already existing framework.  I certainly plan to promote the book on the DotNetNuke team and think it will give us some fresh perspective on how we can better serve the development community.  I am not too surprised to find that we already share many similar design philosophies, but it is never bad to get your own practices re-affirmed by some of the industry experts.

One of the missing features in DotNetNuke is true Content Management.  The ability to have content go through multiple stages of review and approval before it is posted to the "live" site for public display.  This sort of implies that work also has to be able to be rolled back if it is not approved.  The review and approval process is something that is commonly handled through the use of a workflow engine.  Some products roll their own engine that is highly tailored to their workflow, while other content management systems will utilize an existing workflow engine.  This decision is still up in the air internally as we look to determine what we think is the best approach for the DNN community.

Windows Workflow Foundation is a core feature of the upcoming WinFX release and provides an extensible model for building robust workflow features into both desktop and web applications.  I started reading this book because I think that regardless of whether we use WWF for DNN, it will provide a lot of insight into some of the issues that we will need to ultimately address for DotNetNuke.  Presenting Windows Workflow Foundation is a collaborative effort by many of the developers on the WWF team and covers many different aspects of WWF.  One particular area that I have found particularly interesting is how the Office 12 and Sharepoint teams have integrated WWF to allow users to manage office documents.  Some of the functionality described for Sharepoint has direct applicability to DotNetNuke and includes features that I would like to see implemented, no matter what decisions we might make about choice of workflow engines.  Future versions of Sharepoint will allow you to associate one or more workflows to different events for a single module instance on the page.  This is nice in that there is nothing pre-defined for "every" module.  Some modules may require a very complicated workflow for posting content, while others may have a very simple publishing model that allows data to be posted to the live site immediately.  If you are thinking about adding workflow to your own application, this is a good book to checkout.

Windows Workflow Foundation.jpg


Comment Form

Only registered users may post comments.


2sic Daniel Mettler (124)
Aderson Oliveira (15)
Alec Whittington (11)
Alex Shirley (10)
Andrew Nurse (30)
Anthony Glenwright (5)
Antonio Chagoury (28)
Ash Prasad (22)
Ben Schmidt (1)
Benjamin Hermann (25)
Benoit Sarton (9)
Beth Firebaugh (12)
Bill Walker (36)
Bob Kruger (5)
Brian Dukes (2)
Brice Snow (1)
Bruce Chapman (20)
Bryan Andrews (1)
cathal connolly (55)
Charles Nurse (163)
Chris Hammond (203)
Chris Paterra (55)
Clinton Patterson (28)
Cuong Dang (21)
Daniel Bartholomew (2)
Dave Buckner (2)
David Poindexter (3)
David Rodriguez (2)
Doug Howell (11)
Erik van Ballegoij (30)
Ernst Peter Tamminga (74)
Geoff Barlow (6)
Gifford Watkins (3)
Gilles Le Pigocher (3)
Ian Robinson (7)
Israel Martinez (17)
Jan Blomquist (2)
Jan Jonas (3)
Jaspreet Bhatia (1)
Jenni Merrifield (6)
Joe Brinkman (270)
John Mitchell (1)
Jon Henning (14)
Jonathan Sheely (4)
Jordan Coopersmith (1)
Joseph Craig (2)
Kan Ma (1)
Keivan Beigi (3)
Ken Grierson (10)
Kevin Schreiner (6)
Leigh Pointer (31)
Lorraine Young (60)
Malik Khan (1)
Matthias Schlomann (15)
Mauricio Márquez (5)
Michael Doxsey (7)
Michael Tobisch (3)
Michael Washington (202)
Mike Horton (19)
Mitchel Sellers (28)
Nathan Rover (3)
Navin V Nagiah (14)
Néstor Sánchez (31)
Nik Kalyani (14)
Peter Donker (52)
Philip Beadle (135)
Philipp Becker (4)
Richard Dumas (22)
Robert J Collins (5)
Roger Selwyn (8)
Ruben Lopez (1)
Ryan Martinez (1)
Salar Golestanian (4)
Sanjay Mehrotra (9)
Scott McCulloch (1)
Scott S (11)
Scott Wilkinson (3)
Scott Willhite (97)
Sebastian Leupold (80)
Shaun Walker (237)
Shawn Mehaffie (17)
Stefan Cullmann (12)
Stefan Kamphuis (12)
Steve Fabian (31)
Timo Breumelhof (24)
Tony Henrich (3)
Torsten Weggen (2)
Vicenç Masanas (27)
Vincent Nguyen (3)
Vitaly Kozadayev (6)
Will Morgenweck (37)
Will Strohl (163)
William Severance (5)
Try Evoq
For Free
Start Free Trial
a Demo
See Evoq Live
Need More Information?