Download - Software Libraries And Numbers
![Page 1: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/1.jpg)
SOFTWARE LIBRARIES AND NUMBERS
Wednesday, December 5, 12
![Page 2: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/2.jpg)
ROBERT REIZhttp://www.versioneye.com/https://twitter.com/robertreiz
Wednesday, December 5, 12
![Page 3: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/3.jpg)
WHAT IS A SOFTWARE LIBRARY?
Wednesday, December 5, 12
![Page 4: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/4.jpg)
RE-USABLE PEACE OF SOFTWARE WITH AN
APPLICATION PROGRAMMING INTERFACE
(API)
Wednesday, December 5, 12
![Page 5: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/5.jpg)
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
![Page 6: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/6.jpg)
HOW TO GET IT?
Wednesday, December 5, 12
![Page 7: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/7.jpg)
Wednesday, December 5, 12
![Page 8: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/8.jpg)
Wednesday, December 5, 12
![Page 9: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/9.jpg)
OLD SCHOOL!
Wednesday, December 5, 12
![Page 10: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/10.jpg)
USE PACKAGE-MANAGERS!
Wednesday, December 5, 12
![Page 11: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/11.jpg)
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
![Page 12: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/12.jpg)
WHY TO USEPACKAGE-MANAGERS?
Wednesday, December 5, 12
![Page 13: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/13.jpg)
BECAUSE OF DEPENDENCIES!
Wednesday, December 5, 12
![Page 14: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/14.jpg)
A SOFTWARE LIBRARY CAN USE OTHER
SOFTWARE LIBRARIES!
Wednesday, December 5, 12
![Page 15: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/15.jpg)
A DEPENDS ON BB DEPENDS ON CB DEPENDS ON DD DEPENDS ON X
Wednesday, December 5, 12
![Page 16: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/16.jpg)
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
![Page 17: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/17.jpg)
PACKAGE-MANAGERS ARE RESOLVING RECURSIVE
DEPENDENCIES
Wednesday, December 5, 12
![Page 18: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/18.jpg)
WWW.VERSIONEYE.COMMETA SEARCH ENGINE
Wednesday, December 5, 12
![Page 19: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/19.jpg)
META INFORMATIONS FROM ALL PACKAGE-MANAGERS IN ONE
SINGLE DATABASE.
Wednesday, December 5, 12
![Page 20: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/20.jpg)
VERSION EYE MAKES DEPENDENCIES AND
COMPLEXITY VISIBLE
Wednesday, December 5, 12
![Page 21: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/21.jpg)
http://www.versioneye.com/package/rails
Wednesday, December 5, 12
![Page 22: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/22.jpg)
WHICH SOFTWARE LIBRARY IS MORE COMPLEX?
Wednesday, December 5, 12
![Page 23: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/23.jpg)
Wednesday, December 5, 12
![Page 24: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/24.jpg)
SOME NUMBERS
Wednesday, December 5, 12
![Page 25: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/25.jpg)
HOW DO YOU KNOW THAT A PROJECT IS STILL ALIVE?
Wednesday, December 5, 12
![Page 26: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/26.jpg)
Wednesday, December 5, 12
![Page 27: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/27.jpg)
Wednesday, December 5, 12
![Page 28: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/28.jpg)
HOW MANY SOFTWARE ARTIFACTS PER LANGUAGE?
Wednesday, December 5, 12
![Page 29: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/29.jpg)
Java
Ruby
Python
Node.JS
PHP
0 125000 250000 375000 500000
Java 473413Ruby 456282Python 275904Node.JS 128647PHP 38901
Wednesday, December 5, 12
![Page 30: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/30.jpg)
HOW MANY LIBRARY PROJECTS PER LANGUAGE?
Wednesday, December 5, 12
![Page 31: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/31.jpg)
https://www.versioneye.com/statistics/
Wednesday, December 5, 12
![Page 32: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/32.jpg)
WHICH REPOSITORY IS GROWING LIKE CRAZY?
Wednesday, December 5, 12
![Page 33: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/33.jpg)
https://www.versioneye.com/statistics/
Wednesday, December 5, 12
![Page 34: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/34.jpg)
18%
82%
Java Open Source Libraries
Central MVN Repo Other Repos
Wednesday, December 5, 12
![Page 35: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/35.jpg)
YOU WANT MORE NUMBERS?
Wednesday, December 5, 12
![Page 36: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/36.jpg)
HOW OFTEN IS A LIBRARY USED?
Wednesday, December 5, 12
![Page 37: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/37.jpg)
85%
15%
Usage of JUnit
Using JUnit Not Using JUnit
99%
1%
Usage of TestNG
Using TestNG Not Using TestNG
Wednesday, December 5, 12
![Page 38: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/38.jpg)
MORE NUMBERS COMING SOON
Wednesday, December 5, 12
![Page 39: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/39.jpg)
MANY THANKS
Wednesday, December 5, 12
![Page 40: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/40.jpg)
DO YOU HAVE QUESTIONS?
Wednesday, December 5, 12
![Page 41: Software Libraries And Numbers](https://reader036.vdocuments.site/reader036/viewer/2022062615/54810b78b4795983578b4853/html5/thumbnails/41.jpg)
DO YOU HAVE QUESTIONS?
TALK TO MEMY NAME IS ROBERT REIZ
Wednesday, December 5, 12