Abandon | All | Hope | Ye | Who | Enter | The | Hall | Of | Bloat | ||||||||
/ MBASIC Delphi OWL C++/C# MFC WScript Visual Basic OLE ActiveX/ Visual.NET/ Hellware* | An ExchangeFrom - Sat Apr 29 14:37:44 2000 From: beelz@bloatbusters.org Organization: bloatbusters.org To: wildernesspete@bloatbusters.org Subject: Re: Check OUT 'Communist Administrator 3.5' > There is freeware called Communist Administrator 3.5 > in Current JEWELS section of www.filemine.com > > Wilderness Pete Wilderness Pete, I did, just for the heck of it, and here's a bit of what I found: First off, this application is not 419KB as the article contends, but a walloping 861KB. With any system tool of this sort, when it even approaches the first 100KB point, you of course have to have your warning lights go off. Second, as you will note from the attached report, this is a *Delphi* application. And as you know, "Delphi" means "BLOAT". Delphi, the "VB killer", is more of a "computer killer" than anything. I will never forget the first time I ran into "Delphi gurus" when the system was first released. Of course these morons were completely euphoric. I asked them to please build for me a simple no-frills Windows skeleton application. No nothing, just a window and the ability to close it. They did so. The resulting executable was 450KB!!!! And this was without consideration for the various special dependencies this monster needed! But the point was: *they did not react*. I pointed to the computer monitor, put my greasy index finger on the listing in the Explorer, "450KB", and said, "look at that". They all answered, almost in unison, "SO????" With which I rest my case with Delphi and its proponents. There is no reason between heaven and earth (or even beyond) to use such a ridiculous development tool. And the dubious (but contested) epithet of "VB killer" is nothing to get excited about. Being able to out-perform Visual Basic is not exactly some kind of super-human feat. It's rather pathetic, actually, to even want to put one's product in the same category. Third, if you looked under the bonnet at this monster, you would see that it adds injury to insult as well as insult to injury. Not only is it jam packed with all the totally unnecessary Borland/Inprise bitmaps as usual for circumventing ordinary interfaces already provided by the operating system, but it has a string table meant to nauseate. This string table is so huge... I will give you some juicy excerpts: List index out of bounds (%d) List capacity out of bounds (%d) List count out of bounds (%d) Bitmap image is not valid Icon image is not valid Metafile is not valid Cannot change the size of a JPEG image Stream read error Stream write error This is only a choice selection, from hundreds of similar occurrences. What is immediately obvious, from only the above quoted strings, is among other things the following: 1. List boxes or listviews should never report things like this, and of course an application using either should never have to report something like an index being out of bounds. This is painfully obvious. There should be ample defensive code in the application already to guard against such events, and frankly, the odds that something like this could occur even in this dumb application are quite minimal. 2. References to invalid images is ridiculous. In which context? There is only one - in the context of the so-called "Delphi" program to its generator. The question however is: in which context will these messages be displayed? The answer is that there is no suitable context for them to be displayed at all. What is the program supposed to do? Protest that it is internally inconsistent? Really? Would this matter not be resolved adequately before shipping a final release if it had been a problem? And how, for heaven's sake, could something as foreign as this ever have been a problem in the first place? - Scratch two types of listings. 3. The stream error messages really confound. For they refer to basic input/output, i.e. the kinds of things that happen perhaps with console mode applications. But this is a GUI application! It has no basic input/output stream at all! This is a carry over from the abhorrent I/O library of Bjarne Stroustrup, which even his former loyal colleagues at Bell Labs have denigrated completely - and it's another sign that the people behind this application and its generator are completely brainwashed every step of the way. The long and short then? Nearly all the bulk (the BLOAT) of the string table(s) is completely unneeded. There is nary a string entry here that can be, will be, or should be used. - Scratch them all for this author. Ctl3d: You will also notice there are several references to the Microsoft Ctl3d library for Windows 3.1 (Win16) in this application. We've talked about this before, and of course you already know that having these references in a Win32 application is tantamount to being totally brain-dead. GetProcAddress: There are also two references to GetProcAddress, meaning this program can load any number of DLLs which are not officially listed among its dependencies. How much (damage) this program can and will cause will not really be known until runtime. What is known is that it is capable of causing more damage than is already apparent (and that is quite a lot). LoadLibrary: There are three references to this string, which normally works together with GetProcAddress, so we may calmly assume that there are at least three additional DLLs somewhere in this monster that it will attempt to load at runtime, above and beyond its official dependency list. Software\ Strings These are particularly important and sensitive buggers. Each instance of "Software\" means yet another attempt by the bloatware monster to clog and bloat your Registry to smithereens. Note that this wonderful "Tweak UI" application, which is supposed to help you get some "law and order" in your computer, has twenty six (26) such strings! Twenty six Registry keys which may be created! As the concomitant "RegCreateKey" is also there, we may know that this application will *indeed* be junking your Registry as well! The Dependency List Please note the presence of two OLE DLLs in this list. In an application such as this, there is *no place* for any such OLE shite. No place at all. Suspect the worst with this application. --------------------------- Ok, that's the preliminaries - now to the punchline: can this application, despite everything, actually have something to offer, and be able to offer that "something" in such a way that the net result of its use improves the system on which it is run? The answer is a very forthcoming "of course not!" A quick perusal of what this application "does" shows that it basically mimics functions/applets we already have in our system. It doesn't reveal any new dark and interesting secrets about any Windows platform; it just BLOATs on disk to the tune of at least one megabyte, considering its image size on disk and its damage to an unsuspecting Registry. So that's that... now the next question: --------------------------- And that question is: "why would anyone want, or be at least interested in checking out, this program?" And the answer to that question is very simple: "Because FileMine(.com) has featured this program and even included it in their group of "JEWELS" applications - because they *recommend* this application." A user cannot be held accountable for seeing through whatever an otherwise trusted site could throw at him, and he cannot know exactly how all these developers' equations hold together, but if FileMine(.com) says this app is ok, and as the case is, say it's "more than ok", even a "JEWEL", why should anyone be suspicious? --------------------------- And *that*, to me, is the gist of the issue. For these e-zines and software archives, as we both know, are *not* in the business of providing us with good and accurate reviews. They are *not* trying to set us on proper course while navigating through new apps. *They are trying to make money off us and nothing else.* How do they do this with free products? By referring (and recommending) products that are free? Why, through advertising of course! And how do they make money in this way? Why, by getting people to come to their site and click on all the advertising links of course! And how do they get people to come to their site? Why, by having *huge* stocks of *really really really good* applications. If they put down any application because it is a bloat monster - do you think this will increase their site's uniques? No, of course not. Their whole agenda is to always sound "very positive", very complimentary, they want you to enter their site with a smile on your face and leave it that way as well. That is very important to them. No negative vibes please. You don't make money by putting bad products down. You might be telling the truth, but telling the truth is not part of this issue at all. *For software reviewers rarely, if ever, tell the truth.* That is an important lesson: *They almost never tell the truth.* The odds are, as well, that whoever "reviewed" this "product" didn't even run it. None of these jerks are very "industrious". They certainly do not work when they can get away without working at all. And very important rule here: *reviewers today rarely "open the box"*. That means that they rarely - if ever - try out the applications they are going to review. They merely "read the back cover". They see what the application is *supposed* to do, that's all. There is no way in heaven that any Windows machine could survive the onslaught of all these pathetic Delphi and Visual Basic and other bloat apps. The likelihood that a system would even run properly the first day after such extensive testing was ever done is infinitesimal at best. A reviewer who dedicated a single work day to testing applications available on the Internet would have an inoperable computer by midnight. And most of these reviewers have little machines in little cubby holes in funny office landscapes and no one really watches what they do, only what they write. And no one really cares either. Once in a great while one of them will actually happen upon something that is in fact rather good, and they will pass the program around, and most likely find a crack for it by day's end. But in the vast majority of all cases, the scenario is rather simple: an office monkey is given the task of reviewing a product. Either at the office or on the ubiquitous laptop, which is even worse. And said monkey does not want to ruin what took him years to set up properly: his operating system and system configuration. So he will "wing it", "ad lib it", he will "write a story". And he will do this not only because it safeguards his system from almost certain mishap - but even more importantly: *because it saves time!* --------------------------- I think we both agree that people one way or another have to come to understand that of all the reviews and all the reviewers out there, there is hardly a single good one anywhere. As with medicine (or chemistry), there is really no way of knowing what is really going on unless you are one of the experts too. Neither you nor I would be able to pick out a good Van Gogh fake, for example - but a real painter would. Neither you nor I can normally know - ceteris paribus of course - if a particular medical diagnosis is "spot on" or complete bullshit. We cannot know. We don't have the credentials to even begin to question. The same goes for software development. The industry - through the auspices of the Internet - continues to spew out more and more shite on us all, and for the vast majority of people, there is simply no way of knowing. Thanks again for your letter and all the best, Beelze | |||||||
Abandon | All | Hope | Ye | Who | Enter | The | Hall | Of | Bloat | ||||||||
Copyright © bloatbusters.org. Web space courtesy Radsoft. We bust apps that suck. | ||||||||