Josh Gough

<May 2008>
SuMoTuWeThFrSa
27282930123
45678910
11121314151617
18192021222324
25262728293031
1234567


Navigation

Subscriptions

Post Categories



DotNetNuke Module Developer's Workshop Live DVD

DotNetNuke Developer's Workshop Virtual Appliance

Virtual machines have been around for a long time. For desktop operating systems, the most well known software is VMWare. Microsoft also provides Virtual PC and Virtual Server. VMWare hosts a directory of "Virtual Appliances" that you can download at no cost. These VMWare images come fully loaded with software that is often configured for a very specific niche. It could be for networking, content management, customer relationship management, etc. Some are configured as development appilances. An example of this is the rPath LAMP Appliance:

http://www.vmware.com/vmtn/appliances/directory/465


Description of rBuilder LAMP Appliance

The LAMP Appliance brings the best of breed Web application tools together in one easily-deployable form factor. From the Apache Web server, to your choice of databases (MySQL and PostgreSQL), to the three preeminent scripting languages (Perl, PHP, and Python), the Linux-based LAMP Appliance gives you the foundation for the database-backed Web application of your choice.

rBuilder from rPath is the first platform for creating and maintaining Linux-based software appliances. Software appliances give customers all the benefits of an locally-hosted application without the hassles of integration and operating system maintenance -- the hallmark of Software as a Service (SaaS).

rBuilder transforms Linux from being "just another port" for application developers to being a strategic element of a subscription-based business model, making it possible to reach customer you could never reach before.

Definition of Live CD from WikiPedia

Another related term is "Live CD", which is also popular in the Linux community. See http://en.wikipedia.org/wiki/LiveCD. The description of a Live CD is as follows:

A live CD (or liveCD) is an operating system (usually containing other software as well) stored on a bootable CD or DVD that can be run directly from the CD or DVD drive, without installing into permanent memory, such as a hard drive. (A live CD does not alter the current operating system or files unless the user specifically requests it.) The system returns to its previous state when the live CD is ejected and the computer is rebooted. It does this by placing the files which typically would be stored on a hard drive, into temporary memory, such as a ram disk. In fact, a hard drive is not needed at all. However, this does cut down on the RAM available to applications, reducing performance somewhat. 256 MB - 512 MB of RAM is recommended, but some live CDs do fine with less.

Electing to Install a Live CD ISO Within VMWare of Virtual PC Instead of Burning it to CD

Rather than burn a CD, many people elect to simply download the ISO image, then use VMWare, Virtual PC, QEMU, etc and boot the guest operating system within a self-contained execution environment from the comfort of their own familiar desktop operating system. This can be a very useful and unobtrusive way to explore a new system or collection of unfamiliar software packages without having to invest a lot of time and effort into configuration and setup. With download speeds ever increading, the proposition is becoming more and more attractive.

Microsoft's Employment of the Live DVD Tactic at MSDN Events

Similarly, Microsoft has been known given out "Live DVDs" after MSDN events that have been fully loaded with time-limited versions of VS 2005 Beta, SQL Server 2005 Beta, etc. Of course, these were running in Virtual PC, not VMWare. I have attended ASP.NET Training courses at Hewlett Packard that use this approach to training. When we sat down, we booted up our Virtual PCs and went off to work in our virtual Visual Studios.

Ripe Marketing Opportunities for this Tactic within the DotNetNuke Community

I know a lot of people who are very eager to learn how to develop DotNetNuke modules. I know others who have no interest in developing DotNetNuke modules, but are very interested in what DotNetNuke could do for them. I see both of these as perfect opportunities for DotNetNuke appliances, both as training resources for developers and as marketing vehicles for prospective users. In the case of developers, a DotNetNuke appliance could be fully loaded with all sorts of valuable resources and open source software. For prospective users, one could foresee different types of tailored portal installations that could be given to users either in person or via web download. Users could then experiment with DNN to their heart's content. As DNN undergoes more "ajaxification", one could even argue that DNN is a good candidate for personal information management as a "Portable Application". *

Idea Proposal: DotNetNuke Module Developer's Workshop Live DVD

Regarding the first scenario, What I propose is a DotNetNuke Module Developer's Live DVD. This DVD would have all the essential DotNetNuke software preloaded and configured with supporting code generation tools and documentation, free skins, videos, etc.

