Beachhead

Education

Jon "maddog" Hall

Issue #161, September 2007

Lessons on evangelizing free and open-source software over a round of libations.

“How can I convince my professors to use free and open-source software (FOSS) in their classes?” asked Dennis, a former Pollywog that is now going to a university in Brazil. Dennis is old enough now to join me legally for libations at the Alideia dos Piratas, the beach-side restaurant and bar where I hang out, although he often hints that he had been “libating” much longer than the legal age limit allows.

“The first thing you need to do”, I answered, “is create compelling arguments for the use of FOSS in the classroom. These arguments might include freedom from proprietary licensing and licensing's inherent costs and issues, the fact that the FOSS source code allows you both to use the software as a tool and to see how the software arrived at its answer. Publishing research results also is easier with FOSS, because you can freely publish source code for your work, not just talk about the work conceptually. FOSS allows schools to have better control over the software used on their systems, especially when they need to upgrade software and hardware. You should try to stick to practical reasons that are easy to defend, including the fact that FOSS is used in many commercial environments, which means that students will use it when they leave school. ”

“Present these arguments to the faculty and administration in a calm, professional way. If they do not respond favorably, ask their reasons for using proprietary software and ask whether you can address those reasons in a follow-up meeting. ”

“Second, make it as easy as possible for them to use FOSS. Remember that professors are like a lot of other people, and they are very busy just trying to keep up with all the other issues in their jobs and lives. Developing new courses and course material takes time and research, and although you can look at it as part of their jobs, you also can be assured that they are busy with other aspects of their jobs. ”

“One tactic would be for you to take an existing course, such as compiler design or database theory and transform it to using FOSS. You could find (or create) a bibliography of all the open-source projects that you can locate on the Web having to do with that subject. See if there are any books that relate to teaching that topic, which are oriented toward FOSS rather than closed-source products. ”

“In the case of the operating system, a wealth of projects using FOSS can be used to help teach a course in OS design—not only the Linux kernel, but the *BSD (OpenBSD, FreeBSD, NetBSD) kernels, FreeDOS, TinyOS and a variety of others. There also are several on-line talks and papers discussing aspects of FOSS OS design that can be useful, and for the more popular operating systems, specific books describe the kernel and the way it works. ”

“In the case of database design, a series of different projects also are useful—everything from MySQL and PostgreSQL to Berkeley DB (although an Oracle product, it is still open source), Firebird, flat-file databases and libraries for other types of data accesses, such as ISAM. ”

“Accumulating the bibliography for the course might be enough to gain the professor's interest. Many times professors have heard the terms free software or open source, but they have not had the time to investigate how much software and resources are out there with respect to their own courses. ”

“If the professor still doesn't accept using FOSS to teach the course, you could take the next step of actually devising a set of notes for the course as you study the supplied material. Nothing helps you learn the subject matter as much as having to try to organize it and explain it to others, and creating a set of class notes and presentation slides based on FOSS would help you learn the underlying information very completely.”

Dennis looked at me with a sort of horror on his face. “That sounds like a lot of work”, he said.

“It could be”, I agreed. “Fortunately, you may not have to do all the work yourself, as Googling the Internet using the terms course notes and operating system turned up several editions of class notes that were under the GPL or copyable with attribution. You also might enlist some other students in the class to help by doing different chapters and then merge the work back into a single document. ”

“I took compiler theory twice, once as an undergraduate and once for my MS in Computer Science, yet I feel that I really did not know compiler theory until I had to teach it to others. Now, more than 20 years after giving the last formal class on that subject, I feel I easily can explain fundamentals of how a compiler works. Knowing difficult material that thoroughly is kind of scary in a way.”

Both Dennis and I sat in silence for a couple of seconds contemplating this thought, then we both ordered another libation.

“Can other areas of the university also use FOSS methods to teach their courses?” asked Dennis.

“Of course. There are thousands of FOSS programs that students and faculty can use in engineering, the sciences and other aspects of education. In addition, there are freely available pieces of information like Project Gutenberg, which houses more than 17,000 books and articles whose copyright have expired. I have a friend who teaches English as a second language but did not know of this treasure of on-line books that she could use for her students free of charge. ”

“Some disciplines, such as civil engineering, use a lot of maps and mapping software. The use of software from projects, such as FreeGIS (www.freegis.org) and Open Source GIS (opensourcegis.org), allow these academic fields to use and understand mapping software. Hospital administration and management courses can benefit from the OpenVista Project, a complete hospital administrative system used by the United States Department of Veterans Affairs that was then made freely distributable. Management courses at universities can benefit from sophisticated FOSS project and portfolio management systems such as project.net (www.project.net), both to train students how to use such tools and show students how those tools work.”

“What about the administration of our school, are there any FOSS programs that can help them?” asked Dennis.

“Yes. Schools often spend huge amounts of money for administrative software that barely works. I know of one major university that was going to spend ten million dollars to buy and implement an administrative system. ”

“Another university in Australia had spent 17 million Australian dollars on a commercial system, which (after five years) did not work at all. The Australian university was told that it would cost an additional five million Australian dollars and another three years of development to get a 'vanilla' system, one that was not tuned to their school, but at least worked. Maybe. ”

“Compare all of that to SAGU, a system that was created in Brazil as a FOSS project, which is now used by more than 60 universities throughout the world, having been translated from its native Portuguese to Spanish and English. Another interesting project is that of the Kuali Foundation, in its effort to create FOSS financial software for universities. ”

“Although not exactly an administrative program, the Sakai Project (www.sakaiproject.org) is a FOSS system that is being developed by a consortium of companies and educational institutions for learning and research collaboration. There's also Moodle, a well-known CMS system for use in education. All of these, and more, are available for use and can save huge amounts of money for budget-strapped schools and universities.”

Dennis finished his drink, thought about what I had said, and asked the question, “What happens, if after all this work to try to convince my university to use FOSS, they still refuse to use FOSS?”

“The efforts you take to research and make the argument about using FOSS software would not be wasted. Perhaps you will learn more about your subjects by making these efforts, and that can never hurt. I know a young man who started a FOSS project to write an operating system kernel when he was going to college in Helsinki, Finland....”

Jon “maddog” Hall is the Executive Director of Linux International (www.li.org), a nonprofit association of end users who wish to support and promote the Linux operating system. During his career in commercial computing, which started in 1969, Mr Hall has been a programmer, systems designer, systems administrator, product manager, technical marketing manager and educator. He has worked for such companies as Western Electric Corporation, Aetna Life and Casualty, Bell Laboratories, Digital Equipment Corporation, VA Linux Systems and SGI. He is now an independent consultant in Free and Open Source Software (FOSS) Business and Technical issues.