Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Open Source Software


Published on

Guest lecture at RMIT

Published in: Software
  • Be the first to comment

Open Source Software

  1. 1. An Introduction to Open Source Software ALI YAVARI – MAIL@ALIYAVARI.COM
  2. 2. What is Source? • Source code is the version of software as it is originally written by a human in plain text • The term software refers to all operating systems, application programs • Source code can be written in any of the programming languages (C, C++, Cobol, Fortran, Java, Perl, PHP, Python and..) • To be usable by a computer source code must be compiled Reference: Compile
  3. 3. What is Open Source Software? promotes free redistribution and access to a products design or ideas and implementation details.
  4. 4. Open -> Collaboration is Open Source -> Source is freely available Share Adapt Modify Collaborate!
  5. 5. Is it Free? • Free here is freedom not free in terms of price. • Every free software is not Open Source. • Every Open Source software is not free. • Some software are Open Source as well as free. No!
  6. 6. Open Source Software History • In the 1950s and 1960s, • software and compilers were delivered as a part of hardware purchases without separate fees • At this time, source code, the human-readable form of software, was generally distributed with the software providing the ability to fix bugs or add new functionality • Many of the modifications developed by universities were openly shared in keeping with the academic principles of sharing knowledge • In the 1970s • “unbundling” of software from hardware [IBM] • In the 1980s • Richard Stallman, formerly a programmer at the MITAI Lab launched the GNU Project • Computer Science Research Group (CSRG) of the University of California at Berkeley working on BSD UNIX system
  7. 7. Open Source Software History Cont’d • In the 1990s • In Finland, LinusTorvalds, a student of computer science was implementing the first versions of the Linux kernel. • GNU/Linux • 386BSD • GNU/Linux and 386BSD were reasonably stable platforms. • BSD based operating systems (NetBSD, FreeBSD, and OpenBSD) • GNU/Linux distributions (Slackware, Debian, Red Hat, Suse, Mandrake,..) • Apache (web server) • Perl • GNOME and KDE (Desktop environment) • Mozilla (funded by Netscape to build a web browser) • Open Source Initiative (OSI)
  8. 8. GNU Project • Build a free operating system • Software produced by GNU will remain free • Started by coding some programming tools (a compiler, an editor, etc.). • GNU General Public License (GPL) • The freedom to run the program as you wish, for any purpose (freedom 0). • The freedom to study how the program works, and adapt it to your needs (freedom 1) • 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) Free software means the users have the freedom to run, copy, distribute, study, change and improve the software.
  9. 9. Copyleft 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.
  10. 10. Berkeley Software Distribution • Berkeley Software Distribution (BSD) is a Unix operating system • Developed and distributed by the Computer Systems Research Group (CSRG) of the University of California, Berkeley • Basis for several open source development projects • FreeBSD aims for high performance and ease of use by end users • NetBSD aims for maximum portability (NASA space missions) • OpenBSD aims for security • There are also BSD UNIX® operating systems which are not open source • Mac OS® X the operating system for Apple.The BSD core is Darwin (available as a fully functional open source operating system)
  11. 11. • Open Source Initiative (OSI) is a public benefit corporation • Founded in 1998 • Actively engaged in building open source community
  12. 12. Business models for open-source software • Selling professional services • Selling of branded merchandise • Selling of certificates • Voluntary donations • Advertising-supported software • Re-licensing under a proprietary license • And…
  13. 13. Open Source Project • Linux Foundation – 2007 • 7800 contributors from 800 companies • 6 patches per hour • OpenStack - 2010 • Started as NASA/Rackspace project • 10,418 individual members in 125 countries • 237 organizations • 1278 contributors • 1.3M lines of code
  14. 14. Linux • A Linux distribution has thousands of software Free! • Linux is a complete, stable and reliable operating system • Linux is powerful • Linux has a complete development environment • Linux is an ideal environment for servers • It is easily upgradable • It has lots of documentation • More than 90% of current Linux source code is written by other developers • Even Microsoft Contributes to Linux Kernel Development
  15. 15. Linux runs on Linux-based Server runs on Linux-based Server runs on Linux-based Server runs on Linux-based Server runs on Linux-based Server runs on Linux-based Server runs on Linux-based Server
  16. 16. but why? • Stability • Security • Hardware • Cost • Freedom • Apache, Linux’s leadingWeb server application • MySQL, the most prominent database application • PHP, the most popular scripting language
  17. 17. Apache • Developed and maintained by an open community of developers under the auspices of the Apache Software Foundation • The most popular web server on the internet since 1996 • 54.2% of all active websites (June 2013) • is a collaborative software development • Apache can run on almost any OS including • Simple and powerful • File-based configuration • It is free • It is Open Source
  18. 18. MySQL • 1994 – Development starts on MySQL • MySQL is the world's most popular open source database • Relational database management system (RDBMS); • Facebook and Wikipedia use MySQL • It is Open Source • It is Free
  19. 19. PHP • is a server-side scripting language designed for web development • was installed on more than 240 million websites and 2.1 million web servers • originally stood for Personal Home Page • it now stands for PHP: Hypertext Preprocessor • PHP is free software released under the PHP License
  20. 20. Wordpress • WordPress is the world’s most popular blogging platform • Used by a 202 million websites • can be used to transform a standard blog into interactive website • Content management system • • Open Source • Free
  21. 21. VLC Player • media player had been downloaded 300 million times • supports practically every audio/video codec and file format • live recording of streaming video • frame-by-frame advancement and superb speed controls • It is Open Source • It is Free
  22. 22. Notepad++ • Source code editor and Notepad replacement • • supports several languages • GPL License. • auto-completion for CSS, C, C++, C#, Java, JavaScript, SQL, HTML, XML and PHP
  23. 23. Ubuntu • is a Debian-based Linux operating system • Unity as its default desktop environment • Ubuntu also runs network servers • generates revenue through the sale of technical support and other services related to Ubuntu • It is Open Source • It is Free
  24. 24. Let’s try Ubuntu! • Ubuntu Distribution • • Virtual PC •
  25. 25. Android • Android is a mobile operating system (OS) based on the Linux kernel and currently developed by Google. • Android is designed primarily for touchscreen • Source code is released by Google under open source licenses • Initially developed by Android, Inc., which Google bought in 2005 ($50 million) • was developed as a platform for digital cameras but the makers later changed their focus to smart phones • Free!
  26. 26. GIMP • GNU Image Manipulation Program • is a free and open-source raster graphics editor • began in 1995 as the school project of two university students • a possible replacement for Adobe Photoshop • Windows: • Linux: apt-get install gimp
  27. 27. • LaTeX is a document preparation system for high-quality typesetting • It is most often used for medium-to-large technical or scientific documents but it can be used for almost any form of publishing. • LaTeX is not a word processor • LaTeX was first developed in 1985 • MiKTeX is a freeTeX distribution forWindows systems
  28. 28.
  29. 29. Is Open Source just about software!? Arduino is an open source hardware!