Photos Blog Random Things Links Guest Book Resume

AndyC.org : Random : Rants

Windows + Installshield = Pain 2004.-0.9-
    I generally set up my computer with a small OS partition and a large data partition. I tend to download files and install most programs to the data partition, with some exceptions for programs that are generally small and/or used as part of the system, which go on the OS drive. Paired with the fact that most programs toss their temporary crap files onto the OS drive, this leaves me with about a gigabyte of free space on my C: drive at most times, and when it gets a bit low I do a bit of spring cleaning on the aforementioned temporary files.     
    However, the good people who wrote Installshield Wizard apparently operate under the assumption that everyone has immense amounts of space available for needless repeated file extractions. I tried installing a game demo the other day - a pretty straightforward task most of the time. You run the executable, wait five minutes for the hard drive to churn away while the "wizard" extracts files all over the goddamn place without any contemplation of whether there's actually space to do so, then you click a few "Next" buttons and wait another ten minutes while the installer extracts the files within the extracted installer file to the place where you actually want them. Nevermind that it would take much less time and effort to use a self-extracting zip file paired with a little program to dump icons all over the fucking place and tweak whatever registry keys they shouldn't really be using.     
    But apparently there's a little bug in Installshield or Windows Installer or whatever was actually doing the work; after Installshield extracted a 380MB MSI file into my "local settings/temp" directory, which in turn extracted another 300MB worth of god knows what into god knows where (it was on the C: drive somewhere, I could see the free space count rapidly decreasing), I told it to install the demo to the D: drive. It then proceeded to inform me that the C: drive did not have enough free space to install the demo, and aborted the installation. NEWSFLASH: YOU ARE RETARDED, INSTALLSHIELD. I said put it on the fucking data partition, you moronic piece of shit. Not to mention I had plenty of space on that drive before you went and spewed your Installshield diarrhea all over it.     
    So I go and do some spring cleaning and re-launch the installer. And it does the EXACT SAME FUCKING THING. Apparently I had not cleared enough space. So I tried to trick it - i grabbed the MSI file that it had extracted, copied it onto the data partition, then let the installer exit (which causes it to delete the original copy of the MSI and thus free up the space that it thinks it needs). Upon trying to run the MSI itself though, it informs me "You cannot execute this MSI package alone, please run setup.exe". Well isn't that a bitch.     
    So I go and do some more rigorous spring cleaning, not just deleting crap, but moving files that I had inadvertantly put on the C: drive but still want to keep - music, photos, etc. Then I run the installer again and it FINALLY WORKS! AMAZING! Too bad it took me over an hour just to install the thing, not even counting the time it took to download - all because it insists on extracting its payload TWICE into space that I have no control over.     
    Add to this pain the way Installshield hides my taskbar and the fact that the Windows kernel interprets lots of disk access as a free pass to page all other application memory to disk, as if increasing the load on the hard drive will somehow magically make everything better. So after the installer finishes taking a dump on my hard drive, I have to wait an additional 30 seconds to get Mozilla back in operational shape. And don't even think about trying to launch an application while the installer is thrashing the hard drive - even a second instance of something that's already open, like explorer - because that'll just thrash the hard drive even harder and take even more time.     
    Die, Installshield, die.
Service. You want bugs with that? 2004.-0.7-
    I recently saw some rambling spew about software needing to be a service industry, and not a product, thus rendering copyright unnecessary (never mind the implications on other industries that rely on copyright).
    Newsflash: no home user will pay $10,000 for you to add some neat little dongle in windows, or linux, or office, or apache, or anything. The only way to make any money on software that's usable by a multitude of customers is to spread the development cost over all the interested parties. And the best way to do that? Wrap it up as a product and sell that. No single interested party is willing to front the whole cost of a particular development effort, whereas numerous parties are interested in coughing up a small portion of the cost.
    If you start providing the service of writing new software or upgrading/modifying old software on a per-request basis, then you're stuck with a market full of proprietary, nonstandard implementations that are totally incompatible. Hypothetical situation: customer A requests feature A from software house A, and customer B wants feature A from software house B? They get different results, at higher cost, with lower quality, than if they bought the same thing from just one producer. Let's now surmise that software house C has some killer new feature C that customer C just contracted, and they go around to customers A and B to pitch it to them. They're interested, but since customers A and B have modified codebases, it'll take more work to integrate feature C for them, and thus more cost.
    Wrapping all desired features into one comprehensive product and selling it to all your customers is a much smoother system. If you're only interested in the market segment that includes the likes of government databases, military contracts, etc (where there's only one user/deployment, and only one contractor) then software as a service is equivalent to a product market with a single developer and a single customer. Software as a service industry is just not economically viable.
