SlideShare a Scribd company logo
Dependency & License
Management
Who I am?
• Robert Reiz
• Software Eng. since 1998
• I started VersionEye
What I do?
• I write crawlers
• I integrate Package Managers
• I integrate SCM APIs (GitHub, Stash …)
VersionEye
• 550K Open Source Projects
• 10 Package Managers
• 3 SCMs
Dependency & License Management
Software Library
“In computer science, a library is a collection
of implementations of behaviour, written in
terms of a language, that has a well-defined
interface by which the behaviour is invoked.”
http://en.wikipedia.org/wiki/Library_%28computing%29
Wikipedia
Year 1999
Download Software Libraries
via Browser!
Year 1999
Add it via
drag & drop
to your project!
Dependency Management 1999
• Resolving transitiv dependencies by hand.
• No version tracking!
• Libraries checked in to SCM!
• Not reproducible!
• Dependency Hell!
Dependency Management Today
with Maven
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpmime</artifactId>
<version>2.1</version>
</dependency>
Define your dependencies in a pom.xml file
Dependency Management Today
with Maven
Repository
Server
Your computer
run
> mvn compile
request dependency
sends dependency
>mvncompile
Dependency Management
with Maven
• It downloads the dependencies.
• It resolves transitive dependencies.
• It puts the dep. into the right place.
• Reproducible.
• No need to check in dep. into SCM!
Dependency Management
• Maven (Java)
• Bundler (Ruby)
• Composer (PHP)
• CocoaPods (Objective-C)
• ….
• PyPI (Python)
• Leiningen (Clojure)
• NPM (Node.JS)
• Bower (JS)
• ….
Eachlanguagehasapackagemanager!
http://blog.versioneye.com/2014/01/15/which-programming-language-has-the-best-package-manager/
http://semver.org/
1.MAJOR version when you make incompatible API changes
2.MINOR version when you add functionality in a backwards-compatible manner
3.PATCH version when you make backwards-compatible bug fixes.
MAJOR.MINOR.PATCH
2.0.0
2.1.0
2.1.1
2.1.2
3.0.0
Major
Minor
Patch
Patch
Major
~3MillionNew Releases
6%#
94%#
New$Releases$
Major# Minor/Patch#
94% of all new releases are
harmless and you can update
without doubt.
How do you get notified about
new versions?
Version Tracking is a problem!
https://www.versioneye.com
Sign up with your
GitHub Account
and try it for free!
Software License
“A software license is a legal
instrument governing the use or
redistribution of software.”
http://en.wikipedia.org/wiki/Software_license
Wikipedia
SPDX Licenses ~ 300
http://spdx.org/licenses/
And there are even
more!
Everybody can invent
new licenses!
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
Version 2, December 2004
Copyright (C) 2004 Sam Hocevar <sam@hocevar.net>
Everyone is permitted to copy and distribute verbatim or modified
copies of this license document, and changing it is allowed as long
as the name is changed.
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. You just DO WHAT THE FUCK YOU WANT TO.
http://choosealicense.com/licenses/
The GPL License
You should avoid GPL for commercial projects!
Software License
Core Committers candefine a license for their projects!
The Normalisation Problem
The same license can be written in different ways!
• Apache License 2
• Apache License 2.0
• The Apache License, 2.0
• The Apache Software License 2.0
• ….
The Human Factor
Internet with millions of
open source libraries!
pull new OS library
pull new OS library
pull new OS library
Software developers download open source libraries every day and they
don’t care about licenses!
commercial
company
TheLicenseProblem
How to avoid that a software
developer pulls in a open source
library with a copyleft license?
LicenseManagementSoftware
LicenseManagementwithVersionEye
http://blog.versioneye.com/2014/09/15/license-whitelist/
www.VersionEye.com
Keeps an eye on more than 550K open source libraries!
Supports 22 Languages and 10 Package Managers!
current status at 5th March 2015!
VersionEyeEnterprise
https://www.versioneye.com/enterprise
@RobertReiz
Questions?
@VersionEye
#ContinuousUpdating

More Related Content

PPTX
Ansible presentation
PDF
Introduction to Ansible
PDF
Ansible - A 'crowd' introduction
PDF
Ansible Introduction
PDF
Getting Started with Ansible
PDF
Vagrant For DevOps
PDF
Automated Deployment with Capistrano
PDF
Infrastructure = Code
Ansible presentation
Introduction to Ansible
Ansible - A 'crowd' introduction
Ansible Introduction
Getting Started with Ansible
Vagrant For DevOps
Automated Deployment with Capistrano
Infrastructure = Code

