Free Republic
Browse · Search
News/Activism
Topics · Post Article

Skip to comments.

Rethinking software bloat.
Information week.com ^ | 12/17/01 | Fred Langa

Posted on 12/17/2001 4:33:52 AM PST by damnlimey

Rethinking 'Software Bloat'

PRINT THIS ARTICLE
DISCUSS THIS ARTICLE
WRITE TO AN EDITOR
 
Fred Langa takes a trip into his software archives and finds some surprises--at two orders of magnitude.
By Fred Langa

 
Reader Randy King recently performed an unusual experiment that provided some really good end-of-the-year food for thought:
I have an old Gateway here (120 MHz, 32 Mbytes RAM) that I "beefed up" to 128 Mbytes and loaded with--get ready--Win 95 OSR2. OMIGOD! This thing screams. I was in tears laughing at how darn fast that old operating system is. When you really look at it, there's not a whole lot missing from later operating systems that you can't add through some free or low-cost tools (such as an Advanced Launcher toolbar). Of course, Win95 is years before all the slop and bloat was added. I am saddened that more engineering for good solutions isn't performed in Redmond. Instead, it seems to be "code fast, make it work, hardware will catch up with anything we do" mentality.
It was interesting to read about Randy's experiment, but it started an itch somewhere in the back of my mind. Something about it nagged at me, and I concluded there might be more to this than meets the eye. So, in search of an answer, I went digging in the closet where I store old software.

Factors Of 100
It took some rummaging, but there in a dusty 5.25" floppy tray was my set of install floppies for the first truly successful version of Windows--Windows 3.0--from more than a decade ago.

When Windows 3.0 shipped, systems typically operated at around 25 MHz or so. Consider that today's top-of-the-line systems run at about 2 GHz. That's two orders of magnitude--100 times--faster.

But today's software doesn't feel 100 times faster. Some things are faster than I remember in Windows 3.0, yes, but little (if anything) in the routine operations seems to echo the speed gains of the underlying hardware. Why?

The answer--on the surface, no surprise--is in the size and complexity of the software. The complete Windows 3.0 operating system was a little less than 5 Mbytes total; it fit on four 1.2-Mbyte floppies. Compare that to current software. Today's Windows XP Professional comes on a setup CD filled with roughly 100 times as much code, a little less than 500 Mbytes total.

That's an amazing symmetry. Today, we have a new operating system with roughly 100 times as much code as a decade ago, running on systems roughly 100 times as fast as a decade ago.

By itself, those "factors of 100" are worthy of note, but they beg the question: Are we 100 times more productive than a decade ago? Are our systems 100 times more stable? Are we 100 times better off?

While I believe that today's software is indeed better than that of a decade ago, I can't see how it's anywhere near 100 times better. Mostly, that two-orders-of-magnitude increase in code quantity is not matched by anything close to an equal increase in code quality. And software growth without obvious benefit is the very definition of "code bloat."

What's Behind Today's Bloated Code?
Some of the bloat we commonly see in today's software is, no doubt, due to the tools used to create it. For example, a decade ago, low-level assembly-language programming was far more common. Assembly-language code is compact and blazingly fast, but is hard to produce, is tightly tied to specific platforms, is difficult to debug, and isn't well suited for very large projects. All those factors contribute to the reason why assembly language programs--and programmers--are relatively scarce these days.

Instead, most of today's software is produced with high-level programming languages that often include code-automation tools, debugging routines, the ability to support projects of arbitrary scale, and so on. These tools can add an astonishing amount of baggage to the final code.

This real-life example from the Association for Computing Machinery clearly shows the effects of bloat: A simple "Hello, World" program written in assembly comprises just 408 bytes. But the same "Hello, World" program written in Visual C++ takes fully 10,369 bytes--that's 25 times as much code! (For many more examples, see http://www.latech.edu/~acm/HelloWorld.shtml. Or, for a more humorous but less-accurate look at the same phenomenon, see http://www.infiltec.com/j-h-wrld.htm. And, if you want to dive into Assembly language programming in any depth, you'll find this list of links helpful.)

