Posts Tagged 'open source'

Cloud Computing, Learning Tree, Open Source and Moodle

Happy New Year!

One benefit of cloud computing is that it facilitates examination (or re-examination!) of technologies that may previously have presented an administrative, financial or technical barrier. For example there are Amazon Machine Images which come pre-installed with open-source solutions as delivered as a “virtual appliance“. Similarly the Azure Companion makes it very easy to get popular open-source applications running on Azure.

Recently I have been looking at one such application, Moodle, for potential use within Learning Tree. Moodle is an open-source virtual learning environment (VLE). It has been around for about 10 years and has a large installed base and user community. Moodle is popular in schools, universities and businesses. It is not new, but it is constantly evolving.

What is (relatively) new, however, is the degree to which cloud computing makes Moodle accessible. Whereas previously I might have had to acquire a server, set it up, download software and futz around for a few days to get everything to work I can now just use a community AMI provided by BitNami (there are others too) that comes with Moodle already configured. Literally within a matter of minutes my machine is up and running with a Moodle administrator account ready for me to start adding users and courses.

Since I am a newbie to Moodle there was a bit of a learning curve. The online educational resources at and from within the community, though, are excellent. So, after some moodling about (yes, that is an actual verb!) I was able to construct a course with content that closely resembles our classroom course 1200 – Cloud Computing Technologies a Comprehensive Hands-On Introduction.

Figure 1 Cloud Computing course on Learning Tree Moodle site

In the course I have made use of some other cloud technologies as well: Google Docs and Microsoft Office Live to share the course slides and written transcript; YouTube for short demonstrations and Amazon CloudFront for delivery of longer streaming media such as the chapter presentation; EC2 for hands-on exercises. The course also utilizes Moodle’s discussion forums, blogs and quiz engine. Probably there are other resources and activities I could add to the course as it evolves.

So, how might we be able to use Moodle at Learning Tree? While it is well suited to “traditional” education based on semester long courses, is this asynchronous model compatible with Learning Tree’s format of short, intensive hands-on immersion? Is there any value at all in using a virtual learning environment in conjunction with our instructor led training?

I believe the answer may be yes. For example it is conceivable that a resource such as this could be used both as a pre-course preparation tool and post-course reference. Students who chose to use the site for preparation would come to the classroom having already absorbed some of the material. Classroom time could be more productively spent asking questions about material they did not understand and using the instructor to really get into more depth on things. After the class is over students could use the site as a reference and could continue to participate in discussions and blogs. They may even have access to the exact machine configurations they used in class to perform the hands-on exercises.

While these are issues that we will no doubt discuss internally I am curious to know what you think. If you are a past, present or potential future attendee at a Learning Tree course is this something that would be of interest to you? Do you have any previous educational experience using Moodle or other VLE? Would you use this as a resource either for preparation or review?

I am sure there are a variety of opinions out there …


More Open Source on Azure

A few weeks ago, just for fun, I set up Moodle on an Amazon EC2 micro Windows instance I had created. I used the Windows Platform Installer to install the software and all required components. The process was quick and painless and within a very short time my test site was up, online and available for use.

This week I decided to try something different; hosting another community application – this time WordPress – on Azure. For that I used the Windows Azure Companion.

The first step is to download the zip file appropriate for your VM size. I want a small instance so I chose that file. The zip file contains an Azure service package and a configuration file.

Figure 1 Contents of downloaded zip file

The next step was to edit the configuration file. I needed to put in parameters for my particular deployment. My changes are highlighted below.

Figure 2 ServiceConfiguration.cscfg

The Azure Companion runs in a single Worker Role on Windows Azure. I have also provided credentials to an Azure storage account and information about the administrator of this instance.

Note that in this case, rather than writing my own product feed, I am just using the sample product feed contributed by Maarten Balliauw. Writing a custom feed will be the subject for another day!

I then simply deployed the package and configuration to a hosted Azure service that I had previously set up.

This screencast walks through the process of deploying the package then installing and configuring WordPress.

All in all it was a pretty good experience. It did seem to me to be a little more time-consuming and cumbersome than using the Windows Platform Installer on an EC2 instance but, hey, now I am hosted on the Azure platform! That means I get some of the features of PaaS vs. IaaS.

One final comment; in this example I used SQL Azure as the backend database. It may have been more cost effective to use MySQL. Next week I will explore installing MySQL on Azure and try using that instead in my WordPress configuration.


Microsoft Azure Does Open Source

Yes, that’s right.

It may or may not be widespread knowledge but Microsoft has been quietly supporting open source for years. Many people continue to think of Microsoft as a company that sells proprietary software. They certainly are that but they are also involved heavily in open source. They do not, in my opinion, get enough credit for their efforts there.

PHP is a technology that is popular with the open source community. There are many freely available applications written in PHP that could be incorporated into a cloud based solution. With the latest release of the Windows Azure SDK for PHP and the Windows Azure Tools for Eclipse it is easier than ever for programmers to deploy their PHP applications to the Azure cloud.

The SDK gives PHP programmers a set of classes that can be used to program against Azure storage (blobs, tables and queues) and Service Management. There are also additional SDKs for App Fabric and OData as well as drivers for SQL Server. The Eclipse tools offer an end-to-end solution that enables the developer to program, test and deploy PHP solutions onto Azure.

Version 2.0 of the Eclipse Tools (developed by Soyatec) was announced at PDC10. This version offers many new features including integration with the Development Fabric, support for Worker Roles, MySQL integration and deployment from within the IDE.

In addition to the SDKs, drivers and Eclipse tools there is also support for the command line developer to leverage scripting skills in deployment of existing PHP applications. Finally, there is the Windows Azure Companion which makes it pretty easy to deploy finished open source community applications (such as WordPress, SugarCRM, Drupal and others) onto Windows Azure without having to know a lot about the underlying details.

The following screencast demonstrates creating a PHP Azure application from within Eclipse.

To learn more about Windows Azure consider attending Learning Tree’s Azure programming course. For an introduction to PHP you may like to come to Introduction to PHP for Web Development.


Learning Tree Logo

Cloud Computing Training

Learning Tree offers over 210 IT training and Management courses, including Cloud Computing training.

Enter your e-mail address to follow this blog and receive notifications of new posts by e-mail.

Join 53 other followers

Follow Learning Tree on Twitter


Do you need a customized Cloud training solution delivered at your facility?

Last year Learning Tree held nearly 2,500 on-site training events worldwide. To find out more about hosting one at your location, click here for a free consultation.
Live, online training
.NET Blog

%d bloggers like this: