This quote is one of my favorite Linus quotes ever. Bashing on Microsoft is such an 'in' thing to do and honestly it's so pointless. Many IT folk are stuck using their products for any of a number of reasons. Many of their products simply are the best fit for specific applications. It's so irritating to hear the constant Microsoft Sucks(tm) from people that either honestly know little about it or that bash unnecessarily. Every OS sucks, none are perfect.
The biggest gripe I have with that attitude is that it destroys the FOSS, Apple, and Linux movements. People that are new to the IT world don't have years of backgrounds with projects and are going to be picking up on the attitudes of the people already there as well as struggling through technical problems. If they're instantly exposed to a very negative attitude (towards themselves, others, or really anything) it's going to be a huge turnoff to whatever project it is. The negative/hateful attitude that a lot of people have towards Microsoft actively hurts the same cause that they're trying to help.
The other part of that is that with any social interaction someone that is constantly putting something down is perceived (usually rightfully so) as being insecure about their own inadequacies. I don't know about others, but Linux and Apple have both matured to the point that I'm quite comfortable quietly evangelizing and building others up, regardless of the OS choice.
It's time to relax guys, we finally have an atmosphere with the freedom to pick your own OS and to be happy with it. This is a GOOD time to be a nerd, and a fantastic time to share that passion and excitement with people from whatever background.
Besides, if there's someone to demonize, it's the people that don't take the time to secure their boxes. Those come from all distros/OS's and I'll gladly pass the pitchfork around for them!
If one looks at a graph of MS stock from 1986-2000 and compares that to 2000-2009 it shows the stock has basically languished. MS is a cash cow, slowly dying. They were the first and perhaps only company ever able to successfully leverage large network effects and create a proprietary lock-in model that has enabled them to dominate the desktop for a long time. Moreover it's so dominant that the only thing now worse than Office is Google Docs :)
Their business practices, particularly with respect to extortionary illegal contracts with hardware manufacturers were only finally stopped with a government anti-trust suit against them.
Although it may be enticing to spend a few years with a slick point and click IDE such as VisualStudio and pretend you are programming, as anyone who has ever done so knows at some point you run into something broken and it's tough shit because you can't fix it.
But you can relax, you are correct. They were never able to "own" the net and they don't own the pipes (which I've read is the real reason Buffett never invested in MSFT, he's a very long investor).
Please don't think ill of those who lived through those years. About three years ago now I swore off windoze for good and my health has improved considerably. I truly hope others have that same opportunity.
I might be early, I often am, but if you have the stomach for it I'd say MSFT is a good short, even if you like the stock it can be just as profitable on the way down as it was for those on the way up :)
"Although it may be enticing to spend a few years with a slick point and click IDE such as VisualStudio and pretend you are programming, as anyone who has ever done so knows at some point you run into something broken and it's tough shit because you can't fix it."
Really? Pretend? Really? That's what you think? I hope what you mean is the potential for over-reliance on wizards, which is easily countered by, oh, I don't know, learning what they're doing so you can accomplish it on your own, just 20-100x slower. Then use the wizard.
I'm sorry to respond to flamebait but I use visualStudio and emacs, compile by pressing a button and using make. As long as you understand what's going on it's all good.
I also think it's strange that in the Linux community there seems to be such a negative vibe around anything that even slightly raises the level of abstraction on the "tooling" side, yet on the languages side it's mostly a good thing, in my eyes they're both just tools, as long as understanding is sound then bring on the productivity boosts, again IMHO.
"I'm sorry to respond to flamebait but I use visualStudio and emacs, compile by pressing a button and using make. As long as you understand what's going on it's all good."
While I don't "hate" Microsoft, as a professional programmer who has worked in both Microsoft's world and the open source world, I am very glad to be able to work entirely in the open source ecosystem precisely because there is a limit to how much you can understand. You hit it when you hit the closed source components.
I grant you that having source for everything may not be everyone's cup of tea, but being able to dive into the source of everything has saved me so often that it results in a qualitative difference in the experience of developing. I haven't spent two weeks trying disparately to figure out how to get around some bug since I used a closed-source PDF generation library three years ago, but this was a routine experience in the Microsoft world. (Not always two weeks, granted, but it can be!)
We've fixed the kernel, read the source of glib and other fundamental libraries to figure out why our things weren't working, hacked up other things in ways that are two-line fixes in what would be closed source in the Microsoft world but would be huge masses of unreliable code to work around at a different layer.
(It should be pointed out that this is simply an effect of having source and the right to build it and use the built result, which some permissive commercial licenses do permit, but my understanding is that this remains the exception and not the rule, with most people still working under the idea that opening your source is tantamount to handing out the family jewels.)
Actually I used all of these tools also but what I meant was if you build a tool any idiot can use then rest assured every idiot will use one. It's all good if the goal is leveraging the skills sets of the folks you hire. For programmers who really love to know things all the way down these tools are at best boring, and many hackers avoid them because when you really need them for something and hit a bug you're dead. There's nothing worse than going to upper management and saying I got stuck because VisualStudio won't let me do X.
" if you build a tool any idiot can use then rest assured every idiot will use one"
True, but not making something because idiots would misuse it isn't a good road to go down either.
"For programmers who really love to know things all the way down these tools are at best boring"
Do you mean boring in the sense that they just work and once you understand them they do exactly what you want, or boring as in you don't care it exists and you'd rather write it yourself, boilerplate included?
For me something that helps speed up a 20 minute job into a 20 second job is pretty cool, speed increase is one of the fundamental advantages of using computers.
"There's nothing worse than going to upper management and saying I got stuck because VisualStudio won't let me do X."
I haven't been hit by that, though I can imagine it leaves a mark.
"This wasn't meant as flamebait."
Roger, remark retracted ^_^
But now I'm curious about ya, When I only knew c++ I would sit and smugly think about how what the java people were doing wasn't real programming because they weren't managing their own memory, they were letting some program do that work. I now consider this a completely silly opinion.
I think control/productivity tradeoffs like garbage collectors are a much harder decision than, say, using a code generator and tweaking the output, as you the programmer have a lot more control over the generated code than you do a VM. What say you?
"True, but not making something because idiots would misuse it isn't a good road to go down either."
Erm... I am not sure about that one. Idiots cause a lot of harm.
The speed increase you get when using a wizard that makes code you don't understand you pay back with time and headaches when you have to fix the code you didn't write that no longer runs against the current runtime you are using.
As for Java and C++, they both make writing programs hard. The edge Java has is that it makes writing the bugs much harder.
agreed. I mean boring in the sense that I don't care how my car works.
control/productivity tradeoffs like GC are indeed a tougher decision. For a real-time trading system I would think a JVM might be a disaster, though Erlang/OTP also uses GC so it largely depends on the app and where the GC enters into it. Code generation is interesting. Statically typed languages like Java, enable IDEs that can generate a lot of the boilerplate, through annotations, etc.. but there is also the issue of control/productivity and the economics of programming teams that enters into it. I haven't looked closely but I think GWT is a good example of where folks can leverage their Java assets by generating javascript, for which rich toolsets seems to be lacking.
For what it's worth, having been raised on CLOS and Lisp on a Symbolics, C++ was a step backward and I considered working with it for 3 years a net loss. As I understand it C++ was an attempt to codify what folks were already doing in C with macros. As some famous programmer whose name I forget said, "Java took us about half way back to Lisp".
Slowly Dying? Please. I can't remember which blog these numbers came for, but this "MSFT is Dying" meme has been circulating for a while and there's a post out there with a fantastic treatment of the notion..
The gist is that Microsoft, as it's supposedly "dying," has gross revenue growing by BILLIONS each year. Yes, their stock has underperformed their sector. But their revenue hasn't. And a company can fudge profits 7 ways from sunday. But you can't fudge topline numbers without out and out fraud.
The author put it in an interesting way: Microsoft revenues grow the size of 1 Adobe or 1 Yahoo!, each year.
There's not a single American (nay GLOBAL) company that wouldn't love for a "death" like that.
And about Buffett... he's often written that he doesn't invest in a company he doesn't fully and completely understand.
The issue was not exclusion, nor bashing. The code has been accepted by a driver maintainer, and there were surprisingly few critical undertone mails on lkml, however legitimate (namely, adherence to the Linux coding conventions).
What is not pointless is honesty, and not even Linus[1] can say, that the code drop was honest. Microsoft should have said: somebody found us in violation of the license we think is important [the licensing legalese itself, not the GPL], and this is how we fixed it. Sorry for our mistake, we do our best. This is not what happened: instead it was sold as an act of benevolence. Voleurs.
You cannot blame people for hating dishonest legal persons.
[1] should take a long look in the mirror and ask themselves why they are being so hypocritical.
Except that's not what happened. MS didn't "get caught" for a GPL violation -- there was no license requiring them to submit the code.
They didn't do it out of the goodness of their hearts, correct, because MS is a corporation -- not a person. MS did this out of business sense -- increased interoperability with Linux just makes Windows/Microsoft all the more valuable.
Despite not being natural persons, corporations are recognized by the law to have rights and responsibilities like actual people. Corporations can exercise human rights against real individuals and the state
Yeager said Stanford's lawyers asked him to review a copy of Cisco's
software. He found his own work in it.
Stanford officials in charge of licensing debated what to do. ``Cisco
mess'' was the heading of one e-mail discussing the issue.
Earnest urged a lawsuit and even raised the idea of criminal charges
against Bosack. He e-mailed colleagues: ``The fundamental problem is: how
do you negotiate an equitable agreement with crooks?''
Your response in no way addresses what I said -- MS didn't act out of empathy, b/c corporations have none -- they don't have a "heart" b/c they are persons only by law.
As to the Cisco cite -- how is that relevant to MS? Moreover, copying software code is not a criminal offense -- it's a civil tort. Finally, equitable estoppel is not a matter of negotiation, it's a matter of one party's unilateral acts.
they don't have a "heart" b/c they are persons only by law.
This is a well-known phenomenon [ http://en.wikipedia.org/wiki/The_Corporation ]. Organizations acting without moral, conscience, responsibility and ethically towards real humans/natural persons can certainly happen, but it goes without saying, that it also does have consequences. This is what I pointed out: You cannot blame people for hating dishonest legal persons.
Acting such and expecting loyalty and gratitude in the same time is hard to achieve.
History is littered with examples, and I am inclined to think the recurrence of such attitude is partially responsible for the self-inflicted trouble we face.
"We learn from history that we learn nothing from history." -- George Bernard Shaw
Cisco is relevant, because History is relevant, from my point of view.
"When Americans say "that is history", they often mean it is no longer relevant. When Europeans say "that is history", they usually mean the opposite." -- Javier Solana, 2006
Except that's not what happened. MS didn't "get caught" for a GPL violation
Just as a record in the Memory Hole, a paste from a separate thread, now buried:
-8<---------------------
MJF: Hemminger is claiming Microsoft put the LIC code under the GPL because it was in violation of the GPL. Is this true? Did you have to suggest to (Microsoft Platform Strategy Chief Sam) Ramji & Co. that they were in violation in order to get them to agree to release the code under GPLv2?
GKH: I didn’t have to “suggest” anything, I only had to merely point out the obviousness of the situation :)
MJF: If this isn’t accurate, could you let me know how to interpret (Hemminger’s) comments on his blog.
GKH: No, that sounds accurate.
[...]
Ramji didn’t come right out and deny the GPL violations claim, but I guess that’s as much as we’re going to get.
For the most part, I agree with Linus. MS shouldn't be excluded, or hated solely because it's MS.
But, that doesn't mean they should be welcomed with open arms, either. MS has done some nasty stuff to us (OOXML, FUD campaigns, patent threats, et cetera). I recognize that companies are large and fluid, but they should still be held accountable.
MS has recently decreased their evil_count in my books, but they still have a long way to go...
With companies I trust, I ``trust, but verify''. With MS, I ``distrust until verified.''
You (and plenty others) need to stop anthropomorphizing Microsoft and painting them as some kind of single sentient entity. The reason they can be unpredictable is because they're so freaking huge. Even the strategy on their own products doesn't make any sense most of the time.
Microsoft has a pretty consistent record of trying to leverage their strength to stay on top. Remember, there are real human beings who do this (Gates, then Ballmer) - It's not anthropomorphizing when it's a _human_ behavior we are talking about.
Remember - Linus and Crew's itch is mostly about writing excellent software. Microsoft's itch is about dominating the competition, sometimes by embracing-extending-and-extinguishing standards, and sometimes by engaging in illegal monopolistic behavior:
"412. Most harmful of all is the message that Microsoft's actions have conveyed to every enterprise with the potential to innovate in the computer industry. Through its conduct toward Netscape, IBM, Compaq, Intel, and others, Microsoft has demonstrated that it will use its prodigious market power and immense profits to harm any firm that insists on pursuing initiatives that could intensify competition against one of Microsoft's core products. Microsoft's past success in hurting such companies and stifling innovation deters investment in technologies and businesses that exhibit the potential to threaten Microsoft. The ultimate result is that some innovations that would truly benefit consumers never occur for the sole reason that they do not coincide with Microsoft's self-interest. "
Which is the normal job that the code gatekeepers do anyway. For any piece of code that wants to swim upstream to the main repository, it gets checked by the respective maintainers along the way.
Linus trusts these people to do their job, which sounds fair enough to me.
While some parts of Microsoft may have become "less evil", other parts have become more so, or at least more capable of evil. Vista was the first windows incarnation that had DRM attached to its vitals. One can expect this situation to only get worse. Kindle's 1984 flap was a prequel to what can be expected in the future as this stuff multiplies.
> MS shouldn't be excluded, or hated solely because it's MS.
This will sound too simplistic to many of you, but MS really should be hated because it's evil.
And no, not everyone working there is evil, but the leadership is, and they control the company.
OOXML, FUD, threats, and so forth are only a small sample of all the evil things they've done. Read a few articles on www.roughlydrafted.com for example, to remind yourselves of more.
People just keep forgetting all the nastiness, for some really strange reason. Possibly because it's an Ah-mmmeeeeeerrrrr-ih-cann company.
You were doing so well until you decided to trail off on a completely unrelated racist (nationalist?) hate-fest against Americans...
To address the rest of your comment though: things aren't not as easy as and black and white as they seem. MS isn't a gigantic living organism with a single brain - there are a lot of teams in a company the size of Microsoft, each with different leadership and goals. Some will be friendly to open source, others will not.
It's easy to paint an entire group of people with a broad brush and see the world as black and white, but then you'd also be wrong.
> You were doing so well until you decided to trail off on a completely unrelated racist (nationalist?) hate-fest against Americans...
I take it you're an American? :)
BTW, I expected lots of downvotes for that post, but oh well.
I can't see my remark about possibly being Ah-merr-ih-can as racist though, but it's always a good accusation to throw around. It's not a hate-fest either. As you most likely understood, I implied that some people might be willing to overlook MS's evil because it's an American company, as in, out of patriotism or something.
As a people, you(?) do seem to be prone to indulging overreacting. Take "Sodomayor is a reverse-racist" for example. Or the heated discussion around abortion.
> MS isn't a gigantic living organism with a single brain - there are a lot of teams in a company the size of Microsoft, each with different leadership and goals. Some will be friendly to open source, others will not.
I believe I addressed this by saying not everyone in MS is evil. But if you look closely, you'll discover that it's really freaking difficult to deny MS's actions as a company being evil.
> It's easy to paint an entire group of people with a broad brush and see the world as black and white, but then you'd also be wrong.
Right, black and white. The truth/reality is often pretty straightforward though. As for painting an entire group of people with a broad brush, see my original comment about not everyone working for MS being evil.
Bleh. I tend towards viewing MS as truly evil too, but that site is a bad example to offer. I clicked through expecting to find a factual chronicle of corporate foul play, and instead just found a bunch of uninformed opinion-spouting combined with poorly veiled Apple fanaticism. Nothing turns me off faster than someone who can't be a little reserved in their allegiances.
Uninformed opinion-spouting? Well, what makes you so sure you're not engaging in some yourself? What if all he's saying about MS is true?
The guy seems to be really well informed. He's definitely pro-Apple though, I'll give you that, but he's really insightful too.
There was another site I happened to see through HN that kept a good chronicle of MS's evil, but I didn't save a bookmark so I had to go with RoughlyDrafted. Sorry! :p
The fourth headline down, "Windows 7 so great Microsoft is giving it away for free," was the last straw for me.
It's a release candidate. There's nothing new about MS giving their early betas and RCs away for free, and in fact it's one of the few areas where I feel they don't totally bungle the process of making and supporting software. To twist that into "look how bad windows 7 is gonna be lol" is obnoxious and disingenuous.
Yes, he got a little carried away in that article. I didn't really like it either. But besides his own conjecture, without which there wouldn't be much left of an article, did he say anything that's not true?
What were the earlier straws, by the way? If you just dig around a bit, I'm sure you'll find quite a few really enjoyable and insightful articles on the site.
To twist that into "look how bad windows 7 is gonna be lol" is obnoxious and disingenuous.
I thought he was just pointing out how MS is worried, and wants to increase W7's adoption by giving the RC away. There's also been some speculation about whether it's actually the finished W7 just dubbed an RC because giving away the finished product would look far too desperate.
Unfortunately, I've seen a lot of excitement over W7, so it looks like MS will have a successful Windows on their hands again.
I think Linus is right in that there is a priori no reason to not accept the code. However, I think he'll change his mind once he actually sees it.
If any of you had actually looked at the code, you would have seen that it's crap. Even though they removed the weird Win32 coding conventions with lots of CAPS LOCK, UINT32 #define's and stuff, the functions are large and they are simply poorly written. If you look at "native" code, it is much more clean and written in an organized fashion. The MS code looks to be written in a haste, without properly thinking about the problem being solved (in this case, the writing of a driver).
That isn't to say that the code will not be useful, it could be rewritten to be obviously correct instead of it having no obvious bugs.
Is there somewhere I can download the code to take a peek into it?
I also remember that coding in C++ for Windows CE was not a pleasant experience. Beauty is good and writing beautiful Windows code is next to impossible. C++ code is pretty. C++ code that runs in Windows is, most definitely, not.
I agree with Linus, for the most part. Microsoft hatred has turned into a religion, and like any religion, it has its radicals.
However, it should be pointed out that this whole incident has more to do with Microsoft being forced to comply with the GPL to avoid being sued for GPL violation. Yeah, they GPL'd code, and turned it into a PR stunt - but they're not happy about it.
In other words - this incident proves that we need to continue to watch Microsoft like a hawk. Trust them like you would trust a trained tiger.
All I know about this incident is that Microsoft dropped some driver code into the kernel and chose to license it as GPL (they could easily have chosen BSD instead). Why have they been "forced to comply with the GPL to avoid being sued for GPL violation"? Did I miss something?
* edit: I did miss the earlier thing about them mixing GPL with a binary blob in an earlier driver. Though who would be suing them in this case? And is this different from NVIDIA's driver?
NVIDIAs Linux driver is the apparently 90% the same code as their Windows driver, making it not a derived work of the kernel as it doesn't exclusively require Linux.
Nice Post :
However, "There are 'extremists' in the free software world, but that's one major reason why I don't call what I do 'free software' any more. I don't want to be associated with the people for whom it's about exclusion and hatred." -> I find this quote a bit rough. Linus should not care about it. It's like you do not call yourself a hacker because media don't know the difference between hacker and cracker.
Though I agree with you for the most part, depending on how much you care it's sometimes silly to fight a de facto, I don't say I'm "hacking on a project" to someone non-technical unless I'm prepared to spend a few moments explaining my use of the word. Like calling an Add() function that you know from experience returns a product and getting annoyed at the result.
In your example your saying you wouldn't use the word hacker because it has a negative connotation for other people, while in Linus' example he's not using the phrase free software because it has a negative connotation for himself.
It might be a bit rough if you're looking in on the issue as an outsider, or if you've never been faced with the dilemma of how to license your product, but you should know that there is an entire spectrum of licenses that could fall under the umbrella of 'free software' i.e. BSD, MIT, and the GPL.
When Linus says the 'extremists' of the free software world, I think, he's mainly refering to where the FSF is taking the GPL[v3] and what this new version proibits.
Open-source code is really only "open" to the people who know how to read it and write it and modify it. This excludes about 99.725 percent of the population. Proprietary code people are less rare.
So one of the reasons I chose to modify zentu.net's tagline from a "FOSS"-oriented tagline to an "OSS"-oriented one is precisely that . . . I admire Stallman's and Torvalds' benevolences and all, but people cannot work for free. FOSS is too often misclassified (by the MS camp) as being cheap, when in actuality it is just as valuable as proprietary. Anybody who wants to can get into any code base and can contribute value; it's totally binary. So I have to agree with Torvalds here.
Although I've never really "hated" Microsoft, I have felt really robbed by its lack of payment or even acknowledgment to me for all of my hours of service on their systems. It excluded the outside "people" factor from its business model, and that is why I think so many people are perturbed by it. OSS at least attempts to give individuals credit for their work.
So one of the reasons I chose to modify zentu.net's tagline from a "FOSS"-oriented tagline to an "OSS"-oriented one is precisely that . . . I admire Stallman's and Torvalds' benevolences and all, but people cannot work for free.
You do realize that "free software" doesn't necessarily mean "free of charge". As Stallman often said, when thinking of free software, think in terms of "free speech", not "free beer". You can, under GPL, charge the people for your software. As long as you give them the right to see and modify your code, that software is free.
More often than not, however, "free software" does mean "free of charge". You can sell support, but that's it. The reason is simple: if you try to distribute your software for a fee, someone else will do so for nothing. If nobody does, it probably means you hardly sell any copy.[1] Stallman managed to sell emacs thanks to the lack of global network (imho).
One kind of software is unaffected though: custom software. You can even charge more, because the freedom you give to your client may cost you money —compared to the classic proprietary vendor lock-in.
> One kind of software is unaffected though: custom software.
I've worked as a software consultant for years, making turn-key software and modifications to existing infrastructure and support, and all of that.
The thing is ... it's not fun. If it's not your product, you don't have the time, the energy, the resources to put much love in the products you're working on.
If you're working on custom software, customers only want to pay the minimal price that will get their needs solved. If it's support for an open-source software you're working on, if that software is too good, or is of no interest to companies, then you're not going to get hired.
Consulting services really take the fun out of programming, that's why I'm a proponent of a mixed model ... keep your advantages proprietary, open-source the rest.
Does anyone else find it ironic that an article about Linus saying some level-headed and pragmatic things carefully selects a quote out of context to serve as an inflammatory headline? I know you gotta have a hook, but jeez.
Maybe I don't read enough flame wars but I feel like hatred is a bit of a strong word. I'm thoroughly unimpressed with almost all of Microsoft's software, but I really don't see the point of any 'hate'. Perhaps this is Linus' point :)
What happens if they reject the patchset? I could imagine an outcry of Microsoft zealots slamming the open source community because they refused to cooperate with Microsoft.
I'm sorry, but I'm going to disagree with you about their products being buggy and ill-designed. Compare Microsoft Office to Open Office. My experience with Microsoft Office is that it is fast, well designed, and I've never experienced a bug while using it. Period. From the little time I've spent using Open Office, it was far slower, and had an inferior user interface. My linux friends even admit that Microsoft Office is far better than Open Office.
Ever tried to write more than a few pages of text/graphics with Word? It falls over pretty soon.
Yes, I do own a copy of Microsoft Office. Excel is okay. Powerpoint so so. Word is terrible. Entourage has good and bad sides - but has lots of problems when there are non-trivial amounts of data.
The biggest gripe I have with that attitude is that it destroys the FOSS, Apple, and Linux movements. People that are new to the IT world don't have years of backgrounds with projects and are going to be picking up on the attitudes of the people already there as well as struggling through technical problems. If they're instantly exposed to a very negative attitude (towards themselves, others, or really anything) it's going to be a huge turnoff to whatever project it is. The negative/hateful attitude that a lot of people have towards Microsoft actively hurts the same cause that they're trying to help.
The other part of that is that with any social interaction someone that is constantly putting something down is perceived (usually rightfully so) as being insecure about their own inadequacies. I don't know about others, but Linux and Apple have both matured to the point that I'm quite comfortable quietly evangelizing and building others up, regardless of the OS choice.
It's time to relax guys, we finally have an atmosphere with the freedom to pick your own OS and to be happy with it. This is a GOOD time to be a nerd, and a fantastic time to share that passion and excitement with people from whatever background.
Besides, if there's someone to demonize, it's the people that don't take the time to secure their boxes. Those come from all distros/OS's and I'll gladly pass the pitchfork around for them!