Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Open Source & Linux, The Journey Then And Now

tiemma
February 21, 2020

Open Source & Linux, The Journey Then And Now

An introduction into the world of Open Source and Linux, how the UNIX era redefined the software industry and revolutionised how we write and share software today/

In this deck, you get an introduction to the history of how Open Source and Linux came to be together.

tiemma

February 21, 2020
Tweet

More Decks by tiemma

Other Decks in Research

Transcript

  1. Meet Bakman! - Experienced Computer Pipeline Plumber @DEIMOS - DevOps

    and Linux Fanboy - Follow me on Twitter @TiemmaBakare - General Weird Guy (GWG) with Some Humour - People call me Bakman so there's also that Bakare Emmanuel DEIMOS @TiemmaBakare
  2. Open Source Festival 2020 Open Source The term open source

    refers to something people can modify and share because its design is publicly accessible. Definition:
  3. Open Source Festival 2020 Open Source Software (OSS) Open-source software

    (OSS) is a type of computer software in which source code is released under a license. Users have the rights to study, change, and distribute the software to anyone and for any purpose as the license allows. Definition:
  4. Open Source Software != Free Software Licenses are for the

    community, not personal or contributor exploitation.
  5. Open Source Festival 2020 Linux Linux is a family of

    open source Unix-like operating systems based on the Linux Kernel. Linux is typically packaged in a Linux distribution. Definition:
  6. Linux is a KERNEL! A kernel is a core part

    of an operating system The operating systems using Linux are known as distributions or simply "Distros" Distros like Ubuntu, CentOS use Linux
  7. Before we begin, I'd hint that Unix had a strong

    hand in both the creation of Open Source and Linux
  8. Open Source Festival 2020 How Software Was Like Pre '70s

    In the olden days of writing software pre-Unix times, we didn't have the modular sense of putting different programs together to form one big program. They were just big monoliths. If you needed a program to add two or three numbers, you needed to write a program to add two numbers and write another to add three numbers.
  9. For context, we didn't have philosophies like this to add

    3 numbers where f and g are different programs / modules / binaries etc. return g(0, f(a, b), c)
  10. We had this instead: return g(a, b, c) If we

    needed 4, we wrote another for 4 numbers also: return h(a, b, c, d)
  11. Unix brought the idea of sharing program source code and

    implementations for building bigger programs. It was a revolutionary change in the software industry. return g(f(a, b), c) This was awesome!
  12. This led to the Unix philosophy in software design, below

    is a summarised version of that: • Write programs that do one thing and do it well (SRP – Single Responsibility Principle). • Write programs to work together (Modularity). • Write programs to handle text streams, because that is a universal interface (Pipes - |)
  13. Open Source Festival 2020 How Software Was Like Post UNIX

    Unix was developed by Ken Thompson, Dennis Ritchie and several others at Bell labs. It was closed source afterwards by Bell Labs even though they had invented the modern view of modularising programs and sharing those modules. Simply, it was "Closed Source" as only the actual program binaries were shared, developers could not see the source code and extend the functionality.
  14. In another part of the world almost simultaneously, An individual

    named Richard Stallman was fed up with the Closed Source lifestyle also...
  15. Richard Stallman Soon to be creator of the Free Software

    Movement, the GPL, GNU Projects and a public advocate for Open Source and Open Source Software (OSS). Staff Programmer, MIT source: https://en.wikipedia.org/wiki/Richard_Stallman
  16. Open Source Festival 2020 Richard Stallman's Blog: Printer Issues In

    the early 1980s, he worked at MIT. Before a new printer adoption, MIT staff had implemented a feature on the previous printer to email users of a paper jam by modifying the open-source code running on it. When that printer was replaced with a Xerox 9700 and they attempted to do the same again, they were greeted with the note that such software was closed source. This led Stallman to start the GNU (GNU's Not Unix) project that would provide access free of such limitations to all users. This was the birth of the OSS movement as we know it now with licenses.
  17. Stallman proceeds to further create the Free Software Foundation (FSF),

    the GNU GPL (General Public License) and several tools like GCC, Emacs etc.
  18. Meanwhile, a Finnish student named Linus Torvalds was cooking up

    some fancy kernel that would later become the most widespread opensource technology ever created
  19. Linus Torvalds Soon to be creator of the most widespread

    OSS tools, Linux and Git. Computer Science Student source: https://en.wikipedia.org/wiki/Richard_Stallman
  20. Hello everybody out there using minix - I'm doing a

    (free) operating system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones. This has been brewing since april, and is starting to get ready. I'd like any feedback on things people like/dislike in minix, as my OS resembles it somewhat (same physical layout of the file-system (due to practical reasons) among other things). I've currently ported bash(1.08) and gcc(1.40), and things seem to work. This implies that I'll get something practical within a few months, and I'd like to know what features most people would want. Any suggestions are welcome, but I won't promise I'll implement them :-) Linus ([email protected]) PS. Yes - it's free of any minix code, and it has a multi-threaded fs. It is NOT protable (uses 386 task switching etc), and it probably never will support anything other than AT-harddisks, as that's all I have :-(. source: https://groups.google.com/forum/#!msg/comp.os.minix/dlNtH7RRrGA/SwRavCzVE7gJ 8/25/1991 - Linus Announces Linux
  21. UNIX Unix furthered into a standard and various Unix-Like operating

    systems were born. Each now shares the Unix API implementation in a manner that is tagged as POSIX compliance. Although not all OSes are open source, but a majority are :-) It became a standard
  22. GNU It led to various uprisings like Linux, Git, OSS

    (Open Source Software), FOSS (Free Open Source Software), OSI (Open Software Initiative) and let's not forget OSCA! It also led to various open source initiatives in other fields, Open Source Data, Governance, Hardware etc. Richard Stallman does deserve an award for the contributions! It changed the software space and made the conference we're all in right now happen
  23. Linux It's grown to be the most widely server used

    OS with no competition plus it led to the advent of containers which is now predominantly simplified with Docker and powers a ton of workloads globally. It's the kernel for the Android OS on our smartphones and various embedded devices like Raspberry Pi's through Open Source Hardware which has come to exist through GPL variants. Many more contributions have come to be, all from this master thesis project from a CS student from Finland, supported by Open Source. It's everywhere, from your smartphones to the AC working right now.