Peter Johansson, a compsci student at the Chalmers University in Sweden has written an article about the differences of corporations and the Open Source community in today’s software world.
Peter Johansson, a compsci student at the Chalmers University in Sweden has written an article about the differences of corporations and the Open Source community in today’s software world.
I thought this was a really good article
The article points out that company A (MS) dominates the market, and they keep changing standards both to hinder the progress of company B (OSS) and to force people to upgrade to new products.
It also makes the quote that MS is not in buisness to make better software but to make money.*
*I am not saying I agree with it
And excellent english – assuming the author’s native tongue is Swedish.
“Now as previously mentioned, corporations do make money off Open Source.”
Yes, but not very much. As Tim O’Reilly says in
http://tim.oreilly.com/opensource/paradigmshift_0504.html
“…Red Hat, the largest Linux distribution company, has annual revenues of only $126 million, versus Microsoft’s $32 billion.”
“…it started implementing its own ways of doing things…
This is called an artificial demand ? a demand for A’s products caused not by A’s products being superior…”
The bad is if company A in its struggle to maintain profits sees itself forced to introduce technology that clearly is a step backward. Worse, it pollutes because everybody else and in particular OSS as the underdog will have to include such technology to remain compatible and viable.
I think MS and Java was an example. Anyone know of other examples?
The ideal software world to me is a place where no one company sets the standards. Org’s set the standards – open standards – in a democratic process and anyone can submit standards for approval. Companies and OSS in turn compete to implement those standards the best way possible. I think that’s where things are headed anyway. But it’ll be a while before getting there.
Yes, but not very much. As Tim O’Reilly says in
http://tim.oreilly.com/opensource/paradigmshift_0504.html
“…Red Hat, the largest Linux distribution company, has annual revenues of only $126 million, versus Microsoft’s $32 billion.
If Microsofts marketshare really is 95%, and Red Hat has to share the remaining marketshare between MacOS, BSD, and multiple Linux distros, a annual revenue of $126 million isn’t all that bad.
Besides isn’t Microsofts $32 billion annual revenue artificial because of the lockin this article writes about, and thus the excessive amount of money it can charge for their monopoly product?
[QUOTE]”Now as previously mentioned, corporations do make money off Open Source.”
Yes, but not very much. As Tim O’Reilly says in
http://tim.oreilly.com/opensource/paradigmshift_0504.html
“…Red Hat, the largest Linux distribution company, has annual revenues of only $126 million, versus Microsoft’s $32 billion.” [/QUOTE]
Microsoft = 95% of market
RedHat = 1% (I’m being nice)
126mil * 95 = 11,970mil.
Ok, less money but still not such a bad revenue.. Microsoft’s Windows profit margin is far too high. Seriously, do the math on it sometimes, just with some low guesses on number of users and high guesses on the number of coders (one windows developer told me there are 3,000 Windows only developers).
Then figure the profits on Office. You’re not comparing OSS profits to Closed, you’re comparing monopoly profits to perfect competition profits; quite unfair indeed.
“Besides isn’t Microsofts $32 billion annual revenue artificial because of the lockin this article writes about, and thus the excessive amount of money it can charge for their monopoly product?”
Yeah, but like I stated before, I don’t really agree with the points the article makes. Many users are hapilly running all of todays software on windows 98, many companies are still happy running evereything on NT4. Microsoft has a 10 year product support cycle.
The standard version of Red Hat work station is $299, it has only a 2 year support cycle, there is a new version every year instead of every 2 years. And the lack of backwards compatibility on Linux means that to use new software on an old distro you have to introduce several library incompatibilities to the distro, or upgrade the platform just for the software.
With Linux you are also mostly dependant on the operating system vendor for distributing other 3rd party software. There are exceptions, but this is the case 90% of the time.
With Windows, you can just go to the vendor for a working package, and you are not forced to get packages from MS.
Oh, but they make slight changes to the .doc format with new releases of Office, big deal.
Few people are willing to admit it in public, but the reasons MS dominates the desktop still are mostly technical.
uh well try runnning some windows sofwtware that
only works on win2k or higher on win 98…..
so windows users may have to upgrade too…..
“Few people are willing to admit it in public, but the reasons MS dominates the desktop still are mostly technical.”
thats wrong and invalidates your whole comment
Well, I’ve not used win98 in a long time but from what I can remember most win2k and winXP software runs fine on it. Drivers being one of the few exceptions.
I used NT4 at work up till a couple years ago, I had to update winsock before some of my Win2K software would work with it, but aside from that it made a pretty good OS and I didn’t have any trouble with it.
My primary desktop is Linux these days, I nuke it about every 7 months for a newer distro mostly because it is easier than individually updating packages.
Re: wrong
“thats wrong and invalidates your whole comment”
Can you elaborate on that? I am game.
devine the motivations of people working at
a company?
>their main objective is not to improve software,
> but to make money.
Having worked at a lot of companies i can tell you
i never heard any developer ever talk about how much
many software made. Everyone was trying to improve the
software. Everyone was trying to make it better.
Everyone was working hard to do so (well, a lot of people
anyway). Questioning the motives of people you have
never met is turning yourself into the victim by
painting evil an anonymous enemy.
I think his statement was half correct in that any company’s first objective should probably be to make money if they want to stay in business for very long. For the most part, a company’s first priority is to improve the software, but those two things don’t always gel. For example, if you can make money by sticking banner ads in your software (*cough* Opera *cough*), that has nothing to do with improving the software, but they do it anyway if it will earn revenue. And for some (or maybe all) companies, don’t expect them to improve the software if it won’t make them any money. For example, in the Windows version of Yahoo Messenger, they put in all kinds of crap in there who’s sole purpose is to make users visit other parts of their portal, which earns them money. If they took out all the filler, you’d probably have a very light and fast IM client that would be better than what it is right now.
So, improving the software is all fine and goood, but making money always comes first.
devine the motivations of people working at a company?”
We actually don’t know the students age nor work experience. Socialist? Rest assured that the same rules of fierce competition apply there as everywhere else. Socialist just means a little more sharing of the outcome.
The article is not saying that it is wrong to make money. Of course not. What is wrong is that everybody else in reality is shut out. Who’d be buying my new office package even if it is better than that of MS?
If everybody could play then you have more people in work earning a living making competing products resulting in better products and lower prices. All positives and no negatives – except MS would have to settle with more common profit margins. Not a bad trade.
The ideal software world to me is a place where no one company sets the standards. Org’s set the standards – open standards – in a democratic process and anyone can submit standards for approval. Companies and OSS in turn compete to implement those standards the best way possible. I think that’s where things are headed anyway.
I hope to Christ not. Take computer languages for example. Java is standards-based. It has serious syntactic limitations that even advocates admit to, and the current “best practice” for Enterprise Java Beans development is basically “don’t use Enterprise Java Beans.” If you design by bureaucracy, you get COBOL.
The best projects often happen when someone just gets up and decides to implement some crazy idea that pops into his head. Ruby, for example, is probably the most standards-averse language out there – and you can have my kooky Japanese OO scripting language when you tear it out of my cold, dead hands. (Now, there are plenty of reasons to use Java for a project and not Ruby, standards among them; but that doesn’t mean all standards should be set by committee).
Not to mention that any standard is of necessity under-specified and possible to wiggle around. Ever wonder why Open Source JVM’s haven’t made it yet? In part it’s because the Java specs aren’t specific enough, and painstaking analysis has to be done of binary execution. And did you know Windows is actually POSIX-certified? Try compiling an AIX or Solaris app on it though.
Standards are cheap.
Obviously it was a GPL advocacy article and nothing less than that. I mean the author only brought GPL as an example and argued for it, why not argue for other licenses as well?
Worst thing is when people confuse open source with GPL. That’s not an equal sign and since the author only argued for GPL I believe he’s pretty ignorant character making the content worthless…
http://tim.oreilly.com/opensource/paradigmshift_0504.html
I wish that Russian Guy could expand his horizons by reading it. I think I’m gonna forever remember his analogy, though.
(“He who pays the dinner, dances with the girl.”)
So, improving the software is all fine and goood, but making money always comes first.
Right on spot!
That is why I think that open source have an advantage. Those guys don’t have to calculate profits before implementing a feature – they just do it. There are of course drawbacks with that way of working. The implemented features may not be the ones that people in general want. There may also be too many features (“bloat”).
I think this will get solved as OSS gains ground and more people get involved. It will be like an “ecology of developers”: software will be born, abandoned, developed etc. And there will be enough developers to account for all possible features and also to make reduced versions/unbloated software.
“I hope to Christ not. Take computer languages for example. Java is standards-based. It has serious syntactic limitations that even advocates admit to, and the current “best practice” for Enterprise Java Beans development is basically “don’t use Enterprise Java Beans.” If you design by bureaucracy, you get COBOL.”
Considering how much COBOL is used even today, and how old it is, I would say COBOL is one of the most succesful programming languages ever developed. In 30 year from now, there will probably be more people programming in COBOL than in Java, C#, or any other programming language we know today. So, if you whant a bad example, look elsewhere.
[quote]
…many companies are still happy running evereything on NT4. Microsoft has a 10 year product support cycle.
The standard version of Red Hat work station is $299, it has only a 2 year support cycle, there is a new version every year instead of every 2 years. And the lack of backwards compatibility on Linux means that to use new software on an old distro you have to introduce several library incompatibilities to the distro, or upgrade the platform just for the software.
[/quote]
RH enterprise offers 5 years backwards support and 12-18 months release cycles.
“The ideal software world to me is a place where no one company sets the standards. Org’s set the standards – open standards – in a democratic process and anyone can submit standards for approval. Companies and OSS in turn compete to implement those standards the best way possible. I think that’s where things are headed anyway. ”
I hope to Christ not. Take computer languages for example. Java is standards-based. It has serious syntactic limitations that even advocates admit to, and the current “best practice” for Enterprise Java Beans development is basically “don’t use Enterprise Java Beans.” If you design by bureaucracy, you get COBOL.
Java can not really be considered standards based. Maybe Industry-standards based. There is a difference. Sun does listen to company-external people, but ultimately they decide what java is. A real standardization process must follow formal democratic rules. It must be found on a constitution. You can take a look at the statutes of your favorite standardization body (ISO, ANSI, DIN, BSI, …) to gain an impression of how that can look like.
The best projects often happen when someone just gets up and decides to implement some crazy idea that pops into his head. Ruby, for example, is probably the most standards-averse language out there – and you can have my kooky Japanese OO scripting language when you tear it out of my cold, dead hands.
It is possible that one man has some great ideas what a language should look like. This is indisputable. But depending on what you do, it is not necessarily the best idea to base a project on such language. If you have a very large scaled and long running project you care also about the chosen language to remain well specified a couple of years in the future. Then depending on one single person is not your best bet.
Not to mention that any standard is of necessity under-specified and possible to wiggle around. Ever wonder why Open Source JVM’s haven’t made it yet? In part it’s because the Java specs aren’t specific enough, and painstaking analysis has to be done of binary execution.
That could be in part an effect of the non-standardization of java. That is, it is possible for a company to specify a computer language in great detail, but no company is obliged to do so. On the other hand, a standards body IS obliged to do. (I never took a look at java specifications, so I do not know if they are reasonably specific.)
>>So, improving the software is all fine and goood,
>>but making money always comes first.
> Right on spot!
No it’s not. You are creating the world as you want
it rather than the more complex world that is.
Adding navigational links, for example, is a feature
from a customer. Software has many customers. As a
developer you get a bunch of
features at a bunch of priorities. You don’t always
agree with the features or the priorities. But your
aim as a developer is to implement those features to
the best of your ability. It’s always a compromise
against features and schedule and quality and skill.
I know this isn’t the view you want of people, but it
is more accurate than your simplistic we are good
they suck approach.
As i said, i’ve never seen a developer talk about
money.
I don’t understand what this guy’s problem is. I hope he realizes that standards are just guidelines and not laws. Therefore company A or company B can do pretty much whatever they want. Not only that, but its their code and they can program it to fit anyway they please. If company A wants to do this and charege money then fine. It only makes sense for a for-profit company to want to make a profit.
As i said, i’ve never seen a developer talk about
money.
Since when do developers run corporations?
“Since when do developers run corporations?”
In small/starting companies this is quite common.
> Since when do developers run corporations?
They don’t run them. They do the work. They have a say
in what gets done. They suggest features. They determine
how well something is done. So if developers are
concerned about their work as work, it can’t possibly
be just about the money. Demonizing good people
in your epic battle of good versus evil may make you feel
warm inside, but it’s more real than that.
To valraven: I do not attack or question the motives of individual developers employed by corporations, nor have I ever implied that I do. It’s quite plausible that many developers are in it for the quality of software, and I haven’t claimed otherwise (to suggest that I have would be a straw man). What I do attack, and what I do have a problem with, is the general business practices employed by the corporation at large. Also note that there is plenty of space for “fuzz”, and I do not explicitly name any particular corporations (save for Microsoft) – that is left as an exercise to the reader.
To Anonymous (regarding the GPL): The GPL was mentioned briefly as an example of a license that explicitly prohibits turning code proprietary. That is the only mention of the GPL in the article, and neither the article nor I personally endorse the GPL or anything to that effect. My personal opinion on the GPL and similar licenses has no bearing on the article or what I say in it.
To Anonymous (regarding standards): First off I’d like to ask you to read the article again. For one thing, I go to great lengths to emphasize that there is nothing wrong with making profit and that it is perfectly understandable that corporations want to generate revenue. I do not, however, believe that this is ultimately beneficial to the evolution of software. Yes, standards are not law (and I never claimed that they were!); but I think that if they were respected, encouraged and followed more closely, the field could progress faster.
> I do not, however, believe that this is
> ultimately beneficial to the evolution of software.
Evolution adapts to a niche. There’s no notion of
what ultimately benificial. By saying “ultimately
beneficial” you are making a value judgement as to
means and then saying you will not like the ends.
You have rigged the game.
What are you on about? Could you elaborate on your last statement? It seems utterly bizarre.
> It seems utterly bizarre.
Bizarre would be someone who has not really
reflected on what they have said.
Of course developers in corporations try their best. I’m not saying that they aren’t.
However, being able to develop without any financial restrictions can be an advantage (coding and testing in your spare time is free!). You have the opportunity to test features in real-life (by volunteers) to see which ones that are successfull. The features are not stopped by a boss that says: “No, our profit margin on such a feature is not going to be high enough”.
You said it yourself:
It’s always a compromise against features and schedule and quality and skill.
Corporations have dead-lines, spare time coders don’t (if they don’t want to, of course).
Freedom sparks creativity (maybe at the cost of taking a bit longer to reach your goals). That was the meaning of my first post.
Of course software evolution is a rigged game. People are working on it, and their prime motivation is usually to improve the software. While natural evolution has no goal, software evolution is more akin to people breeding animals, they have a good idea of what they want when its over. Of course its still beneficial with that model to have many independent developers instead of one monolithic group
. For one thing, I go to great lengths to emphasize that there is nothing wrong with making profit and that it is perfectly understandable that corporations want to generate revenue.
Ehrm, understandable? I’m also from Sweden so I do realize your mentality, a tragic one. Corporations business IS making money make no mistake. It’s just the same as the majority in Sweden thinks that you “receive a job” rather than “get a job” . For that matter there are plenty more similar issues like “it’s optional to work, you can study your entire life” which is simply another thing proving how our socialist country is ruining people completely.
I do assume as you’re still in school that you’re also flawed by the indoctrination which follows and the socialist values which by automatic follows all the studies. Geee I bet you even think I’m flawed because I’m writing this and completely fail to see the power of your own denial.
STating that it is “understandable for corporations to make money” and then even considering people aren’t trying to do their best at their daily jobs (software devs) is a scary attitude. On the other hand, maybe that’s why Linus (who gets payed) manage to create all them Oops Kernel errors in the Linux kernel despite it’s “openness”.
“On the other hand, maybe that’s why Linus (who gets payed) manage to create all them Oops Kernel errors in the Linux kernel despite it’s “openness”.”
stop saying crap
> Ehrm, understandable? I’m also from Sweden so I do realize
> your mentality, a tragic one. Corporations business IS
> making money make no mistake.
I would like to ask you to refrain from ad hominem attacks (such as attacking my “mentality”) and outright lies (such as implying I deny corporations their right to profit).
> even considering people aren’t trying to do their best at their daily jobs (software devs) is a scary attitude.
Once again, and I want to make this perfectly clear (and I have once already!), I have never attacked individuals, especially not software developers, of being greedy bastards, not doing their jobs, not caring about software, or anything else. In fact, my article doesn’t even mention them! It is the shady practices of corporations that I have a problem with, not any particular developers or even the developers at large employed by such a corporation!
Also, I agree with the “huh” comment above. Linus Torvalds is currently employed by the Transmeta Corporation, who primarily do hardware research and manufacture. I don’t see how that is relevant at all. The rest of that particular paragraph is outright bizarre.