software libraries and numbers

Post on 04-Dec-2014

2.244 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Software Libraries and Numbers. Some overall numbers from common package managers like Maven2, NPM, RubyGems, Packagist, PIP.

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