Originally posted by: MrChad
There's another old adage that says You can't please all of the people all of the time. You can only hope to please some of the people some of the time. I think it's foolish to claim that Microsoft "forces" features down users' throats.
I was actually referring to a curious lack of features, and all the while that their users have been demanding the features for years, MS has constantly touted the corporate line that the customers see no need for those features.
Specifically, I can think of the tabbed browsing support issue for IE, of which there clearly
is a demand, due to multiple third-party solutions that add that feature, along with the popularity of non-IE browsers that also impliment that feature. Yet MS repeatedly tries to claim that none of their customers have ever wanted such a thing.
I can also think of other things, such as back in the VC6 days, when developers were having a
heck of a time getting the standard STL libs to work on VC6, because MS
intentionally left out features from the C++ standards, and turned around and made the claim that they didn't believe that their (developer) customers wanted those features. WHich was complete and total horse-puckey, and everyone in the industry knew it, and knew how poor VC6's C++ compliance was, compared to all of it's competitors. But MS had the dominant market position, and they simply didn't want to spend the extra development dollars to impliment those features that their customers were asking for, and at the same time effectively limited VC6 from being a "pure" generic/OO C++ development tool, to more of a Windows app/GUI development tool. In short, almost a dumbed-down toy like VB mostly was. It's all about re-enforcing MS's monopolies, not about delivering the features that the customers want, because some of those features might allow the customer to have some "wiggle room", to escape MS's monopolistic grasp. (Eg. proper template metaprogramming support in VC6, would have allowed for the development of some truely powerful and cross-platform features, not tied down to Windows. I'm not saying that VC6
is purely tied down to windows, but by discouraging programmers from being able to truely utilize STL, generics, and template metaprogramming to enhance their productivity, they instead fall back to things like MFC's container classes, just to save time and not have to re-invent the wheel. Well, or spend extra money for RogueWave or something.)
Originally posted by: MrChad
Customers have broad and vague concerns like "I don't want my computer to crash" or "My grandmother should be able to use a computer", and Microsoft (like any other software company) engineers a particular solution to address those needs.
I'm not even going to get into how MS's compromise between end-users and techies, has resulted in a middle-ground of software features and interfaces, that please neither group. Computers should adapt to the user, not the other way around. MS has this whole idea of "one size fits all" software, exactly backwards. It really has set the general computing world backwards quite a few years.
Originally posted by: MrChad
You point out that this trend of software companies pushing "random" or "unwanted" features and changes began around the same time as Microsoft's rise in the market.
Actually, I was referring to the concept of "forced upgrades", which didn't really come into vogue until MS became a powerful player and started introducing that marketing tactic. Most of the time, software companies continued to support old versions for some time, and were
actually forced to innovate, in terms of delivering new features, in order to lure customers into upgrading. Not by radically changing something-or-other, and using monopoly power to essentially kill off the ability of older software to interoperate with the current state-of-the-art. Thus currently, users are faced with a decision to upgrade, or face "interoperability extinction".
Originally posted by: MrChad
But haven't computers and software become much less specialized and much more generally purposed as well? So many different businesses and individuals use the same software packages to satisfy many different needs. These software packages can try to be all things to all people, but they will never satisfy that goal. As a trade-off, we have some semblance of standards that allow the systems to interoperate and all people to easily communicate ideas and data with each other.
Funny, if MS truely wanted people to "easily communicate" with each other, then perhaps they should fully and freely document their protocols and file-formats, for all to use an impliment, rather than constantly change them in cleverly arbitrary ways, to retain their proprietary lock-in of user's data and communications ability, in order to keep their strongly in the MS product camp. You're right about MS pushing for "one size fits all" software, in order to market it to the greatest number of users. The result is that both end-users, and techies alike, tend to hate the compromises that MS was forced to make to market the product to both groups. I think I expounded on this in more depth before on a different thread.
Originally posted by: MrChad
And finally, I can't understand your conspiracy theories about W2K SP5. Why was XP SP2 produced? Do you think Microsoft wanted to pull so many developers off of Longhorn to develop software that they would give away for free?
Do you think that service packs are free software? No, they have been already effectively paid for in advance.
They are collections of patches and bugfixes, to correct defects in software that the
customer already paid for, under the expectation that it would operate properly to specifications. If it does not, it should be fixed.
Originally posted by: MrChad
They did it because their customers demanded that they do it. Don't you think that if it were more beneficial to their business and customers as a whole, they would have developed W2K SP5?
Not if it would have benefited MS more, to
not release the full service-pack. MS always places their financial needs above the needs of their customers. If customers could continue to use their NT4 servers to continue to do the tasks that they currently do (speaking about the transition between NT4 and W2K here), then if MS enabled that, then MS would be cutting into their own potential profits, so instead, they can support for NT4, and change protocols just enough, to lock out NT4. (Such as requiring a W2K Server machine, in order to be an ActiveDirectory PDC, for a mixed forest of NT4 and W2K servers. Among other things.)
Originally posted by: MrChad
Markets change and priorities change; the best you can do is try and satisfy the broadest range of customers possible. Attempting anything beyond that will only lead to failure.
Well, except that satisfying the broadest range of customers, generally means taking compromises in terms of satisfying customers the best way possible, so in that sense, MS is already planning on partially-failing to accomodate a user's needs, in a calculated attempt to gain the most profit, from the greatest portion of the market/user-base for their products.