SlideShare a Scribd company logo
1 of 27
Download to read offline
Better Software 2011




Software Open-Source in ambito industriale:
           opportunità e rischi

                 Claudio Scordino
           c.scordino@evidence.eu.com
                    Evidence Srl
Introduction
My background...
• My name: Claudio Scordino
• Education:
   – 2003 Master degree in Computer Engineering
   – 2007 PhD in Computer Science
• Work:
  – 2006-2008: Linux kernel developer at Evidence Srl
       • 2008-2010: Code merged in the mainline Linux kernel
   – 2008-2011: Project Manager at Evidence Srl
       • 2011: ScrumMaster certification

   Evidence Srl: we make firmware and software for embedded,
                  real-time and complex systems

                                     3
Outline
• Open Source and the business model
• Overview of the most common open-source licenses
• Reusing existing open-source code
   – Opportunities
   – Risks
• Releasing our code as open-source
   – Opportunities
   – Risks
• Summary




                               4
Open Source and the business model
• Open-Source does not mean "no money"
• Several companies make money working with Open-Source
  projects. Examples:
   – Google (Android, Googletest, Chrome, etc.)
   – Redhat, IBM


• Other companies, instead, had troubles with their strategy:
   – Nokia
   – Mandrake/Mandriva
                                                Choose the right
   – Ubuntu ?                                   business model!
   – Sun (acquired by Oracle)

                                 5
Open-Source licenses
Open Source licenses
• Several Open Source lisenses exist
   – See http://www.opensource.org
   – See http://www.gnu.org/philosophy/license-list.html
• Big differences between one license to another
• We will see three major open source licenses:
  – GPL
  – LGPL
  – BSD




                                7
GNU General Public License (GPL)
• Most popular license
• Published by the Free Software Foundation
• Allows to modify and redistribute (even sell) the code as long as
  the recipient maintains the same rights (access to the source
  code included)
• No warranty
• Modifications are and remain GPL
• Examples: Linux, U-Boot, Firefox




                                 8
GNU General Public License (GPL) (2)
• In practice:
   – The source code must be released to the end-user, if any
       • No obligation to release the source code to anybody else
   – GPL code cannot be used inside non-free code
       • Use of GPL libraries in non-free programs is forbidden
         (unless code is for "personal usage" and not distributed)
• Several versions available:
   – GPLv2:
       • The most used (e.g., Linux and U-Boot)
   – GPLv3:
       • Latest version
       • More restrictive (forbids deals about patent protection, hardware lock
         technologies and DRM)
                                      9
GNU Lesser General Public License (LGPL)
• Published by the Free Software Foundation
• Usually used for libraries
• More permissive than GPL: code can be linked to proprietary
  programs
   – The program linked to the LGPL code can be distributed under
     any chosen terms
• The recipient must be given the possibility of linking the program
  to a modified or newer version of the LGPL library
   – This restriction is unacceptable in some circumstances, so
     some projects prefer the GPL with linking exception license
• No warranty
• Examples: GTK and Qt libraries, Erika Enteprise RTOS
                                 10
BSD licenses
• Family of licenses
• Used for BSD by the Berkley university
• Redistribution in binary form is permitted
   – It only requires to acknowledge the original developers
   – More permissive than GPL and LGPL
• No warranty




                                11
Reusing Open-Source code
Reusing: the appealing opportunities
• Re-using existing open-source code presents a set of appealing
  opportunities:
   – Faster development with respect to code written from scratch
   – Lower costs (e.g., no royalties) with respect to commercial
     solutions
   – Lower (but not null) development costs
   – Free help and technical support by a development community
   – Possibility of having "branded products" (e.g., Android-based
     cellphones)
• Success stories: mobile manufacturers using Linux, Android, U-
  Boot


                                13
Reusing: some risks
• 1st issue: legal issues
   – E.g., Must your source code be redistributed ?
   – Read the licence carefully and think of all the possible
     scenarios to understand any possible legal issue.
   – In case the source code must be redistributed, you get all
     opportunities and risks of releasing your code as Open-
     Source. See the next part of the talk.