What's hot (20)

PPTX
Vagrant to-aws-flow
PDF
Ansible Oxford - Cows & Containers
PPTX
Ansible: How to Get More Sleep and Require Less Coffee
PPTX
Docker - Demo on PHP Application deployment
PDF
Docker Security Deep Dive by Ying Li and David Lawrence
PPTX
Go Faster with Ansible (PHP meetup)
PDF
Introduction to ansible
PDF
What's New in Docker 1.12 (June 20, 2016) by Mike Goelzer & Andrea Luzzardi
PPTX
Warden @ Meet magento Romania 2021
PDF
Building A SaaS with CoreOS, Docker, and Etcd
PPTX
A Survey of Container Security in 2016: A Security Update on Container Platforms
PDF
CI and CD at Scale: Scaling Jenkins with Docker and Apache Mesos
PDF
Deploying PHP Applications with Ansible
PPTX
Docker orchestration
PDF
DockerDay2015: Docker orchestration for developers
PDF
Docker Orchestration at Production Scale
PDF
Chef Provisioning a Chef Server Cluster - ChefConf 2015
PDF
Ansible, best practices
PPTX
PPTX
Orchestration? You Don't Need Orchestration. What You Want is Choreography.
Vagrant to-aws-flow
Ansible Oxford - Cows & Containers
Ansible: How to Get More Sleep and Require Less Coffee
Docker - Demo on PHP Application deployment
Docker Security Deep Dive by Ying Li and David Lawrence
Go Faster with Ansible (PHP meetup)
Introduction to ansible
What's New in Docker 1.12 (June 20, 2016) by Mike Goelzer & Andrea Luzzardi
Warden @ Meet magento Romania 2021
Building A SaaS with CoreOS, Docker, and Etcd
A Survey of Container Security in 2016: A Security Update on Container Platforms
CI and CD at Scale: Scaling Jenkins with Docker and Apache Mesos
Deploying PHP Applications with Ansible
Docker orchestration
DockerDay2015: Docker orchestration for developers
Docker Orchestration at Production Scale
Chef Provisioning a Chef Server Cluster - ChefConf 2015
Ansible, best practices
Orchestration? You Don't Need Orchestration. What You Want is Choreography.
Ad

Viewers also liked (15)

PDF
Docker Introduction
PDF
2014 10-14: GitHub plus FOSS == 1 million SPDX
PDF
SPDX 2.0: introduction
PDF
Continuous Updating with VersionEye at code.talks 2014
PDF
Idiomatic gradle plugin writing
PDF
Docopt, beautiful command-line options for R, user2014
PDF
Spdx - fossbazaar - licensing - fossa2010
PPTX
Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築
PDF
Angular 4がやってくる!? 新機能ダイジェスト
PDF
JAWS-UG Meets Windows (JAWS Days 2017)
PDF
サーバーレスでシステムを開発する時に⼤切な事
PDF
AWSKRUGの現状 (Sanguk Park) - JAWS Days 2017
PDF
Cross-regional Application Deplolyment on AWS - Channy Yun (JAWS Days 2017)
PDF
サーバーレスの今とこれから
PDF
DevOpsとか言う前にAWSエンジニアに知ってほしいアプリケーションのこと
Docker Introduction
2014 10-14: GitHub plus FOSS == 1 million SPDX
SPDX 2.0: introduction
Continuous Updating with VersionEye at code.talks 2014
Idiomatic gradle plugin writing
Docopt, beautiful command-line options for R, user2014
Spdx - fossbazaar - licensing - fossa2010
Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築
Angular 4がやってくる!? 新機能ダイジェスト
JAWS-UG Meets Windows (JAWS Days 2017)
サーバーレスでシステムを開発する時に⼤切な事
AWSKRUGの現状 (Sanguk Park) - JAWS Days 2017
Cross-regional Application Deplolyment on AWS - Channy Yun (JAWS Days 2017)
サーバーレスの今とこれから
DevOpsとか言う前にAWSエンジニアに知ってほしいアプリケーションのこと
Ad

Similar to Dependencies and Licenses (20)