Human skill also affects bloat. Programming is wonderfully open-ended, with a multitude of ways to accomplish any given task. All the programming solutions may work, but some are far more efficient than others. A true master programmer may be able to accomplish in a couple lines of Zen-pure code what a less-skillful programmer might take dozens of lines to do. But true master programmers are also few and far between. The result is that code libraries get loaded with routines that work, but are less than optimal. The software produced with these libraries then institutionalizes and propagates these inefficiencies.

You And I Are To Blame, Too!
All the above reasons matter, but I suspect that "featuritis"--the tendency to add feature after feature with each new software release--probably has more to do with code bloat than any other single factor. And it's hard to pin the blame for this entirely on the software vendors.

Take Windows. That lean 5-Mbyte version of Windows 3.0 was small, all right, but it couldn't even play a CD without add-on third-party software. Today's Windows can play data and music CDs, and even burn new ones. Windows 3.0 could only make primitive noises (bleeps and bloops) through the system speaker; today's Windows handles all manner of audio and video with relative ease. Early Windows had no built-in networking support; today's version natively supports a wide range of networking types and protocols. These--and many more built-in tools and capabilities we've come to expect--all help bulk up the operating system.

What's more, as each version of Windows gained new features, we insisted that it also retain compatibility with most of the hardware and software that had gone before. This never-ending aggregation of new code atop old eventually resulted in Windows 98, by far the most generally compatible operating system ever--able to run a huge range of software on a vast array of hardware. But what Windows 98 delivered in utility and compatibility came at the expense of simplicity, efficiency, and stability.

It's not just Windows. No operating system is immune to this kind of featuritis. Take Linux, for example. Although Linux can do more with less hardware than can Windows, a full-blown, general-purpose Linux workstation installation (complete with graphical interface and an array of the same kinds of tools and features that we've come to expect on our desktops) is hardly what you'd call "svelte." The current mainstream Red Hat 7.2 distribution, for example, calls for 64 Mbytes of RAM and 1.5-2 Gbytes of disk space, which also happens to be the rock-bottom minimum requirement for Windows XP. Other Linux distributions ship on as many as seven CDs. That's right: Seven! If that's not rampant featuritis, I don't know what is.

Is The Future Fat Or Lean?
So: Some of what we see in today's huge software packages is indeed simple code bloat, and some of it also is the bundling of the features that we want on our desktops. I don't see the latter changing any time soon. We want the features and conveniences to which we've become accustomed.

But there are signs that we may have reached some kind of plateau with the simpler forms of code bloat. For example, with Windows XP, Microsoft has abandoned portions of its legacy support. With fewer variables to contend with, the result is a more stable, reliable operating system. And over time, with fewer and fewer legacy products to support, there's at least the potential for Windows bloat to slow or even stop.

Linux tends to be self-correcting. If code-bloat becomes an issue within the Linux community, someone will develop some kind of a "skinny penguin" distribution that will pare away the needless code. (Indeed, there already are special-purpose Linux distributions that fit on just a floppy or two.)

While it's way too soon to declare that we've seen the end of code bloat, I believe the signs are hopeful. Maybe, just maybe, the "code fast, make it work, hardware will catch up" mentality will die out, and our hardware can finally get ahead of the curve. Maybe, just maybe, software inefficiency won't consume the next couple orders of magnitude of hardware horsepower.

What's your take? What's the worst example of bloat you know of? Are any companies producing lean, tight code anymore? Do you think code bloat is the result of the forces Fred outlines, or it more a matter of institutional sloppiness on the part of Microsoft and other software vendors? Do you think code bloat will reach a plateau, or will it continue indefinitely? Join in the discussion!



TOPICS: Editorial; Miscellaneous
KEYWORDS:
Navigation: use the links below to view more comments.
first previous 1-2021-4041-6061-80 ... 121-129 next last
To: damnlimey
not necessarily anti-MS. ALL code becomes bloated in time - creeping featuritis, bells and whistles, cross-platform and hardware issues. I'm bumping to check out the Assembly language links for later :-)
41 posted on 12/17/2001 9:15:53 AM PST by fnord
[ Post Reply | Private Reply | To 1 | View Replies]

To: JoeSchem
(Typed faster than I think...)

