This is how software *should* be developed. Programmers all too frequently forget that they are servicing the user, not telling them what to do.
Scott van Looy
I suspect that many who work in a larger company do not serve the user, they serve the company. The programmer likely has little say in how the final product will look. Here are the specs, now code it to meet the specs. Granted I'm sure there is typically room for input. Some have mentioned that programs could be written to be ideal/perfect/whatever. Sure if you have a specific need and are willing to pay the price of admission. If you are running a certified crime lab for example then some of the equipment you are using must meet very stringent requirements. In order to meet those requirements a better manufacturing process is required, and of course much greater quality control. All that costs money. You can get the Hot Wheels radar gun and it will probably clock a vehicle's speed reasonably well. And that for under $50. But if you are going to go to court with a speading ticket then you need a unit that has been certified to specific standards and you must follow very strict rules of operation in order to be able to rely on the accuracy of the reading. So the bar is much, much higher for the developer, and for the user. The cost to purchase this is much, much higher, and the skill required to use it is as well. A program could be written to a much higher standard. But the development time would be much lengthier, hence the cost greater. It's not a matter of not wanting to serve the needs of the user. It's a balancing act. Balancing the needs of a cross section of users. Balancing corporate needs (deadlines to release against competing products, budgets, whatever) with use needs. No point running a company where you spend an average cost of $2500 per unit for 100,000 units to develop an application that has a market value of $49.95 all for the sake of raising it to a much higher standard. Your company won't be around very long. So you put out a product that you can sell at a reasonable profit for $49.95. It won't be as polished, but it will meet the needs of a great many users. Those who require the much higher standards will have to pay for the development cost of such an application. In the case of FOSS developers, again I certainly don't believe that they don't care about end user needs. In some cases you have applications that were developed for a small group of users and it caught on. But the product was not developed with that broad of a userbase in mind so there will be issues. And again here it's a balancing act. They are doing this for free. So it's not profit motivated. It does not feed their family. It requires time away from their family. Could FOSS developers raise the quality of their products? Sure, but at a cost (personal cost to the developer) none of us are prepared to bear. Could a FOSS developer make their product compatible with a greater range of hardware? Sure, but who's going to spend the $ to provide the developer with the hardware they need to test it. Not to mention the additional personal cost to that developer resulting from more time demand on them, so family takes another hit. We can suggest changes to FOSS. We can request changes to FOSS. But we are hardly in a position to complain about it. Don't like it, get your money back and go buy something else. Don't like the quality of the commercial software out there. Take out a second mortgage and pay the premium price for a premium product. As consumers we go through that decision making process all the time. Do I spend more $ and get a better vehicle? Or do I get the one that doesn't meet my personal needs quite as well but leaves me with more money in my pocket. Do I buy a DeWalt power tool or a no name brand one? Depends on your specific needs and budget. So do you use software marketed to the masses, or pay 10 fold as much for customized software that meets your specific needs to a T? The bottom line is there is some responsibility on the end user to use the software responsibly just like we must drive a car responsibly and use a power tool responsibly. If you are going to be careless or stupid, then you have no one to blame for the outcome but yourself in many cases. You don't like the "Do you want to save your document?" prompt on exit from a word processor. I do. You'll find them on both sides of the argument. We are all too different (skills, knowledge, needs, preferences) to have one size fits all software. Nor are most of us prepared to pay the premium to get something that meets are needs perfectly. Jacques B.