Open Source Software An Introduction. The Creation of Software l As you know, programmers create the software that we use l What you may not understand.

Slides:



Advertisements
Similar presentations
The Web Wizards Guide to Freeware/Shareware Chapter Six Open Source Software.
Advertisements

Configuration management
1 Open Office – A cheaper alternate to Microsoft Office Edited by: Irfan Ilyas.
Creating a Program In today’s lesson we will look at: what programming is different types of programs how we create a program installing an IDE to get.
Copyleft and cathedrals How the counterculture is changing the way we do business.
Lecture 2: Do you speak Java?. From Problem to Program Last Lecture we looked at modeling with objects! Steps to solving a business problem –Investigate.
B-1 Appendix B Information System Software Robert Riordan, Carleton University.
Open Source Business Models By Mike Telmar, Jacob Jennings, and Jerome Thomas.
Programming Introduction November 9 Unit 7. What is Programming? Besides being a huge industry? Programming is the process used to write computer programs.
What You Should Know About Open Source Software Iris K Stovall Director, Illinois Virtual Campus 2005 Faculty Summer Institute.
Compilers and Interpreters. Translation to machine language Every high level language needs to be translated to machine code There are different ways.
Chapter 4 - Software – Part 2 Dr. V.T. Raja Oregon State University.
How Is Open Source Affecting Software Development? Je-Loon Yang.
Chapter 3 Software Two major types of software
Programming. Software is made by programmers Computers need all kinds of software, from operating systems to applications People learn how to tell the.
Software Development Unit 6.
Course: Introduction to Computers
COMP 6005 An Introduction To Computing Session Two: Computer Software Acquiring Software.
Build a CMS Website. The topics this chapter covers are: What is CMS ? What you can do with CMS The benefits and disadvantages of using a content management.
Sl.NoUnitContents 1.Unit - 1 What is Open Source?, Why Open Source? 2Unit – 2 What is Open Standard? - Why Open Standards? 3Unit – 3 Peek into history.
Activity 1 - WBs 5 mins Go online and spend a moment trying to find out the difference between: HIGH LEVEL programming languages and LOW LEVEL programming.
Introduction to Computer Programming itc-314
Software – Applications software and programming languages
WEB ENGINEERING LECTURE 4 BY Kiramat Rahman. outline  In this Lecture you will learn about:  Term “Software” and its relationship with “Hardware” 
COMPUTER SOFTWARE Section 2 “System Software: Computer System Management ” CHAPTER 4 Lecture-6/ T. Nouf Almujally 1.
PROGRAMMING IN VISUAL BASIC.NET INTRODUCTION TO VISUAL BASIC.NET Bilal Munir Mughal 1 Chapter-1.
Computers and Society Examine the extent to which Richard Stallman’s GNU manifesto has succeeded in challenging the dominance of conventionally distributed.
4 - 1 Copyright © 2006, The McGraw-Hill Companies, Inc. All rights reserved.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
Standard Grade Computing System Software & Operating Systems.
Introduction to Programming Peggy Batchelor.
Open Source Software Bangladesh University of Business and Technology Nizar Saadi Dahir M.Sc. Computer Engineering Computer Center- Kufa University
Computer Programming A program is a set of instructions a computer follows in order to perform a task. solve a problem Collectively, these instructions.
Software and Hardware Interaction
Just as there are many human languages, there are many computer programming languages that can be used to develop software. Some are named after people,
Information Systems Overview (COIS 20024) Lecture: Week 3 Computer Software (Information Systems Resources)
Software – Applications software and programming languages.
Robert Crawford, MBA West Middle School.  Explain how the binary system is used by computers.  Describe how software is written and translated  Summarize.
Idiom Entertainment Patrick Burke, CEO Reed Brown, CFO Kate Raymer, CIO Sandra Kohlhepp, CTO Patrick Burke, CEO Reed Brown, CFO Kate Raymer, CIO Sandra.
Intermediate 2 Software Development Process. Software You should already know that any computer system is made up of hardware and software. The term hardware.
Jeannie McGuinn CIS 101. Open source refers to a program or software in which the source code (the form of the program when a programmer writes a program.
McGraw-Hill/Irwin Copyright © 2013 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 4 Computer Software.
Programming language. Definition Programming language is a formal language designed to communicate instructions to a computer. Programming languages can.
10 May 2005UNSDI Workshop - FAO-HQ - Italy Free and Open Source Software (FOSS) & OpenSDI Jeroen Ticheler.
The course. Description Computer systems programming using the C language – And possibly a little C++ Translation of C into assembly language Introduction.
Presentation By: Ryan Combs. Ubuntu Pronouced: ‘ oo-BOON-too’ Ubuntu is an African word that has a few meanings. 1)“Humanity to others” 2) “I am what.
 Programming - the process of creating computer programs.
 Computer Languages Computer Languages  Machine Language Machine Language  Assembly Language Assembly Language  High Level Language High Level Language.
