Understanding Open Source

I am a big advocate of open source software.  We’ve used it at our school for a number of years.  Our firewall is an appliance called Untangle. We use open source software in the classroom including tools like Open Office to replace things like Microsoft Office and Genius as a tool that helps student use flashcards in a different way. WordPress drives many of our blog/web sites and we use Moodle as our course management system.

Open source software is distribute under a ‘General Public License‘ which according to its preamble:

“GNU General Public License is intended to guarantee your freedom to share and change all versions of a program–to make sure it remains free software for all its users.

Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things.”

What this allows you to do is to is in essence own the software outright. No renewal fees, not software maintenance plans… it’s yours to use, modify and distribute any way you want.  The only catch is if you decide to share your changes and distribute the modified code you must do so under the GPL license.  Free in free out.

Free doesn’t equal open source. Freeware, shareware and ‘freemium’ based software and services are NOT open source as they are not distributed under the GPL code and don’t give you access to the source code to modify.

Open source provides schools with a number of really interesting options when trying to provide students with technology based tools and service to improve teaching, learning and assessment, but don’t have the budgets to do so.

For all that open source provides it does come with a price.  There is the time it takes to implement the pieces, the hardware that may be required to run the tool(s), as well as the professional development and training you will want to include in any educational change… something as simple as learning a new tool bar in your word processor.

Many of the web-based open source tools rely on another set of open source tools generally referred to as AMPApache, MySQL and PHP.

Apache is a web server with runs on a wide range of operating systems and powers many of the worlds web sites.  It is highly configurable and runs both in the command line and in some instances has a GUI front end included as it OSX Server.

MySQL is a powerful database server that is used to store all of the data behind your online tool.  All of the content and data you see on your WordPress or Moodle site is pulled from the MSQL database table(s).  The server is extremely powerful and scaleable as it has very little overhead, running for the most part in the command line.  There are tools like phpMyAdmin (cross-platform/web-based) and Sequel Pro (Apple).

PHP is the language that most web-based, open source tools are written in. PHP pages are server by Apache and rendered in your web browser.  They make calls to the MySQL database(s) to present you with the data and information your site requires.  The PHP portion of the any open source tool is, generally, the are where you would make most of your edit or modifications.

It is the combination of these three tools that drive your web-based, open source tool(s).

Open source is built on community and it’s the community that provides much of the support.  Almost all open source projects have forums for both users and developers to share information.  Often the actual developers oversee these area and your answer(s) could come directly from them.  This isn’t something you’d find with most commercial tools.

There is always Google too. You can go online, search for your question and find numerous site offering help that may have useful information that can help guide and assist you (hopefully this site is one too…).  Many of these site will provide detailed descriptions, code and screen shots that can help you solve your problem or answer your question.

There are times when you will want more direct support.  There are numerous consultants and companies that you can use for support.  Often you can pay for annual service contract or you can pay per incident.  For each of the tools we use we have contracted support either annually or per incident.  For annual support we use Precision Consulting to help with our Untangle and Remote-Learner for our Moodle site.  We’ve used WebDevStudios for WordPress support along with core contributor Ron and Andrea Rennick who we found via Twitter (@andrea_r).

Most recently when we had an issue with our Moodle server where after a failed upgrade and issues with our backups we realized we had a corrupted database.  We were able to troubleshoot most of the problem with some help from a friend not the other side of the Atlantic, Gavin Henrick (@ghenrick), but ended up needing to contact a third-party, Percona (@percona) for support.  We found them after reading a number of blog posts detailing our issue.  We were able to contact them via Skype and after describing the problem and the infrastructure we had our problem was solved in just over 2 hours.  In this case we paid for “just-in-time” support, when we needed it, which represents a cost saving over more traditional “just-in-case” annual support  contracts.

This most recent issue was a prime example of the time open source requires, the availability of support from the community and an instance where paid support was required and available at the moment needed.

Open source can provide answers to many of the problems facing your school’s technological issues. Budget, cross-platform compatibility, professional development are just a few of the benefits.  Here are some slides from a presentation I recent gave on the topic:

I invite you to consider open source in your IT and curriculum planning as I think you will be both surprised and impressed by what is available.  Please share your thoughts or questions below.


About William Stites

Currently the Director of Technology for Montclair Kimberley Academy, "Blogger in Chief" for edSocialMedia.com, husband and father to two crazy kids who make me smile everyday.
This entry was posted in Administration & Management, Community, Moodle, Technical and tagged , , , , , , , , , , , , , , , , . Bookmark the permalink.
  • Open source provides many opportunities for schools. There are many barriers to tech adoption and open source can lower the $$$ barrier.  The issue I run into when working with schools is most do not have the staff with a skill set to setup/customize the software.  The generic install is not always suitable with teachers and possibly puts them off.  

    Does this start to become a needed skill for tech departments? And is the generic version at least a start to introducing more diverse software for school districts?

    • I think it needs to be a consideration for all tech departments. There is a learning curve with it, as there is with anything, but I think that if you start with it on the backend and move things forward gradually you can manage change.

      When working with faculty, staff or students on it start small, maybe with a willing pilot group and build you base there and allow them to help answer questions from a users perspective and not just from IT.