PDF
Managing Software Dependencies and the Supply Chain_ MIT EM.S20.pdf
PPTX
Open Source Licence to Kill in Software Development
PDF
Eclipse Day India 2015 - Keynote (Mike Milinkovich)
PDF
Managing the Software Supply Chain: Policies that Promote Innovation While Op...
PPTX
Contemporary software TRENDS SOFTWARE TRENDS
PDF
FOSS-intro-with-license
PDF
"Open Source licensing and software quality" by Monty Michael Widenius @ eLib...
PPT
Introduction To Open Source Licenses
PPTX
Hidden gotcha’s of various open source licenses
PPT
Open Source in the Enterprise: Compliance and Risk Management
ODP
Open Source is Not An Alternative, It is The Solution
KEY
Using Open Source for Enterprise
PDF
Understanding and implementation of open source ecosystems final
PPT
open source
PPT
open source
PDF
Apache coneu 2009-adrian-trenaman-adopting-open-source-in-the-enterprise
PDF
Legal Issues in Developing in a Hybrid Envionment with Open Source Software
PPTX
OPEN SOURCE SOFTWARE
PPT
Opensource
PDF
SFScon19 - Alexios Zavras - Free Software in the industry a view from the lar...
Managing Software Dependencies and the Supply Chain_ MIT EM.S20.pdf
Open Source Licence to Kill in Software Development
Eclipse Day India 2015 - Keynote (Mike Milinkovich)
Managing the Software Supply Chain: Policies that Promote Innovation While Op...
Contemporary software TRENDS SOFTWARE TRENDS
FOSS-intro-with-license
"Open Source licensing and software quality" by Monty Michael Widenius @ eLib...
Introduction To Open Source Licenses
Hidden gotcha’s of various open source licenses
Open Source in the Enterprise: Compliance and Risk Management
Open Source is Not An Alternative, It is The Solution
Using Open Source for Enterprise
Understanding and implementation of open source ecosystems final
open source
open source
Apache coneu 2009-adrian-trenaman-adopting-open-source-in-the-enterprise
Legal Issues in Developing in a Hybrid Envionment with Open Source Software
OPEN SOURCE SOFTWARE
Opensource
SFScon19 - Alexios Zavras - Free Software in the industry a view from the lar...

More from Robert Reiz (10)

PDF
Silicon Valley vs. Berlin vs. Mannheim
PDF
Go with Go
PDF
Infrastructure Deployment with Docker & Ansible
PDF
Api Days Berlin - Continuous Updating
PDF
Gruenden indercloud
PDF
Continuous Updating
PDF
VersionEye for PHP User Group Berlin
KEY
Silicon Valley
PDF
Software Libraries And Numbers
PDF
Ruby for Java Developers
Silicon Valley vs. Berlin vs. Mannheim
Go with Go
Infrastructure Deployment with Docker & Ansible
Api Days Berlin - Continuous Updating
Gruenden indercloud
Continuous Updating
VersionEye for PHP User Group Berlin
Silicon Valley
Software Libraries And Numbers
Ruby for Java Developers

Recently uploaded (20)

PDF
System and Network Administraation Chapter 3
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
AI in Product Development-omnex systems
PDF
Nekopoi APK 2025 free lastest update
PPTX
ISO 45001 Occupational Health and Safety Management System
PDF
How Creative Agencies Leverage Project Management Software.pdf
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PDF
Understanding Forklifts - TECH EHS Solution
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PPTX
L1 - Introduction to python Backend.pptx
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PDF
Softaken Excel to vCard Converter Software.pdf
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PPTX
Introduction to Artificial Intelligence
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
System and Network Administraation Chapter 3
Internet Downloader Manager (IDM) Crack 6.42 Build 41
AI in Product Development-omnex systems
Nekopoi APK 2025 free lastest update
ISO 45001 Occupational Health and Safety Management System
How Creative Agencies Leverage Project Management Software.pdf
Odoo Companies in India – Driving Business Transformation.pdf
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Understanding Forklifts - TECH EHS Solution
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
L1 - Introduction to python Backend.pptx
How to Migrate SBCGlobal Email to Yahoo Easily
Design an Analysis of Algorithms II-SECS-1021-03
How to Choose the Right IT Partner for Your Business in Malaysia
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
Softaken Excel to vCard Converter Software.pdf
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Introduction to Artificial Intelligence
Wondershare Filmora 15 Crack With Activation Key [2025

Dependencies and Licenses