%\documentclass[colorBG,slideColor,troispoints,pdf]{prosper}
\documentclass[nopagebreak,ps,10pt,a5paper]{ppr-prv}% DO NOT EDIT---WILL BE OVERWRITTEN
\geometry{margin=10mm}% DO NOT EDIT---WILL BE OVERWRITTEN
%\documentclass[colorBG,slideColor,ps]{prosper}
\usepackage{alltt,key,xr,cols,rcs,acro,%nick,%
  graphicx,varioref,explanation,booktabs,multicol}
\usepackage[toc,highlight,Tycja]{HA-prosper}

%\usepackage[nolineno,noindent]{lgrind}

%\definecolor{green}{rgb}{0,1,0}

\RCS $Revision: 1.1 $

% Copyright (c) 2004 by Nick Urbanik <nicku(at)nicku.org>.
% This material may be distributed only subject to the terms and
% conditions set forth in the Open Publication License, v1.0 or later
% (the latest version is presently available at
% http://www.opencontent.org/openpub/).
                                                                                % For Prospe\renewcommand*{\bs}{\texttt{\char '134}} % Backslash `\'
%\newcommand*{\labTitle}{LDAP Directories}1
\newcommand*{\subject}{Operating Systems and Systems Integration}
\newcommand*{\emphcolour}[1]{\emph{\red#1}}
\newcommand*{\link}[2]{\href{#2}{#1} \path{#2}}

\providecommand*{\RPM}{\acro{RPM}\xspace}
\providecommand*{\CD}{\acro{CD}\xspace}
\providecommand*{\IPC}{\acro{IPC}\xspace}
\providecommand*{\UID}{\acro{UID}\xspace}
\providecommand*{\GID}{\acro{GID}\xspace}
\providecommand*{\SMP}{\acro{SMP}\xspace}
\providecommand*{\API}{\acro{API}\xspace}
\providecommand*{\OK}{\acro{OK}\xspace}
\providecommand*{\IETF}{\acro{IETF}\xspace}
\providecommand*{\MS}{\acro{MS}\xspace}
\providecommand*{\LILO}{\acro{LILO}\xspace}
\providecommand*{\HCI}{\acro{HCI}\xspace}
\providecommand*{\KDE}{\acro{KDE}\xspace}
\providecommand*{\MBR}{\acro{MBR}\xspace}
\providecommand*{\BSD}{\acro{BSD}\xspace}
\providecommand*{\GPL}{\acro{GPL}\xspace}
\providecommand*{\MB}{\acro{MB}\xspace}
% Get rid of that horrible hash mark in slide numbers in ppr-prv.cls:
\def\no{}

\newif\ifpprprvloaded
\makeatletter%
\@ifclassloaded{ppr-prv}{\pprprvloadedtrue}{\pprprvloadedfalse}%
\makeatother%
 
\newcommand{\positionPicture}{%
  \ifpprprvloaded
  \else
  \vspace*{-15mm}\par
  \hspace*{-13mm}%
  \fi
}
\newcommand{\positionPictureOpt}[2]{%
  \ifpprprvloaded
  \else
  \vspace*{#1}\par
  \hspace*{#2}%
  \fi
}


\title{\mbox{}\blue{}Free Software}%
\subtitle{and Open Standards}
\author{Nick Urbanik\\
  \footnotesize{}Copyright Conditions: GNU FDL (see
  \url{http://www.gnu.org/licenses/fdl.html})
  \email{nicku@nicku.org}\\
  \institution{A computing department}}
\author{Nick Urbanik \texttt{<nicku(at)nicku.org>}\\
  \footnotesize{}Copyright Conditions: GNU FDL (see
  \url{http://www.gnu.org/licenses/fdl.html})}%
%\institution{A computing department}%
\slideCaption{OSSI --- Free Software \& Open Standards --- ver. \RCSRevision}
%%%\Logo{\includegraphics[width=15mm]{ict-logo-smaller}}

\DefaultTransition{Wipe}
\TitleSlideNav{FullScreen}
\NormalSlideNav{ShowBookmarks}
\LeftFoot{OSSI --- ver. \RCSRevision}
\RightFoot{Free Software \& Open Standards}

\begin{document}
\maketitle

\tsectionandpart[toc=Free Software,bm=Free Software]%
{Free Software\\[3ex]
  What is it?\\[3ex]
  \GPL, license, ``viral effects''\\[3ex]
  How to get help}

%% \begin{slide}{Free Software and Open Standards}

%%   \vspace*{0.1\slideWidth}

%% \begin{center}\Large
%%     \mbox{}\blue{}What is it?

%%     \vspace*{0.05\slideWidth}

%%     \GPL, license, ``viral effects''
    
%%     \vspace*{0.05\slideWidth}

%%     How to get help
%% \end{center}

%% \end{slide}

\begin{slide}{What is Free Software?}
  \begin{itemize}
  \item Defined by Richard Stallman
    \begin{itemize}
    \item Author of \GPL (General Public License)
    \item Author of Emacs editor, \GNU compiler suite
    \item Founder of the Free Software Foundation
    \end{itemize}
  \item Sometimes viewed (\emphcolour{incorrectly}) as the same thing
  as Open Source.
\item Sometimes viewed (\emphcolour{Very incorrectly!}) as the same
  thing as Freeware or shareware!!
  \item The \GPL defines four freedoms.
  \end{itemize}
\end{slide}

\begin{slide}[bm=GPL: the Four Freedoms,toc=\GPL: the Four Freedoms]%
  {GPL: the Four Freedoms}
  \begin{itemize}
  \item The freedom to run the program, for any purpose
    ({\green{}freedom 0}).
  \item The freedom to study how the program works, and adapt it to
    your needs ({\green{}freedom 1}). Access to the source code is a
    precondition for this.
  \item The freedom to redistribute copies so you can help your
    neighbor ({\green{}freedom 2}).
  \item The freedom to improve the program, and release your
    improvements to the public, so that the whole community benefits.
    ({\green{}freedom 3}). Access to the source code is a precondition
    for this.
  \end{itemize}
\end{slide}

\begin{slide}[bm=GPL is Viral?,toc=\GPL is Viral?]%
  {Why does Microsoft call the GPL "Viral"?}
  \begin{itemize}
  \item Microsoft hate the \GPL with passion
  \item Have called the license ``viral'', even in their legal
    documents!
  \item Why do they do this?
  \item 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
  \end{itemize}
\end{slide}

\begin{slide}[bm=GPL and Proprietary,toc=\GPL and Proprietary]%
  {GPL and Proprietary Licenses}
  \begin{itemize}
  \item However, if you
    \begin{itemize}
    \item view source code Microsoft released under their ``shared
      source'' scheme
    \item write some software that is related in some way
    \end{itemize}
  \item Will the Microsoft Legal Department treat you nicely?
  \item I would not dare view Microsoft source code.
  \end{itemize}
\end{slide}

\begin{slide}{Other Free Software Licences}
  \begin{itemize}
  \item These include the \BSD license
  \item Allows any company to include the code, modify it, keep it all
    secret.
  \item People may be less motivated to contribute if their work goes to
    Microsoft.
  \item Microsoft like this license.
  \end{itemize}
\end{slide}

\begin{slide}{Mailing Lists: help from experts}
  \begin{itemize}
  \item There are many mailing lists and newsgroups for almost every
    topic of systems administration
  \item When subscribe to mailing list, receive all mail from list
  \item When send mail to list, all subscribers receive
  \item Example lists:
    \begin{itemize}
    \item Linux Kernel Mailing List (\acro{LKML})
    \item Red Hat mailing list
    \item \SSH, \DNS, \DHCP, Language specific mailing lists,\ldots
    \end{itemize}
  \end{itemize}
\end{slide}

\begin{slide}{How to ask Questions on a List}
  \begin{itemize}
  \item I receive many email questions from students about many topics
  \item {\mbox{}\magenta{}Most questions are not clear enough} to be
    able to answer in any way except, ``please tell me more about your
    problem''
  \item Such questions sent to mailing lists are often unanswered
  \item Need to be \emphcolour{concise}, \emphcolour{accurate}, and
    \emphcolour{clear}
    \begin{itemize}
    \item Good practice with your English!
    \end{itemize}
  \item Search the \FAQ{}s first
    \begin{itemize}
    \item Your question may be answered in the documentation
    \end{itemize}
  \item Read \link{How To Ask Questions The Smart Way}%
    {http://catb.org/~esr/faqs/smart-questions.html}
  \end{itemize}
\end{slide}

\tsectionandpart[toc=Open Standards,bm=Open Standards]%
{Open Standards\\[3ex]The key
  to Systems Integration}

\begin{slide}[toc=What is Open?,bm=What is Open]%
  {What is an Open Standard?}
  \begin{itemize}
  \item 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 \emph{Open Standards} in
    \url{http://perens.com/OpenStandards/Definition.html}:
  \end{itemize}    
  \begin{description}
  \item[Availability:] Open Standards are \emphcolour{available for
      all} to \emphcolour{read} and \emphcolour{implement}.
  \item[Maximize End-User Choice] Open Standards create a
    {\magenta{}fair, competitive market} for implementations of the
    standard. They \emphcolour{do not lock the customer in} to a
    particular vendor or group.
  \item[No Royalty] Open Standards are free for all to
    \emph{implement}, with \emphcolour{no royalty or fee}.
    \emph{Certification} of compliance by the standards organization
    may involve a fee.
  \end{description}
\end{slide}  

\begin{slide}[toc=What is Open 2?,bm=What is Open 2]%
  {What is an Open Standard? --- 2}
  %\ptsize{10}
  \positionPictureOpt{0mm}{-0.05\slideWidth}%
  \begin{minipage}[t]{1.07\slideWidth}%\raggedright
    \begin{description}
    \item[No Discrimination] Open Standards and the organizations that
      administer them \emphcolour{do not favor one implementor over
        another} for any reason other than the \emphcolour{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.
    \item[Extension or Subset] Implementations of Open Standards may
      be extended, or offered in subset form. However,
      {\magenta{}certification organizations} may decline to
      \emphcolour{certify subset implementations}, and may
      \emphcolour{place requirements} upon \emphcolour{extensions}
      (see \emph{Predatory Practices}).
    \item[Predatory Practices] Open Standards may \emphcolour{employ
        license terms} that \emphcolour{protect against subversion} of
      the standard by \emphcolour{embrace-and-extend} tactics. The
      licenses attached to the standard may {\magenta{}require the
        publication of reference information for extensions}, and a
      {\magenta{}license for all others to create, distribute, and
        sell software that is compatible with the extensions}. An Open
      Standard may not otherwise prohibit extensions.
  \end{description}
\end{minipage}
\end{slide}

\tsectionandpart[toc=Practice,bm=Practice]%
{Practice\\[3ex]
  from\\[1ex]
\makebox[0pt]{\normalsize\url{http://perens.com/OpenStandards/Definition.html}}}

\begin{slide}{Availability}
  \begin{description}
  \item[Availability] 
  Open Standards are available for all to read and implement. Thus:
  \begin{enumerate}
  \item The \emphcolour{best practice} is for the standards text and
    reference implementation to be available for \emphcolour{free
      download} via the Internet.
  \item Any software project should be able to afford a copy without
    undue hardship. The cost should \emphcolour{not} far
    \emphcolour{exceed} the \emphcolour{cost of a college textbook}.
  \item \emphcolour{Licenses} attached to the standards documentation
    must \emphcolour{not restrict} any party from
    \emphcolour{implementing} the standard {\green{}using any form of
      software license}.
  \item The best practice is for software reference platforms to be
    licensed in a way that is \emphcolour{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.
  \end{enumerate}
\end{description}
\end{slide}

\begin{slide}[toc={Choice, No Royalty},bm={Choice, No Royalty}]%
  {Maximize Choice, No Royalty}
  \begin{description}
  \item[Maximize End-User Choice] Open Standards create a fair,
    competitive market for implementations of the standard. Thus:
    \begin{enumerate}
    \item They must \emphcolour{allow a wide range of
        implementations}, by businesses, academia, and public
      projects.
    \item They must support a range of pricing from very expensive to
      zero-price.
    \end{enumerate}
  \item[No Royalty] Open Standards are \emphcolour{free for all to
      implement}, with \emphcolour{no royalty or fee}. Certification
    of compliance by the standards organization may have a fee. Thus:
    \begin{enumerate}
    \item \emphcolour{Patents} embedded in standards \emphcolour{must
        be licensed royalty-free}, with non-discriminatory terms.
    \item Certification programs should include a \emphcolour{low or
        zero cost self-certification}, but may include higher-cost
      programs with enhanced branding.
    \end{enumerate}
  \end{description}
\end{slide}

\begin{slide}{No Discrimination}
  \begin{description}
  \item[No Discrimination] Open Standards and the organizations that
    administer them {\magenta{}do not favor one implementor over
      another} for any reason other than the {\magenta{}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:
  \begin{enumerate}
  \item 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 self-certification by the vendor and
    baseline branding.
  \end{enumerate}
\end{description}
\end{slide}  

\begin{slide}{Extension, Predatory Practice}
  \positionPictureOpt{0mm}{-0.08\slideWidth}%
  \begin{minipage}[t]{1.1\slideWidth}%\raggedright
  \begin{description}
  \item[Extension or Subset] Implementations of Open Standards may be
    extended, or offered in subset form. However,
    {\magenta{}certification organizations may decline to certify
      subset implementations}, and may place requirements upon
    extensions (see Predatory Practices).
  \item[Predatory Practices] Open Standards may employ
    \emphcolour{license} terms that \emphcolour{protect against
      subversion} of the standard by \emphcolour{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.
    \begin{enumerate}
    \item 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.
    \end{enumerate}
  \end{description}
\end{minipage}
\end{slide}

\begin{slide}{Open Standards: Summary}
  \label{std:open-standards-summary}
  An \emph{open standard} should:
  \begin{itemize}
  \item Offer certification by a standards organisation
  \item Be available to all to read and implement
  \item Create a fair, competitive marketplace to maximize end-user choice
  \item Require no royalty or fee to implement
  \item Not discriminate for one implementation over another
  \item Only be extended or subsetted with the approval of a
    certification authority
  \item Employ licensing terms to protect against subversion,
    such as `embrace and extend'.
  \end{itemize}
\end{slide}

\tsectionandpart{Government and Open Standards}

\begin{slide}{Government: Choosing Standards}
  \begin{itemize}
  \item We pay the government tax money
  \item Some of it pays for archiving documents for \emphcolour{future
      generations}
  \item What \emphcolour{formats} and \emphcolour{standards} should
    the government use?
  \item Proprietary formats may be {\magenta{}very costly to reverse
      engineer} decades after the company producing the technology has
    {\magenta{}disappeared}
    \begin{itemize}
    \item Even Microsoft may not last forever
    \end{itemize}
  \item Proprietary formats may have \emphcolour{legal restrictions}
    that prohibit reverse engineering because of \emphcolour{patents}
  \item Proprietary formats may also be protected by some
    \emphcolour{encryption scheme} that may be {\magenta{}costly to
      decrypt} futher into the future when the format of the data is
    not documented.
  \item See the discussion in
  \href{http://community.asiaosc.org/~iwsmith/presentations/2003%2008%2026%20FOSSCON%20Imran%20full%20paper.pdf}{The Rise of Proprietary Formats:
    The New Battleground}:
  \path{http://community.asiaosc.org/~iwsmith/presentations/2003%2008%2026%20FOSSCON%20Imran%20full%20paper.pdf}
  \end{itemize}
\end{slide}

\begin{slide}[toc=Proprietary Consequences,bm=Proprietary
  Consequences]%
  {Choosing Proprietary ``Standards''}
  \begin{itemize}
  \item A proprietary software vendor may choose to {\magenta{}use
      software patents} to \emphcolour{restrict interoperation}
  \item May use these to {\magenta{}make reverse engineering illegal},
    even if that is quite trivial
  \item See this
    \href{http://www.eweek.com/article2/0,1759,1579765,00.asp}{interesting
      article} about Microsoft lodging large numbers of patents for
    technology for Longhorn:
    \path{http://www.eweek.com/article2/0,1759,1579765,00.asp} 
    \begin{itemize}
    \item The author believes that Microsoft's aim to to make
      interoperation illegal, and lock out Linux and the free
      competition
    \item An attempt to monopolise ``standards''
    \item He could have a point.
    \end{itemize}
  \end{itemize}
\end{slide}

\tsectionandpart[toc=Internet Standards,bm=Internet Standards]%
{Standards for the Internet\\[3ex]
Those to which any can contribute}

\begin{slide}{Standards for the Internet}
  \begin{itemize}
  \item There are two main bodies concerned with Internet standards:
  \item The Internet Engineering Task Force (\IETF)
  \item The World Wide Web Consortium (\url{http://www.w3.org})
  \end{itemize}
\end{slide}

\begin{slide}[bm=IETF standards: the RFCs,toc=\IETF standards: the
  RFCs]%
  {IETF standards: the RFCs}
  \begin{itemize}
  \item There are about 4000 documents called Requests for Comments
    (\RFC{}s)
  \item A few of these are official standards
  \item Can download from many web and ftp sites; see
    \url{http://www.rfc-editor.org/}
  \item Available on ictlab---always up to date: see
    \path{/home/nfs/rfc} on your computer in our campus
\end{itemize}
\end{slide}

\begin{slide}{WWW Consortium}
  \begin{itemize}
  \item Publishes standards documents on their web site
    \url{http://www.w3.org}
  \item Covers standards such as http, \SOAP, \XML
  \end{itemize}
\end{slide}

\begin{slide}{W3 Standards}
  \begin{itemize}
  \item Any person can download the standard freely
  \item Any person may contribute to the standards
  \item \IETF standards based on "rough consensus and running code"
  \item w3 also allows open participation in developing standards
  \end{itemize}
\end{slide}

\begin{slide}{Conclusion}
  \begin{itemize}
  \item Open standards allow others with the talent to write software
    to meet the standard
  \item 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.
  \item Open standards allow systems to work together
  \item Allows system integration.
  \end{itemize}
\end{slide}
\end{document}
