Roxio has come under sustained fire from users (and indeed The Register) for its failure to get apparently simple things like writing CD burning software for Win2k right first time, and for possible rapacity when it comes to getting people to cough up for the latest version of the software when actually, it might be a pretty trivial exercise to get the old version of the software to work with Microsoft's latest and greatest. Plus, the Adaptec spin-off has a major mindshare problem with the cognoscenti of the CD burning world, who reckon EasyCD is pants, and you should really be using Nero.
It's by no means unusual for software companies to try to ride on the back of Microsoft's latest release in order to get users to give them more money, but it's a lot less common to hear about the processes involved in the construction of the mysteriously expensive point release. Which is why the words of the former Roxio developer who contacted The Register this week are kind of interesting.
As we pointed out last week, Roxio is currently in the curious position of insisting that EasyCD Creator 4.x is not compatible with WinXP, and that you should therefore cough for 5, whilst Microsoft's latest compatibility update for XP claims that 4.x is now compatible with XP. One thinks unflattering thoughts, including expressions like 'bloated fat cat' and 'profiteer' when confronted with those two contradictory claims. Our source knows nothing about the marketing end of the deal, but he does know about how tricky it was to put the software for XP together, how this process made 4.x and 5 code more or less equivalent, and - as an added bonus - how big a bummer it is to be tracking a moving target like Microsoft:
"At the 5.0 revision of Roxio's code," he says, "some fairly major changes happened to the kernel code and to the user-level code that talked to it. Call it what you will, some of these changes were necessary to make the code stable under Win 2000, let alone support the Win XP abomination. These changes were fairly wide-spread, even into what should have been the relatively unaffected GUI binaries."
This possibly sheds some light on the highly public problems Roxio had with EasyCD for Win2k earlier this year, and reminds us that Win2k and WinXP are sort of the same, but just different enough to... Very Microsoft.
Third party developer's eye view now: "As you may or may not know, Microsoft does not give the best support to third-party software vendors trying to work in the kernel. Even service patches have been known to radically alter behaviours (Plug n Play notification in Win2K SP2, for instance). Microsoft doesn't bother to tell us about that, it's up to us to spot the change and fix it (usually prompted when a customer calls up complaining that the code is broken).
"Suffice it to say, supporting WinXP was not a trivial effort. The OS changed sufficiently that it took a good deal of work to support it."
And here, from the coding point of view, is the bottom line: "In the final analysis, in order to support Win XP, a 4.0x user would end up getting most, if not all, of the 5.0x code." Depending on how you call this, this might be a bit of a problem. Where do you draw the line between supporting existing users and telling them they need to give you more money? If the code you've been shipping could run under the latest and greatest, do you really want to miss out on the revenue injection you'd get if it just, sort of, for some reason, didn't?
Our informant doesn't automatically damn Roxio on this: "Now we get to the real meat of the subject - Just what should be included for free in 'code updates' for a user. We can argue endlessly about this, since the user feels that he should only need to pay for the package once and all future changes he makes to the system (including new OSes) should be supported free of charge. The software manufacturer, on the other hand, feels that they should only be required to support the original configuration the user had at the time he bought the package, with whatever 'bug' fixes are required to correct functionality the vendor promised at the time the software was sold. Someone in this argument is going to be disappointed, and since the software vendor can simply refuse to update the user, I suspect it will be the user who ends up on the short end of this deal."
The Register on the other hand reckons that if the reason the software doesn't run on the new platform is trivial - say, because Microsoft messed around with the file system again, that it's profiteering to try to sell a whole new alleged "version." (And you can apply this reasoning to whole "new" operating systems that aren't really, and that come out every year.) But Microsoft is trying to drive the upgrade cycle, and has succeeded so far, so if the third party vendors don't follow, then they're just honest but poor.
Outside of the specific coding area there are far larger dragons. Our source again: "To confuse the matter further, I know that some CD/DVD vendors were shipping the 4.0x code even after a 5.0x version was available to them (and, heaven forbid, may actually still be shipping it) - was that a bad choice of Roxio or the hardware vendors? Should the user bear the brunt of that bad decision? Should Roxio?"
Here you can see a process that facilitates deals between hardware and software suppliers, but that effectively imposes a tax on users; and CD burning is one of the best examples of it. If you're a hardware vendor selling CD burning units, then you've got to include software that allows customers to actually use the hardware. This was absolutely the case pre-WinXP, and it still has some validity, given that XP's burning capability is baseline. So you have to do a deal with a software company.
What's in it for you, what's in it for them? You cut the best deal you can, which typically will be on trailing edge software, and the users are going to get nagged to upgrade to the latest version. Which is what's in it for the software company. The process, not to put too fine a point on it, seems to have dependence on users getting old software they're going to have to upgrade.
And so the cycle goes on. The software vendors have a decision to make about how nice they are to existing users, and how hard they push the version upgrade. They do tend to favour the 'whole new product' approach, but be nice - how exactly would you sell CD burning software if you couldn't do a hardware deal? So you have to figure out the balanc.e. says our source: "I personally would have preferred that Roxio at least allow 4.0x owners some sort of cheap version upgrade (quarter-price or something), but only the management at Roxio know why they didn't. Again, I personally would have wished that Roxio release some 'base functionality' for free, but seeing that Microsoft has that in place now in WinXP, why bother? (Okay, Microsoft is still not doing a writable interactive optical file system ala UDF (DirectCD, in Roxio parlance), but that appears to be not far off - a year or so, from what I last heard.)
"To sum up, I don't think Roxio is doing anything that any other software vendor isn't trying to do (Microsoft included). Perhaps the Open Source initiative will change that, but I doubt it. In capitalism, we are encouraged to charge what the market will bear. If the consumer won't bear it, then let him take his money elsewhere." So go figure, gentle reader... ®