Cringley on Microsoft and Linux
brentlaminack writes "Time for this week's dose of I, Cringely. This week the Cringe talks about Ballmer's Orlando comments from this week. He compares Ballmer's comments with Linus's. Nothing new here for the /. group, but a good read for the non-technical."
Read a similar article at OSNews today: http://www.osnews.com/story.php?news_id=4898
Cringley's article is a good non-technical explanation of why freely developed and freely distributed open source software can and often does work better than Microsoft's commercially developed and commercially distributed closed source software.
"When Ballmer talks about rears being on the line, what really counts at Microsoft is meeting shipping targets -- meeting business goals -- not quality targets. It is all about revenue. And there is nothing wrong with that if we all just say it out loud and admit the truth. But we don't."
He's right, Microsoft frequently gives away "Ship IT!" awards to managers who get the product out the door on time. This is the reason so many products that could have been great, are not.
he didn't mention the best case of 'just ship it' in history, WinME. What I've heard is it was a discarded code base revived just so they'd have something to market that year (WinMe is a pretty catchy name after all). That's about as low as it gets.
Hi! I make Firefox Plug-ins. Check 'em out @ https://addons.mozilla.org/en-US/firefox/addon/youtube-mp3-podcaster/
That just shows Cringley's ignorance of how Microsoft functions. Microsoft routinely kills off bad projects,usually before they even make it out to the public...
Ahem...
Windows For Pen Computing
NetBUI
That stupid MS email protocall, before they adopted POP3
Actimates Barney
MS Paint.
MS Photo Editor.
Notepad with a 32K buffer.
Command.com with no real scripting.
The whole registry idea.
Windows 1.0, 2.0, 286, 286
Comic Sans-Serif. God that font sucks.
DiectX sucked untill it got to 8.0
MS Fortan.
MS Quick Pascal.
MS C++ untill about a year ago.
XENIX.
DOS 1.0 diden't even have a directory tree.
Moneyed corporations, non-working 'poor' and criminal prisoners are turning productive citizens into tax-slaves.
.NET is a Reasonable API?
Yes and the MSRPC protocol was secure.
The fact is that an API is never going to be "resonable" in the sense you define it because like the programs it is designed to bolster it is ever evolving. Take GTK+ it has what I would consider a resonable API, but it must evolve. If you want stability go and get a specification, oh wait, Microsoft will slaughter it, remember the Microsoft "extentions" of kerberos, java, and ANSI C/C++.(I know no C/C++ compiler is strictly ANSI standard, but Visual C++.NET, JESUS!) Also look for them to provide crap languages like VB and horrible implementations of a COM system. If you don't like the "noise" in OSS then just stic to the GNU projects or GNU/Linux distros. If your lazy you should use Debian (BSD, HURD, or Linux) that way you can tailor your system to your needs without all the "noise", thats what I do.
Did Glenn Beck rape and kill a girl in 1990? gb1990.com
PostgreSQL is quite heavily tested. Their regression test suite is...formidable.
gcc is, if I recall, has a regression test suite which grows by leaps and bounds with every release. Not sure what sort of coverage we're looking at right now.
perl 5.8 also has a large test suite, and 5.10 is looking to be insane in the testing department.
All of the core CPAN modules have at least rudimentary testing, most of them have quite heavy testing.
parrot loves it some testing as well.
OSDL wrote a test suite for the Linux kernel which is pretty hard-core, I've been told. Testing results for development kernels are posted regularly to LKML, I believe.
These are scattered projects (and they are not the only projects out there that test), but they reflect, in my opinion, a growing trend in open source: automated testing.
The reason for this is twofold, IMO.
As a possible argument against what I'm saying, I'll refer to your statement "no real testing of Open Source. No Test Plans, no Test Matrices of test cases"[1].
To that argument I would say: don't get so hung up on names that you miss the point.
[1] - I'm not saying you are making or would make this argument, just trying to think of possible responses and responses to those responses.
Microsoft Graph Help file
1. There is an extra helpfile on your office CD/DVD
2. This is way out of step with the product and AFAICT has not been updated since office 6.0
Best source of graph control help is from MSDN samples (free of the net)
OpenFileDialog and all other common things found in CommonDialog Control are all avalible without said ActiveX/VBX/COM+ blah blah being as they are straightforward function calls to windows core library
Access over ODBC, not to mention anykind of network--Thats a bug man or just like its grasp of SQL(as in syntax) maybe we will call that a feature-On the upside office 2000 was way better than office 97 (in respect of Access's UI)
Also was that Access JETengine or DAO JET engine or...you get the idea
All of that only goes for boxed software that is bought like product. MS, Oracle, etc all assume that the only solution to a problem is buy some product. For a techie, that's the easy way out. It is often expensive and not a very good fit for the problem either.
I'll give you a for-instance. We use a troubleticket system called IRM to handle IT inventory and helpdesk tracking. It did almost everything we needed it to do very very well. The only thing it cost us was me learning how to set it up. The one thing it didn't do is spit out of a list of machines that have a particular software package installed. I made a module for it that did it and made it available to the rest of the IRM community.
As downloaded, IRM was a better fit than anything we would have cared to pay for. A very small amount of tweaking on my part made it exactly what was needed.
The Great Great Grandparent wrote: "I liked the part where he describes how most bad open source projects die in a darwinistic fashion while most bad microsoft projects limp on forever."
Then you write:
Actually, what you discribe is actually a bit of a credit for MS.
Windows 1..., MS C++, DOS, Notepad etc all started off pretty bad, but it was their persistance that made it all work.
MS has the luxury of releasing something that doesn't quite work properly and just working at it till it has it right.
Do you know how to COMPREHEND what you read?
Microsoft put out crap products and they should be congratulated for their persistence?
You're a complete twonk.
http://jesus.everdense.com/
Can anyone confirm/disconfirm Ballmer's comments concerning the number of critical security updates required for "Windows 2003" versus the number of critical security updates required for Redhat 6.0? I think Ballmer said Redhat had several times more than Windows in this instance.
Also, one thing I believe Ballmer overlooked in his discussion of security vulnerabilities was the fact that if 98% of computers run Windows, a serious and malicious worm/virus using a new and common vulnerability could potentially disable 98% of computers. If the operating system distribution is spread out more, there may very well be security holes in other operating systems, but 35% of the world's computers disabled by a virus is much more preferable to 98%. Hopefully the EU will consider this when they decide how to regulate/punish Microsoft in the very near future.
I am a linux advocate as much as the next guy (RHL9 and Debian), but I have to give Microsoft credit for what they do. They don't write the world's best or most reliable software, but here's what they do.
First, they provide a (de facto, not internationalized or official) standard operating system for users and developers of consumer-oriented software. Their market share ensures this and also ensures that people won't have to fiddle with all the settings of their operating system. This of course also means it is much more vulnerable to viruses and trojans, but that's also partly a byproduct of their initially somewhat flawed design in DOS and along the way so many years ago.
Second, Microsoft is a BUSINESS. Yes, linux can be a business too, but Microsoft has been around longer. They're defending their assets using negative publicity and FUD and predatory practices. We've had this type of stuff before in the airline industry with the oligopolistic airlines forcing out smaller potential competitors. We've had this type of stuff with Standard Oil and AT&T. The question we have to ask is this: if you were Microsoft, wouldn't you think what they're doing is a good idea? Would you actually be idealistic and release your source code to the developer community and sing Kumbaya? Given that you're a corporation that has to defend both its employees and shareholders, wouldn't you attack linux and let a few excess projects run on for the sake of all those families with parents working on them?
C'mon.
> The point is that Apple did a nice economy of scale with relying on a nice kernel that they don't have to maintain or pay!
Ohh I really hate nitpicking, but I just want to point out that OSX uses FreeBSD userland, not kernel. They actually used the NextStep Kernel developed by NeXT.
You do however make a lot of good points about the structure of Linux and what holds Microsoft back.
Can I get an eye poke?
Dog House Forum
Against this, let's look at how things are done at Microsoft. I'll use as an example Universal Plug and Play, which was/is Microsoft's initiative to make your refrigerator talk to your PC.
Too many people get this wrong. UPNP is a standard that lets you transparently open up holes in your NAT. So if you want to run a game server or direct video chat behind your UPNP enabled router (many are) on WinXP, you can do so transparently. UPNP uses a protocol based on HTTP and XML to automatically configure port forwarding. It has little to do with a network enabled refrigerator.
Actually they use contractors, or at least they used to. The experience the poster described is not surprising in the least given that these guys were thrown on the phone with one week of "orientation".
Right. Regression tests are there to make sure that:
1) Bugs that you've fixed don't get reintroduced by later code changes,
2) The system runs across a matrix of operating systems, platforms, etc., and
3) if you write your regression tests before you code the app (yay XP!) they're how you know that you're done coding your app.
Depending on what you're coding, you'll almost certainly need to suppliment regression testing with other forms of testing. I find that throwing naive users at software is a great testing scheme -- they try things no experienced user would think of. And you get usability testing for free!
Enable 3D printed prosthetics!
To be precise...
Mac OS X uses a kernel derived from Mach 3, but all that that code does is allocate RAM and processor time. Most of the kernel code in Darwin comes from various BSDs, including the IP stack, a lot of the file system code, the process model, etc.
If you want to see exactly what does what, and where it all came from, check out the darwin code at http://developer.apple.com/darwin/
-jcr
The only title of honor that a tyrant can grant is "Enemy of the State."
DiectX sucked untill it got to 8.0
DX6 and DX7 were okay; DX5 and prior versions sucked. That's what they say on the enthusiast sites, anyway.