Introduction to Computer Programming itc-314 Lecture 04.
Compilers and Interpreters
Software. Introduction n A computer can’t do anything without a program of instructions. n A program is a set of instructions a computer carries out.
Chapter 1: Introduction to Computers and Programming.
Welcome to Open Source Technology An Overview of Software By Afroz Hippargi, CIT, YASHADA, Pune.
Software Development Languages and Environments. Computer Languages Just as there are many human languages, there are many computer programming languages.
Programming Language Basics. What is a Programming Language? “A computer, human-created language used to write instructions for a computer.” “An artificial.
Introduction to computer software. Programming the computer Program, is a sequence of instructions, written to perform a specified task on a computer.
Software Testing Training Online. Software testing is ruling the software business in current scenario. It provides an objective, independent view of.
Computer Systems Nat 5 Computing Science
Computer Applications in Business
Why don’t programmers have to program in machine code?
Introduction to programming
Computer Systems Nat 5 Computing Science
Daniel Henry January 30, 2002 CS 4900
OPEN SOURCE SOLUTION FOR e-GOVERNANCE
Chapter 4 Computer Software.
TRANSLATORS AND IDEs Key Revision Points.
Programming.
Programming Language Basics
1.3.7 High- and low-level languages and their translators
Introduction to Computer Science
Presentation transcript:

Open Source Software An Introduction

The Creation of Software l As you know, programmers create the software that we use l What you may not understand is HOW software is created

Machine Language l Computer programs (software) are basically sets of instructions that the computer follows l Computers don’t take instructions in English (or anything close to it!) n Instead, they follow instructions which are written in BINARY n Basically, instructions are given by specifying them BY NUMBER l Known as Machine Language n You can’t understand it, but the machine can!

Programming Languages l Programmers don’t typically work in machine language n Too hard to understand, work productively l Rather, they use high-level Programming Languages to create their programs n These are sets of instructions which are much closer to the language that WE use u Easier to understand, to use u Examples: C, C++, Java, Perl, Python, (Visual) Basic, etc.

Compiling and Source Code l Because computers only understand ML, the original program (in the high-level language) must be CONVERTED to ML n The conversion is known as ‘Compiling’ n We often call the resulting ML code an ‘Executable’ file l The original program, as written by the programmer in the high-level language, is known as Source Code n It’s the ‘Source’ of the program

Source Code- Key points l Source Code n Understood by humans n Can’t be executed by computer n Can be translated into machine language l Executable (machine language) n Can be executed n Can’t be understood easily n Can’t be translated into source code

When you buy software… l What do you get? n Source code or executable? l Why?

If You Have the Source Code, You can: l Understand how the software works internally n Use this knowledge to develop other software l Make changes n Bug fixes n Customize l Make sure there are no bugs, security flaws, etc. l Improve on the software l So, why don’t software companies (usually) give you source code?

Open Source Software l Current movement had (has) a philosophical basis: l Software should be FREE n Not just free as in ‘free beer’ u No cost n Free as in ‘free speech’ u Access to ideas, knowledge u Freedom of expression u The more heads that you have working on a problem, the better the result u When knowledge is restricted to a small few, society is hurt u When knowledge is shared freely, everyone benefits

Open Source Software l Open Source Software is FREE l Variety of license agreements l Best known is the GPL n It can be distributed for free u Although a company can charge for it, they can’t prevent you from distributing it for free n You must have access to the source code!

Growth l OSS has grown dramatically recently n Availability of software n Quality of software n ADOPTION of software

Questions l Where does Open Source Software come from? n Who makes it? n Why?

Answers… l Many sources n Programmers devoting personal time u Outside working hours n Companies developing OSS as a tool in the other services they offer n Companies developing software internally, then releasing it free of charge n Contributions by public institutions, educational institutions n Investment by various parties funding development

Questions l Is the software any good?

Answers… l In many cases, YES! l Much OSS is very useful, well developed n OpenOffice n Mozilla n Linux l In some areas, it is dominant! n Apache web server n MySQL for web database use n BIND DNS server

Questions l Why are companies/governments/ individuals moving to OSS?

Answers l Sick of unreasonable licensing terms n Getting worse! l Don’t want to be locked into one company’s system n OSS typically relies on open standards l Ability to customize software l Can inspect code to ensure that it is secure l Significant cost savings

Questions l Are there companies making money using Open Source Software? l If so, what is the business model for these companies? n What do they make/do? n How do they make money? n Are these viable business models? u How are they doing?

Questions l What are the implications of Open Source Software for ‘closed source’ companies? l How can ‘closed source’ companies fight the threat?

As a Network Administrator… l Why might you want to use OSS? l Why might you be hesitant?

Questions l If OSS is so great, why would I ever used closed source software?

Why stick with ‘Closed Source’? l Belief that corporate developed software is better l Need for support l Concerns about learning curve is change made n Some OSS software not nearly as easy to use l There may not be an OSS package available to do a particular task n Or, may not be as strong as the closed source option

Conclusion l Why selecting software, you need to consider the situation carefully n Look at the needs, and make the best choice l Open Source Software is a good alternative in many situations n Don’t assume it’s bad, because it’s free!