But, that's where I stop because this is a Microsoft universe ruled by EULAs that prevent operating system software distribution. Well, it's not really where I stopped. I've already begun to do it as a proof of concept. I've installed Windows XP within VMWare and loaded it up and installed all of the following software:

C:\Documents and Settings\Developer\Desktop\Core Downloads
│   DotNetNuke_4.3.0_StarterKit.vsi
│   DotNetNuke_4.3.0_Source.zip
│   Module Upgrade Wizard.zip
│   vwdsetup.exe

├───Code Generation Tools
│       CodeSmith 2.6 Freeware.zip
│       My Generation 115.exe
│       My Generation Introduction Flash Movie.exe
│       AtGenSDK.zip

├───Seabury Design Videos
│       Seabury_Intro.zip
│       Seabury_Lesson1.zip
│       Seabury_Lesson2.zip
│       Seabury_Lesson3.zip
│       Seabury_Lesson4.zip
│       Seabury_Lesson5.zip
│       Seabury_Lesson6.zip
│       Seabury_Lesson7.zip

└───TrainCert Videos
        dotnetnuke3_portal_Security.zip
        traincert1.zip
        traincert2-over.zip

The 4.03.00 Starter Kit Installation Process Went Smoothly for the Most Part

I then installed the vwdsetup.exe, which installed the .NET Framework 2.0, SQL 2005 Express, and Visual Web Developer Express. After that, I ran the Starter Kit and then created a brand new DotNetNuke WebSite project. Within minutes, after a few glitches, I was running DotNetNuke in a fully isolated and self-contained VM. But, I guess I'd be breaking the law if I offerred up my VM on an FTP site for anyone reading this to download.

Bluesky Scenario

Ultimately, I would love to have a VM configured top to bottom with DotNetNuke goodies. Additionally, it would be preloaded with Visual Studio solutions that contain skeleton code files as well as complete solutions to development exercises that can be presented in classroom-type sessions. The ultimate goal would be to train people in a classroom session with the slogan being, "Take it with you", since they could bring their knowledge and code home with them.

In this scenario, the flow of events would be something like:
  • Build Live DVDs with VMWare with fully exectuable stack
  • Distribute them during informal classroom sessions in which attendees bring their own laptop machines
  • Perform classroom training
  • Attendees go home with the complete stack and thus don't need to do any manual installation of their own to play around later.

Feedback and Opinions Sought

That's where I'm looking for ideas for getting around this. First, does anyone else think this is a valuable idea? Second, would there be legimate ways of doing this? Would redistributing a time-limited version of a Microsoft operating system be legal? Or, might Microsoft be open to sponsoring some type of event like this? So far as I've seen Wine and ReactOS are not reliable enough at this time for a 100% Microsoft-OS free environment.

Alternative Tactics

In the absence of a legal solution, this is where Mono and Linux become ever more attractive. Since the "complete stack" of DNN-related software does not fully depend on Microsoft, thanks to the elegant design patterns used in the DNN core, the most limiting factor becomes the lack of a fully capable Visual Basic .NET compiler for Mono. That was the last I knew. Please correct me if I'm wrong on that.

Lacking a top-to-bottom executable solution, the last alternative would be something like:
  • Build Live DVDs with VMWare with fully exectuable stack
  • Builds Companion CDs with just the free software and simple step-by-step instructions for repeating the install.
  • Distribute them during informal classroom sessions in which attendees bring their own laptop machines
  • Perform classroom training
  • Collect Live DVDs at the end of the session
  • Attendees go home with free software on the CDs
* Portable Applications are apps that fit on a thumbdrive. If DNN were capable of running completely on Linux, then it could most likely run within DamnSmallLinux or some other mini Linux distribution. See http://portableapps.com/ and http://www.damnsmalllinux.com.

posted on Sunday, June 18, 2006 7:17 PM by JoshuaGough


# re: DotNetNuke Module Developer's Workshop Live DVD @ Friday, October 26, 2007 3:21 PM

Josh,

I appreciate your ambition for this project. This would be very valuable. But those licensing considerations are real obstacles. It makes Linux and Open Source more attractive when we all are moving to a world of virtualization.

Your post was about 16 months ago. Has there been any new thinking or progress on it? Can we possibly collaborate on a project?

Marty Zigman




Powered by Dot Net Junkies, by Telligent Systems