O'Reilly on the Commoditization of Software
Iorek writes "International Data Group/Sverige has a great interview with Tim O'Reilly, CEO of O'Reilly & Associates Inc. From predictions of eBay's purchase of Oracle to discussions of the failings of open source licenses, O'Reilly's certainly not reserved. I couldn't help but be reminded of the rise of this site and slashcode."
The best/greatest standing part about open source isnt GNOME or KDE, or that we all have free speach software, its what we are DOING with that software. Amazon is built on perl, and look what it has accomplished.
Later in the artical he comments on Debian, and how the creator and his company Progeny dont view linux as a product, but "a set of commodity software components he can put together for different purposes."
What he's getting at is that if the OSS community wanted to push forward, you need an idea and then use linux as the tools for that idea, suhc as automated backup, or something snazy like amazon (where it is a tool, and not the product). Trying to market it as a free desktop platform (in which case linux is the product) just wont cut it. I've done projects for my university, and its worked before, and it will work again.
Disclaimer: Do I beleive that linux cant be a product? No, I'm just saying that *ONE OF* (and not limited to) the best ways is to use it as a tool, not a product.
We don't need an "overrated" so much as we need a "you completely missed the parent's point, dumbass..."
I just finished attending a Molecular Biology Training class, and I couldn't help drawing parallels between Open Source and the public Research that is on-going, such as the Human Genome Project.
Like open source software, public research labs publish the data they found, such as mouse or yeast genome, into the public domain (Humor me, I know that Open Source is not public domain, but it's darn close in terms of availability and cost). In addition, when a lab creates a new genomic library, they are supposed to make it available to anyone who asks. Sounds a lot like Open Source.
However, privately funded research usually do not have such policy, and use patents, trade secrets, and Copyrights to protect the IP. This has some effect in slowly down advancement in science in many ways. Such research also lead to imporant, and profitable advances for the companies involved.
But, due to limited public funding, not all worthwhile projects are funded in a timely fashion. A grant request to the NIH may take years before approved. A private company, seizing an oppertunity, may choose to invest and jump start a new field of research.
It seems that both models can co exist, and maybe it's time to have a publicly funded, or even an industry funded, organization, the supports Open Source development. The group should focus on open standards, common tools and platforms, and anything else someone can make a good case for. Something that will advance our knowledge, and make life easier. Something that we all cooperate on, rather than having blackmails or mighty pissing contests.
Maybe we should begin to treat Computer Science like Science, and really advance it methodically, rather than "My code is faster than your code..."
I think that a lot of the dyanamics he's talking about hold true -- obviously, O'Reilley is a very smart guy.
But it seems to me that he's looking at service industries, and calling them software companies. In order to do that, he has to change the definition of a software company, and as a result he's able to announce this as a shift in the software industry.
My problem with what he says is mostly aesthetic. It's that same old silicon valley rich guy entrepeneur guru bs.
He's making a lot of points that most people know -- web applications are more exciting, in many respects, than desktop applications now. Web applications are being built out of commodity pieces. The data in eBay and the customer good will is worth more than the code. All of those are good points, if not exactly earth shaking.
But the way he's stiched them together is mostly a semantic trick, and he's out there like he's been given stone tablets on some moutaintop.
It's not evil or anything, just a little icky.
Linux vs Windows was never the proper battle, it was always a battle over what you DO with these things, and how you do them more effieciently than the other guy. Lots of companies NEED something like Exchange, so they by an Active Directory and Windows by default, and so on and so on.
O'Reilly is dead on right. All this shit is just commodity for the applications built upon it that actually generate income. Superiority of one platform over another is a moot point. No one decides to buy a book at Amazon because of Linux, instead of Barnes and Noble because they run on IIS, so get over it.
Windows against Linux is now like Goodyear versus Michelin. Who gives a shit? Only tire makers, not CAR makers. So, it is time to focus on building shit that rides on these things, instead of so much focus on the things themselves. No side has an advantage right now, but that could change overnight. Suppose Microsoft buys Amazon, or EBay buys Oracle? Same players, whole new battle, and all this crap over which OS is better doesnt mean a thing.
What if Microsoft buys Macromedia; takes Flash and does interesting remoting stuff with Web Services tied only to .NET? What is the competing solution from IBM going to look like?
I've got no answers, but I agree with O'Reilly that things are going to get very interesting over the next few years, and things are never going to be the same.
Having read the article twice I'm not qutie sure I get O'Reilly's point.
What he's saying is correct, but it's not exactly earthshattering in anyway. Amazon puts together some services that rock. They patent them. And then they sell the service to others. That just seems logical.
How that ties into driving Open Source I'm not sure. If they're only devleoping proprietary things (services) on top of an open source backbone, they're not really driving Open Source devlopment. Just because I compile my program with gcc or use a perl script doesn't mean I'm driving open source development in anyway. They're just using it as the foundation to build on.
Open Source is by definition controlled by anyone who wants it to be. Maybe I'm missing something here, but it seems like he's just stating the obvious and it has little to do with Open Source.
What's going to happen on the home level is what's already happened to the hardware market. Everyone is looking for the lowest price. When the PC first came out, a lot of people were concerned about the brand/reputation, et al., and were willing to pay a premium for an AT&T, IBM, or other high-line product. That's where the software market is right now. The high-end hardware makers got slaughtered by price. And now the high-end software market is about to get slaughtered. Microsoft (and lots of others) are going to have to compete against the software equivalent of incredibly cheap clone hardware... and they are going to lose.
IAAL
I'm happy for the change, so we can get over these stupid platform wars, and focus on things that actually do something besides send bits back and forth. Now we get to focus more on the value of those bits, and I think that is a good thing.
Amazon and all the others are free to build and deploy using the same tools everyone else uses, and playing by the same rules. They are not to blame for being successful enough that their data being manipulated by those tools is more valuable than someone elses. Or for having the money and foresight to employ programmers to use those tools to create new tools for the company's own personal use.
There's nothing to "fix" here because nothing is broken. Should you have to license hammers from Black & Decker because you build houses for a living?
I'm not sure what kind of point you're trying to make, but making a living in my basement home office coding applications while high sounds a lot better than writing TPS workflow scripts for a faceless corporation in a partitioned rat maze.
Few people seem to realize how much a post can be spruced up with judicious use of bold and italics.
O'Reilly is WRONG about the license thing. He seems to think it was an oversight, or mistake, that allowed Amazon, Google, etc to work the way they do. As IF. /is/ possible to make money with it"). I think I was there for like 5 minutes sometime in '96.
It was no oversight at all. It was design. Seems liked he's been believing OpenSource as described by its opponents, like it's communism or something, as opposed to what it is. Those are successes, not failures!
Actually, I'm a little surprised -- I mean where is that on the 5 stages of understanding the GPL? ("OH its NOT communism, it
Plenty of companies have been screwed by not getting the source, and getting straight-jacketed into dealing w/ only 1 company.. not just individuals. I see that as the point of opensource, take away the power to abuse that the software industry has, but not to be anti-industry in general. More of a return to the pleasant past, before PC's tookover.
regarding an open source gui...
,or change it's behavior.. but, in general, it's built to behave a certain way, and you can go around to macs everywhere, and the machine behave the way you expect them to. The developer knows what the user expects, and doesn't have to account for a dozen different ways to interface with things. More importantly, he has somewhre to start.. look how many windows applications have varied interfaces. To really understand this, in case anyone is doubting it, just sit down with a fresh mac and mac user for a few hours and learn how to install software, work with files, etc... you'll get it.
(agree with everything you said, btw)
As a long time hardcore technical guy, and let me back that up by saying I'm a unix nut, I've been using linux heavily for 10 years now, solaris before that, and I get right into the guts.. I like assembly, circuit boards, and whatnot. I like a command prompt and I don't like microsoft.... anyway....
as a hardcore technical guy, open source liker, and a recent convert to OS-X... the comment about a gui got me thinking.
I like open source. I like open everything. I don't like being told what to do with my computer. Yet, I LOVE OSX, and I recognize that the one strength MacOS really has is that apple controls the desktop. It's not that you can't skin it,
So.. we want an open source gui. Here's the thing... the only reason the mac has the "world class gui" feel to it is BECAUSE of a certain lack of openness.. we're talking about a benevolent dictator here. Apple developers know what to expect on the desktop, know how the mac user expects it to behave... and that's the main attraction. If you don't want that, you might as well go use linux.
Yes, we can do stuff in linux that OSX can't do. Yes, open is good, no argument here...I'm just tossing out the thought that, when it comes to providing a rock solid user experience, for a general purpose computer... a lack of choice is sometimes what's needed.. to get people thinking and doing the same thing.
You can sit someone down and show them windows -vs- mac.. and invariably, the mac people get more done, and are more comfortable with their gui.. and it's not because one is more customizable, or more flexible.. in fact it's the opposite.
and conversly I've met plenty of people who will use GNU/Linux precisely because for them it is an effective work around to the problem of the domination of capitalist software. its not just in OSS' image, its in its reality aswell
...Apple. Look at what Apple did with OS X. Apple took an Open Source OS and pinned it up with a proprietary front-end. The system benefits from all of the Open Source advancements in hardware control, while at the same time, the user has all the benefits of a modern, easy-to-use interface.
The FreeBSD folks get some benefit as well. Besides having another big company using their code, testing it (and supplying patches) they kind of avoid the tug of war that part of Linux is going through - the whole "is it for geeks or the masses?" The coders who are good at one tend not to be as good in the other. So the FreeBSD coders can concentrate on the lower level bits, and have the Apple folks worry about getting the real fancy GUI on top of it.
I think O'Reilly is right, but it points to a very disturbing trend, especially if you are someone who makes a living writing code.
That was my first thought as well - will someone like me who wants to be the 'Chef' will be reduced to a person selling rice by the ton ?
However, I realized that the 'coders' workplace will be one of two:
1. Traditional software companies: until ASPs really catch on, although people will use more open-source software (like the google/yahoo/amazon exmples), the software that will sell more will still be taht traditional software making companies (like Microsoft). The fact that everybody is using air, doesn't mean that the the guys making the air ballons for divers doesn't exist - in fact, you could say they own 99% of the air market.
But, in case that ASPs do catch on -
2. The ASP companies will need us coders, and for us it doesn't really matter if we are coding for Windows or for a browser. And as for the creating-products-from-existing-components argument - we do it all the time...
No, I don't think you've any reason to worry. I've seen something similar before - it never works.
Back in the late 80's/early 90's there was a real buzz about software that would write software. It came in many different forms - Oracle had SSADM software that would generate applications once you put the system design as high level description, various IBM mainframe systems that would generate CICS systems from bolt-together components (very like O'Reilly dicusses in fact) - there was even a PC system called 'the last one' which was supposed to generate any application you needed from a high-level description. All of them had the common theme that you were going to need no, or many fewer, coders.
That didn't happen.
The flaw in the argument is assuming the whole world is predicatable and regular enough that solutions can be build from a set of predefined blocks. In practice this never happens because
1. All business and business processes are *always* much more messy than this
2. There's always something else to be done - any business system is a compromise between what can be built and what the customer would like. As filling the basics becomes easier the idiosyncratic tweaks that you need special code for become larger.
3. Technology changes drive systems requirements. 'The Last One' was so named because it was the last softwre system you were ever supposed to purchase because it then generate systems to do all you needed. Problem was 'the last one' ran on DOS.
In the future we may spend more time assembling systems from OpenSource commodity chunks, but because the world is messy those chuncks will never fit exactly as required or cover all the requiments needed for each unique business. In fact I expect they'll be more work rather than less.
I have a cousin working for a company that sells, among other things, a mainframe based spreadsheet app. He claims that the market for applications is drying up, and I have to agree.
I agree as well. The market for applications running on mainframes is drying up.
Your attempt to extend this point further is rather absurd.
Espcially when 'knows better' includes understanding what proprietary file fiormats that change on the whim of the software seller mean to data "owners".
"that's not encryption - it's a new perl script that I'm working on..." - from some Matrix parody
The difference isn't always clear. I use these factors...
Integrations are much lighter weight than applications.
Integrations are very specific to a particular environment, whereas an application is more generally useful.
Integrations tend to use higher level languages, frequently interpretted. They rarely use C.
Code that triggers an application to generate a TPS report, then opens the TPS coversheet template in a wordprocessor, then bundles the whole thing and uses the email app to ship it off is an integration.
There are plenty of the places where the line is very ambiguous. The most important fact is that the center of gravity in the programming world is moving away from commercial software producers and writing big generally useful apps to customizers working directly for the users building small narrowly focused solutions.
That is a profound change. Imagine, if you would, that groups of volunteers around the world collaborated to design and build a car - then gave the cars away free. Instead of going to your local car dealership, you instead visit your local OpenCar.org Users Group, where they hand you the keys no questions asked. The auto manufacturing business would be in big trouble, but some of the assembly line workers might find new work doing custom configurations - new paint jobs, engine enhancement, installing moon roofs, etc.
That is what is going on now. For a long time, OSs and applications were written by larger and larger organizations. Like physical commodities, mass production was used to spread the capital and R&D cost over a larger and larger market. OSS changed that, however, because it effectively made the those costs zero. The industrial production model is no longer valid. IT is changing back to a craft production model with local producers and local consumers meeting face-to-face. The economics of that model work again because the producers aren't being asked to write new applications requiring tens of thousands of hours, but to customize an existing application, at a cost of tens of hours.
But, the individual consumer buying an Apple product really doesn't care about licenses. Apple's relationship with open source is, almost certainly, unknown to that consumer. It is relevant only because it allows Apple to market an attractive product.
O'Reilly noted that keying a license to distribution rights and obligations loses impact when the application is something like Amazon ot Yahoo, i.e. an app that won't be distributed. That applies, too, to millions of consumers of open source code who will never modify or distribute any code.
The GPL and other open source licenses assume that code consumers are also code producers, i.e., developers. That is no longer the case.
-- Slashdot: When Public Access TV Says "No"
I don't think the application market is dead. It's just that a software company can't make money recreating applications with decades-old functionality. The spreadsheet is solved. Move along. People will still pay for software -- just not the same software over and over.
-Dave
Tim touches on something here that I have noticed too. Open source does not have a reputation for being easy to use. But why is that so? Some projects are very user friendly but in general the profit motive works against Open Source here. Consulting, Support, and Customization is the main business model in the Open Source world, but if a software is extremely easy for the end users to set up then there is less of a reason for consultants to be brought in.