They're not selling new machines at 1/10th the price because people don't want them. It's been tried. People want to play Napstered .MP3s and watch the latest LotR trailers and play Final Fantasy X. There isn't an adequate market for cheap machines running at a ten-year-old performance level. Moreso, there is a critical mass for productivity (CPU, keyboard, monitor, ...), and raising that productivity level by 10 costs far less than 10x the critical-mass cost: 1/10th the performance costs roughly 1/2 the price to make, so why not pay just twice as much to get ten times the performance? The extra power is only a fraction of the total cost; the machine still costs the same to assemble, advertise & ship.

42 posted on 12/17/2001 9:23:56 AM PST by ctdonath2
[ Post Reply | Private Reply | To 39 | View Replies]

To: damnlimey
Bump
43 posted on 12/17/2001 9:24:59 AM PST by Fiddlstix
[ Post Reply | Private Reply | To 1 | View Replies]

To: stainlessbanner
Remember, you can't write evil without vi.
44 posted on 12/17/2001 9:27:37 AM PST by ctdonath2
[ Post Reply | Private Reply | To 34 | View Replies]

To: damnlimey
But the same "Hello, World" program written in Visual C++ takes fully 10,369 bytes--that's 25 times as much code!
So 25x of the code bloat is something that I can't even control?
45 posted on 12/17/2001 9:28:36 AM PST by lelio
[ Post Reply | Private Reply | To 1 | View Replies]

To: damnlimey
I still use (extensively) a DOS program called T/Master which does database, spreadsheets, word processing, telecommunications (async telecom stuff that has become largely irrelevant in the face of the Internet), graphing and the like. In fact, I believe that I owe a lot of the success I've had as a mainframe programmer/analyst to the ability of this tool to enable me to do stuff (analysis of test results, summarization of data, etc.) on my PC that I'd have to write mainframe programs to do if I didn't have it. It's not sold or maintained any more, and it's got some minor Y2K flaws, but it's still darn helpful. I only use Microsoft Word and Excel when I absolutely have to.
46 posted on 12/17/2001 9:28:56 AM PST by CubicleGuy
[ Post Reply | Private Reply | To 1 | View Replies]

To: damnlimey
What do you think are the real reasons for "Bloatware"

Shhh. It's good for my Intel stock.

47 posted on 12/17/2001 9:28:57 AM PST by RogueIsland
[ Post Reply | Private Reply | To 1 | View Replies]

To: ctdonath2
As mentioned to me by someone experienced with "downsizing code to fit in space program computers": "Dad, programmers now are just lazy because they CAN be. Fast processors + tons of CHEAP memory = no motivation to write efficient code". Much different from when Dad did machine language for MC6800 chip....
48 posted on 12/17/2001 9:32:46 AM PST by Johnny Crab
[ Post Reply | Private Reply | To 44 | View Replies]

To: VoiceOfBruck
Smaller is better. Every line of code has a finite chance of having a defect. Every defect has a finite chance of remaining undetected in the released product. Every released defect has a finite chance of causing unintended operation.

Yep. Well said.

49 posted on 12/17/2001 9:37:13 AM PST by Jefferson Adams
[ Post Reply | Private Reply | To 23 | View Replies]

To: damnlimey
Blah blah blah.. I don't know what you cats are programming (or if you are programming at all) but todays software enviroment requires what we like to call Rapid Application Development (RAD). Which means we cannot sit around in a room tinkering in Assembly all day long working on one function. You want to know the reason why software is bloated? Because development in high level languages is 1000 times faster than development in lower level languages.

If you develop a fanstastic piece of software in 2 years using assembly and I develop a competing piece of software in overbloated VB, but I release my working program in 2 months guess who captures the market?

I don't know about the rest of you but the software I am developing requires RAD. It is much cheaper to throw some hardware at the problem after the fact then to pay dozens more programmers to sit around and write the app in aseembly (or in my case even C++).

50 posted on 12/17/2001 9:52:20 AM PST by Smogger
[ Post Reply | Private Reply | To 1 | View Replies]

To: Centurion2000
Serious question for you. Do you sell or market Microsoft products ?

No. Nor do I have any desire to. ;-)
51 posted on 12/17/2001 9:57:58 AM PST by Bush2000
[ Post Reply | Private Reply | To 38 | View Replies]

To: stainlessbanner
Cool.. Yeah.. add me.
52 posted on 12/17/2001 10:13:25 AM PST by Smogger
[ Post Reply | Private Reply | To 9 | View Replies]