You get what you pay for 2004.-0.6-
    Well, I'll begin with my first mistake: ordering something on amazon.com that newegg.com also sells. The appeal of not paying 8% sales tax on a $300 item was too much to resist, and under the influence of stingy temperament I also sprung for the "free shipping" assuming the same kind of service that newegg.com offers, namely shipping within a day of the order. No such luck with amazon though, apparently it takes them four days to find the item on the shelf, put it in a box, and give it to UPS. Since I ordered on Monday evening, that brings us to today (Friday), and since UPS doesn't deliver on weekends, I'm looking at almost a week to receive this MP3 player. That's a week of boring 45-minute commutes left dull.
    Had I splurged the extra $11 for 2-day shipping, I would have likely had the package yesterday or perhaps today, but why pay for shipping when you can get bad shipping for free? Apparently amazon.com recoups their losses on free shipping by delaying shipment by a day or few; apparently, keeping the merchandise on the premises while simultaneously annoying the customer is a sure-fire money saver.
    Moral of the story: don't buy from amazon.com unless you absolutely can't afford something better, or don't mind waiting a week or two to actually get your stuff. And if you live in California, just suck it up and pay the tax to get the high-quality service that newegg.com offers.
A couple of suggestions for WinAmp 2004.-0.4-
    A mini-playlist. The main playlist is more of a selection of songs that i could play at any given time. I keep the same songs in there all the time, and when I add new ones, they just get appended at the end, perhaps sorted into the rest of them. Having a secondary playlist that I can construct with entries from the main playlist would be quite useful. Even better than a mini-playlist would be a sort of playscript, where I could define a block of songs that would play through and then repeat once, then playback would continue to another block of songs which are played once each in random order, then finish with a final piece, and then wait a few minutes before restarting the script from the beginning, ad infinitum.
    Settings for each playlist entry. This would involve things like ranking and category for arranging the media, volume adjustment (songs that were mixed by a retard usually need to be toned down a bit, whereas classical pieces seem to never be loud enough on the whole), and other useful things that would be stored on a per-file basis.
Counselling abusers 2004.-0.4-
    Attempting to install anything on a shared machine these days is practically impossible, even when you have your own special place to put data, such as a spare 80GB hard drive inside the machine in question. I'm not talking about system tools, but rather utilities and game demos. Usually they complain that they can't install without administrator privileges, or if they do manage it install then they still don't work quite right.
    The reason? The system registry. Quite possibly the worst design flaw in Microsoft Windows, the system registry is now [ab]used by just about every installer and application you can think of. Not only does it not work when you're not logged in as administrator (an inherent security flaw), but it also provides an easy-to-corrupt single point of failure. In a certain ACPI bug, the system powers off before the hard drive write buffer empties. Not such a big deal, nothing's in that buffer since all the programs have been shut down, right? Well actually, windows likes to frob the registry right before powering off, so on machines afflicted with this bug, it almost instantly corrupts the system upon first shutdown. Oh, and the patch is rather difficult to obtain. While that's a technical problem and responsibility lies squarely with the system vendor, I'm not sure if the blame for the registry abuse lies with Microsoft or with the application developers.
    Microsoft has made it quite easy to abuse the system registry, and even encourages such behavior over using application-specific .ini files. I actually hear that the application configuration files are making a comeback with Longhorn, but I can't really comment on that first-hand. Seriously, which bright spark blurted out this golden charm in the meeting room? "Hey guys, let's give all applications write access to the same configuration database that dictates which drivers we load!"
    I could also blame the application developers for being so short-sighted and herd-like in their blind use of this apparent panacea for configuration settings. Fine, stick stuff in the user registry if you absolutely have to, but don't go and mess with the system registry. Even if you have admin privileges. About the only exception I can think of is file type bindings, but does that really need to be stored in the system registry? A design travesty indeed.
    These are commercially available installers doing this crap too, not just some n00b without a clue. Or perhaps it is...
