[geeks] Software Bloat

Joshua D Boyd geeks at sunhelp.org
Mon Dec 17 09:50:15 CST 2001


On Mon, Dec 17, 2001 at 10:09:40AM -0500, Michael Dombrowski wrote:
> > "Why use SPARCs, when there are all these Windows machines around" 8-)
> > 
> > You can do a *lot* in 512k of memory.  Bloated software (microsoft!)
> > is the problem.
> 
> What does it matter that you can do a whole lot with 512k? Excepting 
> embedded stuff, not a whole lot. And if you look at it properly, 
> software, MS included, has gotten a whole lot less bloated over the 
> years. People say "back in the day Wordperfect was a complete word 
> processor that used 1mb of disk", but that 1mb of disk cost $5. 
> Nowadays the 500mb that Office uses costs about a buck and does more. 
> Maybe I'm just nuts but I see no problem.

Most people who complain about software bloat have a sort-of legitimate 
complaint.  Only sort-of because nobody is forcing them to buy new software.

While people who don't know better use disk space taken as a measure of 
software bloat, I highly doubt that they really care about disk space used.  It
is just something easy and quantifiable to use to justify why they are unhappy
with the new software.

The issue with software bloat (and what gets people really upset though they 
don't know it) is maintainability.  It is taken as an axiom that doubling you
programmers doesn't produce double the development speed, and further, if you
keep doubling your number of coders, you reach a point where things get even
slower still.

Software bloat tends to make software unmaintainable.  If a package grows, but 
actually offers nice upgrades and is well maintained (read, not noticably buggy
and reasonably responsive), only a few people would call it bloated.

The problem is that well maintained software doesn't sell, flashy software 
sells.  And the really disappointing thing is that Microsoft isn't even the 
worst company here.  I'm not a big fan of windows media player, but to me it 
seems far superior to realvideo (on the video playback front) and most of the 
other MP3 playing/CD playing/mod playing programs out there.  It works.  It is
a system hog, but not as bad as other programs.  It generally seems less buggy
than realvideo or voytra or the stuff Creative Labs ships.  Also, speaking of
creative labs, I think they make some of the best sound cards, but the software
they ship (like the control panels and mixing boards, and the players that take
over all of my file associations) is far, far more aggrevating than the tools
MS ships.

And don't even get me started on DVD playback and needing a different player 
for every single different hardware configuration.

I seriously think that free software could be in a better position to get these
stupid media things right.  I think the biggest and most immediate need in 
this area is to get ALSA into the linux kernel.  I don't know if NetBSD or
FreeBSD has anything similar going on.  I gave up trying to install alsa 
myself, but my understanding is that in addition to better hardware support for
multi-chanel hardware, it is also supposed to smooth out a number of the 
problems that I run into with esd versus /dev/dsp (mainly, most of my programs
use /dev/dsp, but parts of GNOME insist on having esd, and they two are a pain
to get to co-exist).  

Other hardware support would also be nice to have more centralized, but at 
least most of the main DVD projects take a sane approach of using plugins for
everything meaning that you don't have to change playback programs if you ever
change your hardware (although not all the programs are equal for all hardware)

Getting back to bloated software on windows, WinAMP has grown in disk space 
quite a bit in recent years.  But still, it mainly offers reasonable features
(OK, visualizations seem silly to me, but obviously many people really, really
like them), a sane architecture (it's plugins do a good job of allowing you
to take advantage of new things without having to switch players.  If only 
hardware manufactors would embrace it), and it still runs very will on a low 
memory (48megs, low by windows standards for several years now) P166.  WinAMP
clearly stands out to me as one of the best windows programs, and it seems
like AOL is finding it easy enough to maintain.

Unfortunately, a word processor is a whole different scale of maintainability.
Still, I think there must be a way.  Emacs isn't bad.  It seems to be easy to
port to new platforms, which often is a good sign for maintainability, plus 
lisp is usually considered a very maintainable language.  Maybe the next time
a team decides to take on the wordprocessor market, they should consider just
building a small simple little run time, and then build the rest on top using
python or guile (I'm partial to guile, but python might be more palletable to
people like my parents).  Then when you release a version that only has 50% of
the features, when mid sized company X says that they need such and such that 
you left out, you can offer to add that feature for a very low price (say less
than they would need to spend on a site license of word).

Writing systems like this in a scripting language could be considered a sign of
bloat by some people.  It probably would require more disk space.  But, it 
should make the software more maintainable, and hopefully faster (easier to 
work with language usually means easier to optimize, plus you can always
rewrite critical parts in C if need be), and if it is those 2 things, most
people won't care about the disk space.

Anyway, I've probably ranted incoherently enough now.  Back to building 
software on top of excel and access.

-- 
Joshua D. Boyd



More information about the geeks mailing list