To: Johnny Crab
See Smogger's reply #50. Yes, programmers don't bother tightening up code when there's gobs of cycles & bytes available - they also get the products out the door a lot faster, which is good for both customer and developer. At $1/GB and $1/MHz, I'm more interested in performance than efficiency.
53 posted on 12/17/2001 10:16:25 AM PST by ctdonath2
[ Post Reply | Private Reply | To 48 | View Replies]

OK, More grist for the mill,why is this necessary
Taken from Bloatbusters.org

Sorry to include all this crap but sometimes the site is hard to access.

Outlook Express

Findings of the Tribunal:

Anyone dumb enough to be caught using this shitty application deserves it.

But what is perhaps not known is how badly OE trashes your Registry. It would seem the scoundrel re-registers 107 (one hundred seven) nasty Registry keys every time on startup. Following is a REGINST resource found inside the proprietary DLL.

[version]
Signature="$CHICAGO$"
[Reg]
AddReg=Msoe.Reg
[UnReg]
DelReg=Msoe.Reg
[Msoe.Reg]
HKLM,"Software\Clients\Mail\Outlook Express","DLLPath",131072,%SYS_MOD_PATH%
HKLM,"Software\Clients\News\Outlook Express","DLLPath",131072,%SYS_MOD_PATH%
HKCR,"CLSID\{8F0C5675-AEEF-11d0-84F0-00C04FD43F8F}",,,"AthWafer"
HKCR,"CLSID\{8F0C5675-AEEF-11d0-84F0-00C04FD43F8F}\InprocServer32",,131072,%SYS_MOD_PATH%
HKCR,"CLSID\{8F0C5675-AEEF-11d0-84F0-00C04FD43F8F}\InprocServer32","ThreadingModel",,"Both"
HKCR,"CLSID\{E70C92A9-4BFD-11d1-8A95-00C04FB951F3}",,,"CLSID_StoreNamespace"
HKCR,"CLSID\{E70C92A9-4BFD-11d1-8A95-00C04FB951F3}\InprocServer32",,131072,%SYS_MOD_PATH%
HKCR,"CLSID\{E70C92A9-4BFD-11d1-8A95-00C04FB951F3}\InprocServer32","ThreadingModel",,"Both"
HKCR,"CLSID\{101A8FB9-F1B9-11d1-9A56-00C04FA309D4}",,,"CLSID_MessageStore"
HKCR,"CLSID\{101A8FB9-F1B9-11d1-9A56-00C04FA309D4}\InprocServer32",,131072,%SYS_MOD_PATH%
HKCR,"CLSID\{101A8FB9-F1B9-11d1-9A56-00C04FA309D4}\InprocServer32","ThreadingModel",,"Both"
HKCR,"CLSID\{BE09F473-7FEB-11d2-9962-00C04FA309D4}",,,"CLSID_MigrateMessageStore"
HKCR,"CLSID\{BE09F473-7FEB-11d2-9962-00C04FA309D4}\InprocServer32",,131072,%SYS_MOD_PATH%
HKCR,"CLSID\{BE09F473-7FEB-11d2-9962-00C04FA309D4}\InprocServer32","ThreadingModel",,"Both"
HKCR,"CLSID\{946395D0-0027-11d2-AAB0-006097D474C4}",,,"CLSID_StoreSync"
HKCR,"CLSID\{946395D0-0027-11d2-AAB0-006097D474C4}\InprocServer32",,131072,%SYS_MOD_PATH%
HKCR,"CLSID\{946395D0-0027-11d2-AAB0-006097D474C4}\InprocServer32","ThreadingModel",,"Both"
HKCR,"CLSID\{B4B796A9-EC1C-11d1-9A54-00C04FA309D4}",,,"CLSID_MessageTable"
HKCR,"CLSID\{B4B796A9-EC1C-11d1-9A54-00C04FA309D4}\InprocServer32",,131072,%SYS_MOD_PATH%
HKCR,"CLSID\{B4B796A9-EC1C-11d1-9A54-00C04FA309D4}\InprocServer32","ThreadingModel",,"Both"
HKCR,"CLSID\{59152555-EE8D-11d1-9A55-00C04FA309D4}",,,"CLSID_LocalStore"
HKCR,"CLSID\{59152555-EE8D-11d1-9A55-00C04FA309D4}\InprocServer32",,131072,%SYS_MOD_PATH%
HKCR,"CLSID\{59152555-EE8D-11d1-9A55-00C04FA309D4}\InprocServer32","ThreadingModel",,"Both"
HKCR,"CLSID\{59152556-EE8D-11d1-9A55-00C04FA309D4}",,,"CLSID_NewsStore"
HKCR,"CLSID\{59152556-EE8D-11d1-9A55-00C04FA309D4}\InprocServer32",,131072,%SYS_MOD_PATH%
HKCR,"CLSID\{59152556-EE8D-11d1-9A55-00C04FA309D4}\InprocServer32","ThreadingModel",,"Both"
HKCR,"CLSID\{59152557-EE8D-11d1-9A55-00C04FA309D4}",,,"CLSID_HTTPMailStore"
HKCR,"CLSID\{59152557-EE8D-11d1-9A55-00C04FA309D4}\InprocServer32",,131072,%SYS_MOD_PATH%
HKCR,"CLSID\{59152557-EE8D-11d1-9A55-00C04FA309D4}\InprocServer32","ThreadingModel",,"Both"
HKCR,"CLSID\{59152558-EE8D-11d1-9A55-00C04FA309D4}",,,"CLSID_IMAPStore"
HKCR,"CLSID\{59152558-EE8D-11d1-9A55-00C04FA309D4}\InprocServer32",,131072,%SYS_MOD_PATH%
HKCR,"CLSID\{59152558-EE8D-11d1-9A55-00C04FA309D4}\InprocServer32","ThreadingModel",,"Both"
HKCR,"CLSID\{6F74FDC5-E366-11d1-9A4E-00C04FA309D4}",,,"CLSID_MessageDatabase"
HKCR,"CLSID\{6F74FDC5-E366-11d1-9A4E-00C04FA309D4}\InprocServer32",,131072,%SYS_MOD_PATH%
HKCR,"CLSID\{6F74FDC5-E366-11d1-9A4E-00C04FA309D4}\InprocServer32","ThreadingModel",,"Both"
HKCR,"CLSID\{6F74FDC6-E366-11d1-9A4E-00C04FA309D4}",,,"CLSID_FolderDatabase"
HKCR,"CLSID\{6F74FDC6-E366-11d1-9A4E-00C04FA309D4}\InprocServer32",,131072,%SYS_MOD_PATH%
HKCR,"CLSID\{6F74FDC6-E366-11d1-9A4E-00C04FA309D4}\InprocServer32","ThreadingModel",,"Both"
HKCR,"CLSID\{CAE80521-F685-11d1-AF32-00C04FA31B90}",,,"CLSID_OENote"
HKCR,"CLSID\{CAE80521-F685-11d1-AF32-00C04FA31B90}\InprocServer32",,131072,%SYS_MOD_PATH%
HKCR,"CLSID\{CAE80521-F685-11d1-AF32-00C04FA31B90}\InprocServer32","ThreadingModel",,"Both"
HKCR,"CLSID\{626BAFE1-E5D6-11D1-B1DD-006097D503D9}",,,"CLSID_OERulesManager"
HKCR,"CLSID\{626BAFE1-E5D6-11D1-B1DD-006097D503D9}\InprocServer32",,131072,%SYS_MOD_PATH%
HKCR,"CLSID\{626BAFE1-E5D6-11D1-B1DD-006097D503D9}\InprocServer32","ThreadingModel",,"Both"
HKCR,"OutlookExpress.MessageList",,,"Outlook Express Message List"
HKCR,"OutlookExpress.MessageList\CLSID",,,%OEMsgList_GUID%
HKCR,"OutlookExpress.MessageList\CurVer",,,"OutlookExpress.MessageList.1"
HKCR,"OutlookExpress.MessageList.1",,,"Outlook Express Message List"
HKCR,"OutlookExpress.MessageList.1\CLSID",,,%OEMsgList_GUID%
HKCR,"CLSID\%OEMsgList_GUID%",,,"Outlook Express Message List"
HKCR,"CLSID\%OEMsgList_GUID%\DefaultIcon",,,%SYS_MOD_PATH%",2"
HKCR,"CLSID\%OEMsgList_GUID%\InprocServer32",,,%SYS_MOD_PATH%
HKCR,"CLSID\%OEMsgList_GUID%\InprocServer32","ThreadingModel",,"Apartment"
HKCR,"CLSID\%OEMsgList_GUID%\NotInsertable"
HKCR,"CLSID\%OEMsgList_GUID%\MiscStatus",,,"0"
HKCR,"CLSID\%OEMsgList_GUID%\MiscStatus\1",,,"131473"
HKCR,"CLSID\%OEMsgList_GUID%\Programmable"
HKCR,"CLSID\%OEMsgList_GUID%\ProgID",,,"OutlookExpress.MessageList.1"
HKCR,"CLSID\%OEMsgList_GUID%\TypeLib",,,"{233A9691-667E-11d1-9DFB-006097D50408}"
HKCR,"CLSID\%OEMsgList_GUID%\VersionIndependentProgID",,,"OutlookExpress.MessageList"
HKCR,"CLSID\%OEMsgList_GUID%\Version",,,"1.0"
HKCR,"CLSID\%OEMsgList_GUID%\Implemented Categories\{40FC6ED3-2438-11CF-A3DB-080036F12502}",,,,
HKCR,"CLSID\%OEMsgList_GUID%\Implemented Categories\{40FC6ED4-2438-11CF-A3DB-080036F12502}",,,,
HKCR,"CLSID\%OEMsgList_GUID%\Implemented Categories\{7DD95801-9882-11CF-9FA9-00AA006C42C4}",,,,
HKCR,"CLSID\%OEMsgList_GUID%\Implemented Categories\{7DD95802-9882-11CF-9FA9-00AA006C42C4}",,,,
HKCR,"OutlookExpress.AddressBook",,,"Outlook Express Address Book"
HKCR,"OutlookExpress.AddressBook\CLSID",,,%OEBuddyList_GUID%
HKCR,"OutlookExpress.AddressBook\CurVer",,,"OutlookExpress.AddressBook.1"
HKCR,"OutlookExpress.AddressBook.1",,,"Outlook Express Address Book"
HKCR,"OutlookExpress.AddressBook.1\CLSID",,,%OEBuddyList_GUID%
HKCR,"CLSID\%OEBuddyList_GUID%",,,"Outlook Express Address Book"
HKCR,"CLSID\%OEBuddyList_GUID%\DefaultIcon",,131072,%SYS_MOD_PATH%",2"
HKCR,"CLSID\%OEBuddyList_GUID%\InprocServer32",,131072,%SYS_MOD_PATH%
HKCR,"CLSID\%OEBuddyList_GUID%\InprocServer32","ThreadingModel",,"Apartment"
HKCR,"CLSID\%OEBuddyList_GUID%\NotInsertable"
HKCR,"CLSID\%OEBuddyList_GUID%\MiscStatus",,,"0"
HKCR,"CLSID\%OEBuddyList_GUID%\MiscStatus\1",,,"131473"
HKCR,"CLSID\%OEBuddyList_GUID%\ProgID",,,"OutlookExpress.AddressBook.1"
HKCR,"CLSID\%OEBuddyList_GUID%\VersionIndependentProgID",,,"OutlookExpress.AddressBook"
HKLM,"Software\Microsoft\WAB\WAB4\ExtDisplay\MailUser"
HKLM,"Software\Microsoft\WAB\WAB4\ExtDisplay\MailUser",%OEBuddyList_GUID%,,"1"
HKCR,"OutlookExpress.Envelope",,,"Outlook Express Envelope"
HKCR,"OutlookExpress.Envelope\CLSID",,,%OEEnvelope_GUID%
HKCR,"OutlookExpress.Envelope\CurVer",,,"OutlookExpress.Envelope.1"
HKCR,"OutlookExpress.Envelope.1",,,"Outlook Express Envelope"
HKCR,"OutlookExpress.Envelope.1\CLSID",,,%OEEnvelope_GUID%
HKCR,"CLSID\%OEEnvelope_GUID%",,,"Outlook Express Envelope"
HKCR,"CLSID\%OEEnvelope_GUID%\InprocServer32",,131072,%SYS_MOD_PATH%
HKCR,"CLSID\%OEEnvelope_GUID%\InprocServer32","ThreadingModel",,"Apartment"
HKCR,"CLSID\%OEEnvelope_GUID%\ProgID",,,"OutlookExpress.Envelope.1"
HKCR,"CLSID\%OEEnvelope_GUID%\VersionIndependentProgID",,,"OutlookExpress.Envelope"
HKLM,"%KEY_MAILCLIENT%\%KEY_OUTLOOK%\Envelope\CLSID",,,"%OEEnvelope_GUID%"
HKLM,"%KEY_MAILCLIENT%\%KEY_OUTLOOK%\Envelope\CurVer",,,"OutlookExpress.Envelope.1"
HKCR,"CLSID\%OEMail_GUID%",,,"Outlook Express Mail Object"
HKCR,"CLSID\%OEMail_GUID%\InprocServer32",,131072,%SYS_MOD_PATH%
HKCR,"CLSID\%OEMail_GUID%\InprocServer32","ThreadingModel",,"Apartment"
HKCR,"CLSID\%OEMail_GUID%\Implemented Categories\{40FC6ED3-2438-11CF-A3DB-080036F12502}",,,,
HKCR,"CLSID\%OEMail_GUID%\Implemented Categories\{40FC6ED4-2438-11CF-A3DB-080036F12502}",,,,
HKCR,"CLSID\%OEMail_GUID%\Implemented Categories\{7DD95801-9882-11CF-9FA9-00AA006C42C4}",,,,
HKCR,"CLSID\%OEMail_GUID%\Implemented Categories\{7DD95802-9882-11CF-9FA9-00AA006C42C4}",,,,
HKCR,"CLSID\%OEMsgTable_GUID%",,,"Outlook Express MsgTable Object"
HKCR,"CLSID\%OEMsgTable_GUID%\InprocServer32",,131072,%SYS_MOD_PATH%
HKCR,"CLSID\%OEMsgTable_GUID%\InprocServer32","ThreadingModel",,"Apartment"
HKCR,"CLSID\%OEMsgTable_GUID%\Implemented Categories\{40FC6ED3-2438-11CF-A3DB-080036F12502}",,,,
HKCR,"CLSID\%OEMsgTable_GUID%\Implemented Categories\{40FC6ED4-2438-11CF-A3DB-080036F12502}",,,,
HKCR,"CLSID\%OEMsgTable_GUID%\Implemented Categories\{7DD95801-9882-11CF-9FA9-00AA006C42C4}",,,,
HKCR,"CLSID\%OEMsgTable_GUID%\Implemented Categories\{7DD95802-9882-11CF-9FA9-00AA006C42C4}",,,,
[Strings]
OEMsgList_GUID          =   "{233A9692-667E-11d1-9DFB-006097D50408}"
OEBAWabExt_GUID         =   "{233A9694-667E-11d1-9DFB-006097D50408}"
OEBuddyList_GUID        =   "{233A9694-667E-11d1-9DFB-006097D50408}"
OEEnvelope_GUID         =   "{A08AF898-C2A3-11d1-BE23-00C04FA31009}"
OEMail_GUID             =   "{06BE7323-EF34-11d1-ACD8-00C04FA31009}"
OEMsgTable_GUID         =   "{abc00000-0000-0000-0000-000000000000}"
OEOneStopHandler_GUID   =   "{D2984AB4-F2DE-11d1-AF07-00C04FA35D02}"
KEY_MAILCLIENT          =   "Software\Clients\Mail"
KEY_OUTLOOK             =   "Outlook Express"
[End]

 

