You are currently browsing the tag archive for the ‘Open Source Software’ tag.

Moodle is an open source collaborative Course Management System (CMS), a web application that anyone can use to create effective online learning sites and training course.  Moodle also has many effective modules and assessment techniques for testing that can be used for any subject, so its great for feedback on your level of understanding.

There are a growing number of Universities and other educational organisations that are adopting Moodle as it is easy to use and administer and there are no expensive or restrictive software licenses to deal with.

If you want to see some examples, then have a look a the Moodle Demo website, the Moodle Features course or have a look at some of the registered Moodle websites.

Packt publishing is running a “Moodle March” promotion during March to celebrate the forthcoming publication of Science Teaching with Moodle 2.0 book. Moodle March will offer readers the exclusive discounts of 20% off the cover price of all Moodle print books and readers will be able to buy any 4 Moodle eBooks from Packt at a price of $60 / £38 / €45 for a limited period only.

Science Teaching with Moodle 2.0, written by Vincent Lee Stocker, helps readers to create interactive lessons and activities in Moodle to enhance your students’ understanding and enjoyment of science. The book, which is 386 pages long, is packed with lots of practical examples; each chapter takes you through a different aspect of teaching using Moodle.

Moodle is one of the first topics Packt published books on and we remain committed to offering more interesting books that will help the diverse needs of Moodle users. The set of Moodle books we’ve recently published shows our continued commitment to topic area, and we intend to publish cutting-edge Moodle books for a long time to come”, said Packt’s Open Source publisher Doug Paterson.

For more information on Moodle March and the discounts being offered throughout March, please visit

We often advise graduates to get involved in open source software development and have been involved in various schemes and events to encourage involvement in the industry.

We were recently asked by an undergraduate what the best way to get started was and one of our members, Denise Wood, kindly pointed out this post which is highly recommended for anyone interested in open source software development.

I would also recommend reading Ben Evans description of open source software.

Finally it’s also worth having a look at my reasons why it’s a bonus to get involved while still at university.

Barry Cranford

These days virtually all companies will use Open Source Software for at least some of their software needs. This post is intended to provide a basic introduction to some of the concepts and motivations of Free / Open Source Software (F/OSS). The intended audience is students who are on the path to becoming professional developers – either final year undergrads or recent graduates beginning their first job.

A Definition of Open Source

Open Source software is software which meets these criteria:


  • Everyone can download and use the software as-is for any purpose they like, without any royalty or license payments1.
  • Everyone can study the source code and make changes if they like2.
  • Everyone can give the software to anyone they like3 – with or without changes (but you can’t take credit for things you didn’t write, and you have to provide source code and the same rights as you received).

Notice that the above definition leads to a situation where for practical purposes, Open Source software can be made available without charge – because even if the original developer asked for money (eg to cover the cost of bandwidth) then anyone who downloaded it, could redistribute it free of charge.

Free Software versus Open Source Software

There are two major points of view regarding what is the most important aspect of this movement in the software world. One viewpoint is that the access to the source code, and the availability of the software without charge are the m4ost important aspects. This view is usually the one in which businesses are most interested in when they consider Open Source.

However, the other viewpoint chooses to emphasise the user’s intellectual freedoms to use and modify the software as they see fit. Many people in this part of the movement prefer the term ‘Free Software’ to ‘Open Source’ for this reason.

“When we call software ‘free’, we mean that it respects the users’ essential freedoms: the freedom to run it, to study and change it, and to redistribute copies with or without changes. This is a matter of freedom, not price, so think of ‘free speech’, not ‘free beer’.” – Richard Stallman

The term “Free Software” view holds that it’s not simply the access to the source code and lack of a price tag on the code which matters – the freedoms of the user of the software are seen as a major point of principle and central to the entire development practice.

Free Software and Open Source Software are two schools of thought which share many common goals, but which have different philosophies and emphasis. Despite these difference in approaches, however, virtually all software which is Open Source is also Free, and for practical purposes, all Free Software is Open Source.

More importantly, most of the time this distinction does not matter to the majority of people who use and develop Open Source or Free Software. The different philosophical approaches that individual developers take do not usually matter in terms of their ability and willingness to work together – people with very different views on the underlying philosophy can and do work very effectively on the same project, to the same goals.

How does this fit into the modern software industry?

These days virtually all companies will use F/OSS for at least some of their software needs, and F/OSS is contained in a very large number of consumer devices, such as wireless routers and HD televisions from major manufacturers.

F/OSS has become a major presence in the software world and is now widely used in all sectors of the industry, particularly to provide infrastructure solutions or libraries to build upon.

What are some examples of Open Source / Free Software?

Mozilla’s Firefox web browser. The Linux operating system. The Apache web server. Java (eg OpenJDK or Apache Harmony). The PHP web programming language.

The important thing to note here is that when F/OSS provides a platform on which to run other code (the business applications), then the source code for the business applications doesnot usually need to be released. For example, just because PHP is Free Software, does not mean that the source code to Facebook (and every other web application which uses PHP) needs to be available. 

How does Open Source / Free Development work?

The source code is usually made available at all stages of development after the initial announcement – quite often through allowing public (read-only) access to the source repository. 

In addition to the source code, projects will usually produce official releases, on whatever timescale they deem appropriate. 

Individual developers can then join the project, by joining the project forums (eg mailing lists, bug trackers, etc) and getting up to speed and then starting to participate. This participation can take a number of forms – not just coding tasks. For example, developers who can write good tests or lucid project documents are in demand in virtually all large Open Source projects. Discussions about design and direction of the project will take place on the project mailing list, and people are welcome to contribute – although as with most projects a developer’s experience and standing in the community will be a factor in how seriously their views are taken.

Developers will usually tackle the tasks which interest them the most, although this can lead to duplication of effort, as several people may choose to start attacking the same interesting-seeming problem. Sometimes developers who are new to the project will ask experienced devs what would be good starter tasks – and this can be a good way to get into a new project. 

These open and decentralised approaches to development make it a very different environment from that found in many commercial workplaces. This is to be expected as the typical Open Source developer is not directly compensated (in material terms) for the work they do.

The primary reasons that developers have for being involved in Free or Open Software are very varied – but common motivations include:

  • Recognition by one’s peers
  • Satisfaction of scratching a personal “development itch”
  • Learning a new language / technology area
  • Contributing to one’s community
  • Opportunity to work with and learn from a greater range of people

If you are interested in finding out more about the subject please visit:

Ben Evans


There are some small exceptions to this, but generally you don’t run across those.

Some licenses legal bind you to contributing those changes back, so you need to be careful as to what license is appropriate for you!

See Footnote 1

Again there maybe licenses where this is not true, although they are _very_ uncommon.

What is the GDC?

The GDC, or Graduate Development Community is an independent community of undergraduate software developers. Our goal is to bridge the gap between the worlds of Academia and Business. We organise and host presentations and events with senior members of the development community as well as offering advice, guidance, internships and jobs through our community site.