• 2nd issue: Lack of full knowledge of the system
   – Problem shown when unexpected behaviors/bugs happen
   – Remember that code may have not been properly tested
   – Allocate one full-time person to deeply study the software


                                 14
Reusing: some risks (2)
• 3rd issue: are you enough agile ?
   – Open-Source projects are characterized by rapid development
     cycles
      • On the Linux kernel, on average, 7267 lines of code added every day
   – "Old-style" companies can have troubles in following a fast
     development cycle
      • Usually because the amount of effort has been underestimated
   – Allocate one full-time person to keep in touch with the
     development community and to follow the development cycle




                                    15
Reusing: some risks (3)
• 4th issue: how much being updated ?
   – Fix bugs and security holes as soon as possible
       • When facing a problem/bug, synchronize with the latest version
         before asking help to the development community
       • Consider letting people hacking the device when this is not a real
         problem (e.g., cellphones)
   – Suggestion: when a stable and working system is reached,
     evaluate if being aligned with the next versions is the right
     choice
       • Regressions are likely to happen and for mature products it's not
         worth the trouble!




                                      16
Releasing as Open-Source code
Releasing: interesting opportunities
• Releasing our code as Open-Source can have a set of advantages
  as well:
   – Create a development community that can provide help and
     support for free
   – Better code: more people review and improve the code
   – Lower development/maintainance costs
   – Boost collaboration with other research institutes or other
     companies, reducing the effort/costs
   – Enter new markets: change your business model from product
     to service to enter a market characterized by closed-source
     products


                               18
Releasing: interesting opportunities (2)
– Customers of a software product have more trust: they get
  the source code to be able of fixing possible technical issues
  even in the long term
– Positive image of the company
   • Example: Google
   • Free advertising
   • Easier to hire talented developers




                                  19
Releasing: some risks
• 1st issue: loss of strategic competitive advantage ?
   – Evaluate the market and your main competitors!




                                20
Releasing: some risks (2)
• 2nd issue: decide how to drive your business model:
   – Often this implies changing from product to consultancy
   – Think about using a dual-license model to investigate if it is
     possible to have advantages of both worlds (i.e., commercial
     and open-source)
       • Good way to explore the market and to evaluate the strategy
   – Remember that once the source code is public, it is possible
     to go back but somebody could start a fork of the project




                                    21
Releasing: some risks (3)
• 3rd issue: future legal issues
   – Choose the right license carefully and think of all the possible
     scenarios
   – Choose one of the major existing licenses
       • Developers are afraid of licenses they don't know
       • Trying to inventing a new license is risky, because it requires a deep
         knowledge in this topic




                                       22
Releasing: some risks (4)
• 4th issue: evaluate the amount of effort needed
   – Coordination and collaboration with the community:
      • Consider time/effort to involve new developers through
        documentation, wikis, forums, and mailing lists.
   – Maintainance and technical support
      • Especially in the beginning phase, allocate a full-time person to
        answer technical questions and help people to get involved
   – Remember that developers stay away from projects that
     appear to be dead
      • The amount of "activity" of a project is evaluated through different
        metrics (e.g., number of emails/commits)




                                     23
Releasing: some risks (5)
• 5th issue: how much to drive development ?
   – If you do not enforce a direction, you may experience the loss
     of full control on the development
   – If you try to drive the development in a different direction
     than the one wanted by the community, there is the risk of a
     fork




                                 24
Summary
Summary
• Reusing Open-Source software in your product can really cut the
  development costs. However:
   1.   Read the license carefully and evaluate all possible scenarios
   2.   Remember to allocate at least one person full-time to study and test the
        software and to follow on-going development
   3.   Fix bugs and security holes immediately
   4.   For mature and stable products, don't jump to new versions

• Releasing your software as Open-Source may reduce development
  costs and improve your company's image. However:
   1.   Evaluate your new business model and if you are losing competitive
        advantage
   2.   Consider the effort for making documentation, wiki, forums, and mailing
        lists.

                                       26
Questions ?




     27

More Related Content

What's hot

