A blog on objective thought in today's irrational, subjective world tackling some of the hardest questions of existence using reason and logic.
Software that Sucks
Published on March 23, 2005 By John Galt In Pure Technology

How to Spot Crapware

 

Crapware is my pet term for really badly written software.  There’s a lot of it out there. All spyware falls into this category because it doesn’t serve a useful purpose and is just a pain in the ass. But then there is other stuff that fits into this category. MS has been pushing this stuff out as of late.  The beta of SQL Server 2005 is a perfect example. (or rather, it’s setup and uninstall routines)  Windows Installer is another great example of crapware. Designed to solve a problem, and not only didn’t solve the problem, it made it worse.  The next time you see a boot strapped installation for software (i.e. you have to install other things before you can install the application) you can thank Windows Installer.

 

So here’s some tips to programmers to determine if your software that you’ve slaved over is crapware:

 

  1. If your software requires the user to run as administrator your software is definitely crapware. (The Sims, Teraview, Timematters and zillions of others including some MS apps…)
  2. If your software cannot be installed by an administrator and then run by a regular user and have them get all of the functionality, and instead requires that that user is an admin during install to get full functionality requiring the admin of the network to set the user as an admin, install and set the user back, then your software is definitely crapware.
  3. If your software requires hacked system files, you definitely have produced crapware (Corel are you listening? You still do it even now and actually write to the Dllcache directory!).
  4. If your software has nested tabs anywhere in the software, for any reason, you have created crapware.
  5. If you’re application is still 16bit on the eve of 64 bit software, you’ve definitely created crapware. (Fortunately, it won’t even run soon…)
  6. If your automatic update functionality requires that the user be logged in as an administrator to work, you’ve created crapware. (there are ways around this, go look it up on the internet.)
  7. If your software requires any sort of install from a shared install instead of from the CD for it to know where the network is, you’ve created crapware.  If you install anything on my server other than the data files, I HATE YOU.  One install, and if you need to know where the shared database is, ask on first run.
  8. If your software crashes with a cryptic error message if the network path it’s expecting goes away and doesn’t say something intelligent about going to check the network path and give an option to reset it to a new location, then you’ve created crapware. (MS you know you do this all of the time!)
  9. If your software crashes because of security permissions and doesn’t tell you exactly what security permission you need to make it work right, then you’ve created crapware. You’ve created shitware if it doesn’t even tell you that the reason it crashed is because of security permissions.
  10. If your software doesn’t attempt to report its own errors, in this day and age, to your developers with lots of information so that you can fix it. You’ve created crapware.

 

Yes, I’ve had to deal with all of this crap over the last 4 days. It’s sad that software designed for networks is so bad at working in a network. It’s why security is so bad in businesses. They can’t be any other way and run the software that they have to run.

 

Oh, and Linux people:  Since you’re just glad to actually get a setup program, little own anything else in my list, please zip it. I’m not interested.

 

Oh and Mac people, I’m not interested in you either. You’re irrelevant to business or even home markets with games (just look at Doom 3 on a Mac… it’s horrible and that’s a game that actually works on a Mac).

 

Oh and game developers:  Lots of people are setting themselves up as users on their computers to try and combat spyware. If they aren’t doing it for themselves, then the kids are getting user accounts so that the parents can control what goes on the computer and prevent them from being stupid and installing spyware all of the time (i.e. Kazza.)  Thus your games better know what the Application Data folder is, and use it. You are no more allowed to write to the Program Files directory than any other application, so get over it and write games that actually work.


Comments
on Mar 23, 2005
Oh 11 has to be:

11. If your software produces HTML that SUCKS and looks like crap and leaves tags all over the place that clutter stuff up for no other reason than to be difficult, then you have produced crapware. Microsoft Word, this means you.
on Mar 24, 2005
HAHAHAHAHAHAAA! Some things will NEVER change. I don't get it either. If someones gonna put their own name on something you would THINK they would want it to be something that works well. Oh well. MS lives on. lmao
on Mar 24, 2005
It's not just MS. In fact MS is the least of the problem. 3rd party developers that write crap and expect us to buy it and wonder why MS always wins... it's because when I install Office as an administrator and then login as a user it just works. Meanwhile, Word Perfect randomly doesn't. And the list goes on and on. The more nitch the product, the more likely it is to be crap that doesn't work in a network even though it's designed for a network.

GRRR.
on Mar 26, 2005
#12 would be: If you're software locks me into your platform and prevents me from using content generated in your software in any other software. Then you've definately created CRAPWARE. Why? Because if you're that insecure then you don't have a chance in hell of creating great software that just does what it is supposed to because you're always worried about the other guy. (Apple are you listening?)