Imagining an Open-Source World
Imagine I've got my very own company. Let's say it's a paint manufacturer. Call it "Doug's Discount Paints" or DDP for short. DDP makes the finest paints available anywhere... at far lower costs than better-known brands. How have we done it?
From the outset at DDP, we've used open-source software.
For basic accounting tasks, we use
GNUcash. Our supply-chain management software is
Compiere ERP and our wholesaler relationship management package is
Compiere CRM. We started off with Oracle licenses but eventually retrofitted our packages to use
MySQL Community Edition.
All of our servers, of course, run on
Linux. The web servers -- it goes without saying -- use
Apache version 2 and
PHP for application serving. In fact, our batch jobs are all driven use
PHP's command-line mode because the scripts are easier to maintain than their
Perl equivalents (though we have plenty of those, too).
Our directory server is
OpenLDAP's slapd, with replication between our boxes provided by
slurpd. The email system used to be
Sendmail, but we're now piloting
OpenXChange.
While we started off with Windows desktops, we've since transitioned to all
Linux desktops. We use
GNOME as our desktop user interface, but some of the developers use
KDE. Our email client is the very capable
Evolution and web browsing is provided by (what else?)
Firefox.
Our basic office suite is
OpenOffice, which we use for word processing, spreadsheet work, and presentations.
So those are the basics of our environment.
The other day, a major software vendor came in trying to pitch a revamp of our architecture. Here was their proposition:
> We've got to pay a hefty fee for the initial software license
> Each year, we need to re-up and pay a maintenance fee
> From time to time, we need to re-license the software when the old version is no longer supported
> When we re-license new versions of the software, we may be forced to simultaneously upgrade our hardware
> There's no access to source code permitted by the vendor, so we're quite reliant on the vendor to add the features we need
> There's also no official support community, so we're dependent upon the vendor for any low-level help
> Product innovation hinges upon the vendor's ability to staff a project, not based upon the product's merits and its ability to attract a community to further its goals
> Security is based upon a promise from the vendor to adequately protect its code from internal and exteranl attacks... it's not something independent parties can verify on an ongoing basis by reviewing source code
After hearing the vendor's pitch, we politely showed them the door.