54 posted on 12/17/2001 10:16:54 AM PST by damnlimey
[ Post Reply | Private Reply | To 41 | View Replies]

To: Bush2000
This article is tripe. The fact of the matter is that hardware prices are constantly declining as products are replaced with better technology, so the cost per megabyte/gigabyte of storage is far, far less than in previous years. And frankly, it's unrealistic to think that Moore's Law applies to hardware. As hardware capabilities increase so, too, does software. And, really, when you're talking about less than 50 cents per megabyte of RAM and $2.65 per gigabyte of hard disk space, you're left wondering why the author has anything to complain about.

What a wonderful tapdance around the topic of this tread.
Flying monkey school teaches you to totally change the subject from bloated software to hardware?
And then dazzle 'em with BS and technobabble further to distract the fact that you're off subject?

55 posted on 12/17/2001 10:20:23 AM PST by Publius6961
[ Post Reply | Private Reply | To 30 | View Replies]

To: damnlimey;fnord;Bush2000;CheneyChick
What do you think are the real reasons for "Bloatware"

It's not the surplus of disk space or increased hardware performance. It has everything to do with Programming Design or the lack of it. This lack is a result of:

And in the end, a shop that does not have standards and agrees to insane deadlines for their coders ends up with..... Bloatware - or worse, Crap Bloatware.