A box worth opening 2004.-0.4-
    The Splinter Cell: Pandora Tomorrow multiplayer demo is quite an impressive piece of work, if you can manage to actually get into a game and then figure out how to do anything. It would appear that the developers scheduled "user interface" for the last week of development, and added the Ubi.com lobby functionality while held at gunpoint.     
    The in-game browser doesn't remember any settings like "don't show full games" which isn't really so bad on its own, but causes great consternation and annoyance when combined with the game kicking you back to the main menu after informing you that the "session is no longer available" because you weren't quick enough on the join button. This continues ad nauseum, probably to the point where someone might quit before actually getting a chance to play the game, which would be a great shame, as the gameplay itself is superb. When creating a game, you have no ability to kick anyone out of the game, leaving you with little recourse but to quit and make a new game if the random peeps are feeling stubborn.     
    The control scheme for actually playing is equally arcane; in most FPS games, walk/run toggle is accomplished by holding the shift button, while SCPT instead moves the walk/run toggle to the mousewheel and uses the shift key to "perform action" which can mean anything from smacking a mercenary in the face to disarming a biological weapon, and including the vaunted neck-snapping. You can talk to the merc after grabbing him (using the shift key), but only if you hold down the H key (for "hack communications" even though you're speaking directly into the guy's ear).     
    It's also apparently impossible to tell whether your teammate has any respawns left, unless you also are dead, in which case it involves some arithmetic because it won't tell you outright "hey buddy, your teammate's not coming back anytime soon".     
    Complaints aside, the game really is fun and I recommend you try it, but the learning curve is incredibly steep so I also recommend setting aside a bit of time and/or asking someone who already knows how to play to give you some guidance.
Prelude to a Theme 2004.-0.3-
    Is your refrigerator running? If it really could run in the personified sense, then I think its gait would be lethargic and waddling. That is the image that springs to mind when my daily activities bring me into contact with certain computer programs. One of these is Adobe Reader, whose take on scrolling involves completely invalidating the screen, wiping allocated memory clean, rebooting your machine, waiting for the planets to align, and then finally redrawing the screen from top to bottom in excrutiating low-detail. If there's an image on the page, then you may as well go make coffee if you need to scroll the page at all. If the paper is composed of nothing but images, then your best bet is to pull out a pad of paper and scribble on it for a while, and you'll end up with a better-looking version of the paper, in less time.
    
    3D Studio Max also sucks the figurative jam out of my donut of a day. Combined with flexporter, it provides the worst development platform I've ever worked with. Exception handling must be disabled, debuggers can't catch access violations because max itself catches them, and to get some useful output, you have to spawn a console window in your own code and then spew out to it like a console app. De-fucking-lightful. I have a bug in my exporter right now, and I frankly don't know if I have the patience to try finding and fixing it. I might spend my time more productively by making an intermediate XML format, a parser for it, and a maxscript to spit it out. Yes, it's really that horrible to debug, that I would write a whole parser to avoid it.
    
    Not exactly a computer program, but the embedded menu software in my new cell phone (A Sony-Ericsson T226) has the slowest interface I've ever used. The menu lag makes watching DVD content over a dialup connection seem speedy. And why can't it switch itself out of silent mode when I plug it into the wall charger? I mean, i don't walk around with it in my pocket while charging from a wall outlet. I nearly missed a fucking plane because the phone didn't ring. I want my old Motorola phone back, damnit.
