Gives a basic academic introduction to the concept of free software.
TRANSCRIPT
FREE SOFTWARE An Introduction
Introduction to Free Software 1
What is software?
Introduction to Free Software 2
Presenter
Presentation Notes
Let us look at two dictionaries: Chamber’s Dictionary and Merriam-Webster’s dictionary.
software: n computer programs that control the operation of computer hardware; computer program (or analogous) accessories (other than the actual parts of a computer, etc); video cassettes and discs; material recorded in microform.
Introduction to Free Software 3
Presenter
Presentation Notes
Definition of software as per The Chamber’s Dictionary.
Software : Function: noun Date: 1958Something used or associated with and usually contrasted with hardware: as a: the entire set of programs, procedures, and related documentation associated with a system, especially a computer system; specifically: a computer program b: materials for use with audio‐visual equipment
Introduction to Free Software 4
Presenter
Presentation Notes
Definition of software as per Merriam-Webster’s dictionary.
What is meant by free?
Introduction to Free Software 5
Presenter
Presentation Notes
Dictionary gives several meanings to the word free. For example, according to Chamber’s Dictionary, free means: 1 allowed to move as one pleases; not shut in. 2 not tied or fastened. 3 allowed to do as one pleases; not restricted, controlled or enslaved. 4 said of a country: independent. 5 costing nothing. 6 open or available to all. 7 not working, busy, engaged or having another appointment. 8 not occupied; not being used. Allowed to do as one pleases; not restricted, controlled or enslaved. However, in the context of the phrase free software the word free is used to convey and emphasize a specific concept. This concept is explained in the next few slides.
Free not as in free lunch (not cost)
Introduction to Free Software 6
Presenter
Presentation Notes
Or : Free not as in free beer!
Free as in free speech (freedom)
Introduction to Free Software 7
Presenter
Presentation Notes
Or: Free as in free man!
What freedoms?
Introduction to Free Software 8
Presenter
Presentation Notes
Let us see the precise enunciations of the various freedoms associated with free software.
Freedom 0(use)
The freedom to run the program, for any purpose.
Introduction to Free Software 9
Presenter
Presentation Notes
The freedom to run the program means the freedom for any kind of person or organization to use it on any kind of computer system, for any kind of overall job and purpose, without being required to communicate about it with the developer or any other specific entity. In this freedom, it is the user's purpose that matters, not the developer's purpose; you as a user are free to run a program for your purposes, and if you distribute it to someone else, she is then free to run it for her purposes, but you are not entitled to impose your purposes on her.
Freedom 1(study)
The freedom to study how the program works, and adapt it to your needs .
(Access to the source code is a precondition for this.)
Introduction to Free Software 10
Presenter
Presentation Notes
Source code : The human-readable form of the program. Freedom 1 includes the freedom to use your changed version of the program in place of the original. If the program is delivered in a product designed to run someone else's modified versions but refuse to run yours, freedom 1 becomes a theoretical fiction rather than a practical freedom. This is not sufficient. In other words, these binaries are not free software even if the source code they are compiled from is free.
Freedom 2(copy and share)
The freedom to redistribute copies so you can help your neighbor.
Introduction to Free Software 11
Presenter
Presentation Notes
The freedom to redistribute copies must include binary or executable forms of the program, as well as source code, for both modified and unmodified versions. (Distributing programs in runnable form is necessary for conveniently installable free operating systems.) It is ok if there is no way to produce a binary or executable form for a certain program (since some languages don't support that feature), but you must have the freedom to redistribute such forms should you find or develop a way to make them.
Freedom 3(modify and distribute)
The freedom to improve the program, and release your improvements (and modified versions in general) to the public, so that the whole community
benefits . (Access to the source code is a precondition for this.)
Introduction to Free Software 12
Presenter
Presentation Notes
In order for the freedoms to make changes, and to publish improved versions, to be meaningful, you must have access to the source code of the program. Therefore, accessibility of source code is a necessary condition for free software. In order for these freedoms to be real, they must be permanent and irrevocable as long as you do nothing wrong; if the developer of the software has the power to revoke the license, or retroactively change its terms, without your doing anything wrong to give cause, the software is not free. However, certain kinds of rules about the manner of distributing free software are acceptable, when they don't conflict with the central freedoms. For example, copyleft (very simply stated) is the rule that when redistributing the program, you cannot add restrictions to deny other people the central freedoms. This rule does not conflict with the central freedoms; rather it protects them.
A program is free softwareif users have all of these freedoms.
Introduction to Free Software 13
Presenter
Presentation Notes
Currently, many people use software that denies users these freedoms and benefits. If we make a copy and give it to a friend, if we try to figure out how the program works, if we put a copy on more than one of our own computers in our own home, we could be caught and fined or put in jail. That’s what’s in the fine print of the license agreement you accept when using proprietary software. The corporations behind these software will often spy on your activities and restrict you from sharing with others. And because our computers control much of our personal information and daily activities, software which are not free represents an unacceptable danger to a free society.
The free software movement was started by Richard Stallman (born 16 March 1953) in 1983.
Introduction to Free Software 14
Presenter
Presentation Notes
The free software movement (abbreviated FSM) is a social movement which aims to promote user's rights to access and modify software. The alternative terms "software libre", "open source", and "FOSS" are associated with the free software movement. Although drawing on traditions and philosophies among members of the 1970s hacker culture, Richard Stallman is widely credited with launching the movement in 1983 by founding the GNU Project.
Introduction to Free Software 15
Cover page of a book on Stallman
Presenter
Presentation Notes
The image is the cover page of a book on Stallman authored by Sam Williams. The book, published in 2002, is freely accessible at http://oreilly.com/openbook/freedom/. Free as in Freedom: Richard Stallman's Crusade for Free Software By Sam Williams Publisher: O'Reilly Media Released: March 2002 Pages: 240
The Free Software Foundation was founded in 1985.
Introduction to Free Software 16
http://www.fsf.org/
Presenter
Presentation Notes
The Free Software Foundation (FSF) is a non-profit corporation founded by Richard Stallmann on 4 October 1985 to support the free software movement, a copyleft-based movement which aims to promote the universal freedom to distribute and modify computer software. The FSF is incorporated in Massachusetts USA. From its founding until the mid-1980s, FSF's funds were mostly used to employ software developers to write free softwrae for the GNU Project. Since the mid-1990s, the FSF's employees and volunteers have mostly worked on legal and structural issues for the free software movement and the free software community.
Richard Stallman Inaugurated Free Software Foundation‐India, First Affiliate in Asia of the Free Software Foundation on 20 January 2001
Presenter
Presentation Notes
Richard M. Stallman officially launched on 29th January 2001 the Free Software Foundation of India (FSF-India), the first affiliate in Asia of the Free Software Foundation with a speech at the Freedom First! Conference on Free Software in Trivandrum, Kerala, India. The previous day, he was received as an honored state guest by government officials to discuss the philosophy behind the movement and the use of free software as a viable, cost-effective alternative for government, educational institutions, and businesses, as well as for all the people of India.
Introduction to Free Software 18
Chief Minister V.S. Achuthanandan with Richard M Stallman at the inauguration of a seminar `Free software for Kerala's development' in Thiruvananthapuram on Monday, 21 August 2006.
Freeware ≠ Free software
Introduction to Free Software 19
Presenter
Presentation Notes
The term “freeware” has no clear accepted definition, but it is commonly used for packages which permit redistribution but not modification (and their source code is not available). These packages are not free software, so please don't use “freeware” to refer to free software.
The antonym of free software is “proprietary software"
or "non‐free software"
Introduction to Free Software 20
Presenter
Presentation Notes
Proprietary software is software that is not free or semi-free. Its use, redistribution or modification is prohibited, or requires you to ask for permission, or is restricted so much that you effectively can't do it freely.
Introduction to Free Software 21
Categories of Free and Non‐Free Software
Presenter
Presentation Notes
Public domain software Public domain software is software that is not copyrighted. XFree86 is an implementation of the X-Windows System. It was originally written for Unix-like operating systems and is now available for many other operating systems and platforms. It is free and open source software under the XFree86 License version 1.1. Shareware Shareware is software which comes with permission for people to redistribute copies, but says that anyone who continues to use a copy is required to pay a license fee. Open Source software The term “open source” software is used by some people to mean more or less the same category as free software. Nearly all free software is open source, and nearly all open source software is free. The term “free software” is preferred because it refers to freedom—something that the term “open source“ does not do. GPL’ed software Software released under the GNU General Public License.
Introduction to Free Software 22
The concept of copyleft is used to protect the freedoms associated
with free software legally for everyone.
Presenter
Presentation Notes
Copyleft is a general method for making a program (or other work) free, and requiring all modified and extended versions of the program to be free as well. Copyleft says that anyone who redistributes the software, with or without changes, must pass along the freedom to further copy and change it. Copyleft guarantees that every user has freedom. To make a program free software it is not enough to put it in the public domain. This allows people to share the program and their improvements, if they are so minded. But it also allows uncooperative people to convert the program into proprietary software. The "reversed 'c' in a full circle" is the copyleft symbol. It is the copyright symbol mirrored. Unlike the copyright symbol, it has no legal meaning.
Introduction to Free Software 23
Free Software Licenses
Free Software LicensesA free software license is a softwrae license which grants recipients rights to modify and redistribute the software which would otherwise be prohibited by copyright law. A free software license grants, to the recipients, freedoms in the form of permissions to modify or distribute copyrighted work.
Introduction to Free Software 24
GNU General Public License v.3
Introduction to Free Software 25
Eben MoglenFounder and director of the Software Freedom Law Center defending Free Software legal Interests.
GNU GPLv3 writer.
“Anything that is worth copying is worth sharing.”
Introduction to Free Software 26
Introduction to Free Software 27
Some proprietary software packages
Proprietary software: Microsoft Windows
Introduction to Free Software 28
Presenter
Presentation Notes
The best known example of proprietary software. Free Software Foundation lists seven examples of abuse committed by Microsoft. 1. Poisoning education: Today, most children whose education involves computers are being taught to use one company's product: Microsoft's. Microsoft spends large sums on lobbyists and marketing to corrupt educational departments. An education using the power of computers should be a means to freedom and empowerment, not an avenue for one corporation to instill its monopoly. 2. Invading privacy: Microsoft uses software with backward names like Windows Genuine Advantage to inspect the contents of users' hard drives. The licensing agreement users are required to accept before using Windows warns that Microsoft claims the right to do this without warning. 3. Monopoly behavior: Nearly every computer purchased has Windows pre-installed -- but not by choice. Microsoft dictates requirements to hardware vendors, who will not offer PCs without Windows installed on them, despite many people asking for them. Even computers available with other operating systems like GNU/Linux pre-installed often had Windows on them first. 4. Lock-in: Microsoft regularly attempts to force updates on its users, by removing support for older versions of Windows and Office, and by inflating hardware requirements. For many people, this means having to throw away working computers just because they don't meet the unnecessary requirements for the new Windows versions. 5. Abusing standards: Microsoft has attempted to block free standardization of document formats, because standards like OpenDocument Format would threaten the control they have now over users via proprietary Word formats. They have engaged in underhanded behavior, including bribing officials, in an attempt to stop such efforts. 6. Enforcing Digital Restrictions Management (DRM): With Windows Media Player, Microsoft works in collusion with the big media companies to build restrictions on copying and playing media into their operating system. For example, at the request of NBC, Microsoft was able to prevent Windows users from recording television shows that they have the legal right to record. 7. Threatening user security: Windows has a long history of security vulnerabilities, enabling the spread of viruses and allowing remote users to take over people's computers for use in spam-sending botnets. Because the software is secret, all users are dependent on Microsoft to fix these problems -- but Microsoft has its own security interests at heart, not those of its users.
Proprietary software: Adobe Flashplayer
Introduction to Free Software 29
Presenter
Presentation Notes
Another popular proprietary software. The Adobe Flash Player is software for viewing animations and movies using computer programs such as a web browser. Flash player is a widely distributed proprietary multimedia and application player created by Macromedia and now developed and distributed by Adobe after its acquisition.
Proprietary software: Google Earth
Introduction to Free Software 30
Presenter
Presentation Notes
Yet another popular proprietary software. Google Earth is a virtual globe, map and geographic information program that was originally called EarthViewer 3D, and was created by Keyhole Inc, a company acquired by Google in 2004. It maps the Earth by the superposition of images obtained from satellite imagery, aerial photography and GIS 3D globe. It is available under three different licenses: Google Earth, a free version with limited functionality; Google Earth Plus (discontinued) which included additional features; and Google Earth Pro, which is intended for commercial use.
Introduction to Free Software 31
Some free software packages
GNU Operating System
Introduction to Free Software 32
http://www.gnu.org/
Presenter
Presentation Notes
Today, free software is available for just about any task you can imagine. From complete operating systems like GNU, to over 5,000 individual programs and tools listed in the FSF/UNESCO free software directory. Millions of people around the world — including entire governments — are now using free software on their computers. The image is the logo of GNU Operating System.
The name “GNU” is a recursive acronym for “GNU's Not Unix!”; it is pronounced g-noo, as one syllable with no vowel sound between the g and the n.
Introduction to Free Software 34
GNU was proposed as a complete operating system compatible with Unix.
The project to develop the GNU system is called the GNU Project.
The GNU Project was launched in 1983 by Richard Stallman.
Introduction to Free Software 35
By 1990, all major components like compilers, editors, text formatters, mail software, etc., except the kernel, were finished.
In 1992, Linus Torvalds made available a Unix‐like kernel called Linux as free software.
Combining Linux with the almost‐complete GNU system resulted in a complete operating system: the GNU/Linux system.
Introduction to Free Software 36
Gnu is also the name of an animal found in Africa with an ox‐like head, horse‐like mane and buffalo‐like horns.
Presenter
Presentation Notes
Gnu Animals Found in Southern and Eastern Africa, the gnu (pronounced g-nu or new) is a really unique animal that looks like a combination of many others. With its ox-like head, the mane of a horse and buffalo horns it may not be as attractive as our websites - but does have a lot of character. As a result of its appearance, the animal is also known as a wildebeest - an Afrikaans word meaning "wild beast".
Introduction to Free Software 37
Gnus
Linux kernel
Introduction to Free Software 38
http://www.linux.org/
Presenter
Presentation Notes
In computing, the 'kernel' is the central component of most computer operating systems; it can be thought of as the bridge between application and the actual data processing done at the hardware level. The kernel's responsibilities include managing the system's resources (the communication between hardware and software components). Usually as a basic component of an operating system, a kernel can provide the lowest-level for the resources (especially processes and I/O devices) that application software must control to perform its function.
The Linux kernel was initially conceived and created by Finnish computer science student Linus Torvalds in (born December 28, 1969) in 1991.
Introduction to Free Software 39
Presenter
Presentation Notes
For a biography of Linus Torvalds visit the pages: http://www.linux.org/info/linus.html and http://www.linfo.org/linus.html .
Introduction to Free Software 40
Introduction to Free Software 41
GNU/Linux distributions
Presenter
Presentation Notes
A Linux distribution (also called GNU/Linux distribution by some vendors and users) is a member of the family of Unix-like software distributions built on top of the Linux kernel. Such distributions (often called distros for short) consist of a large collection of software applications such as word processors, spreadsheets, media players and database applications. 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 Windows System.
GNU/Linux distributions
Introduction to Free Software 42
http://www.debian.org/
Presenter
Presentation Notes
Debian was first announced on 16 August 1993 by Ian murdock. Murdock initially called the system "the Debian Linux Release". He formed the name "Debian" as a combination of the first name of his then girlfriend Debra Lynn and his own first name. Debian is developed by over one thousand volunteers from around the world and supported by donations through non-profit organisations around the world. Thus, the Debian Project is an independent decentralized organization; it is not backed by a company like other Linux distributions such as Ubuntu, openSuSE, Fedora.
The term fedora denotes a certain type of hat shown in the slide! This is the type of hat worn by the Shadowman in the logo of Red Hat. The Fedora Project was created in late 2003, when Red Hat Linux was discontinued. Red Hat enterprise Linux was to be Red Hat's only officially supported Linux distribution, while Fedora was to be a community distribution. Red Hat Enterprise Linux branches its releases from versions of Fedora. The name of Fedora derives from Fedora Linux, a Fedora project that provided extra software for the Red Hat Linux distribution, and from the characteristic fedora used in Red Hat's “Shadowman" logo. Fedora Linux was eventually absorbed into the Fedora Project. Fedora is a trademark of Red Hat.
Ubuntu is a computer operating system based on the Debian Linux distribution. It is named after the South African ethical ideology Ubuntu ("humanity towards others"). Ubuntu is sponsored by the UK based company Canonical Ltd. owned by South African entrepreneur Mark Shuttleworth. Ubuntu's first release was on October 20, 2004.
openSUSE is a general purpose Operating system built on top of the linux kernel, developed by the community-supported OpenSUSE project and sponsored by Novell, a global software and services company based in Massachusetts. The name "S.u.S.E" was originally a German acronym for "Software und System-Entwicklung", meaning "Software and systems development“. The first version of this distribution appeared in early 1994, making SUSE the oldest existing commercial distribution.
Bharat Operating System Solutions (BOSS) is a linux distribution developed by NRCFOSS (National Resource Centre for Free/Open Source Software). The latest version of this operating system, BOSS GNU/Linux Version 3.0, was released in September 2008. This software package has been described as India's own PC Operating system. The software has also been endorsed by the Government of India for adoption and implementation in a national scale. BOSS GNU/Linux is derived from Debian.
The GNU Compiler Collection (usually shortened to GUCCI) is a compiler system produced by the GNU Project supporting various programming languages. Originally named the GNU C Compiler, because it only handled the C programming language, GUCCI 1.0 was released in 1987, and the compiler was extended to compile C++ in December of that year. Front ends were later developed for Fortran, Pascal, Objective-C, Java, and Ada, among others.
MySQL is a relational database management system(RDBMS) that has more than 6 million installations. MySQL stands for “”My Structured query Language”. The program runs as a server providing multi-user access to a number of databases. MySQL is owned and sponsored by a single for-profit firm, the Swedish company MySQL AB. now a subsidiary of Sun Microsystems. As of 2009, oracle corporation began the process of acquiring Sun Microsystems.
The Apache HTTP Server, commonly referred to as Apache is web server software notable for playing a key role in the initial growth of the World Wide Web. According to the Apache Foundation, the name was chosen out of respect for the Native American tribe of Apache (Indé), well-known for their endurance and their skills in warfare. Apache is primarily used to serve both static content and dynamic web pages on the World Wide Web.
It is primarily employed as an image retouching and editing tool, in addition to offering freeform drawing and retouching tools, GIMP can accomplish essential image workflow steps such as resizing, editing, and cropping photos, combining multiple images, and converting between different image formats. GIMP can also be used to create basic animated images in the GIF format.
TeX is a typesetting system designed and mostly written by Donald E Knuth. It was designed with two main goals in mind: to allow anybody to produce high-quality books using a reasonable amount of effort, and to provide a system that would give the exact same results on all computers, now and in the future. TeX is a way to typeset complex mathematical formulae. It has been noted as one of the most sophisticated digital typographical systems in the world. TeX is popular in academia, especially in the mathematics, computer science, and physics communities. It is now also being used for many other typesetting tasks, especially in the form of LaTeX and other packages.
Originally developed as the proprietary software application suite StarOffice by the German company StarDivision, the code was purchased in 1999 by Sun Microsystems. In August 1999 version 5.2 of StarOffice was made available free of charge. On July 19, 2000, Sun Microsystems announced that it was making the source code of StarOffice available for download under LGPL.
Better quality:because the code can be revised by many different programmers
Introduction to Free Software 62
Presenter
Presentation Notes
Free Software can have better quality because the code can be revised by many different programmers. It will also supply more points of view. The adopted solution will probably be the best in the technical sense, not being subject to obscure strategic or business-related issues. Releasing a Free software package by no means guarantees immediate collaboration from developers. But at least the opportunity clearly opens up.
Advantages of free softwareMore security:having many developers look into the code as potential users is more likely to uncover possible security holes right away. It is more resistant to hangs and crashesIt doesn’t get infected by virus easily.
Introduction to Free Software 63
Presenter
Presentation Notes
Free Software is also more secure. This may not seem obvious: how can a software whose code is completely accessible be secure? The technical reasons are complex to explain but can be well understood through the key&lock argument. Knowing all the technical details of a lock, and even being able to build one, does not mean that an existing lock can be opened. The same is true about cryptographic algorithms and security policies. On the other hand, having many developers look into the code as potential users is more likely to uncover possible security holes right away.
Advantages of free software
Collective ownership and effort
Introduction to Free Software 64
Advantages of free software
Price:In the Free Software world, users pay for services. 99% of free software has zero cost.
Introduction to Free Software 65
Presenter
Presentation Notes
Free software does not necessarily have to be non-commercial and there are many examples of companies that offer Free and commercial versions of their products. In the Free Software model, users pay for services and support. This is always easier to evaluate than a closed product that has a license price that responds to who knows what strategic reasons.
Once free software is written, it never disappears.
Lotus discontinued, now what?Netscape freed, continued as Mozilla.
Advantages of free software
Introduction to Free Software 66
Presenter
Presentation Notes
When Microsoft decided they were going to stop supporting Windows NT, users had the choice of either paying for an (unwanted) upgrade or continuing to use the unsupported software. When RedHat decided to stop supporting their RedHat Linux 7, 8, and 9 lines, a number of other companies appeared and offered to carry on supporting them.
The biggest advantage free software has is that it doesn’t tie you down to anyone.
Advantages of free software
Introduction to Free Software 67
Presenter
Presentation Notes
Should you lose trust in your software vendor, feel you are no longer getting good value, or think their charges are becoming unreasonable, it is far easier and cheaper to switch in a free software world than in a proprietary one.
Benefits for a company1. Future compatibility guaranteed with
other applications and systems.2. Not tied to any enterprise and/or
country.3. Hire your own developers4. Lot of support over the internet5. Save millions on licenses
Introduction to Free Software 68
Benefits for the humanity:
Introduction to Free Software 69
Benefits for the humanity:1. Avoid monopolies.2. Impossible to insert “backdoors” for
data gathering.3. Share knowledge.4. No “big brothers”.5. Users can get an active part in the
development: One doesn’t need programming knowledge, can send ideas to developers.
Introduction to Free Software 70
Some Myths about Free Software
Introduction to Free Software 71
Presenter
Presentation Notes
A myth is a story with a purpose. It tries to explain the way the world is. Myths also try to explain the relationship between gods and humans. Even though the events in a myth are usually impossible, they try to send a message that has an important social or religious meaning.
1. FS is inferior to proprietary software.2. FS is piracy (or at least encourages it). 3. FS has no support. 4. FS is only for developers. 5. If software costs nothing, it's no good.
6. FS is only good for small projects. 7. FS is unable to develop games. 8. FS is all about price.9. Using FS means working from the command line. 10. FS is unable to innovate.
11. Big companies don't use FS. 12. If I give away my software to the FS community, thousands of
developers will suddenly start working for me for nothing. 13. There is no money to be made on FS.
Introduction to Free Software 72
Presenter
Presentation Notes
Technological culture is so influenced by business logic that most of us believe that "you get what you pay for" is common sense. However, when you only look at proprietary software, that adage isn't true. If price really reflects quality, then Adobe Creative Suite would be six times better than Xara Xtreme. You can't judge any software in any meaningful way until you've tried it.
Introduction to Free Software 73
Defend freedom.Promote free software.
Dr. V N KrishnachandranDepartment of Computer ApplicationsVidya Academy of Science and TechnologyThalakkottukara, Thrissur ‐ 680501