fnord notes that bloatware also is caused by featuritis or feature creep. This is often so in cases where there are no standards. A shop with proper programming standards and realistic timelines would allow permit such features within a decipherable program.

Bush2000 noted: "This article is tripe."

Good data processing managers/systems analysts would disagree with you.

FYI, Bush2000, MS/Windows does not have the franchise on Bloatware....

56 posted on 12/17/2001 10:26:31 AM PST by bwteim
[ Post Reply | Private Reply | To 1 | View Replies]

To: ctdonath2
They're not selling new machines at 1/10th the price because people don't want them.

Sure they are -- you just aren't looking in the right places... You can purchase a PC and monitor today for about $150. Of course, it will be a 486 or slow Pentium, but you could get one.

I don't understand the "technology gap" that liberals keep talking about... You don't have to have the latest and greatest to start to learn about technology. There is not a family in America that couldn't afford some sort of computer -- and free Internet access to boot!

57 posted on 12/17/2001 10:32:45 AM PST by TexRef
[ Post Reply | Private Reply | To 42 | View Replies]

To: damnlimey
More fodder for all the MS haters out there,but it does raise an interesting question.What do you think are the real reasons for "Bloatware"

Precisely 2:

1. People will buy it and
2. Hardware is cheaper than programmer time.

Shalom.

