Schools face significant challenges when it comes to supporting software needs. Like any organization they are faced with limited financial and technical support resources. Schools also have unique needs and very often require customized solutions that simply cannot be met by 'off the shelf' products. Recent advances in software development, most notably a movement towards Open Source projects, bode well for meeting school's needs for inexpensive and flexible applications.
Typical software development has focused on a closed-system or proprietary model of writing source code. An individual or small team of programmers write and test the source code. By writing and protecting the source code, companies can control the distribution and customization of their products. Unfortunately, this control is often at the expense of the control the user has over the product. This control is particularly troublesome to schools as their needs are often quite unique (think of the term 'customer' that is used in most contact management programs). Additionally, schools often work in an open environment that regularly utilizes a variety of computer operating systems and browsers to access applications.
Open Source software in contrast is developed by large numbers of volunteer programmers and is made available to anyone who agrees to use it in a similarly open fashion. This allows the software to be reviewed by large numbers of developers and also permits the developers to improve and add to the code. This model has proven to be quite successful in terms of producing dependable and flexible applications that are relatively inexpensive to deploy. The most notable example to date include the Apache Web Server application that runs approximately 58% of the Web sites found on the Internet. Other popular open source applications include the Open Office application suite (word processor, spreadsheet and presentation program) and the Firefox Web browser.
Moodle and ATutor are similar to Blackboard in that they adopt be-all-things-to-all-people approach to feature development. This often leads to a bloated and confusing application. More options are available that encourage the use of different applications for different needs. For example, while all the Course Management programs will have a discussion board, they vary in their quality. There are a large number of high quality open source discussion boards available. It might make more sense for schools to begin investigating separate tools to better meet their unique needs. The biggest hurdle to the implementation of a variety of tools vs. one comprehensive package is user authentication. However, most open source applications are now supporting common authentication methods. In other words, a student would not need a different login for the different course tools.
Developing, sharing and collaborating around content is a major activity for everyone involved in a school. Teachers are constantly writing new lessons and handouts. Students are completing research projects. Administrators are sharing news with stakeholders. All of these tasks can be better met through the use of modern content management systems. These systems support these tasks in a centralized and efficient manner. They are managed at all levels through a browser rather than requiring a client application. The most popular content management system in use today is Drupal. Take a look at some of the ways people are using Drupal for education.
Many organizations have adopted tools such as Lotus Notes, Microsoft Exchange and FirstClass to manage their CCC needs. Google has recently slid into this field in a way that will likely cause people to seriously reconsider whether these large investments in the traditional tools is worthwhile. Google Apps for education appears to be a no-brainer for schools.