text:
FOSS Education/Teaching IT with FOSS

In the earlier sections we looked at the use of FOSS in the setting up of the IT infrastructure of educational institutions and its use in administrative functions. In this section, we examine the role of FOSS in the teaching of Information Technology. Most software currently used in teaching IT, including basic productivity software for teaching computer literacy, compilers for programming courses and relational database management systems, are proprietary. However, there are FOSS equivalents available that can be suitable replacements. In addition to the cost savings, there are other advantages to using FOSS in teaching IT.

Computer Literacy
At the very basic level, teaching IT involves imparting computer literacy. Computer literacy means having acquired the skills to make use of a computer for common tasks. It implies competency in using common desktop applications such as a word processor, spreadsheet, email client and Web browser. The skills in Table 1 are considered essential.The order of the skills in the list is not indicative of their importance and will change with time as technologies change.The relative importance of skills also varies, depending on individuals.

Computer literacy should be taught not only to students in schools but also to university students, who may not have acquired these skills during earlier schooling. It is a common assumption that university students today should be computer literate and have the skills to use desktop applications for their academic work regardless of their field of study. In some universities, computer literacy courses are offered to ensure that the students have these skills. In others, there may not be formal courses and students are expected to learn on their own.Whatever the case, computer literacy programmes usually use the dominant proprietary software. Even at the lower education levels it is not uncommon to find students being taught to use Microsoft Windows and Office as a part of computer literacy courses.