58 posted on 12/17/2001 10:33:47 AM PST by ArGee
[ Post Reply | Private Reply | To 1 | View Replies]

To: Don Joe
Who needs the super iron? I see two classes of users, and for one class, the term "need" is applied in the loosest of all possible senses. The two classes are "gamers", and "network admins".

You forgot one: Developers.

Right now I'm sitting at work running W2K with Outlook, PalmPilot Desktop, about 8 sessions of SAP, another development program, Paint Shop Pro, Multi-Edit, another half-dozen windows of Internet Explorer, and VNC (Virtual Networking Computer -- controling my other laptop)... Of course, other programs, such as eFax and WebDrive are sitting in the "tray" ready to go when I am...

Do I need to run all these apps at the same time?

Well, yes.

(BTW, my office issued laptop runs W95 which crashes if I run a TENTH of what I have open on my laptop with W2K)

59 posted on 12/17/2001 10:35:23 AM PST by TexRef
[ Post Reply | Private Reply | To 8 | View Replies]

To: damnlimey
One of the big problems is that MS has decided that a lot of unnecessary junk is run in the background so if you ever need it you have it running. and running. and running. and

A big cure for bloatware would be to make this crap go away in the base install and allow the user to pick and choose what you want to run. I cut down all the unnecessary crap by removing it from the start-up files. It is still there if I need the function but I don't get it by default.

To see this it action just install IE and see what level of 'neat' useless sites are stuck all through your bookmarks and tool bar windows.

this is where your cpu cycles go. Agreed storage and memory are almost free, but cpu cycles are a still limited commodity.

snooker

60 posted on 12/17/2001 10:43:00 AM PST by tarpon_bill
[ Post Reply | Private Reply | To 1 | View Replies]


Navigation: use the links below to view more comments.
first previous 1-2021-4041-6061-80 ... 121-129 next last

Disclaimer: Opinions posted on Free Republic are those of the individual posters and do not necessarily represent the opinion of Free Republic or its management. All materials posted herein are protected by copyright law and the exemption for fair use of copyrighted works.

Free Republic
Browse · Search
News/Activism
Topics · Post Article

FreeRepublic, LLC, PO BOX 9771, FRESNO, CA 93794
FreeRepublic.com is powered by software copyright 2000-2008 John Robinson