« CSTA is Looking Beyond the US | Main | Some Very Interesting AP CS Numbers »

Is Open Source Software a Choice For My School?

Computing classes in our schools cost money. We have PCs running Windows. We need programming languages as well as application software for basic functionality such as word processing, presentations, spread sheeting, database management, graphical editing. In good economic times specialized computing classes may be at risk for funding to purchase the latest and the greatest software titles.

Given the weakened economy and the financial crunch anticipated in many schools, should we encourage our schools to consider Free and Open Source Software (FOSS)? Is it time to trade Oracle for MySQL and Microsoft Office for Open Office? Should we consider deploying the Linux operating system?

Can you help those of us considering how our schools should fit into the open source environment by answering a few of these questions?

* Do you currently use and/or teach open source software? Are you satisfied with the software?
* What open source products do you currently use at your school?
* Are there open source titles you recommend to students for use at home? Which titles?
* What open source software would you like to consider for use at your school?
* If you use/suggest open source software, what is your primary motivation for doing so? Is it financial, quality of software, access to the program code, or some other reason?
* What are the impediments to including open source software in your class / at your school?

Anita Verno
CSTA Director


Montgomery County Public Schools is a big organization. Consequently, they've "standardized" (hasn't everyone?) on Windows and Windows-based software. This meant, among other headaches, having to collect fees from students in order to purchase expensive software, e.g., Microsoft Visual Studio, proprietary IDE's, etc., that provided many nice features, but also many that were confusing or just plain useless to the typical student---after all, these are written with a different audience in mind.

Now, about 2 years ago, I began to hear more complaints from students and, in particular their parents, questioning the very idea of "fees" in a Public School. Because I had spent twenty years or so in the "industry" I was quite comfortable with various flavors of Linux, Windows, and others that have long since vanished. The problem was integrating Open Source software in what is essentially a closed (and hostile) environment--Windows.

Fortunately, many open source vendors made their products available to Windows platforms, so half of my problem was solved.

The other half of the problem proved more difficult. Within the MCPS "security" community, the term "Open Source" translated into viruses, worms, students abusing machines ... you name it. Ironically, the only student that we ever caught (and charged with criminal destruction) hacked Windows---but this is only ironic, perhaps, to those in charge of Security.

As fortune smiled upon us, many vendors began to disappear, or their products became too expensive for even the deep pockets of MCPS. Naturally, as money has dried up and we're in for a long and painful recession, no one wants to spend a dime on anything that doesn't translate into SAT scores or some such thing.

I currently use Alice, Eclipse, Dr. Scheme, Dr. Java, Python, Idle, and Clips (for Expert Systems and forward-chaining rules stuff)---all open source, and all work on Windows. I have at least two students who insist on using C++, and for them we have the gnu compilers. For my text preparation, I use LyX (a front-end built on LaTeX, MiKTeX, etc.) whenever possible. For Web Development, we're still wed to the Macromedia suite as part of our contract, I suppose, but I see a lot of teachers are moving away from that too.

For next year, I'm thinking of moving the Games Development classes to PyGame (a Python game development library), and adding Ruby on Rails to help the Web Developers catch-up with the rest of the world. I might also replace Eclipse with Netbeans, only because I have more students interested in developing GUIs and the Matisse toolkit is more intuitive than Jigloo, which is what a lot of Eclipse platforms are using. I think Netbeans facilitates Web development too (you know, XML support, etc.).

Finally, on the planning and instructional front, I use some pieces of the MIT on-line course, 6.001 (their Intro to CS). Again, this is freely available along with an HTML-version of the Structure and Interpretation of Computer Programs (an excellent textbook!). Next year, I am thinking of using pieces of their Discrete Mathematics course and a few others too.

I hope that this helps. I only hope that with this sour economy that the various free software vendors survive. I do believe that their products have enhanced my classroom and have provided a quality experience for my students.


I've never been able to convince MCPS to move to Linux, and likely never will. Again, I believe that their relationship with Microsoft is a matter of contracts and not technical merits.

I hope that this helps.

Post a comment

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)