I need to test PHP-based web pages against Microsoft's SQL Server database, because that database system (and not its open source MySQL equivalent) is the standard for the organization that will ultimately used the web application. Microsoft provides a free version of SQL Server 2008 that is intentionally limited in capacity, because it's meant for development and testing.
Downloading the actual server wasn't too much trouble because it was bundled with the development studio software that I also wanted. The only hitch was that I had to go into the Administrative settings to change which user profile actually controlled the database server and its flunkie processes. That's something a database administrator should know, so I shan't grumble too loudly about the out-of-box experience sucking in that regard.
The real frustration came, though, trying to find and set up the tool that allows you to manipulate databases within the server and the tables, functions, etc. that they contain.
First question: Why would anyone at Microsoft not think to include that with the Web developer bundle?
Second question: If I'm forced to download the management tool a la carte, why make it, literally, a four-step process involving four separate downloads?
Third question: Why should one of those prerequisite pieces of software (Windows PowerShell 1.0) require you to validate your copy of Windows? The database server is clearly the most valuable batch of bytes; the time for that was when that was installed.
Fourth question: Why should any Windows software that's not a Service Pack have to issue big, scary warnings about making sure that your system is backed up?
Fifth question: Why is it too much to ask that they actually work? This completely unrecognizable "management" tool gives me the option of installing additonal features. The one I need is not one of them; in fact, the page that tells me to select the one and only add-on I can install doesn't actually let me select it.
So the upshot is that I'm completely uninstalling SQL Server 2008. Luckily, my husband had ordered a copy of the Developer Edition, and left it to collect dust. If all goes according to the setup plan that's grinding away now, I'll be buying my own copy and handing it over to him. Given how wretchedly the process has gone, I'm not reaching for my wallet just yet.
Okay, so I know that I sound like a prima-donna right now. But the point is this: If you want programmers to write software for your platforms so that people have to keep buying your operating systems and the programs that go on them, don't make it difficult. I mean, if you want to be a software tools pusher (as in "The first hit is always free"), don't scare the customer straight, for pity's sake.
I won't pretend that I can't have the same types of grief on the Linux platform. But here's the difference: When all the head-banging and Googling and forum-skimming is done, chances are better than even that I've expanded my understanding of *NIX-based operating systems. That's something that I can apply to later problem-solving. In this case, absolutely zero learning occured. Had I ultimately been successful in installing the free (as opposed to nominal fee) version of SQL Server and its helpers, chances are better than even that none of it would apply to the next version of the software. Granted, my brain is an almost Smithsonian-scale collection of useless information. But even this kind of "information" is too useless to hang out there.