L'open hardware dans l'électronique (et au delà...)
L'open hardware dans l'électronique (et au delà...)L'open hardware dans l'électronique (et au delà...)
L'open hardware dans l'électronique (et au delà...)
Robert Viseur
 
GoOpen 2010: Sandro D'Elia
GoOpen 2010: Sandro D'EliaGoOpen 2010: Sandro D'Elia
GoOpen 2010: Sandro D'Elia
Friprogsenteret
 

What's hot (20)

Open source software licenses
Open source software licensesOpen source software licenses
Open source software licenses
 
Introduction to Free and Open Source Software (FOSS)
Introduction to Free and Open Source Software (FOSS)Introduction to Free and Open Source Software (FOSS)
Introduction to Free and Open Source Software (FOSS)
 
An Introduction to Free and Open Source Software Licensing and Business Models
An Introduction to Free and Open Source Software Licensing and Business ModelsAn Introduction to Free and Open Source Software Licensing and Business Models
An Introduction to Free and Open Source Software Licensing and Business Models
 
Understanding open source licenses
Understanding open source licensesUnderstanding open source licenses
Understanding open source licenses
 
Fundamentals of Free and Open Source Software
Fundamentals of Free and Open Source SoftwareFundamentals of Free and Open Source Software
Fundamentals of Free and Open Source Software
 
L'open hardware dans l'électronique (et au delà...)
L'open hardware dans l'électronique (et au delà...)L'open hardware dans l'électronique (et au delà...)
L'open hardware dans l'électronique (et au delà...)
 
Open Source License Compliance in the Cloud (CELESQ) (October 2012)
Open Source License Compliance in the Cloud (CELESQ) (October 2012)Open Source License Compliance in the Cloud (CELESQ) (October 2012)
Open Source License Compliance in the Cloud (CELESQ) (October 2012)
 
Start your open source project
Start your open source projectStart your open source project
Start your open source project
 
Open Source Software
Open Source SoftwareOpen Source Software
Open Source Software
 
Open Source Licences
Open Source LicencesOpen Source Licences
Open Source Licences
 
Open Source Software Presentation
Open Source Software PresentationOpen Source Software Presentation
Open Source Software Presentation
 
Introduction To Open Source Licenses
Introduction To Open Source LicensesIntroduction To Open Source Licenses
Introduction To Open Source Licenses
 
Open Source: What is It?
Open Source: What is It?Open Source: What is It?
Open Source: What is It?
 
Open Source vs Proprietary
Open Source vs ProprietaryOpen Source vs Proprietary
Open Source vs Proprietary
 
Free and open source software
Free and open source softwareFree and open source software
Free and open source software
 
01-15 Bay Area OSS Meetup: Free and Open Source Software Licensing Overview
01-15 Bay Area OSS Meetup: Free and Open Source Software Licensing Overview01-15 Bay Area OSS Meetup: Free and Open Source Software Licensing Overview
01-15 Bay Area OSS Meetup: Free and Open Source Software Licensing Overview
 
Introduction To Open Source Licensing
Introduction To Open Source LicensingIntroduction To Open Source Licensing
Introduction To Open Source Licensing
 
Open Source Concepts
Open Source ConceptsOpen Source Concepts
Open Source Concepts
 
Open source software development
Open source software developmentOpen source software development
Open source software development
 
GoOpen 2010: Sandro D'Elia
GoOpen 2010: Sandro D'EliaGoOpen 2010: Sandro D'Elia
GoOpen 2010: Sandro D'Elia
 

Viewers also liked

Viewers also liked (8)

Start small stay small
Start small stay smallStart small stay small
Start small stay small
 
Lundine
LundineLundine
Lundine
 
Ota
OtaOta
Ota
 
Start your Own Thing: Becoming an English-Speaking Female Entrepreneur in Bol...
Start your Own Thing: Becoming an English-Speaking Female Entrepreneur in Bol...Start your Own Thing: Becoming an English-Speaking Female Entrepreneur in Bol...
Start your Own Thing: Becoming an English-Speaking Female Entrepreneur in Bol...
 
