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."
Open Source at least is a labor of love. I'd just like to see SOMEONE commit to solid testing so that in the future people wouldn't have to put up with such bug ridden software.
Ask and ye shall receive - ever hear of this place? They employ a few really good programmers, BTW...
Soko
"Depression is merely anger without enthusiasm." - Anonymous
"There is no road map for Linux, nobody who has his rear end on the line."
Right, why does Ballmer think Microsoft includes an EULA with their software? To void them of the responsibility for the trillions of damage their software has caused through security vulenerabilites and generally poor design.
Yeah, trillions. We've all seen the way damage is estimated each time a virus grinds everything Microsoft to a halt. Usually in the hundreds of billions, and it's probably happened at least a dozen times. This let alone unrelated individual incidents companies around the world have on a daily basis.
Oh, and don't forget about the kids that get locked up for writing viruses and other mischevious software that exploit said vulnerabilities. They're an easy scape goat to relieve Microsoft yet again of any responsibility what so ever.
I'm tired of this bullshit. The day Microsoft gets hauled in to court to take responsibility once and for all is the day I go skiing in hell. I bet I'll see Gates running the resort.
-kidlinux.
Consider the software marketplace, and the two feedback loops that drive it. One is the Almighty Frogskin* the other is the quasi-academic pursuit of excellence for its own sake. **
I'm increasingly bemused by those who try to see these orthogonal motives as somehow overlapping. They just ain't. Nothing to see here. Keep moving.
*They're no longer purely green...but neither are frogs
**because a shot o' sake, like jogging nude, puts color in your cheeks
Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
I know this is barely on topic, but why doesn't the title of Cringley's latest article show up in the slashbox any more? I liked having a new title appear to remind me to go check out his latest musings.
Perhaps, I'm just dreaming and the title was never there... it's been one of _those_ days...
Reasonably consistent consistent APIs across products
Talk to the Samba guys about how inconsistent they are about protocols. They are a huge company, and many things are inconsistent. You do raise valid points tho, and many in the OS community don't want to hear anything negative.
There was a MS funded benchmark a while back, where Windows came out on top of Linux when it came to webserver performance. The great sea of Slashdotters were up in arms, They shilled for MS!!! A few people actually decided to think "maybe they're right" and looked for improvements in Linux networking code. And Linux got faster, and has beat beating Windows IIS's ass ever since. There are advantages to listening to bad news sometimes.
Conventional wisdom suggests that the people who had been paid more would be more apt to change their minds, but actually, the reverse was true. The explanation is that the people who were paid could resolve the conflict in their mind between the beliefs they held and the contradictory statements they were writing by saying "heck, I still don't believe this, I'm not writing it because I believe it or anything, I'm writing it because I'm being bribed to." But the people who didn't have that "out" had to resolve their own cognitive dissonance another way, and for some of them, at least, the way was to realize that maybe there was something to the counterargument, after all.
Anyway, the reason I bring this up is that I was eerily reminded of it while reading Ballmer's arguments that Microsoft's commercial software is "obviously" better because it's written by professional programmers who are paid for it.
But if you're getting paid to write code, and the code is (for whatever reason) crap, that you can't take pride in, you can at least feel good about all the lovely $$$ you're being paid. The open source programmer, on the other hand, who is doing it for love rather than money, doesn't have that out, so has a much higher incentive to write code that's not crap, because feeling good about it is the only reward.
If you are a good programmer, you program for a living because that is what you're good at. This is something that economists and Ballmer/Gates understand. Might as well get paid to program if you're good at it and enjoy it.
That's what's confusing about open source/free software--what do the developers do for a living? Are they students? Are they unemployed? Are they underemployed (e.g., working McDonalds)? If under/unemployed, why? If you are a good enough programmer to contribute to open source, can't you get a job with MS/IBM/Apple/Adobe/Oracle/etc.? Why would you program for free, in your spare time, instead of getting paid to do so?
I do not agree, even remotely.
In open source, the users are the testers. If they don't like something, they fix it, or complain, and patches come out. The find/fix cycle has a speed relative to the number of users that give a crap.
That means, nobody wasted time fixing things nobody cared about anyway. And, cool things one bug shy of being really cool will get that fix.
I call that effiency.
Structured testing is the old way. Let it go.
In the future, the people putting up with bug ridden software -- will fix it!
The only place I see for structured testing is on the user side. Determining fitness for a purpose. Does this open source software meet our needs. Let's beat on it with our test suite. Then make decisions about it.
Some users will find that software to be okay, others will move on, some might move in and fix it up.
That is the new way.
-ave
...or maybe not.
as far as I can be the judge on this, I don't care what Microsoft thinks about Linux. They see Linux as a danger, we just want stability in our OS. Linux isn't around to compete with Microsoft as far as i know.
As long as Microsoft doesn't boycot Linux, I'm fine with whatever Balmer is saying. I'm passed the Linux is better then Windows thing.
If Windows would fit my needs, I would have used Windows. If people using Windows have security problems, don't look at me, I'm not going to tell them to make the switch. (I'm not the tech support kinda guy, because that's what you get if you urge people from Windows to Linux, it's another level of thinking. Just try to explain why you have to mount a CD before being able to see what's on it)
42 + 1 = 42
Yeah, its funny, but I'll run with it anyways...
.NET's internals since that's the next generation of libraries for the development environments to work in.
.NET 1.0 packaging and roll-out, considering that the original release required installing ALL of the documentation onto your HD even for just the run time...there's no reason it needed 1.6 GIG except that *SOMEBODY* stupid got involved along the way...
From what I can gather having read Code Complete and other books from M$ Press is that the serious A-Class players at M$ tend to work in the libraries and languages divisions since 1) languages and libraries were their original product to start with, and 2) the libraries are used in EVERYTHING else, from the OS to Office to these little don't mean a thing until they're integrated into Windows itself projects like UPNP. If they libraries are flawed, EVERYTHING they do, and everything everybody else does, is flawed, and M$ can't afford that. Thus, most A-Class players were working on
On the other hand, they got crappy people do to the
Fortunately, 1.1 fixed that particular issue...
"But remember, most lynch mobs aren't this nice." (H.Simpson)
-- Joe
Robert Townsend, author of "Up the Organization" and former President of both Avis Rent-a-Car and American Express, always refused to look at "presentations." He felt that if you couldn't just talk to him and lucidly explain what you were on about in one minute it wasn't going to be worth his time in the first place.
Richard Feynman held that if he couldn't explain a physical phenomenon to someone with no scientific background in plain English in a minute it meant he didn't really understand it himself.
While this may rankle some of the peanut gallery here I'd suggest that if you can't explain the most technically archane subject you deal with to a nontechnical person in plain English (or Russian, or Chinese, or what have you) in a few minutes you don't really understand it either.
Cringley's pieces may contain far more depth than they can appear to have on the surface, even if sometimes he's a little slow to "get it."
So was Feynman, for that matter, but when he got it, he got it.
KFG
The thing to keep in mind is that, although one should be able to explain these matters to non-technical people, a particular text needs to have this in mind - and it would be woefully unuseful to the technically minded. This makes some articles bad for forwarding for our less technically apt acquiantances, and some more useful. I hardly think anyone would require all articles on slashdot to be written such that non-techies will understand... might prove very boring.
In his anxiety to promote structured testing (which he admits fails even in the corporate world) curtlewis misses two fundamental points: 1. the effect of tens or hundreds of thousand eyeballs. I usually do diffs between releases and am allways amazed by the amount of substantive changes, while still preserving a working product. Over ten years I only had accasion twice to be first to report a bug and suggest a patch. 2. Nobody is even encouraged to use prereleases for any critical work. for example linux 2.2.x is available and the kernel community encourages use of GCC 2.95.x even for kernel 2.6.0pr8. If anybody wants handholding and somebody to blame the commercial vendors are more than happy to accept that persons money. Microsoft is feeling the heat only now because finally their products are being used for bottom-line affecting work.
HermanCarl
the article was good, but he missed mentioning the biggest difference of all, and the most important point. probably because he thought it was obvious.
:)
but anyhow, the largest reason open source is better and more secure than closed source (or commercial software like microsoft) is because you have millions of people around the world looking at it, testing it, not just coders, but everyone.
If there is a serious flaw, it's going to be found, and very quickly, and what's more, lots of those people are coders, which means they submit suggestions and sometimes even patches and improvements to the developers. and not only that, he misses the whole culture and ideas of sourceforge, where anyone and everyone can review any project, and also development of open source projects for the ones we know most well, are not single person developments, but a team, and that team is reall cohesive, it has to be.
anyone in the world can stamp out an email to the developer(s) of an open source project and say "hey dude, there's a bug when you do this, this and this", even a novice computer user can do that.
ballmer just doesn't get it, and never will. M$ can never beat the sheer magnitude of good coders around the world, 24 hours a day inspecting the code.
the only way M$ can beat open source would be to try to open source windows themselves. but that wouldn't work. M$ has lost the respect of decent coders, and their "cool" factor a long time ago.
My bet would be open source coders would look at their code and end up vomitting the rest of the day. it really is that bad.
"I hardly think anyone would require all articles on slashdot to be written such that non-techies will understand..."
And I never suggested anything of the kind.
In this particular instance I think Cringley was a bit slow in his enlightenment. This peculiar dichotomy of society's view of the "professional" versus the "amatuer" is one I've been dealing with, and conversant with, since as long as I can remember.
To me Microsoft's position is patently like that of Starving Artists Inc. claiming they make the best art because they employ thousands of professional artists. Not like those disreputable independants Picasso, Mondrian and Matisse.
Still, it's interesting to see someone go through it, and to do so in this public manner. It can be instructive to both the technical and the nontechnical, even if only as a reminder to the technical that this is where most people's perceptions are hovering around.
While you may be someone who understands your field well enough that you can explain it simply it also has to be remembered that sometimes you have to.
KFG
> People hate Bill Gates so much that they are not just willing but glad to donate tens or hundreds of hours of their time to anything that would make projects that Microsoft competes with better
The fact is --- this wouldn't be funny unless there was a small grain of truth to it.
Some of the things I've read by RMS lead me to believe that there is at least a part of him that hopes that his software will help contribute to the downfall of proprietary software.
That's some of it. I know that as a programmer I consider myself more of a hobbyist than a professional, even though every job I've had has been in the software industry.
The problem I had at work was that once my projects got beyond a certain point (ie. the parts I found interesting, or the point where I've solved the "hard" problem, or a proof-of-concept of an idea I was trying to push), I lost all interest in working on it further. It was like pulling teeth to get me to finish anything. My co-workers were frustrated, and I was frustrated. Eventually I quit.
As a hobbyist, that's not a problem. I can develop something until I get bored with it and stop. While that doesn't necessarily seem productive in the normal economic sense, that's how I operate. If I find a piece of an open source project that interests me, I can work on it, no matter how small it is. Once that piece is done, I'm done. I don't have to work on other bits that don't interest me.
But here's the best part: If I don't finish, no one loses. If the feature is important to someone else, it will get done. If not, no one will miss it. In a commercial setting, I would have been forced to finish, which would probably involve some half-assed implementation where my motivation is getting my boss off my case, rather than producing a quality product.
I'm not saying that's how all commercial software efforts are done, but I'm sure that's how some of them go.
blog
But actually *FIRED*??? Not yet.
I know someone who was fired because they weren't willing to not fix bugs to meet artificial milestones, and save the bugs up until the next bug bash.
That'd be me.
Of course, at the time I didn't realize that the correct way to deal with bullshit at Microsoft is to grab a dagger and go have a knife-fight with your team leader and the other people on your team. (Metaphorically).
You misspelled 'Clippy.'
Not to mention that stupid @#$% dog in the WinXP search program. More annoying yet, when you tell it to go away, you have to wait for it to amble off the screen and jump off some unseen (hopefully high) cliff. Congratulations, Microsoft, you've managed to reimplement find
, in such a way as to consume a double digit percentage of the processor and only 64 meg of Ram!
Now to be fair, neither grep nor find are exactly what one would call user friendly, but they're also quite a bit more useful, and there _are_ graphical front ends for both of them if you happen to swing that way.
Why?
PJ at GrokLaw is assembling a "Press Kit" of hard questions to ask of Darl & Company. I suggested the following but it is equally applicable to the folks in Redmond:
Both Microsoft and SCO tout the fact that they indemnify their customers as an advantage of their products over Linux and other Open Source Software. The American Heritage Collegiate Dictionary defines indemnify as:
1. To protect against damage, loss, or injury; insure.
2. To make compensation to for damage, loss, or injury suffered.
This definition of indemnify seems to be at odds with the Disclaimer of Waranties, Exclusion of Damages, and Limitations of Liabilities sections of your products' end user license agreement (EULA). Please explain your meaning of indemnify when you say that you "...indemnify your customers while Linux does not," or, if you are using the dictionary meaning of indemnify, when your EULAs will be changed to incorporate the generally accepted meaning of indemnify.
They that can give up essential liberty to obtain a little temporary safety deserve neither safety nor liberty.
Ben
Sure... Bill personally dared to preach to the public that the Internet was an unimportant issue, good only for students.
That's how M$ came up with the idea of the internet browser.
If Microsoft had been the only IT company "allowed" to develop, we would still have netbios networking on win 4.1.
Maybe it has something to do with brand loyalty. People know the MS stuff will get better so they just buy it, deal with the short commings and wait for the next version to come out.
You maybe have this attitude, but most people don't. It really has nothing to do with brand loyalty for most people, it has everything to do with the fact that Microsoft has a stranglehold on PC makers, through pricing schemes and threats, to the point that no major PC manufacturer will release a system that can be bought off the shelf without Windows. If, say, HP, Dell, or Compaq would offer the buyer his choice of OS on whatever system the buyer wanted, Microsoft would charge the manufacturer at least full-retail price for Windows, and possibly ban them from selling Windows systems at all.
Since every major corporation in the world cares for nothing but money, they would rather sell-out and let Microsoft basically force them to do what Microsoft wants them to than give their customer any choice.
That is the beauty of small business. I build PCs and sell them. If you want Windows XP, I'll make sure you have a properly licensed legal copy. If you want Linux, I'll make sure you get the distro you want, installed and configured, and guaranteed, no different than a Windows box. If you bring in your old copy of O/S2 Warp, I'll get it going for you. If you want BeOS, I'll do that. After all, it is your machine I am building for you.
However, I cannot get the same price for Windows XP as Dell or Gateway, therefore, it will cost you more from me than them. That is fine with me. If some entity comes to me with some "sweetheart" deal, but tries to tell me what I can and cannot do with my business, and there is no law saying I must obey, I ask them to leave, immediately. This is my shop, not theirs. I would rather repeatedly plunge the splintered end of a broken two-by-four through their skulls, then my own than voluntarily give control over to another, especially one such as Microsoft.
So I may never be the next Dell. That's fine. I can live with that. I won't sell myself to anyone, nor will I force my customers into an either/or situation. If you want a quad Opteron box, a beowulf cluster, G5 Mac, or Hell, even a Dell, I will make it happen for you.
The biggest difference between Microsoft and the Open Source crowd is, Microsoft is shareholder and profit oriented, and Open Source people are people and solution oriented.
For those who describe their systems as 'boxen', do you order multiple 'boxen' of corn flakes also?
You'd be amazed at how little some of those libraries are used internally. MFC, pretty much never. ATL? Not infrequently because COM's a bear to deal with otherwise. WTL? Anybody even *remember* that that came out? The level of polish on its installer should give a sense for how much positive feedback has encouraged its development while internally most had never heard of it.
For all the times people re-implement linked lists, or trivial string processing routines, because, gosh darn it, it would be just too bloated to link against one of those libraries, I probably HAVE a nickel.
I think you're missing the point. Looking back on the twenty years I've been in this game, I would say that all the truly great programmers I've worked with were misfits, either highly eccentric or with real social skills deficits or real psychological dificulties. If you want A class programming you have to set up an environment in which those people are secure, comfortable and adequately supported. If you do, you'll get more work, and very much better work, out of them than you would out of a group of non-misfits. There are brilliant and creative people in this world, and there are steady conformists. But there are no brilliant, creative steady conformists.
I'm old enough to remember when discussions on Slashdot were well informed.