[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