Published on

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Analyst and Metaphysician, Founder of Scientific Computing 'ADA' programming language named in her honour by US Dept. of Defense in 1979
  • Intended successor to Difference Engine
  • Ada's notes were 3 times length of original article Bernoulli numbers are used (e.g.) in Fermat's last theorem
  • Women working on punch cards were called 'computers' Punch cards used for the US census
  • profit was originally from hardware no hardware standardization, so early programmers encouraged to improve and share no compilers or interpreters, so programmes not portable - no use on competitor machines
  • can't protect software by code from hackers - they love to crack it copyright of ideas is what geeks are fighting software is nebulous - can be rebuilt and look the same to the user, can't be finally fixed
  • AI Lab, MIT late 70s-80s resigns because of non-sharing software installs forms FSF
  • compliers and interpreters allow portable source code Universities retain software sharing as the best option
  • What do you mean, you don't count from zero? Programmers do!
  • sharing spirit of the web - 'view source' You can still use your browser to view the source code of any web page, plus any included code like Javascript or CSS
  • most volunteer programmers don't care about the licence they just want to solve a problem and work together
  • Stallman would like it to be called GNU/Linux GNU = GNU's Not Unix (actually Unix-like, but not ht original Unix from AT&T )
  • Linux a reimplementation of Unix Torvalds got there before Stallman BSD has similar licence, but not passed on in derivatives so can be used in proprietary systems e.g. used as core of Mac OS X
  • Oracle and MSoft beginning to work with Open Source software Msoft wants to increase cooperation between SuSE Linux and Windows
  • see CPAN (hundreds of Perl modules), (loads of Open Source)
  • Much Open Source is programming-based, but there are several successful desktop software applications
  • Opensource

    1. 1. Open Source / Free Software GNU's Not Unix!
    2. 2. first open source software
    3. 3. Ada Lovelace <ul><li>First computer programmer </li></ul><ul><li>First open source software </li></ul>
    4. 4. Difference engine <ul><li>Charles Babbage </li></ul><ul><li>Like similar designs </li></ul><ul><li>by </li></ul><ul><li>Pascal (1650-ish) </li></ul><ul><li>And </li></ul><ul><li>Liebniz (1700-ish) </li></ul>
    5. 5. the ‘Pascaline’ - around 1650
    6. 6. Leibniz's ‘Reckoner’, around 1700
    7. 7. Charles Babbage <ul><li>Analytical Engine </li></ul><ul><li>memory: store </li></ul><ul><li>maths unit: mill </li></ul><ul><li>programme: punched cards </li></ul><ul><li>input/output system </li></ul><ul><li>printer to display results </li></ul><ul><li>steam-driven </li></ul>
    8. 8. ‘ Analytical Engine’ - around 1833 ( never made - this is a model)
    9. 9. First computer program <ul><li>1843: translated Italian article on Analytical Engine into English with extensive notes, including some complicated programs of her own , the most complex being one to calculate the sequence of Bernoulli numbers . </li></ul>
    10. 10. punch cards
    11. 11. how Open Source works
    12. 12. pirates? <ul><li>‘ The modern computers of the era … had their own operating systems, but none of them were free software: you had to sign a nondisclosure agreement even to get an executable copy. This meant that the first step in using a computer was to promise not to help your neighbor. A cooperating community was forbidden. The rule made by the owners of proprietary software was, “If you share with your neighbor, you are a pirate. If you want any changes, beg us to make them.” ’ </li></ul><ul><li>— Richard Stallman </li></ul>
    13. 13. Richard Stallman <ul><li>FREE SOFTWARE </li></ul><ul><li>as in </li></ul><ul><li>free speech </li></ul><ul><li>not </li></ul><ul><li>free beer </li></ul><ul><li>(although that too) </li></ul>
    14. 14. GPL (Gnu Public License) <ul><li>protectionism for free software </li></ul><ul><li>code may be copied and modified without restriction, but that both copies and derivative works (that is, modified versions) must be distributed under the same license as the original, with no additional restrictions. </li></ul><ul><li>Uses copyright law to achieve an effect opposite that of traditional copyright: instead of limiting the software's distribution, it prevents anyone , even the author or copyright holder, from limiting it . </li></ul><ul><li>Better than putting code into the public domain, where any particular copy could be incorporated into a proprietary program - benefiting the 'enemy' of free software. </li></ul><ul><li>prevents nonfree programs from taking advantage of any GPL'd code, while allowing all GPL'd programs to cooperate among themselves by sharing unrestrictedly. </li></ul>
    15. 15. four kinds of freedom <ul><li>0. The freedom to run the program, for any purpose. </li></ul><ul><li>1. The freedom to study how the program works, and adapt it to your needs. Access to the source code is a precondition for this. </li></ul><ul><li>2. The freedom to redistribute copies so you can help your neighbor. </li></ul><ul><li>3. 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. </li></ul>
    16. 16. source code <ul><li>the set of </li></ul><ul><li>human-readable </li></ul><ul><li>instructions that define </li></ul><ul><li>how a program behaves; </li></ul><ul><li>to study or modify a </li></ul><ul><li>program, you need its </li></ul><ul><li>source code. </li></ul>
    17. 17. free software is: <ul><li>software that may be modified and redistributed freely by anyone, with no significant restrictions on how the code may be changed, the uses to which it may be put, or the parties with whom it may be shared. </li></ul>
    18. 18. Scratching your own itch <ul><li>Because they are their own users , (Open Source developers) know the correct answers to 90% of the decisions they have to make. I think this is one of the reasons folks come home after a hard day of coding and then work on open source: It's relaxing. </li></ul><ul><li>— Dave Thomas, The Pragmatic Programmers </li></ul>
    19. 19. you mean they code for fun? <ul><li>scratching an itch One or more developers (programers/hackers) get an idea about creating software to solve a problem and start writing code to create a solution. This is frequently called &quot;scratching an itch.&quot; </li></ul><ul><li>freeing the code The developers put their projects where other developers can download it and play with it, like The source code is usually published under one of several popular open source licenses that ensure that the code and any derivative works remain open source. </li></ul><ul><li>enough eyeballs &quot;with enough eyeballs, every bug is shallow &quot; - Eric Raymond. Through an informal process of sharing ideas, fiddling with each others' code, and trial and error, the software gets better and better , sometimes changing direction to solve new problems as new people discover the software. </li></ul><ul><li>active or dormant At some point, the software gets finished or doesn't. As time goes on, developers come and go, and projects become popular, stay obscure, or fade away . Programs like Linux and Apache have had thousands of contributors. Other projects have been created by one or two people. </li></ul>
    20. 20. the reaction (1) <ul><li>‘ Linux is a cancer that attaches itself in an intellectual property sense to everything it touches’ </li></ul><ul><li>- Steve Ballmer, Microsoft </li></ul>
    21. 21. The reaction (2) <ul><li>The Linux kernel </li></ul><ul><li>Created by Linus Torvalds in 1991. </li></ul>
    22. 22. GNU/Linux <ul><li>The Linux kernel - a Unix-like operating system kernel best known for its use in the Linux operating system. </li></ul><ul><li>Released under the GNU General Public License (GPL) and developed by contributors worldwide, one of the most prominent examples of free and open source software. </li></ul>
    23. 23. how / why Linux grew, and grows <ul><li>At the time, the GNU Project kernel, GNU Hurd, was incomplete and unavailable. </li></ul><ul><li>The BSD operating system had not yet freed itself from legal encumbrances. </li></ul><ul><li>This left a space for the Linux kernel to fill. </li></ul><ul><li>Despite limited functionality in early versions, rapidly accumulated developers and users. </li></ul><ul><li>Early on, the Minix community contributed code and ideas. </li></ul><ul><li>Today it has received contributions from thousands of programmers. </li></ul>
    24. 24. ‘ business-friendly’ Open Source
    25. 25. Open Source Initiative <ul><li>1998 </li></ul><ul><li>allow free software movement to enter </li></ul><ul><li>the mainstream </li></ul><ul><li>keep: </li></ul><ul><li>the licenses </li></ul><ul><li>collaborative practices </li></ul><ul><li>lose: </li></ul><ul><li>talk of freedom and ideology </li></ul>
    26. 26. Tim O'Reilly & Eric Raymond A group of people including Eric Raymond and Tim O'Reilly came together and started using the term open source instead of free software. Many people now use the terms separately, or the combined term free and open source software , abbreviated as FOSS .
    27. 28. HT Vulnerability? Hyperthreading?? Read this (it won’t help, though… :)
    28. 29. The legacy and the future <ul><li>Custom tells us copyright was designed to subsidize creation. </li></ul><ul><li>The vitality of the free software scene hints that copyright may really have served to subsidize distribution. </li></ul><ul><li>As distribution costs go to zero via the internet, will people start cooperating on works other than software? </li></ul>
    29. 30. barriers to Open Source <ul><li>people follow other people don't like to be told to change, implies they've made the ‘wrong’ choice </li></ul><ul><li>negative lock-in enough people use it, so it dominates, like QWERTY and VHS </li></ul>
    30. 31. who uses Open Source? <ul><li>Yahoo Amazon Google etc. </li></ul><ul><li>plus… </li></ul><ul><li>most of the web: </li></ul><ul><li>‘ large body of high-quality code on which much of the internet depends for critical functions, and … the core operating system for an increasing number of desktop machines as well’ </li></ul>
    31. 32. LAMP: the Open Source web platform <ul><li>L inux and A pache, with M ySQL and either P erl, Python, or PHP </li></ul><ul><li>‘ ...there are plenty of excellent open source variants for any of the pieces of LAMP. Let the L stand for Linux, FreeBSD, NetBSD, OpenBSD, and Darwin/Mac OS X , all of which are open source operating systems and all but the latter have open source GUI layers. Let the M stand for MySQL and PostGreSQL . Let the P stand for PHP, Perl, Python, and Ruby .’ </li></ul><ul><li> </li></ul>
    32. 33. A free software project cannot: <ul><li>be unilaterally shut down </li></ul><ul><li>taken down a wrong path </li></ul><ul><li>removed from use </li></ul><ul><li>So is becoming recognised as a safer </li></ul><ul><li>option for organisations and businesses </li></ul>
    33. 34. international Open Source <ul><li>FSF Latin America campaign against non-free software to fill in tax forms </li></ul><ul><li>AVOIR African Virtual Open Initiatives and Resources </li></ul>
    34. 35. Ubuntu Linux
    35. 36. Redflag Linux <ul><li>‘ “ As a result of what we're doing in China, five or 10 years from now you'll have a healthy ecosystem of Linux providers who will be a true alternative to a proprietary operating system.” Meaning Microsoft's Windows.’ </li></ul><ul><li>- Free Standards Group </li></ul>Steve Hamm, A big step for Linux in China, 12/01/06
    36. 37. Some key organisations <ul><li>Open Source Development Labs (OSDL) Home to Linus Torvalds, founded by large companies like IBM and Intel but with a large external membership, seeks to promote the development of Linux and its use in enterprise computing. </li></ul><ul><li>Apache Software Foundation Umbrella organization for the Apache project that developed the Apache HTTP Server and many other projects. </li></ul><ul><li>Perl Foundation promoting the development, education, and use of the Perl language. </li></ul><ul><li>Python Software Foundation promoting the development, education, and use of the Python language. </li></ul><ul><li>GIMP GNU Image Manipulation Program - ‘Open Source Photoshop’ (scroll down for Windows, Linux and Mac-specific downloads) . </li></ul><ul><li> Originally the home to the source code initially released as open source from Netscape, and now many popular projects like Firefox. </li></ul><ul><li> the MS Office alternative. Free. </li></ul>
    37. 38. Sources and references <ul><li>Dan Woods, 'What Is Open Source' 15/09/2005, </li></ul><ul><li>Karl Fogel, What Is Free Software, 29/09/2005 </li></ul><ul><li>The Free Software Foundation and free software directory: </li></ul><ul><li>The GNU project and General Public License (GPL): </li></ul><ul><li>LAMP: The Open Source Web Platform </li></ul>