Andy:
I hope I can answer to every one of your questions to the best of my capabilities and in my humble opinion only.
You state: > You say that there is a movement among developers away from > Window's specific development.OK,but doesn't that movement assume a > viable easy-to-use cross-platform model?
Here I assume we are talking only about software developers. Developers are told to write their software such that it can run anywhere anytime with absolutely no enhancements (i.e. write once, run always). How developers choose to do this is a matter of choice and implementation. At this time there is only one and only once choice and that is Sun Microsystems Java technology that is universal and has been accepted by the entire high tech industry. If Microsoft continues to provide the tools that would enable developers to write such applications under Windows, then so be it and developers will continue to use Windows platform and Microsoft tools to do so. However if Microsoft decides (as it seems to indicate) that they will not follow Sun's Java standards then developers will be forced to use something that would make it easy for them to write universally acceptable software. They may still continue to use the Windows operating system as their primary development platform but they will not be using (actually can not) use Microsoft's tools because those tools will not manifest into unversally acceptable software. Companies such as Symantec with their Visual Cafe Pro, for example, that follow Sun's Java standards (and not Microsoft's) and are run under Microsoft Windows OS will be used by developers (as is being used) rather than for example Microsoft's visual J++ (which by the way is very nice and I use it myself!). However because of the specific deviations that Microsoft has taken with their Java Virtual Machine, software developed under Microsoft tools and platforms will only run under Microsoft platforms, and that will not be accepted (and by this I dont just mean platform specific which implies PCs only or Workstations, etc. I mean NCs, digital Web TVs, home appliances, etc.)
You state: > But if windows--a big part of the existing computer > world--stands outside the cross-platform model, then how will the > whole industry go to this cross-platform model?
Again I think what is misunderstood here, is the fact that software is written for consumers and not the developers! It is the software and hardware companies that have to make money first before their employees can make the money. If the revenue growth for a company such as Informix or Oracle, or LSI, or whoever depends on these companies delivering products for the mass consumer at all levels (from my grandma to Judge Ito to President Clinton to...) to enjoy and to use, then these companies must follow a standard that has been accepted by everyone (that is by all high techs that are involved in delivering such products. From that which provides the software to the one providing the chip that enables that software to run). Java is the one and only one such universally accepted technology (as defined by Sun). Therefore the shift will be toward non-proprietary universally accepted Java technology.
If Microsoft supports such a standard then power to them! Then the products that the majority would provide for the mass consumer will also work on windows as well. Currently people think of it as the other way around, that is if something is non-windows therefore it is not acceptable software. Java has changed this. I remember a line from Sidny Potier's movie: Mom, Guess who is coming for dinner? (Forgive me if I dont recall the exact title), where Sidny Potier tells his father: "Dad, you see yourself as a black man, I see myself as just a man". Similarly, up to this point the mentality has been that people view software as entities that are Windows based, while Java views software as entities that are nothing more than just software regardless of where they can be run or developed!
You state:
> Sometimes it sounds as though you use the thin-client model as a > premise--as how computing is done now--and the conclusion is that > Microsoft will not succeed in fragmenting Java because it is the > language of the dominant cross-platform thin-client model. But isn't > it the other way around, that Java has to succeed before the thin > client model, or the cross-platform model can dominate?
Yes, Java (or for that matter some universally accepted uniform technology) has to succeed before thin client can succeed. And to that in my opinion and as strongly as I believe, Java has succeeded! Even Microsoft stamped its approval on it! What they are trying to do now is to deviate from it by providing special extensions that requires industry to take their special Java VM. But by doing so it requires a whole bunch of other stuff to be taken also and soon we are back to the fat client model that does not manifest into huge revenues for corporate America, because not all consumers can use these fat client software applications (e.g. my grandma)! Keep in mind PCs are no longer the only means through which software will be run.
You state: > After all, the thin client model hasn't really become a reality > yet. Couldn't all the momentum toward the thin-client model be upset > by Microsoft's recent maneuver? Or is it not true to say that the > cross-platform model and the thin client model are the same > thing?
To answer to your first question, true, thin client has not yet become a reality because it is only about a year old and is still evolving. It is similar to the concept of client-server acrhitecture when first introduced and most software were written on IBM mainframe computers using assembly and COBOL. But practically every single software company you can think of is basing its software design and architecture on this concept that the software they write must run everywhere and I dont mean just cross-platform (e.g. UNIX, VMS, WIndows, etc.). By everywhere I mean, entities such as TVs, home appliances, NCs, etc. These entities will require only one thing: the universally accepted Java Virtual Machine (the one accepted by the industry as defined by Sun and NOT Microsoft). And by every single software company I mean those companies that are in the business of writing software that can be used by mass regular consumers.
You state: > As far as comparing Windows and Macintosh, did Macintosh ever > have the market dominance windows enjoys now? As I understand it, > Apple did not license Macintosh and so inadvertently hurt the spread > of it, so it never achieved the critical mass that windows has.
It is not a matter of popularity contest. My point was that because software will be viewed as objects that can run anywhere, and not viewed as objects that can run on Windows only, developers can no longer select Windows as the operating system and their development platform of choice for writing such software IF it does not provide the capabilities for them to write universally acceptable software. If so they have no other choice but to shift away from it, thus making it a cult like operating system for development just like Apple. The only reason Windows has been successful, is because the only means for running and using software has been on PCs. This will be changing. An analogy would be to the following: Assume that up to this point the only means people had to travel from one city to another was by car (and for that matter General Motor has been the only one making the cars). So we had no other choice but to buy the cars from GM and use those cars as means of transportation. Now, all of a sudden we have choices! Not only there are more companies making cars (Ford, Chrysler, BMW, etc.), but there are also other alternatives for travelling besides cars such as air planes, horses, bicycle, motor cycle, etc.!!
Regards,
Addi Jamshidi |