(Source: US National Research Council's Committee on Information Technology report)

However, there are two problems with this method of teaching computer literacy. First, the skill in the use of a particular version of proprietary software is usually short lived. Even though it will be easier to learn how to use a new version of the software from the same vendor (relative to learning an entirely new software), re-training will still be necessary unless the user has the ability to self-learn. A different approach to teaching computer literacy should be used in order to equip students with the ability to learn, unlearn and relearn. The emphasis should be on generic skills that should not be dependent on software from a specific vendor.

The second problem with using specific proprietary software in the computer literacy curriculum is that it encourages illegal copying of software. Students need to use the same software which is available in their schools or universities for doing their homework and assignments, leading many of them to use illegal copies at home or on their laptops. Schools and institutions with financial constraints may even use illegal copies of proprietary software in their enthusiasm to provide computer literacy training to their students.

In teaching computer literacy it is not important which operating system, word processor, email client, Web browser and spreadsheet are used. GNU/Linux, together with appropriate Graphical User Interface (GUI) such as GNOME or KDE, is a FOSS operating system that can be used to teach the basics of operating system features.

LibreOffice has word processor, spreadsheet, presentation and drawing programs that can replace the proprietary equivalents. It should be sufficient for teaching the basic features available in office productivity software. Other FOSS such as the Abiword word processor or the Gnumeric spreadsheet can also be used in a computer literacy curriculum if necessary.

To teach students how to access the Web or to use email, the FOSS application Mozilla can be used. Again, the features of Mozilla are comparable to the browser and email client that come together with Windows and should be sufficient for use in a computer literacy curriculum.

The FOSS database systems MySQL and PostgreSQL are full-featured and can certainly be used to teach the basics of database systems. The GUI available for these databases may not be as user-friendly as the proprietary equivalent but it should not be an obstacle to learning the basic principles.

Michael Surran, a Computer Science teacher in the US, states the following:

''People sometimes ask me, "Is teaching our students Linux preparing them for the workplace?" This question is based on the fact that Microsoft is the current dominating presence in operating systems and office software. It is a question I have thought over a long time, and the answer I always come up with is, "Yes, most definitely." The basic principles of any type of operating system, office application or other similarly grouped software are the same. A student who becomes proficient in Linux will not find themselves (sic) lost in a Windows environment.I have found Linux to be the more advanced of the two operating systems, yet our students are very quickly and easily learning it. The process of copying a file or formatting a paragraph is not so different between one operating system and the other.''

Using FOSS software as the basis of the computer literacy curriculum also results in cost savings for the school or university. It obviates the need to ensure that sufficient licenses are purchased as FOSS software can be legally installed in as many computers as necessary. Students can also install the FOSS software in their own computers without restrictions, and illegal copying of proprietary software is not necessary for their academic work outside the school or university's premises.More importantly, it would encourage placing emphasis on the teaching of the basic principles and concepts and avoid narrow exposure to proprietary software from specific vendors.

However, it may be necessary to train teachers and lecturers in the use of Linux and FOSS before they can be competent to conduct classes using these software. Modification of the curriculum is necessary and some effort will have to be put into developing suitable teaching materials.

Schools
Computer literacy is usually the main focus of teaching IT to students in schools. This would equip them with the ability to use computers to enhance their learning, access the Internet, use email, and so on.

But as emphasized earlier, this should not be confined to teaching students to use specific proprietary software.Students who have not been exposed to computers are likely to be more receptive to Linux and FOSS and it would be desirable to start using FOSS as early as possible.

For example, for pedagogical reasons FOSS was introduced in some non-governmental schools in Australia. The students in these schools developed the ability to use IT without assuming that computing can be based only on one predominant computing platform. Teachers at the Sydney Church of England Girls Grammar School deliberately expose students to more than one suite of office applications, giving them the opportunity to use both FOSS and proprietary software and increase their understanding of the principles of these applications.

Apart from using FOSS for teaching IT, there is a lot of FOSS available that can be used to teach non-IT subjects in schools. Some of these have been mentioned in Chapter 2 and the online resources for such educational software are also given.

Programming
Learning how to write computer programs is invariably a part of Computer Science or Information Technology programmes. It is often taught to students in other disciplines as well, since it may be necessary for them to develop some computer programs for their projects or research work.

At a fundamental level, the choice of programming language to be used as the basis for teaching programming concepts is not important. There are numerous computer languages available on the Linux platform that can be used for this purpose. The GNU Compiler Collection (GCC) is a collection of programming language compilers that is included in most Linux distributions. It currently supports computer languages such as C, C++ and Java. Work is in progress to include other languages such as Pascal and Cobol. There are also other computer language compilers available, for example, dialects of BASIC language.

Many educational institutions currently base their programming courses on the Windows platform, resulting in a dependence on proprietary programming tools. These tools are usually in the form of an Integrated Development Environment (IDE) that simplifies some of the tasks involved in programming. However, there are IDEs available for the FOSS platforms such as KDevelop ( http://www.kdevelop.org ), and these can be used instead of the proprietary tools.

Availability of Source Code
At the more advanced level, the teaching of programming will be facilitated by the availability of source code of FOSS. The best way to learn how to write good computer programs is to study what has been written by others, especially real-life high quality programs. Take writing a novel: a writer cannot be expected to write a good novel if he/she has not read numerous works of others. In contrast, programmers are expected to write programs by just mastering the syntax and construction of a particular computer language without having much opportunity to study good code written by others.

In the past there was a lack of real-life high quality source code available for all to look at and to study.The source code of proprietary software is protected as a trade secret and is seldom released publicly. FOSS has made available the source code of thousands of programs, some of which are market leaders in their particular segment. The importance of the availability of source code of FOSS and its vital role in building capacity in software development is still not widely recognized.

Most users of FOSS do not have an interest in looking at the source code and neither is it necessary for them to do so. However,where students are being taught programming,the availability of the source code should be utilized to enhance teaching and learning. For example, in programming projects undertaken for IT courses, students can be encouraged to study the available source code and to build on it by adding features or making improvements. If they are sufficiently prepared, they can even participate in various FOSS projects such as those hosted on Sourceforge.net by submitting their code contributions.

Programming Languages Used in FOSS
Although at the basic level it is not important which programming language is used as the basis of teaching, at the more advanced level institutions should teach students languages relevant to their future work. If there is a likelihood that students who take up a career in software development will be involved in FOSS projects, then the curriculum should be designed to take this into consideration.

(Source: http://sourceforge.net )

Table 2 lists the computer languages used in FOSS projects, included in the SourceForge ( http://sourceforge.net ) repository as of December 2003.

Many more languages are being used to develop FOSS. We have included only the top few in the list above. C and C++ are predominantly used in FOSS projects. However, the use of Java, PHP, Perl and Python is growing. C and C++ are already commonly taught in the traditional Computer Science curriculum.With the growing importance of Java, PHP, Perl and Python, there should be an increased effort to include these in the IT curriculum.

FOSS Development Methodology
With the increased importance of FOSS, the teaching of software engineering should be modified to take into account the processes and methodology used in developing FOSS.

In his essay "The Cathedral and the Bazaar", Eric Raymond describes the characteristics of FOSS development and explains the metaphors he used to compare the methodologies used in traditional software development (cathedral model) and FOSS development (bazaar model) as follows:

I believed that the most important software (operating systems and really large tools like the Emacs programming editor) needed to be built like cathedrals, carefully crafted by individual wizards or small bands of mages working in splendid isolation, with no beta to be released before its time.

''Linus Torvalds's style of development-release early and often, delegate everything you can, be open to the point of promiscuity-came as a surprise. No quiet, reverent cathedral-building here-rather, the Linux community seemed to resemble a great babbling bazaar of differing agendas and approaches (aptly symbolized by the Linux archive sites, who'd take submissions from anyone) out of which a coherent and stable system could seemingly emerge only by a succession of miracles.''

A FOSS project tends to be initiated as a result of the needs of the developers. They will then develop the software to a stage where it is usable with the basic functionalities before releasing it to the community as an Open Source project. The programme may be bug-ridden, incomplete and poorly documented.But it must at least run and convince potential contributors that it has the promise of evolving into a good piece of software in the near future. This will attract other developers interested in solving the same problem to contribute to the project.However, it is not always the case that the development starts from scratch. In fact, many of the successful projects such as Apache are built on existing partial solutions. It should be noted that a project cannot be initiated from scratch in the bazaar mode.

Unlike a proprietary software project, a FOSS project is released as soon as it is usable. Updated versions are released whenever there are modifications to the software. "Release early, release often" is an important characteristic of a FOSS project. By doing so,many more users can participate in the testing of the software under varying conditions. If there are any bugs, they will be quickly discovered and fixed. The availability of the source code allows the users to be co-developers in the sense that they can fix the bugs instead of only reporting them. In contrast, for proprietary software it takes much longer for the small group of paid developers to fix the reported bugs through a beta-testing process.

This model of development is not entirely without structure, especially for the larger projects. For example, Linux has a hierarchical structure based on the delegation of responsibilities by Linus Torvalds to different people.They each have the responsibility and authority for different parts of Linux, although Linus Torvalds will always have the last word.The high degree of modularity of FOSS projects has given rise to a specific organizational and decision-making process. Generally, the FOSS development model tends to be more informal, since the developers perform their tasks voluntarily and for no direct financial gain.

It is now quite common for FOSS projects to rely on tools for issue tracking, source code management, design, automated testing and packaging and deployment. The concurrent versions system (CVS) is the most widely used version control system in open source projects. Its features include a central server containing the latest versions of the software that makes them accessible to anyone over the Internet. The CVS can be configured to send email notifications to project developers whenever changes are made so that the new source code can be tested and reviewed. Bugzilla was developed for use in the Mozilla project for issue tracking and technical support. It is now used in many FOSS projects.

The FOSS development methodology is different from traditional software engineering in many ways. Some researchers who are studying it have found that FOSS development methodology "can be faster, better and cheaper than the textbook software engineering often used in corporate settings." However, they have not concluded that very large and complex software applications customized for a small market, for example, the aviation industry, can be developed using the FOSS model; for these the traditional software engineering approaches may still be required.

title: FOSS Education/Teaching IT with FOSS


text:
File:FOSS Education - MIT OpenCourseWare.png

Summary
This is a simple screenshot taken by myself, cropped the web browser and shrink it to a minimum which is allowable with our fair use policy.

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
General Genetics/Ethical Issues

There many ethical issues with cloning, and genetics in general.

In the United states, many supermarkets are already selling genetically modified (GM) foods. Most of the produce usually creates its own pesticide that will eat the insects from the inside out, a trait borrowed from a group of bacteria that, to our knowledge, has no adverse affects on humans. The ethical issue comes into play here: most supermarkets do not advertise these foods as Genetically Modified. Even though no adverse affects are known to date, not allowing the customer to know that they are purchasing GM foods is controversial. There are two main sides of the argument:

 * 1) GM foods won't harm you, so why tell the people? If they have adverse affects once you tell them, it could be a self-fulfilling prophecy.
 * 2) Even if it won't hurt us, you should still tell us so we have a choice in the matter. That's like giving us a certain drug without telling us: it's not ethical.

If you go into your local supermarket and ask the General Manager if they know whether GM foods are being sold, the answer will probably be a resounding "No", since there is no separate signing for these foods. This reflects an underlying problem with the genetically-modified food discussion. Which foods are genetically modified? Many seedless fruits exist as a result of primitive genetic manipulation in the form of accelerated artificial selection. Products such as corn and apples could not exist without human intervention in the form of breeding and cross-species grafting. If we place the boundary at the laboratory door, we demonize certain foods that have saved billions of lives, specifically golden rice and others with which we have become perfectly comfortable.

The most commonly expressed concern with GM organisms is that their long term effect on the Earth's ecosystem is unknown. For a plant to evolve by natural selection took a long time and there was time for the ecosystem to adapt.

Cloning endangered species may be a good idea to keep the ecosystem in balance.

title: General Genetics/Ethical Issues


text:
FOSS Education/Open Content

The success of the Open Source phenomenon has prompted efforts to apply similar principles in the publication of content. The idea behind publishing Open Content is that anyone can use the content, distribute it freely, modify it and redistribute it. In this way, the content can be improved upon and knowledge is made freely available for the common good. The term "Open Content" was coined by Dr. David Wiley who launched the OpenContent project in 1998 and provided the Open Content License. The Open Content License is now superseded by the Creative Commons licenses.

Creative Commons ( http://creativecommons.org ), which is based at the Stanford Law School, provides various options for licensing Open Content. It should be noted that publishing content using one of these licenses does not mean that the author is giving up copyright to the work. Rather, some rights are offered to users of the work under certain conditions. The various Creative Commons options are summarized below:

 * Attribution
 * Gives permission to copy, distribute, display, and perform the work and derivative works based upon it but only if credit is given.

 * Noncommercial
 * Gives permission to copy, distribute, display, and perform the work and derivative works based upon it but for noncommercial purposes only.

 * No Derivative Works
 * Gives permission to copy, distribute, display, and perform only verbatim copies of the work but not derivative works based upon it.

 * Share Alike
 * Gives permission to distribute derivative works only under a license identical to the license that governs the original work.

Open Content is particularly important to education and there are a number of initiatives to provide Open Content for educational use, the most notable of which is the OpenCourseWare initiative by MIT.

MIT OpenCourseWare

In April 2001, MIT announced the OpenCourseWare (OCW) project through which it will make available course material used in 2,000 courses taught at MIT. These will be available online and educators, students and self-learners from anywhere in the world can access the material without any restrictions. By May 2004,material for 700 courses from virtually all academic disciplines were published on the OCW website ( http://ocw.mit.edu ).

Educators from all over the world can use the course material as a basis for curriculum development in their own institutions. Students can use it for self-study or as supplementary material for their courses. The availability of such a repository of educational materials can stimulate innovations in teaching and can lead to other collaborative efforts.

OCW is not about providing an MIT education. Neither is it a distance education initiative. According to Phillip Long, "OpenCourseWare is not an online teaching environment; it is the opportunity to have faculty at MIT present their view of good teaching material, the sequencing of teaching material, good problem sets, and appropriate types of activities. It is a representation of content and sequencing and thoughtful selection and juxtaposition of materials. It is an exposure to a public audience of the decisions and processes that faculty members go through to come to the point of having a collection of resources and materials to use when teaching a particular course."

OpenCourseWare materials (Figure 6) are licensed under a Creative Commons License with attribution, noncommercial and share alike options mentioned earlier.

Wikipedia
Wikipedia ( http://www.wikipedia.org ) is a free Web-based encyclopedia that is available under the Creative Commons Attribution/Share-Alike License (until 2009 the project used the GNU Free Documentation License). The encyclopedia's contents are written collaboratively by readers and are not subjected to any formal peer review. Readers can also edit the articles written by someone else.

Wikipedia was founded by Jimmy Wales and Larry Sanger who initially started another free Web-based encyclopedia called Nupedia where the articles were peer reviewed. Progress for Nupedia was slow and the number of articles available is limited. With Wikipedia, contributors make edits and create new articles rapidly. In December 2003, it had 185,785 articles listed,covering a wide range of subjects. It is also multilingual, with articles in various other languages. The founders of Wikipedia believe that the continuous process of editing articles will improve the content until a stable state with high quality content is reached.

Public Library of Science

The Public Library of Science ( PloS - http://www.plos.org ) is a non-profit organization founded in October 2000 with the aim of making the world's scientific and medical literature a freely available public resource. Over 30,000 scientists from over 180 countries, including 13 Nobel Laureates, endorsed the setting up of PloS, which is based in San Francisco. The rationale for PLoS is that unrestricted and open access to scientific ideas, methods, results and conclusions will speed up the progress of science and medicine.

With the help of grants from the Gordon Betty Moore Foundation and the Irving A.Hansen Foundation, PLoS launched, in October 2003, the first open access journal, called PLoS Biology (Figure 7). The journal is available online and full-text articles can be freely accessed, downloaded, printed and distributed. Although it is an open access journal, PLoS Biology still follows a process of rigorous peer review and selection similar to the current practice for conventional journals. The Public Library of Science plans to launch a medical journal, PLoS Medicine, in 2004 using the same open access model.

title: FOSS Education/Open Content


text:
FOSS Education/Research using FOSS

Traditionally, academic research is carried out in an open manner where the publication of research findings is preceded by a peer review process.All of the assumptions, calculations and experiments that lead to the results are scrutinized before the findings are accepted by journals for publication. The researchers do not usually acquire ownership of their findings and discoveries and they are expected to publish these.

Computer software is often used not only in Computer Science and ICT research but also in research in many other fields. "However, scientists rarely make their software available to other scientists for scrutiny-and even if they did, they often used closed-source programs in which the underlying source code is protected by copyright and trade secrecy claims. But this practice strikes at the heart of science, namely, the notion of verifiability. To be accepted as valid, all calculations and assumptions that go into a given scientific assumption must be open to public scrutiny. Yet closed-source software makes such scrutiny impossible."

In contrast, the open philosophy of FOSS is entirely consistent with the process of academic research since the source code of the software is also available for examination. Researchers should use FOSS as a tool in their work as far as possible. Bryan Pfaffenberger goes further to argue that "It's not enough for scientists to use open-source software; they must also use an open-source operating system."

As mentioned earlier, Free/Open Source programming languages, database systems, spreadsheet software and other applications that can be used for computations and data analysis in research are available. More specialized FOSS is also available. Some important examples are presented here:

Publishing
Many research papers in physics and mathematics are written using LaTeX.

Numerical Math
Numerical algorithms are applied to compute approximate solutions for problems where exact solutions are unknown or difficult to obtain. The output of numerical algorithms usually consists of many numbers, that represent variables of interest at different points in time or space.

Numerical values, that somehow belong together, are usually represented as arrays. Matrices and vectors from linear algebra and tensors can be conveniently expressed as arrays. Nearly all numerical algorithms are therefore written in terms of arrays.

Array Manipulation and Prototyping of Algorithms
Numerical algorithms are frequently developed with easy-to-learn, interpreted programming languages. These languages feature built-in array and matrix objects. They come with a big variety of subroutines for numerical computing, the creation of high quality graphics, and file input-output. Their ease of use results in a high development speed, that compensates their relatively slow speed of execution.

Missing: short capabilities

The interpreted languages mentioned here, are themselves 20 - 100 times slower than compiled languages (C, C++, Fortran). However the numerical subroutines are written in a compiled language and execute fast. Therefore from a certain matrix size on, the speed penalty of the interpreted languages becomes less pronounced. Time critical parts of an algorithm can also be written in a compiled language, which is reasonably easy. The speed comparisons here,  show a 5 - 10 times speed penalty, for a simple finite difference algorithm. The test here compares the performance of linear algebra routines.

Matlab - Proprietary and Wide Spread
The standard in this field is the proprietary language Matlab. The language is specialized for array manipulation. The documentation is good and very extensive; it is also available online.

Matlab is proprietary software. It is sold as a base package and many separate toolboxes, that cost extra. Pricing information (commercial license, one user, country USA, November 2007): 1900$ for the base language, toolboxes range from several hundred dollars to several thousand dollars. There are academic discounts.

For a longer discussion of the language itself: look at the almost identical Octave language.

Scilab
Scilab is a special purpose language for matrix manipulation. The syntax is similar to the Matlab language but not identical. It comes with a very large collection of packages to solve problems from many scientific disciplines.

Since version 5, Scilab is free software, distributed under the CeCILL license.

Someone with knowledge of Scilab: Please expand this section!
 * Scilab's Homepage

Octave
Octave is a free clone of the proprietary Matlab language. It is a special purpose language for array manipulation, and the syntax is very well suited for the task. The language has operators for both elementwise and linear algebra operations. It is also easy to learn. Octave is only the core of Matlab, toolboxes are separate projects and many do not yet exist. The most common algorithms however do exist.

The documentation is fairly good. There exists a tutorial.

It is very easy to write extension modules for Octave in C++, C and Fortran. (Easier than for Python.) Octave comes with a C++ library for matrix manipulation, that is also used internally.

Octave has no (only obscure) object orientation. So organizing big projects is difficult.

Because Octave is a special purpose language it is very difficult to do something which is outside of Octave's domain. A frequently encountered problem is reading odd file formats. Octave has no good string processing facilities nor an XML reader. Graphical user interfaces would have to be written in a different language.

Octave does not come with an IDE, but many editors can do syntax coloring for the (identical) Matlab language. There is also an Emacs mode for Octave, which is very powerful; but only useful for people who like the, rather special, Emacs editor.

 * Octave's Homepage

Numpy, Scipy, Matplotlib
Numpy, Scipy and Matplotlib are libraries for the Python programming language. Together they give Python the capabilities of a numerical prototyping language.
 * Numpy provides the array object and all basic array and matrix functionality.
 * Scipy is a collection of scientific algorithms (many from Netlib) with a Python wrapper.
 * Matplotlib provides 2D (and very simple 3D) plotting capabilities.

Python is an object-oriented, general purpose, programming language. Nevertheless Python is very easy to learn, and Python programs are easy to understand. It has a large standard library.

R
R supports a wide variety of statistical and numerical techniques. It is also highly extensible through the use of packages, which are user-submitted libraries for specific functions or specific areas of study. Due to its S heritage, R has stronger object-oriented programming facilities than most statistical computing languages. Extending R is also eased by its permissive lexical scoping rules.

Another of R's strengths is its graphical facilities, which produce publication-quality graphs which can include mathematical symbols.

Although R is mostly used by statisticians and other practitioners requiring an environment for statistical computation and software development, it can also be used as a general matrix calculation toolbox with comparable benchmark results to GNU Octave and its proprietary counterpart, MATLAB (version < 7).

Netlib
Netlib

GNU Scientific Library
GNU Scientific Library

Object-Oriented Numerics
Object-Oriented Numerics

Symbolic Math (Computer Algebra Systems)
Symbolic math is formula manipulation, like you would do with pen and paper. (At least from an engineer's perspective.) Computer algebra systems (CAS) can for example: simplify expressions, derive, integrate, or solve systems of equations.

Maple, Mathematica - Proprietary
Wellknown proprietary packages are Maple and Mathematica. Both packages are very comprehensive, but useful for a general public. They both have good graphical user interfaces. They are very expensive, but there are student discounts.

Maxima
Maxima is a powerful CAS and can compete with Maple and Mathematica. It lacks however a good graphical front end.

 * Maxima's Homepage
 * Maxima mailing list

Graphical frontends:
 * wxMaxima
 * TeXmacs

Links

 * List of mathematical software from the Maxima people.
 * Very big list of symbolical math software on Wikipedia

Bioinformatics
Bioinformatics, in general, is the use of computers to handle biological information. It is the use of computers to characterize the molecular components of living things (computational molecular biology). The most prominent achievement of bioinformatics is the Human Genome Project, an attempt to map the complete set of human genes. A tremendous amount of data needs to be handled in molecular biology and this is clearly possible only with the aid of computers and software.

FOSS features prominently in bioinformatics. Ewan argues that "open source makes sense because it follows good and well-known scientific principles. Traditionally, scientific practice has involved openly sharing and discussing results, and providing enough information to allow third-party confirmation of results. Clearly open source software fits well into this model."The second reason for using FOSS is that the "actual data matters much more than the tools used to process it." Sharing the software used to conduct research reduces duplication of effort to develop the software.

The Bioinformatics Organization, Inc. ( http://www.bioinformatics.org ) was founded in 1999 to facilitate worldwide communications and collaborations in bioinformatics research and to provide free and open access to methods and materials in such work. Its website hosts extensive resources, including software and databases, and provides a forum for activities that facilitate the development of such resources

High-end Computing
GNU/Linux and FOSS have been used in projects to provide affordable high-end computing capabilities. This is done by combining the processing power of multiple low-cost servers and workstations into a system that can deliver supercomputer power. According to Cook, " The reason these systems are so effective is that there are a great many very big, very complicated problems that naturally break down into a bunch of iterations of the same, much simpler, problem. That describes everything from forecasting the weather to doing computer animation."

Beowulf is the name of the architecture used for building a massively parallel system constructed out of commercially available PCs. The computers used for building the system can be 486 systems, Pentium systems and Alpha computers; the computers need not be homogeneous. Even old PCs that would otherwise be discarded can be used to build such a system. In Oak Ridge National Laboratory in the US, the Stone SuperComputer was built using a combination of old PCs connected together using a standard Ethernet network and was used to solve a mapping problem. The system has a theoretical peak performance of 1.2 gigaflops (FLOPS stands for floating point operations per second. It is used as an approximate measure of computing speed. A gigaflops is one billion FLOPS).

Another example is the supercomputer launched by the State University of New York, which consists of over 2,000 computers running GNU/Linux to conduct drug research to combat cancer, Alzheimer 's disease and AIDS.

title: FOSS Education/Research using FOSS


text:
FOSS Education/Training in FOSS

Although training in FOSS is not normally a part of formal education, educational institutions can play a role in providing this service in their professional trainings or adult education programmes.

One of the ways to promote the adoption of GNU/Linux and FOSS in government, educational institutions, organizations and the corporate sector is to ensure that suitable human resource capacity is available. A short-term measure for building human resource capacity in FOSS is to provide a path for current IT professionals to acquire the necessary skills and certification. Although many system administrators, network engineers and other IT professionals should be able to learn on their own, a more structured training programme will ensure systematic and adequate coverage of the various topics. A certification process will assess the competence of GNU/Linux and FOSS professionals; give confidence to employers; and facilitate the hiring process in an organization.

Training in GNU/Linux and FOSS is primarily to enhance job-related skills. Since FOSS is now predominantly used in back office servers, the areas for training would be in operating systems, servers, security and Web application development.

Since desktop applications are beginning to mature, there is also a growing need to train users to use these applications. Some governments and corporations are already implementing policies to migrate to FOSS desktop applications either on a mandatory or voluntary basis. However, such policies can succeed only if they are accompanied by a concerted effort to train the users who are affected by the move to use FOSS.

Certification
Lack of technical support is often cited as one of the reasons for not considering the adoption of FOSS. There is, of course, support provided informally through various newsgroups and mailing lists, and vendors like Red Hat also provide support options that can be purchased by institutions. However, the existence of a pool of GNU/Linux-certified professionals will go a long way to allay the fears of organizations considering the adoption of GNU/Linux and FOSS.

A certification programme also helps training centres in deciding on the training curriculum. Instead of having to develop its own curriculum, a training center can adopt a widely recognized certification programme. There are other advantages of certification, such as industry recognition of GNU/Linux and provision of a path of study for professionals desiring to acquire skills in GNU/Linux.

A certification programme should have some form of examination to reliably assess the competencies of students. The training centres should be certified and the instructors themselves should also be certified to be suitable to conduct the training.

Linux Professional Institute (LPI)
The Linux Professional Institute (LPI - http://www.lpi.org ) is a non-profit organization established in 1999. It is vendor-independent and through its activities it aims to promote the use of GNU/Linux and FOSS.

The LPI certification programme consists of three levels and is designed to certify the competency of system administrators, system engineers and other IT professionals in the use of GNU/Linux and other associated servers and utilities. It is not based on any particular GNU/Linux distribution, although inputs to the programme are provided by major hardware and GNU/Linux distribution vendors.

LPI tests for well-rounded skills that are usable on any GNU/Linux distribution. To ensure validity, reliability and high quality, LPI does not provide the training or the training material directly. A wide range of preparation options are supported, and training and testing centres for LPI certification are available in many countries.

Red Hat Certified Engineer (RHCE)
Red Hat ( http://www.redhat.com/training ) has two certification examinations-the Red Hat Certified Engineer (RHCE) and the Red Hat Certified Technician (RHCT). The training and testing emphasize practical skills and the exams measure competence with live equipment. The RHCE is aimed at two groups of IT professionals. The first group consists of system administrators, network engineers and other IT staff who already possess experience and knowledge in UNIX or GNU/Linux. The second group includes IT professionals who have little or no prior experience with UNIX or GNU/Linux.

The RHCE and RHCT certifications are meant to assess competencies in installing and configuring Red Hat Linux, configuring basic networking and file systems, essential system administration and configuring basic security. The RHCT is certification to a technician level and focuses more on client-side services and supporting Red Hat Linux systems on an existing network. RHCE focuses on server services and assesses competence in managing Red Hat Linux servers.

CompTIA Linux+
Computing Technology Industry Association (CompTIA) Linux+ ( http://www.comptia.org/certification/linux/default.asp ) certification is another vendor-neutral programme that validates the knowledge and abilities of technicians with at least six months of practical GNU/Linux experience. The CompTIA Linux+ certification exam measures competencies in planning and implementation, installation, configuration, administration, maintenance and troubleshooting of GNU/Linux systems. This is considered to be an entry-level certification on GNU/Linux.

title: FOSS Education/Training in FOSS


text:
FOSS Education/Policy Issues

As the earlier chapters have shown, FOSS has an important role to play in education. We have seen how it can be used in setting up and running ICT infrastructure in academic institutions. It can be used to meet specialized administrative needs, such as the management of libraries and the setting up of learning management systems. Its use can potentially lower the costs of providing ICT facilities. The use of FOSS also makes possible improvements in teaching computer literacy, programming, software engineering and other non-IT subjects. FOSS has a role to play in academic research and it has influenced and contributed to a more open dissemination of academic and research content.

Nevertheless, in considering the adoption of FOSS in education, policy-makers and decision-makers should be aware of the following issues.

Software Procurement
Since there are a number of advantages to using FOSS in educational institutions, including lower costs, reliability, better performance and, arguably, better security, strategic plans or policies for education at the national or institutional level should have guidelines for procurement of software that give due consideration to FOSS. These guidelines should also apply to decisions on software acquired for use in various curricula.

The different approaches that can be taken for developing guidelines for the procurement of software are:
 * Making it mandatory to use FOSS unless a suitable FOSS equivalent to the proprietary software is not available.
 * Recommending that FOSS be used whenever possible
 * Ensuring that FOSS is given due consideration and not excluded in favour of proprietary software.

Migration
In many situations, an educational institution may already be using proprietary software for both backend servers and desktops. In these cases, a strategy should be developed to migrate to the use of FOSS. The first place to start is usually the backend servers, since the migration will be transparent to users and a wide range of high-quality FOSS is already available for servers. The exception will be certain applications such as financial management systems, where good FOSS equivalents are not yet available. In such cases, servers running proprietary operating systems in support of such applications can be maintained and can coexist with other servers based on FOSS platforms, on the same network.

For desktop applications, the adoption of FOSS can potentially result in greater cost savings. However, a migration policy will have to take into account the existing use of proprietary software and the need to maintain the use of some proprietary applications for academic requirements. A gradual approach can be taken, for example, by first introducing and supporting FOSS applications that run on Windows, followed by the introduction of GNU/Linux as part of a dual boot system. There may be a transitional period where dual or multiple operating systems have to be maintained, which may result in additional support costs.

The available FOSS expertise within the institution will determine the training requirements for system administrators and other IT support staff.User training may also be required for other administrative users.

Curricula in Schools
More and more schools are being equipped with computer facilities and many have already implemented curricula to teach computer literacy to their students.These curricula should be examined to ensure that they are not based on specific proprietary software. If necessary, modifications should be made to the curricula so that the emphasis is on teaching concepts and generic skills. As we saw earlier, FOSS suitable for teaching computer literacy is available and should be used wherever possible. It has cost advantages; discourages software piracy; raises the awareness of the students regarding the availability of FOSS solutions; and avoids over-dependence on one proprietary platform. This does not necessarily mean that proprietary software should be excluded entirely. If the resources are available, proprietary software can be used to demonstrate the range of software available to accomplish certain tasks.

A lot of FOSS educational software for specific subjects are available,and teachers should be encouraged to use these to enhance teaching and learning. If they have the skills, the teachers should also be encouraged to develop appropriate software for their classes and make these available as FOSS.

To introduce FOSS in the curricula of schools, appropriate training for teachers is likewise required. The emphasis in this case will be on training the teachers to use the appropriate desktop FOSS, such as OpenOffice, Mozilla and GIMP.

Curricula in Tertiary Institutions
At the tertiary level, the policies of institutions with respect to curricula for Computer Science or Information Technology programmes should encourage the incorporation of FOSS. Academic staff should examine course syllabi and modify them where necessary. Student projects that leverage on the availability of source code of FOSS and encourage participation and contribution to ongoing FOSS development efforts should be introduced. Consideration should also be given to the introduction of computer languages that are increasingly being used in FOSS development such as PHP, Perl, Python and Java, in addition to the traditional languages. FOSS development methodology and the tools commonly used in developing FOSS should be incorporated in software engineering courses.

Non-IT students should be taught computer literacy using curricula that is FOSS-enabled, with emphasis on acquisition of generic skills. It may be useful to expose students to a wide selection of software, including both FOSS and proprietary software if the resources are available. FOSS for teaching specific subjects should be identified and used wherever possible. Staff with the requisite skills should be encouraged to develop relevant educational software and release them as FOSS.

Development of FOSS for Education
The numerous FOSS available for educational use range from Learning Management Systems to software that can be used to teach specific subjects in schools or universities. However, in order for academic institutions in a particular country to use these software, it may be necessary to modify them to suit local educational requirements. In countries where English is not used as the medium of instruction, there is also a need to translate the software into the local language. Where there are no suitable FOSS available such as a Student Information System or software applications for specific academic subjects, then there may also be a need to develop new applications.

To encourage the customization, localization and development of FOSS for education, the relevant government agencies should consider establishing incentive schemes for the private sector and academic institutions to undertake these activities. This can be in the form of grants that would help to alleviate the risks involved in investing in the development of educational FOSS that may not have direct commercial returns for the private sector.

Research grants
Earlier we gave some examples of the use of FOSS in research and the reason why it should be used, instead of proprietary software, where possible. To promote the use of FOSS in research activities, agencies providing research grants can consider making the use of FOSS one of the criteria for the award of the grants. They can also specify that any software developed as part of research activities should be released as FOSS. These conditions should apply regardless of whether the research is related to ICTs, since computer software are very often used as research tools in many other areas.

Training
Immediate measures need to be taken to build the human resource capacity required to implement and support FOSS. This will require setting up training centres that conduct programmes preferably leading to certification such as LPI or RHCE certification. The training centres may be government-run, set up by the private sector or set up in partnership with universities or colleges. To act as a catalyst and to ensure the availability of sufficient trainers to run these programmes, "train the trainers" programmes can be established.

title: FOSS Education/Policy Issues


text:
Template:Legal and Regulatory Issues in the Information Economy

 Legal and Regulatory Issues in the Information Economy Preface — Introduction — The Rule of Law and the Internet — Jurisdiction and Conflicts of Law — Legal Recognition of Electronic Documents and Electronic Signatures — Ideas, Trade Secrets, and Intellectual Property — Domain Name Disputes — Consumer Privacy and Protection — Cybercrimes — Censorship or Content Regulation — Further Reading — Notes — Acknowledgements — Authors


text:
FOSS Education/Further Readings

 * Moody, G., Rebel Code-Linux and the Open Source Revolution, Penguin Books, 2002.
 * St. Onge, P. D., "Linux in Education: Two Years Later", August 2002; available at freshmeat.net/articles/view/533/.
 * Kegel, D., "The Case for Linux in Universities", Oct 2002; available at www.kegel.com/linux/edu/case.html.
 * Kegel, D., "The Undergrad CS Programme, Linux, and Open Source", Mar 2003; available from www.kegel.com/linux/edu/curriculum.html.
 * Howland, J. E., "Software Freedom, Open Software and the Undergraduate Computer Science Curriculum", Department of Computer Science, Trinity University, April 2000; available at www.cs.trinity.edu/~jhowland/ccsc2000/ccsc2000/ccsc2000.html.
 * Massey, B., "Open Source Software Development in the Unix Environment", course in Portland State University; available at www.cs.pdx.edu/course.php?cid=110.
 * Cesarini, P. A., "Monocultural Alternative: The OpenCD", Fall 2003, Computers and Composition Online; available at www.bgsu.edu/cconline/reviews/cesarini_review.htm.
 * Hart, T. D., "Open Source in Education", May 2003, University of Maine; available at portfolio.umaine.edu/~hartt/OSinEducation.pdf.
 * Lineweaver, R.,"Cost savings of open source software in the server room-An informal case study in K-12 education", 2002; available at staff.harrisonburg.k12.va.us/~rlineweaver.
 * Carmichael, P. and Honour, L.,"Open Source as Appropriate Technology for Global Education", School of Education, University of Reading, UK; available at www.ellak.gr/pub/osdocs/education/carmichael.pdfe=7413.
 * Robbins, J. E., "Adopting OSS Methods by Adopting OSS Tools", CollabNet, Inc.; available at opensource.ucc.ie/icse2002/Robbins.pdf.
 * González-Barahona, J. M. and Robles, G., "Free Software Engineering: A Field to Explore", UPGRADE - European Journal for the Informatics Professional, Vol.IV,No. 4,August 2003;available at www.upgradecepis.org/issues/2003/4/up4-4Gonzalez.pdf.
 * Gilbert, S.W.and Long,P., "Open Knowledge and Open CourseWare Initiatives: An Interview with MIT's Phil Long", The Technology Source, March/April 2002; available at ts.mivu.org/default.asp?show=articleid=979.
 * Siemens, G., "Free and Open Source Movements: Part 1 - History and Philosophies", March 2003; available at www.xplana.com/whitepapers/archives/open_source_part1.
 * Siemens, G.,"Open Source Content in Education: Part 2 - Developing, sharing, expanding resources", March 2003; available at www.xplana.com/whitepapers/archives/open_source_part2.
 * Bretthauer,D., "Open Source Software: A History, Information Technology and Libraries", Vol. 21,No. 1; available at www.lita.org/Content/NavigationMenu/LITA/LITA_Publications4/ITAL__Information_Technology_and_Libraries/2101_Bretthauer.htm.
 * Lakhani, K. R. and Wolf, R. G., "Why Hackers Do What They Do: Understanding Motivation Effort in Free/Open Source Software Projects", MIT Sloan School of Management, September 2003; available at freesoftware.mit.edu/papers/lakhaniwolf.pdf

title: FOSS Education/Further Readings


text:
Psychiatric Disorders/Psychotic Disorders

Psychotic disorders include the following disorders: /Schizophrenia/, Schizoaffective Disorder, Schizophreniform Disorder, Delusional Disorder, Brief Psychotic Disorder, and the Secondary Psychotic Disorders (Psychotic Disorder that are due to medical conditions or to substances). The central feature of these disorders is that they cause psychosis. Psychosis can be thought of as a loss of contact with reality. A person with a psychotic disorder is unable to evaluate properly what is or is not real.

In addition to the primary psychotic disorders, a number of other psychiatric disorders can cause a person to become psychotic. These include the mood disorders, such as psychotic depression, or mania with psychosis.

Thought Disorders
Psychotic disorders represent the failure of normal thought and, hence, they can be categorized as thought disorders. Thought disorders can be divided into different types. Most commonly, they are divided into disorders of process and disorders of content.

Disorders of Thought Process
Disorders of thought process involve a disturbance in the way one formulates thought. Thought disorders are inferred from speech, and often referred to as "disorganized speech." Historically, thought disorders have included associative loosening, illogical thinking, over inclusive thinking, and loss of the ability to engage in abstract thinking. Associative loosening includes circumstantial thought and tangential thought.

Other types of formal thought disorder include:
 * Perseveration: the patient gets stuck on one idea or one thing and cannot move on from there
 * Clanging: the connections between thoughts may be tenuous, and the patient uses rhyming and punning
 * Neologisms: words that patients make up; often a condensation of several words that are unintelligible to another person
 * Echolalia: the patient repeats back the words of other people, “parrots” people’s speech
 * Thought blocking: stopping mid-thought and being unable to continue with the thought
 * Word salad: an incomprehensible mixing of meaningless words and phrases.
 * For a larger list of thought disorders, see this article

Disorders of Thought Content
Disorders of thought content include hallucinations and delusions.

Hallucinations are perceptions without external stimuli. They are most commonly auditory, but may be any type. Auditory hallucinations are often voices, mumbled or distinct. Visual hallucinations can be simple or complex, in or outside the field of vision (ex. "in head") and are usually of normal color rather than black and white. Olfactory and gustatory hallucinations generally occur together as unpleasant tastes and smells. Tactile or haptic hallucinations may include any sensation—for example, an electrical sensation or the feeling of bugs on skin (formication).

Delusions are fixed, false beliefs, not amendable by logic or experience. There are a variety of types. Delusions are most commonly persecutory, but may be somatic, grandiose, religious or nihilistic. No one type of delusion is specific to any particular disorder (such as schizophrenia). Hallucinations and delusions are common across all cultures and backgrounds; however, culture may influence their content. Culture and religion must be considered when evaluating whether an event is a delusion or hallucination. In this context, a good rule of thumb is that if other people endorse it, it may not be a delusion or hallucination.


text:
FOSS Education/Glossary

 * Application
 * Application describes a program which does something that the user wants. For example, web browsing applications include Mozilla Firefox and SeaMonkey.

 * BIND
 * BIND (Berkeley Internet Name Domain) is a computer programme developed to facilitate the resolution of domain names to Internet Protocol (IP) addresses on the Internet. It is the most widely used DNS server software.

 * Creative Commons
 * Creative Commons provides free tools that let authors, scientists, artists, and educators easily mark their creative work with the freedoms they want it to carry. You can use CC to change your copyright terms from "All Rights Reserved" to "Some Rights Reserved." These licenses are legally enforceable and can allow others to modify, reuse or build on your work.

 * CMS
 * A content management system (CMS) is computer software used to create, edit, manage, and publish content in a consistently organized fashion. CMSs can be used in schools for developing collaborative materials, publishing school websites and prospectuses, presenting school calendars and the like. They offer more control over publishing content than wikis.

 * DHCP
 * DHCP is the acronym for Dynamic Host Configuration Protocol. Every computer connected to a network needs to be assigned an IP address. This can be done manually but it is most common to have the IP address assigned dynamically by a DHCP server.

 * DNS
 * DNS (Domain Name System) is an Internet service that translates domain names into Internet Protocol (IP) addresses.Domain names (e.g., www.sample.com) are easier to remember and to use but the Internet is actually based on cryptic IP addresses (e.g., 198.101.208.15). Hence, a translation between the two is required.

 * Distribution
 * The operating system will consist of the Linux kernel and, usually, a set of libraries and utilities from the GNU project, with graphics support from the X Window System. There are currently over three hundred Linux distributions. Most of those are in active development, constantly being revised and improved.

 * Firefox
 * Mozilla Firefox is a web browser descended from the Mozilla Application Suite, managed by the Mozilla Corporation. Firefox had 19.03% of the recorded usage share of web browsers as of June 2008, making it the second-most popular browser in current use worldwide. It is released as free software and will work on most computers.

 * FOSS
 * Free and Open Source Software (FOSS) is used to cover both Free Software and Open Source software. There are differences in the definitions of these, though often not in the meaning of the terms.

 * Free Software
 * The word "free" in Free Software refers to the users' freedom to run, copy, distribute, study, change and improve the software. It does not refer to the price of the software. More precisely, a programme is Free Software if users have the four freedoms:
 * The freedom to run the program, for any purpose.
 * The freedom to study how the program works, and adapt it to one's needs. Access to the source code is a precondition for this.
 * The freedom to redistribute copies so you can help your neighbour.
 * The freedom to improve the program, and release your improvements to the public, so that the whole community benefits. Access to the source code is a precondition for this.

 * The definition of Free Software and a more detailed explanation is available at www.fsf.org/philosophy/free-sw.html.

 * GCC
 * GCC (GNU Compiler Collection) is a collection of front ends for programming languages that is included in most Linux distributions. It currently supports computer languages such as C, C++, Objective-C, ForTran, Java and Ada and contains libraries for these languages. Work is in progress to include other languages such as Pascal and COBOL.

 * GIMP
 * GIMP (GNU Image Manipulation Programme) is the most well known FOSS for image editing. It is available for various operating systems. It supports various image ﬁle formats and has the ability to be programmed to carry out similar operations on many files.

 * GNOME
 * GNOME (GNU Network Object Model Environment) is one of the two main desktop environments with a graphical user interface for the Linux operating system.

 * GNU
 * GNU is a recursive acronym for "GNU's Not Unix." In 1984, a project was started by Richard Stallman to develop a complete UNIX style operating system that is available as Free Software. The GNU Kernel is not complete, so the Linux Kernel is often used with GNU.

 * GNU/Linux
 * GNU/Linux is the term promoted by the Free Software Foundation (FSF), its founder Richard Stallman, and its supporters, for operating systems that include GNU software and the Linux kernel. There are arguments for and against each term. For example, the FSF argues for the term GNU/Linux because GNU was a longstanding project to develop a free operating system, of which the kernel was the last missing piece.

 * GPL
 * The General Public License (GPL) was originally used as the license for "Free Software" distributed by the Free Software Foundation (FSF). Under the GPL, users may run, study, copy and modify the software. Users may also redistribute the modified software. However, users are not allowed to add their own restrictions and the modified software must be released under the same licensing terms.

 * IDE
 * IDE (Integrated Development Environment) refers to an integrated computer programming environment that usually has a user-friendly graphical user interface and that provides the necessary tools for developing computer programs.

 * IPR
 * Sometimes IP is used to refer to Intellectual Property. These are, very broadly, rights granted to creators and owners of works that are the result of human intellectual creativity. These works can be in the industrial, scientific, literary or artistic domains. They can be in the form of an invention, a manuscript, a suite of software, or a business name, as examples.  In general, the objective of intellectual property law is to grant the creator of a work certain controls over the exploitation of that work.

 * KDE
 * KDE (K Desktop Environment) is one of two main desktop environments with a graphical user interface for the Linux operating system.

 * Kernel
 * The kernel is the essential centre of a computer operating system, the core that provides basic services for all other parts of the operating system. A synonym is nucleus. A kernel can be contrasted with a shell or User Interface, the outermost part of an operating system that interacts with user commands

 * LAMP
 * The acronym LAMP refers to a solution stack of software, usually free and open source software, used to run dynamic Web sites or servers. The original expansion is as follows:
 * Linux, referring to the operating system;
 * Apache, the Web server;
 * MySQL, the database management system (or database server);
 * PHP or others, i.e. Perl, Python, the programming languages.
 * The combination of these technologies is used primarily to define a web server infrastructure, define a programming paradigm of developing software, and establish a software distribution package.

 * LAN
 * LAN (Local Area Network) is a local computer network for communication between computers, typically covering a small area such as an office building or a group of buildings like a campus. A LAN may be connected to the Internet or it may be a separate distinct network. LAN is commonly used for sharing of resources such as files, printers and disk storage.

 * Localization
 * In the context of software, localization is the process of adapting, translating and customizing a product for a specific market. This means the modification of the interface so that it is meaningful and comprehensible to local users of the product. Apart from the linguistic issues, localization also needs to address content and cultural issues as well as technical issues.

 * Linux
 * Linux is the name usually given to any Unix-like computer operating system that uses the Linux kernel. Linux is one of the most prominent examples of free software and open source development: typically all underlying source code can be freely modified, used, and redistributed by anyone. The name "Linux" comes from the Linux kernel, originally written in 1991 by Linus Torvalds. The system's utilities and libraries usually come from the GNU operating system, announced in 1983 by Richard Stallman. The GNU contribution is the basis for the alternative name GNU/Linux.

 * LTSP
 * The Linux Terminal Server Project (LTSP) provides the necessary software to set up a network of diskless workstations or thin clients to connect to a Linux server. It supports various Linux distributions, and is widely used. During boot up, the diskless workstation obtains the necessary network information from the server and the operating system is downloaded from the server. Any program supported by a server on the network can then be run from the workstation.

 * Live Distribution
 * A Live Distro or Live CD, is a Linux distribution that can be booted from a compact disc or other medium (such as a DVD or USB flash drive) instead of the conventional hard drive. This enables users to try out a new distribution without installing anything on their computer.

 * OCW
 * In 2001, MIT announced the OpenCourseWare (OCW) project through which it would make available course material used in the courses taught at MIT. These would be available online for use by educators, students and self-learners from anywhere in the world. Materials for 700 courses from virtually all the academic disciplines are currently available on the OCW website ( http://ocw.mit.edu ).

 * Moodle
 * Moodle is a popular free software Virtual Learning Environment (VLE), which allows courses to be made available to learners through their web browser.

 * OKI
 * The Open Knowledge Initiative (OKI) was initiated at MIT in 2001. It is a collaboration among some leading universities, with MIT and Stanford leading the initiative.The objective of OKI is to define an open and extensible architecture for learning technology and it is targeted specifically to the needs of the higher education community. It provides specifications for interfaces among components within a learning management system and facilitates communication with other systems, including existing enterprise systems.

 * OpenOffice.org
 * |OpenOffice.org OpenOffice.org is an open-source office software suite for word processing, spreadsheets, presentations, graphics, databases and more. It is available in many languages and works on all common computers. It stores all your data in an international open standard format and can also read and write files from other common office software packages. It can be downloaded and used completely free of charge for any purpose.

 * OS
 * The operating system (commonly abbreviated OS and O/S) is the software component of a computer system that is responsible for the management and coordination of activities and the sharing of the resources of the computer. The operating system acts as a host for application programs that are run on the machine. One of the purposes of an operating system is to handle the operation of the hardware. This relieves application programs from having to manage these details and makes it easier to write applications. Almost all computers, including hand-held computers, desktop computers, supercomputers, and even modern video game consoles, use an operating system of some type.

 * Open Source
 * Open Source software does not only mean access to the source code. To qualify as Open Source software, the distribution terms of the software must comply with the following criteria:
 * Free Redistribution
 * Availability of Source Code
 * Possibility of Derived Works
 * Integrity of The Author's Source Code
 * No Discrimination Against Persons or Groups
 * No Discrimination Against Fields of Endeavor
 * Distribution of License
 * License Must Not Be Specific to a Product
 * License Must Not Restrict Other Software
 * License Must Be Technology-Neutral

 * For further explanation of the definition of Open Source, please refer to: www.opensource.org/docs/definition.php

 * Operating System
 * The OS (Operating System) is the collection of software that controls the hardware and software applications on a computer.The OS manages and allocates the physical resources (CPU processing time, hard disk space, inputs from the keyboard, etc.) among the different applications that run on it.Examples of an OS are Microsoft Windows, GNU/Linux, Solaris and Mac OS X.

 * Perl
 * Perl (Practical Extraction and Report Language) is an interpretive programming language designed to process text and is typically used for CGI scripts. Perl has been developed as an open source project and was started in 1987 by Larry Wall. Developed originally for UNIX it is now available for different operating systems.

 * PHP
 * Hypertext Preprocessor :PHP originally stood for "Personal Home Page" Today it is a recursive acronym for "PHP: Hypertext Preprocessor" PHP is an Open Source server-side scripting language for Web programming. You can use it to add dynamic features to HTML pages or to create entire sites that generate HTML dynamically. PHP is executed on the server and the client cannot view the PHP code. PHP is compatible with many types of databases.

 * Python
 * Python is an interpreted, interactive and object-oriented programming language developed by Guido van Rossum in 1991. Python is portable and runs on most operating systems. It is suitable for rapid prototyping and as an extension language for applications that need a programmable interface. Although Python is copyrighted, the source code is freely available and distributable even for commercial use.

 * Root
 * GNU/Linux is designed as a multi-user environment, where specific users are granted defined permissions. The Root user has complete control over the computer system. In many cases logging in as root is discouraged, and users log in with conventional accounts and then execute a command to gain root privileges.

 * SCORM
 * SCORM (Shareable Content Object Reference Model) is an XML-based framework that allows interoperability, accessibility and re usability of learning content. Learning content created using SCORM can, in theory, be shared among different learning management systems.

 * Server
 * A server is a computer that provides resources or services to other computers. Though servers are often powerful and purpose built, in many applications this is not necessary.  A computer that is used for only one server application is often named as such. For example, when the software Apache HTTP Server is used as the web server for a company's website, the computer running Apache is also called the web server.

 * Source Code
 * The source code of the software is the set of programming instructions that is written by the programmer using a particular computer language. In order for the computer to understand and run the software, the source code must be compiled or "translated" into machine code (also referred to as binary code, executable code or object code). To modify the software, the source code must be available for modifications, as the machine code is not human-readable.

 * Thin Client
 * Thin clients are computers that have a minimum of computing power, handling monitor, keyboard, mouse and some local devices. The client connects to a server that has more processing power and runs the programs.

 * TCO
 * TCO (Total Cost of Ownership) includes all of the costs involved in a technology or business solution. In addition to the initial investment cost, such costs include maintenance, support, replacement costs, and the like. In the case of software, the TCO should include the initial cost of the software; upgrade cost; and maintenance, support and training costs.

 * User Interface
 * The information presented by the computer, along with the inputs from the user make up the User Interface. There are graphical and text interfaces.  KDE and GNOME are two major desktop environments that make up a large part of the User Interface on GNU/Linux systems.

 * VLE
 * A Virtual Learning Environment (VLE) allows courses to be published for learners through the Internet. Learners' progress can be monitored and feedback given.  They provide a collection of tools such as those for assessment (particularly of types that can be marked automatically, such as multiple choice), communication, uploading of content, return of students' work, peer assessment, administration of student groups, collecting and organizing student grades, questionnaires, tracking tools, etc.  A well known free software VLE is Moodle.

 * Web Browser
 * The Web Browser is an application that presents information from a web site to the user. There are a wide range of FOSS web browsers, of which Mozilla Firefox is the best known.

 * Wiki
 * Wikis are web based systems that allow users to edit the content on the web site through their web browser. Some wikis can be configured to require the user to log in before editing the site.  They can be used to create collaborative websites with a flexible format.

 * X
 * X provides the basic framework, or primitives, for building graphical user interface environments: drawing and moving windows on the screen and interacting with a mouse and/or keyboard. X does not define the user interface — individual client programs handle this. As such, the visual styling of X-based environments varies greatly; different programs may present radically different interfaces. X is built as an additional application layer on top of the operating system kernel.

title: FOSS Education/Glossary


text:
FOSS Education/About the Author

Original Author
Tan Wooi Tong is Programme Specialist for the International Open Source Network (IOSN) at UNDP’s Asia-Paciﬁc Development Information Programme (APDIP). He obtained his Bachelor and Master degrees from the Massachusetts Institute of Technology, US. He has more than 20 years of working experience in the Information Technology ﬁeld, academic institutions and engineering ﬁrms.

Contributors
This book is a wiki. You can edit this book too, if you want! If you make a significant contribution to this project, please list your name here:

 * Ezwan Aizat Bin Abdullah Faiz 14:44, 13 September 2006 (UTC)
 * Performed the initial conversion from PDF, and the transfer of this material to the wikibooks server.

title: FOSS Education/About the Author


text:
Adventist Youth Honors Answer Book/Quilt/Fibers

The most common fibers used for a quilt's interlining are cotton, polyester, and wool.

|


text:
FOSS Education/About IOSN

The International Open Source Network (IOSN) is an initiative of UNDP’s Asia-Paciﬁc Development Information Programme (APDIP). Its overall objective is to serve as a Center of Excellence and a Clearinghouse for Information on Free and Open Source Software (FOSS) in the Asia-Paciﬁc region. In order to accelerate the world-wide adoption of FOSS, IOSN seeks to raise awareness, facilitate networking of people, strengthen capacities, and conduct R&D.

The beneﬁciaries of IOSN are governments, IT professionals, software developers, the FOSS R&D community, academics and the NGO community. IOSN serves as a resource center to help policy-makers and decision-makers in the public sector, educational institutions, businesses and others develop policies and plans for the use of FOSS in their respective organizations. Much of IOSN’s activities are undertaken online and the IOSN portal has been developed for this purpose and serves as a comprehensive online resource center on FOSS. The IOSN portal also provides a means for the FOSS community in the region to contribute to its efforts and to interact with each other.

http://www.iosn.net

title: FOSS Education/About IOSN


text:
FOSS Education/About APDIP

The Asia-Paciﬁc Development Information Programme (APDIP) is an initiative of the United Nations Development Programme (UNDP) that aims to promote the development and application of new Information and Communication Technologies (ICT) for poverty alleviation and sustainable human development in the Asia-Paciﬁc region. It does so through three core programme areas, namely, Policy Development and Dialogue; Access; and Content Development and Knowledge Management.

In collaboration with national governments, APDIP seeks to assist national and regional institutions in the Asia-Pacific through activities that involve awareness-raising and advocacy, building capacities, promoting ICT policies and dialogue, promoting equitable access to tools and technologies, knowledge sharing, and networking. Strategic public-private sector partnerships and opportunities for technical cooperation among developing countries (TCDC) are APDIP's key building blocks in implementing each programme activity

title: FOSS Education/About APDIP


text:
User:Kingarthur~enwikibooks

King Arthur is the collective username for a group of high school students in the House of Excalibur, part of the Freshman Academy at Loy Norrix High School in Kalamazoo, Michigan. As part of our World History study, we are attempting to not only read about history but to use that knowledge to help complete the World History Project Wikibook.

Click here to access the World History Project.

title: User:Kingarthur~enwikibooks


text:
Template:FOSS A General Introduction

 FOSS A General Introduction Preface — Introduction — Why FOSS? — FOSS Success Stories — Linux — Intellectual Property Rights and Licensing — Localization and Internationalization — Case Studies — Annex I: Glossary — Annex II: Software Licenses — About APDIP — About IOSN

title: Template:FOSS A General Introduction


text:
FOSS A General Introduction/Preface

The world of Information and Communications Technology (ICT) changes rapidly. New technologies and with them, new opportunities, come and go at an ever increasing speed. The Free and Open Source Software (FOSS) movement is one such development that is playing out before us today. It is many things—–revolutionary development process, disruptive technology, ideological movement, new knowledge and standards, and more. It offers many opportunities for governmental, private sector, and educational institutions. Organizations, as well as developing nations, that take advantage of FOSS and implement them appropriately stand to gain much, while those that fail to take advantage of this opportunity may find their ICT development lagging behind that of comparable organizations.

This primer is the first in a series of primers focused on the FOSS movement. Intended for policy and decision makers in general, the primer gives an overview of the issues and technologies involved. Although geared more for developing countries, the points discussed and the resources contained in this primer are relevant to a broad range of individuals around the world.

The remaining primers in the series will focus in greater detail on particular aspects of the Free Open Source Software movement, such as issues, technologies, and experiences in FOSS in government policy, education, network infrastructure, licensing, localization and open standards

Finally, despite the prominence of “software” in its name, the Free/Open Source Software movement is based on three “Open” pillars - Open Source, Open Standards and Open Content. In the spirit of the movement, this primer is released as Open Content, allowing redistribution and usage under very broad conditions. Readers are encouraged to use, distribute, and contribute back to this resource as much as possible. The updated version of the primer will be available from the International Open Source Network website at:

http://www.iosn.net/downloads/foss_primer_current.pdf

The primers are brought to you by the International Open Source Network (IOSN), an initiative of the UNDPs Asia-Pacific Development Information Programme (APDIP). We would like to thank all those who have been involved in creating this primer, including the researchers, peer reviewers and production team. In particular, we would like to thank APDIP and the International Development Research Centre (IDRC) of Canada for their generous financial support, without which this primer would never have been written.

It is our hope that this document will become a valuable resource for many in the years to come.

title: FOSS A General Introduction/Preface


text:
Bartending/Cocktails/Midori Sour

The Midori Sour is a midori melon liqueur mixed with a certain sour mix (occasionally contains 2 parts water, 3 parts sugar).

Regular recipe
Ingredients:
 * 1 oz Midori melon liqueur.
 * 2 oz Sweet and sour.

Preparation:

Shake with ice and strain. Garnish with a slice of orange. Ice is optional.

Frozen recipe
Ingredients:
 * 2 oz Midori melon liqueur.
 * 6 - 8 oz Sour mix.
 * 1/2 tsp Sugar.
 * Ice.

Preparation:

Mix all ingredients in a blender with enough ice to freeze. Serve in a tall glass with a lime twist garnish.

title: Bartending/Cocktails/Midori Sour


text:
Talk:FOSS Government Policy/Introduction

Looking at the original PDF document, I believe the "Strategic Importance of FOSS" should be moved to a chapter of its own. --aizatto 16:08, 13 September 2006 (UTC)

 * You are quite right, sorry for the mixup. I have separated it out into a separate chapter. --Whiteknight (talk) (projects) 16:22, 13 September 2006 (UTC)


text: User:NithinBekal

title: User:NithinBekal