Open Source in Higher Education

David Glance

Dept Computer Science & Software Engineering

The University of Western Australia

david@csse.uwa.edu.au

Copyright

Copyright (c) 2002	David Glance

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is available at www.fsf.org.

Agenda

Open Source and Universities

Teaching using Open Source

Which courses?

Teaching about Open Source

Software

Using Linux instead of Windows

OpenOffice vs MS Office

Development tools

Open Source & Research

Research using Open Source

Research about Open Source

Open Source and Universities

Basic motives of OS and Universities are the same:

fostering knowledge & understanding

dissemination of knowledge & understanding

Better teaching tools

contribution to the greater community

fighting inequity (digital divide)

Commercialization of Universities means:

move to closed, proprietary environments guarding intellectual property

funding by commercial companies to influence teaching and research (Microsoft in the US & Canada)

Open Source at UWA

UWA developed a policy to promote the use of Open Source

defines Open Source

promotes the use of Open Source over proprietary software

allows academics and staff to contribute to Open Source software projects

promotes the use of Open Source in teaching and for Student use

Teaching and Open Source

Two approaches

teaching using Open Source

teaching about Open Source

Teaching using Open Source

finding suitable replacements for proprietary software

Aims:

Familiarizes/trains/skills students with Open Source rather than proprietary software

Demonstrates that Open Source is as good/better than proprietary software

Seeds the workplace with Open Source evangelists

Saves money!

Teaching using Open Source

Finding suitable replacements for proprietary software

Linux replaces Windows

RedHat probably the easiest distro in terms of desktop

Office replacements for MS Office

Open Office

KDE Office

GNU Office

Teaching using Open Source

Development environments

Emacs & Java SDK

Free closed software Sun ONE (Forte) Community Edition

Open Source IDEs

Eclipse

KDevelop

Design tools

ArgoUML

Server Software

Database software: MySQL, PostgreSQL

J2EE software: Apache, Tomcat, JBoss

Teaching using Open Source

Course delivery software

Web server for presentation of content

lectures presented as pdf format and Open Office electronic slides

help/discussion forums

mailing list management software (mailman)

Avoiding closed systems like WebCT, BlackBoard

Open Sourcing Education

Releasing courseware using Free Documentation License

lecture material

laboratory material and code

assessments, questions, exams

Open courseware initiative

UWA has many units online with presentations, labs, exams, etc.

Moving these over to FDL so they can be re-used

MIT has open courseware initiative

All unit material will eventually be offered free online

Teaching about Open Source

History/Commercial/Social/Politics/Legal

Students understand the full context of free software and open source

Balance of principles vs pragmatism (how to avoid religious flame wars)

Understand the Open Source in the context of wider issues of personal freedoms, rights to privacy, etc.

Roles of commercial interests in the development, promotion and support of Open Source

Teaching about Open Source

Software Engineering

Different process methodologies used in different projects (LK, Mozilla, OpenOffice, small sourceforge projects)

Differences/similarities between Open Source projects and corporate projects

Gathering requirements

Design (documentation/models?)

Source code as the design document

Development

Building

Testing

Teaching about Open Source

Software Engineering (cont...)

Bug tracking

source code control

communication

team roles

milestones

Teaching about Open Source

Operating Systems

Evolution of the Linux OS

Source code as a guide

Theory vs practice

Security

Different aspects of system security

OS

Application level

User

Networking

Linux as cheap and simple firewall/router/load balancer

Transparent stacks including Ipv6

Teaching about Open Source

Advantages

Accessible technology

Easy to experiment with and introspect

Source code for detailed working knowledge

Best practice

Disadvantages

Size and complexity of source makes introspection difficult

Constant change

One approach

Student perception of usefulness

Open Source and School of CS&SE

Generally positive (although see issues)

Likely to use for practical purposes rather than ideology (low awareness)

No specific department policy

individual decision

Absence of external influence

geographical isolation

small market

Department belongs to MSDN Academic Alliance which gives us cheap MS software

Open Source and School of CS&SE

Linux

all machines are dual boot Windows 2000 & Linux RedHat 8.0

Linux used in over 50% of 2nd, 3rd and 4th year units taught

Development Tools

Sun ONE Community Edition (look to replace this with Open Source IDE)

HUGS (Haskell environment)

GNU compilers

Open Source and School of CS&SE

Development Tools

Emacs, vi, pico

ArgoUML (Instead of Rational Rose)

MyProject (Instead of MS Project)

Server

Apache, Tomcat, JBoss, MySQL, PostgreSQL

Office tools

OpenOffice

Teaching about Open Source

Linux OS fundamentals are taught in Operating Systems unit

Linux security is taught in Computer Security

Open Source

history

licensing

development process

Bug Tracking

bugzilla

Source code control

CVS

Teaching about Open Source

Build process

make

ant

Professional Computing

teams structured around open source style (tbd)

Issues

Learning skills not relevant to employment

MS Office vs OpenOffice

generic skills being taught

More complicated than windows

education

new versions of IDEs

user friendly

very familiar to windows users

Lack of reliability

more stable older products

Opportunity to educate

“I tried to use the software and it crashed once”

Issues

Compatibility issues

students working from home with Windows/MS Office

free software given to students to load at home

free support

General apathy and resistance to change

No one ever got fired for choosing Microsoft

Sycophancy (fawning obsequiousness)

Research in Open Source

Research in Open Source process methodology

not quite as simple as the cathedral & the bazaar

fluid structures reflecting different interests and motivations

traditional process methodologies - what have they got to learn from OS approach?

quality/reliability using OS approach

Publishing software developed as Open Source

general principle (rather than looking for the commercial value)

CSSE: Linux Virtual Server

Research in Open Source

Dynamic feedback for Linux Virtual Server

Open source wireless sensors and weather stations

Computer based training software

Publishing research publications as Open Source

open peer review

CiteSeer or CiteBase index as examplars

largest obstacle: career oriented research

research not counted unless it is published in peer reviewed journals

requirement to change attitudes to open peer review schemes

Research in Open Source

Why did Linus choose a penguin as the Linux mascot?

Linus Torvalds

Tux

References

Open Source at UWA

http://www.opensource.uwa.edu.au

Dept CSSE

http://www.css.uwa.edu.au

This presentation

http://www.cs.uwa.edu.au/~david

Open Source in Teaching

Using Open Source in Teaching

2002-11-26T09:29:41