DotNetNuke Licensing

DotNetNuke 2 Comments »

One of the great aspects of DotNetNuke is it’s licensing. Its license is based on the BSD license.

What this means is that the software is free for you to do anything you wish without having to submit any modifications or enhancements. This is really useful compared to the GPL where you would have to submit any changes as you will be developing custom modules for yourself that you would probably not want to share.

From their site:

*** Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

The software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. In no event shall the authors or copyright holders be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise, arising from, out of or in connection with the software or the use or other dealings in the software. ***

n-Tier Development at its Best

DotNetNuke No Comments »

We are currently using DotNetNuke as the portal platform for an in-house project. I chose this platform as our base because it is written in a .NET language (our languagues of choice), its add-on model is stable and incredibly sound and it has the ability to do pretty much whatever you require.

Looking the the object model within DNN, you will notice n-tier development at its absolute best. The 3 layers (data, business, presentation) are tightly defined and completely seperate. The platform does run off a SQL Server backend but because of the architecture, I could easily write a MySQL dataprovider or an Access version if I really wanted to. As an example, in the business layer all datareaders are passed around as an interface called IDataReader. The business layer doesn’t care what kind of datareader it is (ODBC, SQL) as long as it implements the functions defined in the IDataReader interface. Pretty smooth!

If you are wanting to learn how a well architectured application works and how n-tier applications are built, take a look at the source code, install the portal and have a go at writing a simple addon. You won’t be disappointed and you will definitely learn something new about OO in your work.

It has taught me a lot and I am not even coding with it directly. There is a C# version that has been ported from the VB.NET version in case you prefer that language.

I have decided to write about our experiences using the portal on this blog. If you have an interest in DotNetNuke, n-tier development or just OO, subscribe to the RSS feed and have a read! :)

DotNetNuke Sourceforge Page
C# Version