Innovation CAN be embrace and extend
on
Microsoft's COOL
·
· Score: 1
Innovation is about monitoring change and turning change into opportunity.
That's a wide umbrella, that includes everything from creating new/novel products to "creative imitation" to "embrace & extend" tactics.
Microsoft sees the popularity of someone else's product, and they leverage THAT change into opportunity. It's such a simple concept, it's a wonder why so few can counter-act it.
Most innovation by *any* company comes from areas that exploit change & opportunity: new knowledge, new markets, changing attitudes, etc. Very, very little innovation comes from the 'bright idea' that is so often exhaulted as the only "true" form of innovation.
Of course, when someone like Microsoft plays the same game OVER, and OVER, and continues to win at it OVER and OVER, you figure that sometime they're going to drop the ball... (looks like they're starting to over the past year or so...)
Yep, I've seen ILU. It's a decent implementation of CORBA.
CORBA itself is pretty simple - the add on services are what make it realy complex. (Actually, from what I can see on the OrbIT list, actually doing the implementation of an ORB is pretty hairy.)
The problem lies when you have to scale a distributed app up into the stratosphere... I donno how easily one can do that with CORBA. (Not saying there's anything better, well, except for TP monitors..)
Quite a fitting link to post, today being International Bitterness & Loneliness Day.
[oh wait, i have a gf...:)]
this is aimed at the enterprise
on
Microsoft's COOL
·
· Score: 1
Enterprise developers are moving in droves towards Java on the server (banks, financial institutions, manufacturing lines, etc.).. One of Microsoft's main strategies is to "GET INTO the Enterprise."
Problem: No one wants to use Microsoft's "Java" to do server-side stuff.
The basic thing is... COM and Microsoft Transaction Server eventually will be suitable technologies to run enterprise apps on the Windows platform (assuming Win2000 doesn't tank). Right now they're only "slightly adequate", imho. The problem with COM has always been its complexity when using it with C++.
Enter two technologies: COM+ and Java.
COM+ was supposed to make COM a point'n'click component model. Now the word is that "that's in COM+ v2.0", and COM+ will just be an extended COM with inheritence and some easier to use features (it supposedly will hide MIDL from the developer, which is a good thing).
Java DID make COM much easier to use - they integrated COM with their virtual machine - which is an honest to goodness innovation... it made COM extremely easy to use. This pretty much goes in line with Microsoft's whole Java strategy: if you want to program for COM or Windows, use MS Java - otherwise, stay clear.
The problem that remains is that Microsoft has reams of this "legacy" technology (COM), and is trying to extend it to something better (COM+) and needs a way to make it simple (Java).
Enterprise developers are NOT (by and large) C++ hackers - they're COBOL, RPG, SmallTalk developers. C++ has been used in the enterprise during the late 80's to mid 90's because of the Object-Orientation craze, but has shown to be in many cases to be extremely hard to maintain because A) the language is extremely complex and B) people didn't really understand how to properly design an OO system.
So, Microsoft can't push COM or COM+ on the enterprise with the word "C++" tacked onto it.
And, Unfortunately, they can't extend Java to the extent they'd like to anymore because of the lawsuit.
So, enter a new programming language. COOL.
It starts with C++, and makes it more like Java so that it will appeal to an enterprise developer who wants to solve a PROBLEM and not twiddle bits. IT's rather hard to grasp this if you love C hacking, I think...
...there's nothing WRONG with C hacking nor is there anything wrong with a "high level language" like SmallTalk or Java - they're meant to solve two different sets of problems: namely a business system vs. a low-level application or system.
So, what Microsoft's doing is genuine innovation, and indeed they've been discussing "C++ extentions" for > 12 months now. Whether we should care or not is a different story: this really (from my perspective) is nothing a Linux user should care about unless MS starts making it cross-platform (yeah, right).
As with all things Microsoft, I'm skeptical - Java already has a huge head start in the enterprise, and with Win2000's hiccups, COOL will be a tough sell: the world still runs on Mainframes & UNIX boxes - not Windows NT boxes.
Actually, I think you'd be surprised at how many suits are very much against the notion of "rigid corporate thinking". I believe that some of them just follow the Gartner Group because they're tech-illiterate and Gartner has great brand-recognition.
Of course, the *quality* of Gartner group, is imho, on a downward spiral, similar to that of Dataguess..err.. Dataquest (which has been tarnished since 1995 when they predicted 150 million copies of Win95 would be sold in 5 months... uhm, get a calculator out next time, boys - that extra "0" fugged you up).
Other "advice houses" like GIGA and IDC are usually more reliable, but as with all statistics & probability, the truth isn't always what the numbers make it out to be.
Making money off of open source may not be a hard thing, but it will probably require different strategies than those traditionally used with software.
Assuming that the business benefit of open source is the incentive to have access to the source code , we can begin from there while trying to "balance out" the needs to make money with the social needs of free software, namely the encouragement of "freedom" of modification and of "fewer defects" that naturally arises out of a bazaar development model.
The OSD requires free distribution of that source code - meaning that a competitor could easily adopt the source code and perform a "creative imitation" strategy with ease... this invalidates many of the traditional software business assumptions: creative imitation is no longer valid, because as soon as a competitor extends the product, you have access to THEIR code and hence can incorporate it into YOUR product. (By product, I mean a "branded" product, i.e. RedHat Linux vs. SuSE Linux)
So, from what I currently see, the way to make money will probably require A) a new licence other than the GPL (for reasons I will explain) and B) different (but not new) entrepreneurial strategies.
for A), basically, the FSF believes that encouraging freedom to modify & use software is paramount, but also that "Software should have no owners".
I find it highly unlikely that a company will "give up" ownership of its software in the near to mid future, and find it much more likely that they'll retain ownership through a license similar to the MPL or QPL.
The other issue is that of pricing. There has to be a way of encouraging free distribution of source, BUT to be able to charge a fee of some sort to buy the software (most enterprise software packages are > $50,000). This of course is futile with a traditional open source licence because nothing can stop a competitor from selling your product at $5/pop. I also seriously doubt that services can cover the losses of this magnitude.
So, I don't know what to do here. All my current ideas break the OSD... A runtime licencing fee, for instance, makes a lot of sense: it creates a community of developers that work in companies that use the product - hence increasing the freedom of the softare, BUT it also somewhat limits the audience because joe six-pack wouldn't really want to modify the code because he can't afford the $90,000 runtime licence. Of course, this model would only work with very "business"-orineted applications, and , unfortunately would probably irk a lot of open source purists....
So A) to me is still in the air.
B) on the other hand is becoming clearer.... since "creative imitation" is no longer a viable strategy for competition, the real competitive strategies have to do with
- Being first to the punch. - Branding.
Being "first" is a traditional strategy, but in this case it has to do with ramp-up time in grokking software. Basically, "Creative imitation" is marginalized, but when one adds a new feature to a software product, you still have a "lag time" before the competition can read & understand your code (assuming A LOT of code). The key to this strategy is to release a new set of enhancements by the time the competition has just caught up to the old enhancements. Pretty simple, but it remains to be seen if this will work because I'm probably underestimating the speed of which an average programmer can grok a fairly long piece of code.
The other strategy basically says, "IF I can't compete based on features, I have to compete based on reputation." RedHat knows this one. There is relatively little difference between Stampede Linux, SuSE Linux and RedHat linux in terms of features.... but Redhat is king because it has A BRAND. I know technical people will hate this one because it's so illogical, but it's really the only clear way to differentiate products in an arena where the source code is all "open kimono".
Of course, some might say that open source isn't about competition and profit, it's about sharing... Well folks, the economy is based upon organizational performance through profits... and if you can't make profits comparable to yesteryear, there's no economic reason to jump over to open source. Capitalism will not just roll over and die.
Personally, I think it can be done - but it will require customers to DEMAND open source first, because there's going to be a hell of a lot of intertia to change our industry to this model.
The magazine is excellent.. very few ads vs. content, and a good mix of practical with academic content in it. Steve McConnell's (of Code Complete fame) is the new editor-in-chief.
If you go to college, your library probably has it.. (mine does)..
I spent a weekend in the fall in L.A... that place is funny. In the span of two days, I had witnessed three-four car chases on T.V., and a story about gunfire at a club in Santa Monica that my buds & I were thinking of going to the night before.
There *ARE* statistics about programming language usage, and Visual Basic is *definitely* the most widely used language out there, with COBOL in second place and C++ in third.
Unfortunately, I can't point you to them because I don't remember where I've seen them (You might want to check professional magazines like IEEE Software or Communications of the ACM - they've spoken about this before I think)
VB is good for certain tasks, unfortunately its ease of use has caused "round peg in square hole" syndrome to pervade the industry.
There's a distinction between innovation & invention, similar to the distinction between R&D and pure research.
Invention is creating a new idea & prototype.
Innovation is being the first at successfully taking the invention and creating a marketable product.
Apple innovated what Xerox invented because Xerox's upper executives had no idea how important PARC's technologies were. They were too busy being the "photocopy people".
Microsoft copied what Apple did. They didn't innovate because they obviously were not the first "successful" person to bring GUI's to market.. Though Microsoft would debate that point, pointing to the "level" of success it has achieved.
Is there something WRONG with making money off one's invention?
I mean - it's an OPEN standard right? IEEE 1394 is the standard. Isn't that the whole point of "openness" - allowing people to see the guts? I didn't think openness was about preventing companies from making money.
How in any way is this infringing on one's freedom?
Plenty of technologies have royalty fees associated with them from the outset that have not killed that technology.
There's a lot of demand for FireWire out there - it's already in major use in digital camcorders - AND - there doesn't seem to be an alternative technology yet. I'd say that makes this a good choice for Apple AND the industry: Apple gets the $$$ now - and if people aren't willing to pay, they'll make an alternative.
College, for right now, is still an indespensible resource for learning core disciplines that you wouldn't otherwise learn. College puts you in to a different "frame of mind" than if you were studying only the things that YOU want to study.
Canada's college/university system seems to be a *lot* better in terms of $$$... a 4 year degree will cost you with living expenses (out of your home town) around $50,000. About 60-70% of that can be handled through government loans and/or student lines of credit. If you're a computer major, there shouldn't be a problem repaying that debt within 3-4 years after graduating.
A lot of people don't get tangible benefit out of college, but some people do.. I know I am. I guess it depends on your goals & what your program offers... a concentration on _fundamental_ concepts and strengthening students' capabilities really should be what college does.
Down the road... 30 years maybe, there probably will be better alternatives to College to get the same level of education.
The primary problems with college right now are related to its accessibility: you have to be living in a certain area (near a good college) with a certain income bracket in order to get a good college education. This shouldn't have to be the case: education should be available to everyone across the world, AT ANY AGE LEVEL.
The world of tomorrow is going to be less of a world of monetary haves and have-nots; the world of tomorrow will be about who is educated and who is not. A degree probably won't matter: your ability to learn and retain knowledge will.
In the final analysis, the problems with college go far deeper than "keeping up with technology" and cost... the U.S. educational system in general is broken, and is in dire need of some real management vs. bureaucratic administration.
Problems with OpenDoc now however are more legal/political:
- the OMG isn't doing a lot with OpenDoc lately. IBM & Sun have pressured them to be very focused on JavaBeans. My impression is that the while the compound-document CORBA spec will probably remain OpenDoc, the enterprise component model will resemble language-independent Enterprise JavaBeans.
In other words, don't expect anything amazing from the OMG re: OpenDoc. CORBA on the desktop doesn't seem to be a primary goal anymore.
- OpenDoc is 'considered' dead. IBM/Apple don't develop for it anymore. The web turned out to be an easier to use & distribute compound-document solution [though it's a very crude/primitive one at that]. Once HTML took over, it became rather hard to push "Programmatic Compound Documents!" when HTML+Java+Plug-ins were doing just that (again, primitively, but the declarative perspective vs. imperative really is what caught people's eyes...)
- OpenDoc should be released open source so the community can continue leveraging its wonderful ideas, but IBM's policy so far is just to freely distribute the toolkit.. you can't yet extend the sourcecode legally. This sucks, and is what REALLY is leading to NiH syndrome. Ditto for IBM's Taligent technology: there's a lot of stuff left over from CommonPoint that really should be made free.
Innovation is about monitoring change and turning change into opportunity.
That's a wide umbrella, that includes everything from creating new/novel products to "creative imitation" to "embrace & extend" tactics.
Microsoft sees the popularity of someone else's product, and they leverage THAT change into opportunity. It's such a simple concept, it's a wonder why so few can counter-act it.
Most innovation by *any* company comes from areas that exploit change & opportunity: new knowledge, new markets, changing attitudes, etc. Very, very little innovation comes from the 'bright idea' that is so often exhaulted as the only "true" form of innovation.
Of course, when someone like Microsoft plays the same game OVER, and OVER, and continues to win at it OVER and OVER, you figure that sometime they're going to drop the ball... (looks like they're starting to over the past year or so...)
Yep, I've seen ILU. It's a decent implementation of CORBA.
CORBA itself is pretty simple - the add on services are what make it realy complex. (Actually, from what I can see on the OrbIT list, actually doing the implementation of an ORB is pretty hairy.)
The problem lies when you have to scale a distributed app up into the stratosphere... I donno how easily one can do that with CORBA. (Not saying there's anything better, well, except for TP monitors..)
Quite a fitting link to post, today being International Bitterness & Loneliness Day.
:)]
[oh wait, i have a gf...
Enterprise developers are moving in droves towards Java on the server (banks, financial institutions, manufacturing lines, etc.).. One of Microsoft's main strategies is to "GET INTO the Enterprise."
Problem: No one wants to use Microsoft's "Java" to do server-side stuff.
The basic thing is... COM and Microsoft Transaction Server eventually will be suitable technologies to run enterprise apps on the Windows platform (assuming Win2000 doesn't tank). Right now they're only "slightly adequate", imho. The problem with COM has always been its complexity when using it with C++.
Enter two technologies: COM+ and Java.
COM+ was supposed to make COM a point'n'click component model. Now the word is that "that's in COM+ v2.0", and COM+ will just be an extended COM with inheritence and some easier to use features (it supposedly will hide MIDL from the developer, which is a good thing).
Java DID make COM much easier to use - they integrated COM with their virtual machine - which is an honest to goodness innovation... it made COM extremely easy to use. This pretty much goes in line with Microsoft's whole Java strategy: if you want to program for COM or Windows, use MS Java - otherwise, stay clear.
The problem that remains is that Microsoft has reams of this "legacy" technology (COM), and is trying to extend it to something better (COM+) and needs a way to make it simple (Java).
Enterprise developers are NOT (by and large) C++ hackers - they're COBOL, RPG, SmallTalk developers.
C++ has been used in the enterprise during the late 80's to mid 90's because of the Object-Orientation craze, but has shown to be in many cases to be extremely hard to maintain because A) the language is extremely complex and B) people didn't really understand how to properly design an OO system.
So, Microsoft can't push COM or COM+ on the enterprise with the word "C++" tacked onto it.
And, Unfortunately, they can't extend Java to the extent they'd like to anymore because of the lawsuit.
So, enter a new programming language. COOL.
It starts with C++, and makes it more like Java so that it will appeal to an enterprise developer who wants to solve a PROBLEM and not twiddle bits. IT's rather hard to grasp this if you love C hacking, I think...
...there's nothing WRONG with C hacking nor is there anything wrong with a "high level language" like SmallTalk or Java - they're meant to solve two different sets of problems: namely a business system vs. a low-level application or system.
So, what Microsoft's doing is genuine innovation, and indeed they've been discussing "C++ extentions" for > 12 months now. Whether we should care or not is a different story: this really (from my perspective) is nothing a Linux user should care about unless MS starts making it cross-platform (yeah, right).
As with all things Microsoft, I'm skeptical - Java already has a huge head start in the enterprise, and with Win2000's hiccups, COOL will be a tough sell: the world still runs on Mainframes & UNIX boxes - not Windows NT boxes.
Actually, I think you'd be surprised at how many suits are very much against the notion of "rigid corporate thinking". I believe that some of them just follow the Gartner Group because they're tech-illiterate and Gartner has great brand-recognition.
..err.. Dataquest (which has been tarnished since 1995 when they predicted 150 million copies of Win95 would be sold in 5 months... uhm, get a calculator out next time, boys - that extra "0" fugged you up).
Of course, the *quality* of Gartner group, is imho, on a downward spiral, similar to that of Dataguess
Other "advice houses" like GIGA and IDC are usually more reliable, but as with all statistics & probability, the truth isn't always what the numbers make it out to be.
Making money off of open source may not be a hard thing, but it will probably require different strategies than those traditionally used with software.
Assuming that the business benefit of open source is the incentive to have access to the source code , we can begin from there while trying to "balance out" the needs to make money with the social needs of free software, namely the encouragement of "freedom" of modification and of "fewer defects" that naturally arises out of a bazaar development model.
The OSD requires free distribution of that source code - meaning that a competitor could easily adopt the source code and perform a "creative imitation" strategy with ease... this invalidates many of the traditional software business assumptions: creative imitation is no longer valid, because as soon as a competitor extends the product, you have access to THEIR code and hence can incorporate it into YOUR product. (By product, I mean a "branded" product, i.e. RedHat Linux vs. SuSE Linux)
So, from what I currently see, the way to make money will probably require A) a new licence other than the GPL (for reasons I will explain) and B) different (but not new) entrepreneurial strategies.
for A), basically, the FSF believes that encouraging freedom to modify & use software is paramount, but also that "Software should have no owners".
I find it highly unlikely that a company will "give up" ownership of its software in the near to mid future, and find it much more likely that they'll retain ownership through a license similar to the MPL or QPL.
The other issue is that of pricing. There has to be a way of encouraging free distribution of source, BUT to be able to charge a fee of some sort to buy the software (most enterprise software packages are > $50,000). This of course is futile with a traditional open source licence because nothing can stop a competitor from selling your product at $5/pop. I also seriously doubt that services can cover the losses of this magnitude.
So, I don't know what to do here. All my current ideas break the OSD... A runtime licencing fee, for instance, makes a lot of sense: it creates a community of developers that work in companies that use the product - hence increasing the freedom of the softare, BUT it also somewhat limits the audience because joe six-pack wouldn't really want to modify the code because he can't afford the $90,000 runtime licence. Of course, this model would only work with very "business"-orineted applications, and , unfortunately would probably irk a lot of open source purists....
So A) to me is still in the air.
B) on the other hand is becoming clearer.... since "creative imitation" is no longer a viable strategy for competition, the real competitive strategies have to do with
- Being first to the punch.
- Branding.
Being "first" is a traditional strategy, but in this case it has to do with ramp-up time in grokking software. Basically, "Creative imitation" is marginalized, but when one adds a new feature to a software product, you still have a "lag time" before the competition can read & understand your code (assuming A LOT of code). The key to this strategy is to release a new set of enhancements by the time the competition has just caught up to the old enhancements. Pretty simple, but it remains to be seen if this will work because I'm probably underestimating the speed of which an average programmer can grok a fairly long piece of code.
The other strategy basically says, "IF I can't compete based on features, I have to compete based on reputation." RedHat knows this one. There is relatively little difference between Stampede Linux, SuSE Linux and RedHat linux in terms of features.... but Redhat is king because it has A BRAND. I know technical people will hate this one because it's so illogical, but it's really the only clear way to differentiate products in an arena where the source code is all "open kimono".
Of course, some might say that open source isn't about competition and profit, it's about sharing... Well folks, the economy is based upon organizational performance through profits... and if you can't make profits comparable to yesteryear, there's no economic reason to jump over to open source. Capitalism will not just roll over and die.
Personally, I think it can be done - but it will require customers to DEMAND open source first, because there's going to be a hell of a lot of intertia to change our industry to this model.
We need to learn that you "can't make a difference?"
Funny, I guess RMS never learned that lesson, and look where it got him... a 4-5 million person userbase through Linux.
Faith manages.
The magazine is excellent.. very few ads vs. content, and a good mix of practical with academic content in it. Steve McConnell's (of Code Complete fame) is the new editor-in-chief.
If you go to college, your library probably has it.. (mine does)..
I spent a weekend in the fall in L.A... that place is funny. In the span of two days, I had witnessed three-four car chases on T.V., and a story about gunfire at a club in Santa Monica that my buds & I were thinking of going to the night before.
No thanks, I'll be staying North.
This might sound silly..
There *ARE* statistics about programming language usage, and Visual Basic is *definitely* the most widely used language out there, with COBOL in second place and C++ in third.
Unfortunately, I can't point you to them because I don't remember where I've seen them (You might want to check professional magazines like IEEE Software or Communications of the ACM - they've spoken about this before I think)
VB is good for certain tasks, unfortunately its ease of use has caused "round peg in square hole" syndrome to pervade the industry.
That $1 /port cost of manufacturing is pure bullshit.
The arguments in favour of USB for low-bandwidth devices were that it only cost around 80 cents/port, whereas Firewire was about $5.
If you can find your "analysts report" and link it, I'll apologize and believe you.
There's a distinction between innovation & invention, similar to the distinction between R&D and pure research.
Invention is creating a new idea & prototype.
Innovation is being the first at successfully taking the invention and creating a marketable product.
Apple innovated what Xerox invented because Xerox's upper executives had no idea how important PARC's technologies were. They were too busy being the "photocopy people".
Microsoft copied what Apple did. They didn't innovate because they obviously were not the first "successful" person to bring GUI's to market.. Though Microsoft would debate that point, pointing to the "level" of success it has achieved.
Is there something WRONG with making money off one's invention?
I mean - it's an OPEN standard right? IEEE 1394 is the standard. Isn't that the whole point of "openness" - allowing people to see the guts? I didn't think openness was about preventing companies from making money.
How in any way is this infringing on one's freedom?
Plenty of technologies have royalty fees associated with them from the outset that have not killed that technology.
There's a lot of demand for FireWire out there - it's already in major use in digital camcorders - AND - there doesn't seem to be an alternative technology yet. I'd say that makes this a good choice for Apple AND the industry: Apple gets the $$$ now - and if people aren't willing to pay, they'll make an alternative.
College, for right now, is still an indespensible resource for learning core disciplines that you wouldn't otherwise learn. College puts you in to a different "frame of mind" than if you were studying only the things that YOU want to study.
... a 4 year degree will cost you with living expenses (out of your home town) around $50,000. About 60-70% of that can be handled through government loans and/or student lines of credit. If you're a computer major, there shouldn't be a problem repaying that debt within 3-4 years after graduating.
Canada's college/university system seems to be a *lot* better in terms of $$$
A lot of people don't get tangible benefit out of college, but some people do.. I know I am. I guess it depends on your goals & what your program offers... a concentration on _fundamental_ concepts and strengthening students' capabilities really should be what college does.
Down the road... 30 years maybe, there probably will be better alternatives to College to get the same level of education.
The primary problems with college right now are related to its accessibility: you have to be living in a certain area (near a good college) with a certain income bracket in order to get a good college education. This shouldn't have to be the case: education should be available to everyone across the world, AT ANY AGE LEVEL.
The world of tomorrow is going to be less of a world of monetary haves and have-nots; the world of tomorrow will be about who is educated and who is not. A degree probably won't matter: your ability to learn and retain knowledge will.
In the final analysis, the problems with college go far deeper than "keeping up with technology" and cost... the U.S. educational system in general is broken, and is in dire need of some real management vs. bureaucratic administration.
Problems with OpenDoc now however are more legal/political:
- the OMG isn't doing a lot with OpenDoc lately. IBM & Sun have pressured them to be very focused on JavaBeans. My impression is that the while the compound-document CORBA spec will probably remain OpenDoc, the enterprise component model will resemble language-independent Enterprise JavaBeans.
In other words, don't expect anything amazing from the OMG re: OpenDoc. CORBA on the desktop doesn't seem to be a primary goal anymore.
- OpenDoc is 'considered' dead. IBM/Apple don't develop for it anymore. The web turned out to be an easier to use & distribute compound-document solution [though it's a very crude/primitive one at that]. Once HTML took over, it became rather hard to push "Programmatic Compound Documents!" when HTML+Java+Plug-ins were doing just that (again, primitively, but the declarative perspective vs. imperative really is what caught people's eyes...)
- OpenDoc should be released open source so the community can continue leveraging its wonderful ideas, but IBM's policy so far is just to freely distribute the toolkit.. you can't yet extend the sourcecode legally. This sucks, and is what REALLY is leading to NiH syndrome. Ditto for IBM's Taligent technology: there's a lot of stuff left over from CommonPoint that really should be made free.