Free Software

and Open Standards

         Nick Urbanik <nicku(at)nicku.org>
Copyright Conditions: GNU FDL (see http://www.gnu.org/licenses/fdl.html)

Free Software What is Free Software? . . . . . . . . . . . . . . . . . . . . . . . . . . . slide 3 gpl: the Four Freedoms. . . . . . . . . . . . . . . . . . . . . . . . . . . slide 4 gpl is Viral?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . slide 5 gpl and Proprietary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . slide 6 Other Free Software Licences . . . . . . . . . . . . . . . . . . . . . . . slide 7 Mailing Lists: help from experts . . . . . . . . . . . . . . . . . . . . . slide 8 How to ask Questions on a List. . . . . . . . . . . . . . . . . . . . . . slide 9

Open Standards What is Open? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . slide 11 What is Open 2? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . slide 12

Practice Availability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . slide 14 Choice, No Royalty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . slide 15 No Discrimination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . slide 16 Extension, Predatory Practice . . . . . . . . . . . . . . . . . . . . . slide 17 Open Standards: Summary . . . . . . . . . . . . . . . . . . . . . . . slide 18

Government and Open Standards Government: Choosing Standards . . . . . . . . . . . . . . . . . . . slide 20 Proprietary Consequences. . . . . . . . . . . . . . . . . . . . . . . . . slide 21

Internet Standards Standards for the Internet . . . . . . . . . . . . . . . . . . . . . . . . slide 23 ietf standards: the RFCs . . . . . . . . . . . . . . . . . . . . . . . . slide 24 WWW Consortium . . . . . . . . . . . . . . . . . . . . . . . . . . . . . slide 25 W3 Standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . slide 26 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . slide 27

Free Software

What is it?

gpl, license, “viral effects”

How to get help

What is Free Software?

• Defined by Richard Stallman – Author of gpl (General Public License)

– Author of Emacs editor, gnu compiler suite – Founder of the Free Software Foundation

• Sometimes viewed (incorrectly) as the same thing as Open Source.

• Sometimes viewed (Very incorrectly!) as the same thing as Freeware or shareware!!

• The gpl defines four freedoms.

OSSI — ver. 1.1 Free Software & Open Standards — slide 3

GPL: the Four Freedoms

• The freedom to run the program, for any purpose (freedom 0).

• The freedom to study how the program works, and adapt it to your needs (freedom 1). Access to the source code is a precondition for this.

• The freedom to redistribute copies so you can help your neighbor (freedom 2).

• The freedom to improve the program, and release your improvements to the public, so that the whole community benefits. (freedom 3). Access to the source code is a precondition for this.

OSSI — ver. 1.1 Free Software & Open Standards — slide 4

Why does Microsoft call the GPL ”Viral”?

• Microsoft hate the gpl with passion

• Have called the license “viral”, even in their legal documents!

• Why do they do this?

• They say that if anyone uses some gpl code in their product, then

they are required to distribute all the source code to their product

OSSI — ver. 1.1 Free Software & Open Standards — slide 5

GPL and Proprietary Licenses

• However, if you

– view source code Microsoft released under their “shared source” scheme

– write some software that is related in some way

• Will the Microsoft Legal Department treat you nicely?

• I would not dare view Microsoft source code.

OSSI — ver. 1.1 Free Software & Open Standards — slide 6

Other Free Software Licences

• These include the bsd license

• Allows any company to include the code, modify it, keep it all secret.

• People may be less motivated to contribute if their work goes to Microsoft.

• Microsoft like this license.

OSSI — ver. 1.1 Free Software & Open Standards — slide 7

Mailing Lists: help from experts

• There are many mailing lists and newsgroups for almost every topic of systems administration

• When subscribe to mailing list, receive all mail from list

• When send mail to list, all subscribers receive

• Example lists:

– Linux Kernel Mailing List (lkml)

– Red Hat mailing list

– ssh, dns, dhcp, Language specific mailing lists,…

OSSI — ver. 1.1 Free Software & Open Standards — slide 8

How to ask Questions on a List

• I receive many email questions from students about many topics • Most questions are not clear enough to be able to answer in any

way except, “please tell me more about your problem”

• Such questions sent to mailing lists are often unanswered

• Need to be concise, accurate, and clear – Good practice with your English!

• Search the faqs first – Your question may be answered in the documentation

• Read How To Ask Questions The Smart Way http://catb.org/

  ~esr/faqs/smart-questions.html

OSSI — ver. 1.1 Free Software & Open Standards — slide 9

Open Standards The key to Systems Integration

What is an Open Standard?

• Bruce Perens, who said he’s first to use the term ‘Open Source’, the former Debian project leader, and the co-founder of the Open Source initiative, defines Open Standards in

http://perens.com/OpenStandards/Definition.html:

Availability: Open Standards are available for all to read and implement.

Maximize End-User Choice Open Standards create a fair, competitive market for implementations of the standard. They do not lock the customer in to a particular vendor or group.

No Royalty Open Standards are free for all to implement, with no royalty or fee. Certification of compliance by the standards organization may involve a fee.

OSSI — ver. 1.1 Free Software & Open Standards — slide 11

What is an Open Standard? — 2

No Discrimination Open Standards and the organizations that administer them do not favor one implementor over another for any reason other than the technical standards compliance of a vendor’s implementation. Certification organizations must provide a path for low and zero-cost implementations to be validated, but may also provide enhanced certification services.

Extension or Subset Implementations of Open Standards may be extended, or offered in subset form. However, certification organizations may decline to certify subset implementations, and may place requirements upon extensions (see Predatory Practices).

Predatory Practices Open Standards may employ license terms that protect against subversion of the standard by embrace-and-extend tactics. The licenses attached to the standard may require the publication of reference information for extensions, and a license for all others to create, distribute, and sell software that is compatible with the extensions. An Open Standard may not otherwise prohibit extensions.

OSSI — ver. 1.1 Free Software & Open Standards — slide 12

Practice

from

http://perens.com/OpenStandards/Definition.html

Availability

Availability Open Standards are available for all to read and implement. Thus:

1. The best practice is for the standards text and reference implementation to be available for free download via the Internet.

2. Any software project should be able to afford a copy without undue hardship. The cost should not far exceed the cost of a college textbook.

3. Licenses attached to the standards documentation must not restrict any party from implementing the standard using any form of software license.

4. The best practice is for software reference platforms to be licensed in a way that is compatible with all forms of software licensing, both Free Software (Open Source) and proprietary. However, see Predatory Practices regarding license restrictions that may be appropriate for a software reference platform.

OSSI — ver. 1.1 Free Software & Open Standards — slide 14

Maximize Choice, No Royalty

Maximize End-User Choice Open Standards create a fair, competitive market for implementations of the standard. Thus:

1. They must allow a wide range of implementations, by businesses, academia, and public projects.

2. They must support a range of pricing from very expensive to zero-price.

No Royalty Open Standards are free for all to implement, with no royalty or fee. Certification of compliance by the standards organization may have a fee. Thus:

1. Patents embedded in standards must be licensed royalty-free, with non-discriminatory terms.

2. Certification programs should include a low or zero cost selfcertification, but may include higher-cost programs with enhanced branding.

OSSI — ver. 1.1 Free Software & Open Standards — slide 15

No Discrimination

No Discrimination Open Standards and the organizations that administer them do not favor one implementor over another for any reason other than the technical standards compliance of a vendor’s implementation. Certification organizations must provide a path for low and zero-cost implementations to be validated, but may also provide enhanced certification services. Thus:

1. A standards organization that wishes to support itself through certification branding should establish a premium track and a low-cost or zero-cost track. Generally, the premium track will provide a certification lab outside of the vendor’s facility to verify a vendor’s implementation and enhanced branding: a certification mark that indicates a greater certainty of verification and financial support of the standard. The low or zero-cost track would provide selfcertification by the vendor and baseline branding.

OSSI — ver. 1.1 Free Software & Open Standards — slide 16

Extension, Predatory Practice

Extension or Subset Implementations of Open Standards may be extended, or offered in subset form. However, certification organizations may decline to certify subset implementations, and may place requirements upon extensions (see Predatory Practices).

Predatory Practices Open Standards may employ license terms that protect against subversion of the standard by embrace-and-extend tactics. The license may require the publication of reference information and an license to create and redistribute software compatible with the extensions. It may not prohibit the implementation of extensions.

1. The standards organization may wish to apply an agreement similar to the Sun Industry Standards Source License to the standard documentation and its accompanying reference implementation. The Sun agreement requires publication of a reference implementation (not the actual commercial implementation) for any extensions to the standard. This makes it possible for a standards organization to actively preserve interoperability without stifling innovation.

OSSI — ver. 1.1 Free Software & Open Standards — slide 17

Open Standards: Summary

An open standard should:

• Offer certification by a standards organisation

• Be available to all to read and implement

• Create a fair, competitive marketplace to maximize end-user choice

• Require no royalty or fee to implement

• Not discriminate for one implementation over another

• Only be extended or subsetted with the approval of a certification authority

• Employ licensing terms to protect against subversion, such as ‘em-

brace and extend’.

OSSI — ver. 1.1 Free Software & Open Standards — slide 18

Government and Open Standards

Government: Choosing Standards

• We pay the government tax money

• Some of it pays for archiving documents for future generations

• What formats and standards should the government use?

• Proprietary formats may be very costly to reverse engineer decades

after the company producing the technology has disappeared

– Even Microsoft may not last forever

• Proprietary formats may have legal restrictions that prohibit reverse engineering because of patents

• Proprietary formats may also be protected by some encryption scheme that may be costly to decrypt futher into the future when the format of the data is not documented.

• See the discussion in The Rise of Proprietary Formats: The New Battleground:

  http://community.asiaosc.org/~iwsmith/presentations/
  2003%2008%2026%20FOSSCON%20Imran%20full%20paper.pdf

OSSI — ver. 1.1 Free Software & Open Standards — slide 20

Choosing Proprietary “Standards”

• A proprietary software vendor may choose to use software patents to restrict interoperation

• May use these to make reverse engineering illegal, even if that is quite trivial

• See this interesting article about Microsoft lodging large numbers of patents for technology for Longhorn: http://www.eweek.com/

  article2/0,1759,1579765,00.asp

– The author believes that Microsoft’s aim to to make interoperation illegal, and lock out Linux and the free competition

– An attempt to monopolise “standards”

– He could have a point.

OSSI — ver. 1.1 Free Software & Open Standards — slide 21

Standards for the Internet

Those to which any can contribute

Standards for the Internet

• There are two main bodies concerned with Internet standards:

• The Internet Engineering Task Force (ietf)

• The World Wide Web Consortium (http://www.w3.org)

OSSI — ver. 1.1 Free Software & Open Standards — slide 23

IETF standards: the RFCs

• There are about 4000 documents called Requests for Comments (rfcs)

• A few of these are official standards

• Can download from many web and ftp sites; see

  http://www.rfc-editor.org/

• Available on ictlab—always up to date: see /home/nfs/rfc on

your computer in our campus

OSSI — ver. 1.1 Free Software & Open Standards — slide 24

WWW Consortium

• Publishes standards documents on their web site

  http://www.w3.org

• Covers standards such as http, soap, xml

OSSI — ver. 1.1 Free Software & Open Standards — slide 25

W3 Standards

• Any person can download the standard freely

• Any person may contribute to the standards

• ietf standards based on ”rough consensus and running code”

• w3 also allows open participation in developing standards

OSSI — ver. 1.1 Free Software & Open Standards — slide 26

Conclusion

• Open standards allow others with the talent to write software to meet the standard

• Some proprietary protocols and proprietary protocols can be expensive to reverse engineer in the future after the company that introduced them is out of business.

• Open standards allow systems to work together

• Allows system integration.

OSSI — ver. 1.1 Free Software & Open Standards — slide 27