software libraries and numbers
Post on 04-Dec-2014
2.244 Views
Preview:
DESCRIPTION
TRANSCRIPT
SOFTWARE LIBRARIES AND NUMBERS
Wednesday, December 5, 12
ROBERT REIZhttp://www.versioneye.com/https://twitter.com/robertreiz
Wednesday, December 5, 12
WHAT IS A SOFTWARE LIBRARY?
Wednesday, December 5, 12
RE-USABLE PEACE OF SOFTWARE WITH AN
APPLICATION PROGRAMMING INTERFACE
(API)
Wednesday, December 5, 12
SOFTWARE LIBRARIESBUNDLED AS ...
• JAR file (Java)
•GEM file (Ruby)
•DLL file (.NET)
• tar.gz file (Python PIP)
bundle, share and re-useWednesday, December 5, 12
HOW TO GET IT?
Wednesday, December 5, 12
Wednesday, December 5, 12
Wednesday, December 5, 12
OLD SCHOOL!
Wednesday, December 5, 12
USE PACKAGE-MANAGERS!
Wednesday, December 5, 12
PACKAGE-MANAGERSLIKE ...
•Maven (http://search.maven.org) - Java
•RubyGems (http://rubygems.org) - Ruby
• PIP (http://pypi.python.org) - Python
•Composer (http://packagist.org) - PHP
•NPM (https://npmjs.org/) - Node.JS
Wednesday, December 5, 12
WHY TO USEPACKAGE-MANAGERS?
Wednesday, December 5, 12
BECAUSE OF DEPENDENCIES!
Wednesday, December 5, 12
A SOFTWARE LIBRARY CAN USE OTHER
SOFTWARE LIBRARIES!
Wednesday, December 5, 12
A DEPENDS ON BB DEPENDS ON CB DEPENDS ON DD DEPENDS ON X
Wednesday, December 5, 12
A DEPENDS ON BB DEPENDS ON CB DEPENDS ON DD DEPENDS ON X
IF YOU WANT TO USE A YOU NEED A, B, C, D AND X
Wednesday, December 5, 12
PACKAGE-MANAGERS ARE RESOLVING RECURSIVE
DEPENDENCIES
Wednesday, December 5, 12
WWW.VERSIONEYE.COMMETA SEARCH ENGINE
Wednesday, December 5, 12
META INFORMATIONS FROM ALL PACKAGE-MANAGERS IN ONE
SINGLE DATABASE.
Wednesday, December 5, 12
VERSION EYE MAKES DEPENDENCIES AND
COMPLEXITY VISIBLE
Wednesday, December 5, 12
http://www.versioneye.com/package/rails
Wednesday, December 5, 12
WHICH SOFTWARE LIBRARY IS MORE COMPLEX?
Wednesday, December 5, 12
Wednesday, December 5, 12
SOME NUMBERS
Wednesday, December 5, 12
HOW DO YOU KNOW THAT A PROJECT IS STILL ALIVE?
Wednesday, December 5, 12
Wednesday, December 5, 12
Wednesday, December 5, 12
HOW MANY SOFTWARE ARTIFACTS PER LANGUAGE?
Wednesday, December 5, 12
Java
Ruby
Python
Node.JS
PHP
0 125000 250000 375000 500000
Java 473413Ruby 456282Python 275904Node.JS 128647PHP 38901
Wednesday, December 5, 12
HOW MANY LIBRARY PROJECTS PER LANGUAGE?
Wednesday, December 5, 12
https://www.versioneye.com/statistics/
Wednesday, December 5, 12
WHICH REPOSITORY IS GROWING LIKE CRAZY?
Wednesday, December 5, 12
https://www.versioneye.com/statistics/
Wednesday, December 5, 12
18%
82%
Java Open Source Libraries
Central MVN Repo Other Repos
Wednesday, December 5, 12
YOU WANT MORE NUMBERS?
Wednesday, December 5, 12
HOW OFTEN IS A LIBRARY USED?
Wednesday, December 5, 12
85%
15%
Usage of JUnit
Using JUnit Not Using JUnit
99%
1%
Usage of TestNG
Using TestNG Not Using TestNG
Wednesday, December 5, 12
MORE NUMBERS COMING SOON
Wednesday, December 5, 12
MANY THANKS
Wednesday, December 5, 12
DO YOU HAVE QUESTIONS?
Wednesday, December 5, 12
DO YOU HAVE QUESTIONS?
TALK TO MEMY NAME IS ROBERT REIZ
Wednesday, December 5, 12
top related