All Hail Bloatware
Zarn writes "In Tuesday's Slate edition Andrew Shuman, in his
article The Love Bloat, argues that the problem with bloated software is that it isn't bloated enough and that we, the customers,
are the ones demanding bloat! " Heh. I'm wiping a tear off of my check from laughing so hard - Jonathan Swift, here we come.
Emacs is just an editor. All it does is accept input from the user. Well, that and run Lisp programs.
Don't all programs just accept input from the user? To tell you the truth, I've never seen "just an editor" applied to Emacs. Usually it's the "kitchen sink" that comes to mind.
But anyway, speaking about bloat. I just started a new XEmacs process on a Solaris Sun box with 196Mb of RAM. Did a 'ps' which in my case evaluates to 'ps -e -o user,pid,pcpu,pmem,vsz,tty,comm | sort -r -k 3,3 | more' and lo and behold: my new XEmacs process (no files open except for scratch) takes 4.3% of my memory (pmem: that's the resident set and is equal to 0.043*196 = 8.4Mb) or 10072Kb (vsz: allocated space). I don't know about you, but from my point of view these are pretty high numbers for "just an editor".
Note that I am not complaining -- I have enough memory and XEmacs is one of the more useful things I've run across -- but it is not lean-and-mean by any count.
Also, the initial point was to contrast the one-program-does-all philosophy and the many-small-tools approach. Emacs does use other programs, sure, but the design goal of Emacs was that you never have to leave its environment -- shell, mail, compile, etc. are all available from within Emacs. Contrast this to the design of Unix: for example the 'ps' alias above uses three Unix programs to achieve the result I want.
Anyway Emacs is just a front end to other programs.
No. Shell can be thought of as a front-end to other programs, but I don't see it as useful to think of Emacs in these terms. If all you want to do is to call other programs, use shell scripts -- no need for a Lisp interpreter to be involved.
Kaa
Kaa
Kaa's Law: In any sufficiently large group of people most are idiots.
> I'm much happier with the UNIX way of having small applications that do just enough.
Bingo!. You prefer the "many small utils that do one thing and do it well" approach over the "one big app that does everything" approach.
Realize that not everyone prefers things this way. I also like this way of doing things, but my mother (for example) does not.
I use her as an example often, because she is a "typical" (is there such a thing?) PC user. She teaches chemistry at college level, and uses MS-Word to make up her exams, MS-Excel to keep track of her students' marks, etc... and Netscape to surf the web. She logs in to her AIX account and uses Pine to get her mail, and is quite happy.
She has no interest in using any apps other than those 5 I just mentioned (Word, Excel, Netscape, Pine, (VT-Terminal)).
Even just using MS-Word to make up an exam, if she has to ermbed a molecular diagram or something in the document, she will use Word's built-in "MS-Draw" thingie (even though it sucks rocks); she will use the equation editor extensively and all the rest (actually, she uses a lot of the built-in features).
And you know what happens if she needs to embed an image that is more complex than the MS-Draw sub-applet can handle?
I head for the hills -- fast!
The amount of complaining and grousing she will do at having to use a different program to draw the image, then import it back into her document is more than I, for one, care to handle.
She's not stupid, she is quite capable of doing it. But she doesn't want to. She wants to be able to open a single application (MS-Word), and create everything she needs -- from scratch, if needs be, then print it out, without ever having to use another program.
And most of the time, Word allows her to do this. Which is why she's happy with it. And why I wouldn't even try to convince her to use something like vi, that can't even "format text to a given width" in and of itself.
It's a different philosophy, because it suits her needs better.
You (and I) prefer many small utilities that work together. She prefers a single large app. Neither approach is necessarily "better", just different.
So, perhaps you "cannot accept that many of the "features" in (say) MS Word belong in a word processor."
I can.
--
- Sean
It's a fine line between trolling and karma-whoring... and I think I just crossed it.
- Sean
Every program expands until it can read mail!
Of all the comments I've ever posted, this is definately one of them
In salon.com Andrew Leonard has an article about it.
The development tools that are used contribute to bloat as well. In the early 80's, when PC's and other computers didn't have much memory, developers often used Assembly Language, resulting in very lean, fast programs.
Of course writing a big app in assembly will drive you insane. As PCs got bigger, C and C++ were used, and developers increaingly linked in bigger and bigger libraries. This helped contribute to the bloat.
Of all the comments I've ever posted, this is definately one of them
This article is scary, since I don't think the author (a self-confessed Micros~1 programmer) is kidding.
>Sadly, it is you, the customer, who demands bloat, forever clamoring for new features.
[...]
> The day that Microsoft fails to convince you to upgrade--i.e., to buy a product that the malcontents call bloated--is the day that Redmond becomes a ghost town.
In other words, "the customer demands" that Micros~1 stays in business and keeps hauling in money. Yeah, right.
> Most bloatware complaints come from users who own 2-to 3-year-old machines. They don't understand that the new (bloated) versions of software are meant for the new 400-megahertz machines [...] not their Pentium 133 doorstops
This would be OK, _IFF_ there was any form of document compatibility between versions. Otherwise, it's just a forced-upgrade circle jerk with the CPU manufacturers. "Sorry, your 1997 car doesn't work with the 1999 gasoline". AutoCAD is another program which regularly pulls this scam, and I think it's about time for customers to stop accepting this philosophy.
> The elegance of the Windows 98 operating system is that it runs practically every application from the DOS days and all those goofy Windows 3.1 programs.
Insert your own sarcastic reply here.
>Software companies take your wish lists seriously, and then make them happen.
So in closing, which customer asked for dancing paperclips, and can somebody please hurt him/her???
Hotdog users are always going to resent online help. It threatens their guru status when people stop begging them for assistance, and start doing it themselves.
For all the people I've talked to about it, the paper clip itself isn't an annoyance. We don't care for the notion that the help system is somehow made more useful by appointing an animated character as its gatekeeper.
To put it another way:
- I don't want to show off how studly I am by memorizing every feature of an application.
- I don't want people "begging [me] for assistance". (I prefer that they have a good, complete, accurate help system so they don't bother me with their questions.)
- I don't want 'themes' for the Office Assistant.
- I don't want to be bothered by someone's idea of a 'friendly face' popping up to offer me advice on a program I'm already familiar with.
- I want to press F1 and get the help index.
- I want help to show up when I ask for it and at no other time.
I don't hate "the paper clip" because I want a bad help system. I hate it because (for me, at least) it's a very poor interface to the help system.The problem with easter eggs is that they obviously didn't go through any formal review process. Flight simulators and the like may be an exception, but *some* easter eggs are nasty lawsuit bait that *no* company would ever let out the door.
Anything that doesn't go through a formal review process is an unknown. Maybe it's bug free, or maybe it has a nasty bug that will make the entire product look bad. Run "flight simulator" and corrupt your disk. Or maybe it has actively malicious code embedded inside. Run "flight simulator" and have a copy of all "encrypted" Office documents ftp'd to a remote site, if you also have network connectivity.
We simply don't know.
The software vendor simply doesn't know.
And that uncertainty, in itself, is enough to cast a dark shadow on the product. It brings to mind angry line workers who weld bolts into car body cavities so the victim will be plagued with an uncorrectable rattle. Or the angry construction worker who seals a carton of milk, with a small hole, behind the drywall so the annoying owner who comes by with his annoying requests will suffer from an unlocatable stench for years.
I don't mind a simple group photo or list of contributors; in fact I think it's very reasonable to put that information under the "About" button so the programmers can show pride in their work. But anything beyond that raises serious questions about the quality of the software produced in that shop.
For every complex problem there is an answer that is clear, simple, and wrong. -- H L Mencken
Look, Navigator is bloated on every platform, not just Linux. What an advertisment for cross-platform-icity: "Navigator! Bloated on over forty platforms!"
--
Paul
I hate bloatware, but, at least with M$ the problem is not the features, the problem is usually easter eggs. Why does Excel need a 3D flight simulator? why does word need a pinball game? why does outlook need a picture of the developement team. These are not features and I doubt they were on "consumer wish lists" if they are features they should be advertised as such. but they won't be because its just wasted code.
anyhow that's my $0.02
"Karma can only be portioned out by the cosmos." -- Homer Simpson
Yes, that's exactly what programmers do! This is especially true for people working on projects like MS Office - the more features the program has, the easier it is to sell as an upgrade. I fully expect many programmers on the Office team to sit around talking about what more junk they can throw into their suite. In fact, it would not surprise me in the least if there was some kind of monetary reward program for people who come up with the most ideas. Certainly anything that can be patented is rewarded.
Timur Tabi
Remove "nospam_" from email address
Bloat is not our friend.
Yes, it is true that people are demanding more and more new features, and they also demand backwards compatibility, and these things do take more space.
But it is mostly the fault of the software companies.
Any large system becomes bloated. Just look any large burocracy. The problem is communication between all of the people who are writing the software. They don't coordinate, and they don't care about the system for the system's sake. They do thier job with the least amount of effort on thier part. If it's easier for them to make a new file format rather than stick with the old one, then we have a new format, and one more bit of old code for 'backwards compatibility'. Why bother coordinating this fancy feature with the one the guy down the hall is writing so that we don't suck up all of the processor. Why don't we write the same routine as ten other people because we didn't know somebody else had written it already for their own work? Why not assume that everybody who wants to run this program has a computer under 2 years old? Why not add in hard-coded limits to data sizes and whatnot just for the sake of convienience?
Why doesn't anybody put any effort into making their software elegant, internally coordinated, optimized, and expandible for the future?
One was to register for a conference, and was used to check that the data was complete (not that this justified it). The other used it ust as gratuitiously, to get at the realaudio broadcast of foxnews.
Aside from that, I have yet to see a useful application of java or javascript on a webpage. But then, I also beleive in jail time for blinking text or gifs . . .
The thing is, some linux, has gotten bloated also. Anyone every use netscape!? It runs slow on a AMD 400 w/ 256 megs of ram.
[munch]
Is there any open source browser that are faster, leaner, meaner, not as bloated or buggy as netscape? Just pictures and text, no java, no java scripts, no nothing , runs under X with pictures and text, that is all anything else in it, is bloat.
If you just want pictures and text, then why not run Mosaic 2.0 or Netscape 1.1? That's pretty much all they they do. And they are small and fast. Nevermind that they won't display 90% of all web pages properly, since most web pages contain a lot more than just pictures and text now.
No-one forces you to upgrade. If you want to use old software with fewer features, go for it.
"Tomorrow's forecast: a few sprinkles of genius with a chance of doom!" - Stewie Griffin
muLinux is probably the most versatile and interesting one-floppy-disk distribution of Linux out there. (Mr.) Michele Andreoli has written some incredible apps, such as an http server that's less than 1500 bytes in size. You can get X-windows on a second floppy, too. If you want it all (gcc compiler, ssh...), you'll have three floppies to deal with. I've been having lots of fun with this package...and very little bloat.
Check it out at www.sunsite.auc.dk/mulinux
Certified Microsoft Notworking Specialist
"Look, Navigator is bloated on every platform, not just Linux. What an advertisment for
cross-platform-icity: "Navigator! Bloated on over forty platforms!" "
Navigator is bloated because it doesn't know what it is. "I'm a browser" "I'm a newsreader" "I'm an editor" "I'm a mailer" "I'm a JVM" "I'm a javascript
I really don't understand why Netscape don't break it into components and market it as a "suite" of nice, small, streamlined programs.
--
"Create [software] that even and idiot can use, and only an idiot will want to use it."
I don't know who came up with this quote, but it seems to fit. Seems that bloated software is mostly for people who don't "get" computers, but who *do* use them every day. This accounts for over 90% of the computer-using populous.
The downside is that the other 10% (or less) are nearly forced to use the bloatware also because the first 90% say "Here's that file I wanted you to look at, it's saved using Office 97." These are the same people who use MS Excel (or Word) to store record-and-field (read database) type info because they don't know what a database is or does.
I spend approximately 5-10% of my time writing scripts that do data conversion because someone decided to use "Bloatware" to do a particular job rather than the "correct" software. Why? Because "It's so easy to use!"
On the flip side, I *can't* use some of these products, because they're "too easy" to use. I still create HTML using a text editor. I'm the only one at my company (a multimedia company that produces web sites) who does this. Everyone else uses Frontpage, then wonders why the pages don't work right in Netscape. I will not use Word because it *insists* on correcting my "mistakes," and tries to anticipate what I want to do. If I put the letter 'c' in parentheses, it automatically converts it into a copyright symbol.
If I wanted a freekin copyright symbol, I would have used charmap.exe.
Enough soapboxing. =)
I don't buy that bloat is caused solely (or even *predominantly*) by user-requested (user-wanted as per market study) features.
For instance, who the heck asked for that damn paper clip and his moronic friends!!?? Who thought to themselves: "Damn it! I can't do a thing with this Office97...hey! I know! A dancing paper clip would really help me a lot!"
Also...Users don't buy upgrades JUST for new features. In fact, I'd argue users buy upgrades JUST so that they can stay current enough to work with everyone (and everything) else. Maybe if Microsoft didn't break its old file formats and introduce new ones every rev then people wouldn't upgrade as much. I got Word 6.1 for free with a new computer and have to date not installed a new one. I can't use documents from work though (and NO, it was not my choice to use MS Office...).
In the same vein, I think embedding HTML functionality into everything is stupid. I hate getting those bloat laden HTML messages from people in Pine, which I have to decipher for myself. Sometimes these messages include two attachments: one HTML attachment for bloated email readers, and one plain text attachment for normal ISO8859_1 readers. Over double the bandwandth of the simple plain text message. Most people don't even know this feature is on when they sprinkle bold, italic, and font tags all through there 1 line message and 6 line sig.
Bloat is also caused by laziness. I guess nobody at Microsoft ever thought "Hey, if we actually took the 3 extra months to get this really tight we might have a product consumers would buy and not feel like it was being stuffed down their throat." The lazy approach to complexity is to just scale up the same techniques and practices you were doing before. It's easy to copy your O(2^n) parser from Bloatv1.0 to Bloatv2.0 to use with files 10 times bigger. It's harder to redesign the whole architecture.
In any case, it seems to me the bloat coming out of MS is more due to two things: 1) Introducing useless technologies and additions to 2) Position themselves strategically for even more dominance,
than attempting to add things users *want*. Heck, I've *wanted* a smaller, tighter office suite for years...they haven't added *that* feature.
It's 10 PM. Do you know if you're un-American?
As for fast lean web browsers, chimera, arena, and amaya all come to mind, except they've all been in beta-state with no development since 1996. Arena would be great if it didn't segfault trying to load most web pages. Amaya would be even better if it didn't try to be something I don't need (an html editor) and crash whenever I try to follow a hyperlink. Chimera looks nice but I have yet to see it do anything Mosaic couldn't do. And the newest version won't even compile for me. Of course, the newest version was released over 2 years ago. I'd be willing to work on some of those older browsers, trying to get them to a functional state, if there was any interest. Anyone else? mail me if you're interested in something like that. I don't want the newest and shiniest with all the features, like the Mozilla team, just something that works right and doesn't take up more than 4 megs of ram to run.
Netscape is bloated because of the mail, news, composer, instant messenger, and everything else even vaguely internet-related built in. I remember that 3.0 was a lot better for not using up as much ram but I had to dump it because it was hideously unstable. Heh. Now I can't even surf without filling up my 32 megs of ram and watching netscape fandango on core.
I'm really looking forward to Opera's linux release. Unfortunately, it's payware, but if the linux version is as good as the windows version, I'll shell out the $20. It's definately worth the money. Until then, I'm finding Mozilla to my liking. Everything except the hideous "chrome" bits. When I use mozilla, I only use the "viewer" part, with the bare-minimum user interface and the "my, that's alpha" feel. And it only consumes 10 megs of ram running. (heh. Only. I seem to recall running netscape 2.0 in 4 megs of ram sometime long, long ago.)
Maybe I need to try Mosaic again. If I remember my specs right, it didn't support any of the things I dislike about the "modern web", things like animated gifs, java(script), CSS, dhtml, and frames. Maybe I should just get off my duff and start coding something better. Mozilla tries too hard to be like netscape. I want something for just plain old browsing the web. Is that too much to ask? Oh, and it has to have pictures. lynx is great, but I need to get my pr0n somehow.
Enough of my ranting. Please feel free to point me in the direction of any other projects like this, or if there isn't any, I can damn well do it myself. Or die trying.
Leapfrog, (pfitzger@fyiowa.infi.net)
Best article I have seen on the causes of bloat in MS products is R.A. Downs's analysis of bloat in RegClean Version 4.1a Build 7364.1. In a program of 818KB, he finds 350KB (that's over 40% of "bloat," including unused cursors, dialogs, string entries, tool bar, menus, icons, etc. You might quibble with some of what he counts, but the basic point is powerful.
A. Michael Froomkin
U. Miami School of Law,POB 248087
Coral Gables, FL 33124,USA
I have a blog.
Unfortunatly you are right.
* ***
I come from a sales background dealing with the
average "joe user." (I worked sales while getting
my comp-sci degree). The only way to successfully
make a sale and compete against you competitors is
to
1) Find out the persons "needs" (read *wants*)
2) Tie down the customer to those "needs" that
map to a feature set in your product. Then
hammer on the features that are unique to your
product over the competition.
3) Explain each feature, the benefit of it to the
customer, and then tie down (i.e. get him to
agree with you) and then close.
It goes like this.
Qualify,
Feature -> Advantage -> Benefit -> TieDown
Feature -> Advantage -> Benefit -> TieDown
Feature -> Advantage -> Benefit -> TieDown
.....
close
close
close
(i.e. close the sale)
In the mainstream world of computing (joe user),
it's features that sell. The feature of stability
is hard to sell to the average user b/c they
a) expect it to be stable (and if you try to
push this too much they'll lose confidence in
you and your product and go somewhere else
where your competitor will tell them all
their products are stable and get the sale).
b) It's not glamorous.
The "feature" of not being bloated doesn't sell
because it has much less "features" compared to
the "bloated software" (which normal people
really care very little about until they have
to upgrade). The software industry read *MS* has
done a good job of ingraining people with the
mentality that they NEED the latest bloat.
High tech, enterprise companies are different
b/c they have IT staff. But small businesses are
the same as joe user b/c usually the suits are
dumber than stumps.
****************************************
Superstition is a word the ignorant use to describe their ignorance. -Sifu
Hmmm, I thought your point was that
satisfying consuder demand was paramount. But I'm not convinced that consumers *want* all their information tools merged into 'one seamless whole'. What's so great about seamlessness?
I like modularity. Let's not forget, the entity
doing the "seaming" has vested interest in seaming together useful tools with gargabe we
don't want. Remember push-technology seamed-in
with the browsers... wasn't that just grande; advertising seamlessly packaged with the
browser (and OS?), pushed right into our faces.
Is this what we really want?
Do we really want our software to anticipate our needs. Or is MS and other corps. telling US this is what we need? When you type a search term into a search-engine, do you prefer the engine to respond to your direct request for pages containing keywords, or do you prefer the engine to figure out what you 'REALLY' are asking for?
Modularity over seamlessness, Responsiveness over anticipation, any day.
"Is this just useless, or is it expensive as well?"
I can give you a very serious answer to that. I write bloatware for a living. I am directly responsible for a handful of bloated DOS apps.
And the reason is this: Nobody pays me to spend the time to rewrite a system from scratch. They just want features added. And they always want the lowest short-term cost they can get.
It's just like evolution. Code is bloated for the same reason that your optic nerves are wired backwards, or that giraffes have an esophagal nerve that goes down, around their heart, and back up to the brain. Greedy optimization algorithms.
For example (this is a real life example): I just added Yet Another Report to a clinic's billing system. The report in question is very similar to one that I did last year. So what I did was this: I copied the old code and modified it. Now the program has two modules that are very similar with a lot of (nearly) duplicated functionality.
I could have rewritten the old code to be more general-purpose and called it twice: once from the "old" version of the report, and once from the "new" one. But this would have taken me a little bit longer. Likewise, you're probably wondering why I didn't just write it in a general way to begin with. Well, I try. When I know that I'm going to end up reusing some code, I'll do that. But if I don't know, then it's sometimes hard to justify the additional time taken to do the Right Thing.
That's the problem with doing the Right Thing: sometimes it just takes a little bit longer. Someone has to pay for that time, and non-programmers usually don't get what I'm talking about when I bring up issues related to the "cleanliness" of code. Quick and dirty almost always wins over long-term maintainability and elegance.
Oh, and there's another reason for bloat too: Once you have an installed base, you can never remove anything, no matter how braindead you think it is. Why? Because I never know how many (if any at all) of the end users are using some feature. Making the program better isn't worth the risk of getting complaints like, "I loaded the update and now my old inventory system doesn't work."
FWIW, in amateur projects where I don't have to be accountable to anyone, I do try to do the Right Thing. Heck, I used to be a VIC-20 programmer who would actually spend hours on a program to make it 12 bytes smaller. The part of my brain that used to do that, is still with me, it's just not the part that gets the bills paid.
As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.
The reasons for the phenomenal bloat in many software packages (particularly MS's) my include user requests for features, but that's a minimal part of it.
In order to sell a product that's competing against another, you have two options. You can advertise that it simply does its job better, that it costs less, or that it does MORE. "More" is generally the easiest to sell. "It works better" is kinda nebulous, and doesn't hold up against a product that has "100 additional features."
Users don't ask for these additional "features"... software developers come up with them in order to better compete. This is especially true in the case of Microsoft, which is often primarily competing against itself. Need to convince users of MS Squeegee87 to upgrade to Squeegee2010 EX Plus Beta Turbo Edition Gold? You pump up the feature list. Saying "we stripped it down so it'll run faster than Squeegee87" or "Yeah, so we made it $30 cheaper" doesn't so much work when they already have a version that "does more".
It's not the coders, mind you... I'm sure the coders would love to strip Office down to a clone of Notepad and a calculator. And this brilliant professional would have you believe that the coders do the design... generally not true.
This article is a perfect example of the arrogant attitude that seems to pervade Microsoft and its ilk. "Why don't you just get a bigger machine like everyone else, you idiot?" seems to be their mantra. My reply: I will. And since it's running a real operating system and decent apps, it'll actually run FASTER than the 233MHz box I'm running now. I don't upgrade to maintain poor performance...I upgrade to better it.
Trust me, I work with people who don't know computers. This is not the reason for bloatware. People who aren't nerds don't give a damn about bells and whistles, as far as I can tell. They really care if the can use the software. If they can open it up and start using with the least amount of fuss, then they are happy. Things like wizards are what they crave, not the latest bell and whistle. Wizards aren't all that bloaty... they are basically scripts that just sit on the application, taking the user through steps he or she wouldn't be able to figure out by themselves.
In addition, the vast majority of people in this situation do not have a choice as to what they use. They have to follow along what their IS department or computer manufacturer installed on their system. Blaming them is like blaming drivers for poor highway design.
The major reason for bloatware is, of course, to continue the cashflow of the manufacturer. Force people to ugrade by selling them bug fixes (which they should get free) or make the file formats incompatible.
Of course, there is also the programmer's seeming inability to declare a project "done." Take EMACS for example. It used to be a text editor. Now... it's... well... more. A lot more. Creeping featuritis is a disease that can be caught by OSS, as well as the commercial sector.
Personally, I think that every application gets to an ideal point of features/bloat. Wordprocessors, for the most part, reached that level years ago. To hammer on them more is counterproductive. Other applications, such as some 3D programs I use, have plenty of room to grow... there is always more things you can do that will add realism, for example. These I don;t think of as bloat, as long as they are easily accessable from the main application. When you start to create obscure little corners of your application that take the user minutes of hunting to find... that's when you've gone into pur bloat mode.
Well, not always -- he does talk about the elegance of Windows [shudder] -- but his basic point is valid: people like to have features not necessarily to use them. IMHO bloat is caused by:
...
(1) One-program-does-it-all philosophy, which by, the way, is a valid design viewpoint. Emacs belongs to this school of thought, while Unix takes the opposite extreme (plenty of small interacting programs).
(2) Monolithic design, which is NOT a feature. MS Word has features targeted at lawyers (and useless for everybody else), at accountants, at writers, etc., etc. You don't need most of them, but get all of them anyway. Pluggable modules would have been a much cleaner solution (you are a lawyer? plug in the "Lawyer" module...)
(3) Feature competition between programs, which is driven by users: "What, your program cannot do a mail-merge to an index which includes animated GIFs and print out each third line?? It sucks, mine can do it!".
(4) The need for backward compatibilitly. This is less visible in application programs and more visible in system tools which often must be bug-for-bug compatible with everything going back ten years or more.
(5) The need to support all hardware under the sun. And the number of cool devices that you can plug into a computer grows and grows and grows and
(6) In the trade-off between a clean/tight code and speed of development, speed almost always wins. In the current business environment projects that are 50% over budget and on time are much much better than projects that are on budget but 50% late. Basically, the slogan is: "who cares whether it is optimized, if it works, ship it!" (in case of MS or games it is often "who cares if it works properly, ship it anyway!")
So I don't believe it is the malice of Microsoft or the incompetence of programmers that gives us bloated programs. Basically the definition of a bloat is "this program demands more resources than I expected it to". Having more resources available is a (not necessarily the) solution. Yes, Office 2000 needs ~200Mb of disk space to install. So what? I recently bought myself another hard drive -- it cost under $200 and is 10Gb in size. Do I care that much about allocating 2% of it to MS Office? Guess.
Bloat is bad in that it adds complexity which is the enemy. Insofar it consumes computer resources it is tolerable.
Kaa
Kaa
Kaa's Law: In any sufficiently large group of people most are idiots.
The author of this article has apparently fallen into the trap that so many other people have; namely, the mindset that the larger a piece of software is, the better it must be. I base this conclusion off of the fact that he seems to correlate bloat with "nifty features" such as voice recognition and "HTML mail."
Is this the bloat you know? Because it isn't the bloat that I know.
We're seeing a trend in software, and it's not a Microsoft-only trend (although one might argue that Microsoft is perhaps the best example.) When you see version 2.0 of a product that has double the system requirements (disk space, memory, processor speed, etc.) of version 1.0, it's pretty hard to explain away the bloat as being "nifty new features" if version 2.0 only provides a few new pieces of functionality. This author would have us believe that if the system requirements of a particular package double from one version to another, then that means that the functionality/usefulness of the new version is double that of its predecessor?
Does anybody really believe that?
For a period of about eight years, I used AppleWorks to do most of my home productivity work. For those of you that may be unfamiliar with it, it was basically an integrated applications suite that contained a word processor, a spreadsheet, and a rudimentary database. The integration was pretty nice; you could insert spreadsheets into your WP documents and the database had features like the always-useful mail merge. And it fit on one side of a 5-1/4" floppy disk, which was 144K.
Now, nobody in their right mind is going to argue that AppleWorks is more powerful than Office 2000. But let's use the author's estimate that a full install of Office requires 200M of disk space (this seems a bit low to me, but what the hell.) By the author's assumption, this means that Office 2000 has 1,422 times the functionality of AppleWorks. Whee! Viva la Office!
It doesn't matter, really; he's preaching to the pew. Microsoft has a large base of loyal customers who have demonstrated time and again that they're really not interested in issues like this. And quite frankly, maybe it's because most of their customers simply don't know enough to complain. (It's hard to suggest this without sounding like an elitist bastard, I know.) In reality, maybe it's pretty tough to blame Microsoft for consistently cranking out some of the most shameless bloatware around. After all, if their customers don't care, then why should they?
The bottom line is this: if you have to "up" the processor requirements and grow your executable size by 20% to accomodate a new, sophisticated rendering engine, then that's one thing. But if you throw in a flight simulator, 600K of unused bitmaps, and a mishmash of other junk and then start complaining about "deadlines", that's something completely different. If it makes me a "whiner" or a "malcontent" to complain about the latter, then I guess I'm proud to stand among the rank-and-file of whiners and malcontents.
Sorry, Redmond; one of the reasons I don't use your stuff is because I don't want to buy a new machine every year. And guess what! Thanks to Linux, I don't have to.
We're going down, in a spiral to the ground
Even the WindowsCE devices are prone to feature bloat (that was the original point of this thread). The classic example: PalmPilots are strictly single-tasking environments, while WindowsCE still multitasks. Unfortunately, you can't see all the applications running in the background, so eventually if you keep switching apps as you would on a PalmPilot, the device crashes.
Microsoft not only insists that it knows what the consumer wants, it insists that its way is right for all platforms. I don't want my VCR, my organizer, and my remote control to crash because they're running WindowsCE... but hey, if "the consumer" wants it, "the consumer" can have it!
For more information, click here.
Windows 3.1 apps that need WINSOCK.DLL to function don't work right under Windows 98. Windows 98 doesn't have enough conventional memory for most good DOS games, and there's no way to control a lot of the stuff that gets loaded. Backwards compatibility is a joke in M$-world.
grep -ri 'should work'
The point of the paperclip was to make Office easier and more friendly towards people with little or no computer experience. Natural language help systems and attractive graphics go a long way to making people feel comfortable with these systems.
YOU may not like them, but there are people that do. I'd wager that there are more people that DO like them than don't or Microsoft would not be continuing to improve them. (The agent in Office 2000 has had quite a bit of work done to it).
Have you been to a trade show (such as Comdex) and watched MS pitch these features to the crowd? They *LOVE* this stuff.
This is the reason so many purely technical based solutions fail in the marketplace. They fail to take into account ergonomics. They fail to take into account cosmetic appeal. Given the choice of two similar products, the vast majority of users *WILL* choose the "prettier" product over the "simple" product, even if the prettier product is inferior in most other ways.
THIS is why Microsoft keeps winning. Sure, their monopolistic practices help, but they would STILL be winning without them.