Elio Tondo - Linux In Azienda
Elio Tondo - Linux In AziendaElio Tondo - Linux In Azienda
Elio Tondo - Linux In Azienda
 
Alcune lezioni che ho imparato negli ultimi due anni
Alcune lezioni che ho imparato negli ultimi due anniAlcune lezioni che ho imparato negli ultimi due anni
Alcune lezioni che ho imparato negli ultimi due anni
 
Historic Tax Credits Preparation & Application
Historic Tax Credits Preparation & ApplicationHistoric Tax Credits Preparation & Application
Historic Tax Credits Preparation & Application
 
Webinar - Mobile, choosing the correct channel
Webinar - Mobile, choosing the correct channelWebinar - Mobile, choosing the correct channel
Webinar - Mobile, choosing the correct channel
 

Similar to Software Open Source in ambito industriale

Speaker trung huynh opensource business model
Speaker trung huynh   opensource business modelSpeaker trung huynh   opensource business model
Speaker trung huynh opensource business model
AiTi Education
 

Similar to Software Open Source in ambito industriale (20)

[Workshop] Building an Integration Agile Digital Enterprise with Open Source ...
[Workshop] Building an Integration Agile Digital Enterprise with Open Source ...[Workshop] Building an Integration Agile Digital Enterprise with Open Source ...
[Workshop] Building an Integration Agile Digital Enterprise with Open Source ...
 
SFO15-TR1: The Philosophy of Open Source Development
SFO15-TR1: The Philosophy of Open Source DevelopmentSFO15-TR1: The Philosophy of Open Source Development
SFO15-TR1: The Philosophy of Open Source Development
 
Open Development
Open DevelopmentOpen Development
Open Development
 
Osp summary
Osp summaryOsp summary
Osp summary
 
Selecting an Open Source License and Business Model for Your Project to Have ...
Selecting an Open Source License and Business Model for Your Project to Have ...Selecting an Open Source License and Business Model for Your Project to Have ...
Selecting an Open Source License and Business Model for Your Project to Have ...
 
The Coming OSS Sustainability Crisis
The Coming OSS Sustainability CrisisThe Coming OSS Sustainability Crisis
The Coming OSS Sustainability Crisis
 
Open source
Open sourceOpen source
Open source
 
LCA14: LCA14-110: FLOSS Training
LCA14: LCA14-110: FLOSS TrainingLCA14: LCA14-110: FLOSS Training
LCA14: LCA14-110: FLOSS Training
 
Open Source: Lessons Learned (2006)
Open Source: Lessons Learned (2006)Open Source: Lessons Learned (2006)
Open Source: Lessons Learned (2006)
 
Open Source & Open Development
Open Source & Open Development Open Source & Open Development
Open Source & Open Development
 
Welcome to the FOSS4G Community
Welcome to the FOSS4G CommunityWelcome to the FOSS4G Community
Welcome to the FOSS4G Community
 
Speaker trung huynh opensource business model
Speaker trung huynh   opensource business modelSpeaker trung huynh   opensource business model
Speaker trung huynh opensource business model
 
Martin von Willebrand - Collaborative Open Source Compliance - Mindtrek 2016
Martin von Willebrand - Collaborative Open Source Compliance - Mindtrek 2016Martin von Willebrand - Collaborative Open Source Compliance - Mindtrek 2016
Martin von Willebrand - Collaborative Open Source Compliance - Mindtrek 2016
 
Be Innovative with Copyright - Introduction to Open Source Business Models
Be Innovative with Copyright - Introduction to Open Source Business Models Be Innovative with Copyright - Introduction to Open Source Business Models
Be Innovative with Copyright - Introduction to Open Source Business Models
 
Open Source & What It Means For Self-Sovereign Identity (SSI)
Open Source & What It Means For Self-Sovereign Identity (SSI)Open Source & What It Means For Self-Sovereign Identity (SSI)
Open Source & What It Means For Self-Sovereign Identity (SSI)
 
Intro to open source - 101 presentation
Intro to open source - 101 presentationIntro to open source - 101 presentation
Intro to open source - 101 presentation
 
