I'm trying to update the "Most Deployed Database" page
(https://www.sqlite.org/mostdeployed.html) in the SQLite documentation
(which has not been touched in close to a decade) and I began to
wonder what other software libraries (database or otherwise) might be
deployed more than SQLite.  SQLite is in a lot of things.  My
conjecture is that SQLite is in the top-10 most deployed software
components in the world today.  Check my work, please.  SQLite is in:

  *  Every Android phone and device
  *  Every iPhone and iOS device
  *  Every Mac within the past 10 years
  *  Every Firefox, Chrome, or Safari browser
  *  Every copy of Skype
  *  Every copy of iTunes
  *  Most Python and PHP installations
  *  Every Dropbox client
  *  Every TurboTax and QuickBooks

And more.  But just from the list above, there are not too many
computing devices that omit SQLite.  I'm wonder what other software
components have a greater reach?

The original Jean-loup Gailly and Mark Adler implementation of the
zlib compression library might be deployed more.  Anything else?

What about libjpeg and libpng?  I think there might be multiple
independent implementations of libjpeg in circulation, but I am
unclear on that point - perhaps a reader more knowledgable about this
can correct me.  What about libpng?  Is there just the one original
libpng library used everywhere, or are there competing
implementations?

There appear to be more deployments of SQLite than there are of Linux,
since SQLite is on every Android device, and Android represents the
bulk of Linux deployments.  SQLite is also on most Linux desktops by
virtue of being included with Firefox and Chrome.  And it is on many
Linux servers by virtue of being included in Python and PHP.  Some
fraction of Linux machines may omit SQLite, but that fraction seems
far smaller than (say) the number of iPhones that include SQLite, so
SQLite still comes out numerically superior.

There appear to be more deployments of SQLite than all Apple-built
computing devices, since SQLite seems to be in all Apple products and
SQLite is in many other products as well.

SQLite is not in default Windows installations (historically - that is
about to change with Windows 10 which uses SQLite as a core OS
component) but many Windows desktops will include secondary software
such as Firefox or Chrome or iTunes or Skype or Dropbox or something
else that contains SQLite.  So perhaps most Windows desktops contain
at least one copy of SQLite.  And in any event, I hear that the total
number of smartphones now exceeds the total number of desktops (of any
type, Windows or otherwise) and SQLite is in all of the smartphones.

There are multiple competing implementation of libc, and (unless I am
mistaken) Android and MacOS/iOS use completely independent libc
implementations.  You could argue that various implementations of libc
are collectively more widely deployed than SQLite.  But there is only
one implementation of SQLite, so if we talk about single
implementations rather than competing implementations  of the same
interface, then SQLite seems to still come out on top.

What am I overlooking?  Would it be overly brash to claim that SQLite
is the second most widely deployed software component in the world
today, after the Gailly/Adler zlib implementation?  Or maybe the
third-most after zlib and libpng?

Any input you can provide is appreciated!
-- 
D. Richard Hipp
drh at sqlite.org

Reply via email to