300 likes | 645 Views
Open Source Software. Mike Jeays Informatics Technology Services Division Statistics Canada April 2003 Phone : 613-951-9929 Fax : 613-951-0395. What is it?. Software that is made available to any user, complete with all source code, and often with compiled executables Variety of licenses
E N D
Open Source Software Mike Jeays Informatics Technology Services Division Statistics Canada April 2003 Phone : 613-951-9929 Fax : 613-951-0395
What is it? • Software that is made available to any user, complete with all source code, and often with compiled executables • Variety of licenses • FREE – no restrictions on its use • World-wide community of developers and maintainers
History • Free Software Foundation – Richard Stallman – 1984/85 • GNU C Compiler – Richard Stallman • Xfree86 - 1986 • Linux – Linus Torvalds - 1991 • GNOME and KDE environments • Growing world-wide acceptance
Benefits • Open formats (use of XML) • Long-term stability • Excellent security • Rapid fixes for urgent problems • Modifiable • Reduced costs
Disadvantages • More diversity and less coherence • Lack of formal support from a vendor • Modifiable
Principal Licenses • GPL – Allows anyone to use and modify it, but if modified versions are distributed, the source code for the modifications must also be distributed. Special rules for libraries • BSD – does not even have this restriction. Credit must be given to the original authors; you can't pretend you wrote it. Can be incorporated into proprietary products.
Operating Systems • Linux – very popular at present • FreeBSD – less well known, better managed • OpenBSD – exceptional security record, strong cryptography, Canadian development group • NetBSD - multi-platform All have an excellent reputation for robustness, reliability and security
Programming Languages • C/C++ (GNU Compiler) – Richard Stallman • TCL/TK – John Ousterhout • Perl – Larry Wall • Python – Guido van Rossum • Ruby – Yukihiro Matzumoto (Matz) • PHP – Rasmus Ledorf • Smalltalk • Java (not fully open-source) – SUN • Many others...
Desktop Environments These provide a desktop environment similar to Windows. • KDE • GNOME Both are based on X-Free, an open-source implementation of X-Windows
Layered Construction Applications KDE GNOME Screen Keyboard Xfree86 (X-Windows) File System Kernel Disk
Office Suites • OpenOffice (Calc, Draw, Impress, Math, Writer) • KDE utilities (KWord, KSpread, Kpresenter, Kmail) • Abiword (Word processor) • Gnumeric (Spreadsheet)
Databases • MySQL • Postgres Both are capable of running large databases with high transaction rates SQL interface • PGAccess – graphical front-end for Postgres • (NB: Oracle and DB2 run on Linux)
Mail and Calendaring • Evolution (Outlook look-alike) • Mozilla (formerly Netscape) • Others
Web Browsers • Mozilla (formerly Netscape) • Konqueror (KDE Suite) • Phoenix • Galeon • Opera (not open source; charge for version without advertisements)
Web Support Tools • Apache ( Web server) • Perl • PHP • ZOPE (Web Server and web content management) • PhpNuke (Web content management) • MidGard (Web content management)
Distributions • CD sets with integrated collection of software • Support arrangements • Possibly some proprietary components • Free download of CD images • Examples: • Caldera • Suse • Lindows • Red Hat • Slackware • Mandrake
Quality : Run-time attributes • Suitability: Fitness for purpose • Internationalisation • Precision: Data can be trusted • Performance, Availability: Assists getting the job done • Reliability, Security: Software can be trusted • Relatively virus-free • Understandability, Usability: Easy to learn and use • Reusability, Robustness: Skills are applicable elsewhere Software Quality Framework: Software Best Practices Group
Potential use at Statistics Canada? • Use on servers • SAS and Oracle both run on Linux machines • Equivalents for all current desktop tools • Ximian Mono – future support for .NET languages and run-time • RDesktop – GPL client for Windows Terminal Server • Crossover Office allows Office products to run on Linux machines
What needs to be done? • Research project and demonstration • Verify functionality and performance • Conversion of legacy applications • Investigate migration techniques • Review directions taken by other government departments • Evaluate costs and future savings • Develop a strategy for the department
Conclusion • Open Source products now a mature alternative • World-wide use, with growing interest • Emphasis on • open formats • security issues • reduction in costs