OSOS SEM 4 Chapter 1
OSOS SEM 4 Chapter 1OSOS SEM 4 Chapter 1
OSOS SEM 4 Chapter 1
 
open_source_tools.pptx 4th sem bca......
open_source_tools.pptx 4th sem bca......open_source_tools.pptx 4th sem bca......
open_source_tools.pptx 4th sem bca......
 
FLOSS development
FLOSS developmentFLOSS development
FLOSS development
 
Open Source evaluation: A comprehensive guide on what you are using
Open Source evaluation: A comprehensive guide on what you are usingOpen Source evaluation: A comprehensive guide on what you are using
Open Source evaluation: A comprehensive guide on what you are using
 

More from Better Software

web 2.0, copyright, diritti fondamentali
web 2.0, copyright, diritti fondamentaliweb 2.0, copyright, diritti fondamentali
web 2.0, copyright, diritti fondamentali
Better Software
 
Il programmatore e le sue api
Il programmatore e le sue apiIl programmatore e le sue api
Il programmatore e le sue api
Better Software
 

More from Better Software (20)

How can metrics help in improving our effectiveness?
How can metrics help in improving our effectiveness?How can metrics help in improving our effectiveness?
How can metrics help in improving our effectiveness?
 
web 2.0, copyright, diritti fondamentali
web 2.0, copyright, diritti fondamentaliweb 2.0, copyright, diritti fondamentali
web 2.0, copyright, diritti fondamentali
 
Dove l’utente è re
Dove l’utente è reDove l’utente è re
Dove l’utente è re
 
Quando il software si fa amare
Quando il software si fa amareQuando il software si fa amare
Quando il software si fa amare
 
Il programmatore e le sue api
Il programmatore e le sue apiIl programmatore e le sue api
Il programmatore e le sue api
 
Cowboy programming e l'arte del copia/incolla
Cowboy programming e l'arte del copia/incollaCowboy programming e l'arte del copia/incolla
Cowboy programming e l'arte del copia/incolla
 
Better Software: Feedback Report 2010
Better Software: Feedback Report 2010Better Software: Feedback Report 2010
Better Software: Feedback Report 2010
 
Alla ricerca della user story perduta
Alla ricerca della user story perdutaAlla ricerca della user story perduta
Alla ricerca della user story perduta
 
Augmented reality e web
Augmented reality e webAugmented reality e web
Augmented reality e web
 
The Fun Of A Program Manager
The Fun Of A Program ManagerThe Fun Of A Program Manager
The Fun Of A Program Manager
 
Cavallini - L'importanza del software libero nei sistemi GIS
Cavallini - L'importanza del software libero nei sistemi GISCavallini - L'importanza del software libero nei sistemi GIS
Cavallini - L'importanza del software libero nei sistemi GIS
 
Cavallini - OpenSource e sistemi GIS
Cavallini - OpenSource e sistemi GISCavallini - OpenSource e sistemi GIS
Cavallini - OpenSource e sistemi GIS
 
Better Software Feedback Partecipanti Edizione 2009
Better Software Feedback Partecipanti Edizione 2009Better Software Feedback Partecipanti Edizione 2009
Better Software Feedback Partecipanti Edizione 2009
 
Alessandro Salvatico - Ingres: il nuovo modello IT
Alessandro Salvatico - Ingres: il nuovo modello ITAlessandro Salvatico - Ingres: il nuovo modello IT
Alessandro Salvatico - Ingres: il nuovo modello IT
 
Alessandro Salvatico - Sviluppare J2EE con INGRES
Alessandro Salvatico - Sviluppare J2EE con INGRESAlessandro Salvatico - Sviluppare J2EE con INGRES
Alessandro Salvatico - Sviluppare J2EE con INGRES
 
Maurizio Mesenzani - Le competenze del Project Manager
Maurizio Mesenzani - Le competenze del Project ManagerMaurizio Mesenzani - Le competenze del Project Manager
Maurizio Mesenzani - Le competenze del Project Manager
 