Pining for Days of Yore 2004.-0.3-
    I remember when PC Gamer was more than just a few short reviews, a brief cover story, and some random tidbits all tied loosely together and slapped in a plastic mailer bag with a seemingly disjoint demo disk containing a lone demo that was available on file planet two weeks prior. The PCG July 2000 disk had the full versions of twelve classic games, including x-com, descent, and ultima underworld. Other disks I saw from the same era at least had several demos to sample. The latest issue has a demo of deus ex 2, and I've already played the dx2 demo, bought the game, beaten it, and beaten it again by the time that magazine arrived.
    The magazine itself is a paltry 100 pages or so, paling in comparison to the beefy holiday issues of years past, approaching 400 pages of game honey. I miss the old days of thirty-page cover features including in-depth interviews with the game developers, exclusive screenshots and concept art fresh from the studio itself (they actually visited the studios instead of just printing the same old screenshots that every other magazine gets in their press pack), and insightful speculations about how the game will look and play. Nowadays the cover features all seem so similar, no more full-page images of incredible screenshots, no more personal interviews. It's all so mechanical and prepackaged, and I just don't like it.
    Perhaps the blame lies not completely with the magazine itself, but with the speed of information flow in the Internet Age. You can read reviews, download demos, and play through the whole game before a magazine even goes to print. I still like my magazines though; they fill a void when I'm on a plane, in a boring class, waiting for a bus, etc. Perhaps the proliferation of the standard press pack has led to the unfortunately impersonal and uninspiring layout of these magazines.
    How about covering the indie scene a bit more? Getting more personal with the developers? Something, anything that requires you to actually do some work beyond picking up a game CD, playing it at home for two weeks, writing a half-page review, and repeating ad nauseum. Mix it up a bit, throw some original content in there that I can't find on every game website on the planet. Get some more of those incredibly uber classic game disks my way, I don't care about these newfangled 400MB demos anyhow. Bring back the feeling I used to have, the ecstatic feeling of anticipation for the exclusive content only to be found within those sacred pages. I yearn for that feeling once more.
Windows not Perfect? 2004.-0.3-
    Here are some flaws in Microsoft Windows that I would fix, given the opportunity:
    1) Focus stealing. I absolutely despise the ability of random programs to pop open windows in front of other ones I'm looking at, stealing my keyboard input focus, and generally impeding overall system usability. Unless my computer is about to explode, I DO NOT want my fullscreen app to be minimized or my word processor to stop receiving my carefully-articulated typing. Some random tool asking me to do their homework for them does not take preference over meaningul IRC discussions or code-writing. Flash the taskbar button all you want, play a sound if I allow it, but don't dare steal my window focus.
    2) Paging minimized program memory to disk when there's tons of physical memory to spare. Causes a very noticeable pause when restoring the program to view, seriously impeding productivity and ease-of-use.
    3) Let me rearrange the taskbar buttons around as I please. Everything else can be moved around - the taskbar itself, all the quick launch icons, my desktop icons, program windows, but not those freaking buttons. Would it really be that hard?
Engine Development is Boring and Pointless 2004.-0.3-
    I've come to the conclusion that no matter how many super-great features you implement in a 3D engine, nobody really cares until you make a bunch of screenshots and/or a playable demo. Here's the catch though: engine development involves nothing playable, and doesn't include content creation; all that stuff is specific to a game project. So a 3D engine is somewhat like a schrodinger cat - it might have tons of cool stuff and be the best engine ever made, but without a game to showcase it, you don't know whether it's any good. In this vein, it is absolutely useless to make a 3D engine without the intent of creating a specific game with it - you'll end up with a bloated engine with too many features and no way to show them off. Develop a game, and if you get a good engine out of the deal, then all the better.
< Previous 10 [0 - 10] / 10 Next 10 >

Post a Rant

All content Copyright © 2008 Andy Campbell.
Permission to reproduce content, in any format,
by explicit written permission of author only.
"Never put off until tomorrow what you can do the day after tomorrow."
- Mark Twain