Massimiliano Zani - Applicazioni Mobile: tecnologie e Problematiche
Massimiliano Zani - Applicazioni Mobile: tecnologie e ProblematicheMassimiliano Zani - Applicazioni Mobile: tecnologie e Problematiche
Massimiliano Zani - Applicazioni Mobile: tecnologie e Problematiche
 
Claudio Cicali - Openid
Claudio Cicali - OpenidClaudio Cicali - Openid
Claudio Cicali - Openid
 
Roberto Ghislandi - Web Marketing e Web2.0
Roberto Ghislandi - Web Marketing e Web2.0Roberto Ghislandi - Web Marketing e Web2.0
Roberto Ghislandi - Web Marketing e Web2.0
 
Antonio Bonanno - Il Cliente Agile
Antonio Bonanno - Il Cliente AgileAntonio Bonanno - Il Cliente Agile
Antonio Bonanno - Il Cliente Agile
 

Recently uploaded

Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
ZurliaSoop
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 

Recently uploaded (20)

psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
Asian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptxAsian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptx
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 

Software Open Source in ambito industriale

  • 1. Better Software 2011 Software Open-Source in ambito industriale: opportunità e rischi Claudio Scordino c.scordino@evidence.eu.com Evidence Srl
  • 3. My background... • My name: Claudio Scordino • Education: – 2003 Master degree in Computer Engineering – 2007 PhD in Computer Science • Work: – 2006-2008: Linux kernel developer at Evidence Srl • 2008-2010: Code merged in the mainline Linux kernel – 2008-2011: Project Manager at Evidence Srl • 2011: ScrumMaster certification Evidence Srl: we make firmware and software for embedded, real-time and complex systems 3
  • 4. Outline • Open Source and the business model • Overview of the most common open-source licenses • Reusing existing open-source code – Opportunities – Risks • Releasing our code as open-source – Opportunities – Risks • Summary 4
  • 5. Open Source and the business model • Open-Source does not mean "no money" • Several companies make money working with Open-Source projects. Examples: – Google (Android, Googletest, Chrome, etc.) – Redhat, IBM • Other companies, instead, had troubles with their strategy: – Nokia – Mandrake/Mandriva Choose the right – Ubuntu ? business model! – Sun (acquired by Oracle) 5
  • 7. Open Source licenses • Several Open Source lisenses exist – See http://www.opensource.org – See http://www.gnu.org/philosophy/license-list.html • Big differences between one license to another • We will see three major open source licenses: – GPL – LGPL – BSD 7
  • 8. GNU General Public License (GPL) • Most popular license • Published by the Free Software Foundation • Allows to modify and redistribute (even sell) the code as long as the recipient maintains the same rights (access to the source code included) • No warranty • Modifications are and remain GPL • Examples: Linux, U-Boot, Firefox 8
  • 9. GNU General Public License (GPL) (2) • In practice: – The source code must be released to the end-user, if any • No obligation to release the source code to anybody else – GPL code cannot be used inside non-free code • Use of GPL libraries in non-free programs is forbidden (unless code is for "personal usage" and not distributed) • Several versions available: – GPLv2: • The most used (e.g., Linux and U-Boot) – GPLv3: • Latest version • More restrictive (forbids deals about patent protection, hardware lock technologies and DRM) 9
  • 10. GNU Lesser General Public License (LGPL) • Published by the Free Software Foundation • Usually used for libraries • More permissive than GPL: code can be linked to proprietary programs – The program linked to the LGPL code can be distributed under any chosen terms • The recipient must be given the possibility of linking the program to a modified or newer version of the LGPL library – This restriction is unacceptable in some circumstances, so some projects prefer the GPL with linking exception license • No warranty • Examples: GTK and Qt libraries, Erika Enteprise RTOS 10
  • 11. BSD licenses • Family of licenses • Used for BSD by the Berkley university • Redistribution in binary form is permitted – It only requires to acknowledge the original developers – More permissive than GPL and LGPL • No warranty 11
  • 13. Reusing: the appealing opportunities • Re-using existing open-source code presents a set of appealing opportunities: – Faster development with respect to code written from scratch – Lower costs (e.g., no royalties) with respect to commercial solutions – Lower (but not null) development costs – Free help and technical support by a development community – Possibility of having "branded products" (e.g., Android-based cellphones) • Success stories: mobile manufacturers using Linux, Android, U- Boot 13
  • 14. Reusing: some risks • 1st issue: legal issues – E.g., Must your source code be redistributed ? – Read the licence carefully and think of all the possible scenarios to understand any possible legal issue. – In case the source code must be redistributed, you get all opportunities and risks of releasing your code as Open- Source. See the next part of the talk. • 2nd issue: Lack of full knowledge of the system – Problem shown when unexpected behaviors/bugs happen – Remember that code may have not been properly tested – Allocate one full-time person to deeply study the software 14
  • 15. Reusing: some risks (2) • 3rd issue: are you enough agile ? – Open-Source projects are characterized by rapid development cycles • On the Linux kernel, on average, 7267 lines of code added every day – "Old-style" companies can have troubles in following a fast development cycle • Usually because the amount of effort has been underestimated – Allocate one full-time person to keep in touch with the development community and to follow the development cycle 15
  • 16. Reusing: some risks (3) • 4th issue: how much being updated ? – Fix bugs and security holes as soon as possible • When facing a problem/bug, synchronize with the latest version before asking help to the development community • Consider letting people hacking the device when this is not a real problem (e.g., cellphones) – Suggestion: when a stable and working system is reached, evaluate if being aligned with the next versions is the right choice • Regressions are likely to happen and for mature products it's not worth the trouble! 16
  • 18. Releasing: interesting opportunities • Releasing our code as Open-Source can have a set of advantages as well: – Create a development community that can provide help and support for free – Better code: more people review and improve the code – Lower development/maintainance costs – Boost collaboration with other research institutes or other companies, reducing the effort/costs – Enter new markets: change your business model from product to service to enter a market characterized by closed-source products 18
  • 19. Releasing: interesting opportunities (2) – Customers of a software product have more trust: they get the source code to be able of fixing possible technical issues even in the long term – Positive image of the company • Example: Google • Free advertising • Easier to hire talented developers 19
  • 20. Releasing: some risks • 1st issue: loss of strategic competitive advantage ? – Evaluate the market and your main competitors! 20
  • 21. Releasing: some risks (2) • 2nd issue: decide how to drive your business model: – Often this implies changing from product to consultancy – Think about using a dual-license model to investigate if it is possible to have advantages of both worlds (i.e., commercial and open-source) • Good way to explore the market and to evaluate the strategy – Remember that once the source code is public, it is possible to go back but somebody could start a fork of the project 21
  • 22. Releasing: some risks (3) • 3rd issue: future legal issues – Choose the right license carefully and think of all the possible scenarios – Choose one of the major existing licenses • Developers are afraid of licenses they don't know • Trying to inventing a new license is risky, because it requires a deep knowledge in this topic 22
  • 23. Releasing: some risks (4) • 4th issue: evaluate the amount of effort needed – Coordination and collaboration with the community: • Consider time/effort to involve new developers through documentation, wikis, forums, and mailing lists. – Maintainance and technical support • Especially in the beginning phase, allocate a full-time person to answer technical questions and help people to get involved – Remember that developers stay away from projects that appear to be dead • The amount of "activity" of a project is evaluated through different metrics (e.g., number of emails/commits) 23
  • 24. Releasing: some risks (5) • 5th issue: how much to drive development ? – If you do not enforce a direction, you may experience the loss of full control on the development – If you try to drive the development in a different direction than the one wanted by the community, there is the risk of a fork 24
  • 26. Summary • Reusing Open-Source software in your product can really cut the development costs. However: 1. Read the license carefully and evaluate all possible scenarios 2. Remember to allocate at least one person full-time to study and test the software and to follow on-going development 3. Fix bugs and security holes immediately 4. For mature and stable products, don't jump to new versions • Releasing your software as Open-Source may reduce development costs and improve your company's image. However: 1. Evaluate your new business model and if you are losing competitive advantage 2. Consider the effort for making documentation, wiki, forums, and mailing lists. 26