Gosling: Partnership with Microsoft Meaning Less and Less
Jeebus writes "At an event in Sydney this week James Gosling questioned the technical relationship between Sun Microsystems and Microsoft in light of the antitrust demands of the European Union. Gosling also talks about reverse engineering, DMCA and collaboration with Microsoft with on identity management. "
... Microsoft has to let the Sun shine, or else they'd kill all their customers!
Gosling described the DMCA, which was passed in the United States a few years ago, as "really vile."
Read Epic the first RPG novel.
Will Sun serve as an example for other companies to not pursue Microsoft, and wait for governments to do the dirty work instead?
Since when did a business partnership with Microsoft ever "mean" anything anyway (except decreased revenues)?
IANAL, so enlightenment on this matter would be greatly appreciated.
Sun dominate the Enterprise users and Microsoft dominate the low-end users with their software, one is trying to acquire knowledge from another. Very simple, even a penguin can see this.
http://www.michel.eti.br
I remember James talking about the whole Microsoft/Sun collaboration. Apparently there is some confusion over what the legal agreement between the two is.
:)
The main thing I remember him saying was that there are issues in working with MS, in that even if MS lets them have insider info on say their filesystem, they can't release this info to the Samba developers because of NDA's and IP licensing restrictions. So they have to be really careful and get signoff before they can open certain things up.
Another interesting discussion was the whole SWT vs SWING debate. James remained an advocate of Swing, and accused SWT of falling into the same traps that AWT had back in the day. From what he said, it sounded like he was saying that Swing is flexible and powerful enough to do whatever you want, but that was also its downside. An example he used was back when they were auditing Netbeans 3.6 to figure out why it was so slow. Apparently the developers had gone overboard with monitoring events, and a single drag of a window resizer would trigger thousands of events (an "event storm" he called it), which would also in turn spawn a bunch of "stormlets", small event loops (events triggering other events which trigger other events ad nauseum). Apparently this was the cause of the slowness.
One of the people who was asking a question of James asked the audience to raise their hands if they used Eclipse. I would guess that around 90% of the audience raised their hands.
When asked his opinion on the IBM vs SCO court case, his response: "I want some of what they're smoking". He didn't get asked about Sun's IP stance however.
I also have a picture that I took of the cake for the 10th anniversary of Java. It's sitting on my phone at the moment, but I saw some other attendees take snapshots too.
Sorry this is a little haphazard. I didn't really take notes.
Man watching 6 MSCE's around a sun box, looks alot like the opening scene's of 2001:space odyssey...
The last paragraph of the news story ends like this: In the hour-and-a-half session, Gosling answered many questions on a range of topics, including Eclipse and other Java IDEs (integrated development environments), DVD technology, security in Microsoft's .Net platform, the future of embedded software and more.
Only problem is the author thinks that's all we care to know about that. Sorta like writing "yadayadayada".
No need to actually report what his answers were. (Guess only an extreme geek like myself cares to hear what he said about these obscure technical topics.)
--- -- - -
Give me LIBERTY, or give me a check.
Gosling offers a bit of insight when he says:
Reverse-engineering in the United States is now "legal for stuff, except stuff doing digital rights management," or DRM, he said. "So what has been happening is folks like Microsoft have been putting DRM into everything. DRM has been put into places you wouldn't think would make a whole lot of sense, like the document format being wrapped in DRM stuff...Under the sheets, the major justification is to make reverse-engineering illegal."
Bill Gates, on the other hand, offers a very different (albeit hardly suprising) point of view in a recent NY Times article.
``Over the years, our industry has tried many approaches to come to grips with the heterogeneity of software,'' Gates said, ``But the solution that has proven consistently effective -- and the one that yields the greatest success for developers today -- is a strong commitment to interoperability.''
Microsoft is also facing competition from Linux and other software that can be copied and modified freely. Proponents of such software say its flexible distribution makes it easier to design to work with other software.
Gates argued, however, that open source software encourages the proliferation of different software systems, making it harder to integrate them with other proprietary systems.
Many Microsoft products already work with other non-Microsoft products, and the company will build more interoperability into the design of its products, Gates said.
So, there you have it. Things are fine, and getting better.
I was there at this event and asked James Gosling a couple of questions.
.NET - and now Perl6 - in supporting multiple languages that compile and run within the same virtual machine?"
.NET (though he did not say this explicitly).
.NET. He poked fun at this - saying due their support for pointers, etc, their Managed C++ implementation had security security holes "big enough to drive several trucks through".
"You spoke earlier about Jython and Ruby -- how Sun does not want to "choose" on the de-facto scripting language for Java.
Will Sun follow the lead of
I impression I got about his answer was: No, Sun won't publicly support multiple languages compiling to the JVM like Microsoft does in
He reiterated the JVM did support multiple languages (the examples he gave were Fortran and Lisp) compiling to Java bytecode and running in the JVM. He said that the JVM architecture has constraints due to which languages like C/C++ cannot run in the JVM efficiently or safely. He said Microsoft actually made a big deal about their support for 'Managed C++' in
"Follow up question: Will the JVM architecture ever change? The Parrot/Perl6 folks talk about how their new Register-Based VM architecture is inherently superior to stack based VMs. Any comments?" [Java uses a stack based VM ]
His answer boiled down to: "The Perl guys are wrong". He mentioned a few other complex points to justify this. An interesting thing he mentioned was that an early development version of the JVM used a register based VM "that no one other than me saw", and that he changed Java over to a stack based VM since the register based one "sucked so badly".
At the end of the event, the hosts (Sun Australia I think) brought out a big cake to celebrate the 10th birthday of Java. Gosling said that the day (Wednesday 2/2/05) was "uncomfortably close to the 10th anniversary of the first release of the JVM". The audience gave three hip-hip-hurrahs.
I'd really like to hear the whole of the talk as well. Anyone out there have anything else with more detail?
"There is more worth loving than we have strength to love." - Brian Jay Stanley
I have to take exception to your definition of the teams. On what basis are you saying that Sun is on the "Microsoft team"?
The Microsoft payout was for civil damages and a settlement in the long ongoing Java suit which it seems they were likely to lose in the long run. They lost, Sun won. Sun gets the money. It was not Microsoft "buying Sun loyalty" or a payoff for Sun to do their dirty work. To characterise it as otherwise would need a lot of evidence--beyond the conjectural crap which seems to dominate these discussions.
The substance of the agreement was that Sun and Microsoft would no longer act like mortal enemies. It was not a pact of eternal friendship and devotion. It did nothing more than normalize relations. Prior to the agreement they wouldn't even agree that an agreement was possible. Going forward Sun will work with Microsoft on some iniatives and oppose them on others. Just like Sun does with Oracle, IBM, RedHat, HP, Novell, etc.
Cmon, do you really think anyone would be stupid enough to repeat SGI's mistake and plan to succeed by being the best Microsoft lickspittle?
Oh, and poor HP. Maybe the reason they are lost in the middle is because they can't decide what direction they're going. Support Itanium? Yep! Support Opteron? Yep! Support PA-RISC? Forever! Support HPUX? Yep! Support Linux? yep! Support Windows? Of course! Hurray for everything! (The same can be said of IBM, but they hide it better).
-- "Most people prefer a popular myth to an unpopular truth"
Usually pacts with the devil take on greater significance as you get closer and closer to death (*cough* Sun *cough*)...
EvilCON - Made Famous by
I woked at a company a few years ago that was a newly minted "Microsoft Partner". Microsoft came in one day and we all had a big meeting. The rep told us, point blank, that they were developing the same software as us, but were a little behind. The deal was this: We'll liscense them all our software at a n unfathomably great rate, they'll promote our company for two years to thier other partners, and then they'll release thier own version of the software at that point, having built in all the improvements that they can from examining our software, and undercut us.
If we don't agree to the terms, they'll release thier software now and compete with us directly withotu the two-year gap.
So basically, that was life as a Microsoft Partner.
"Your superior intellect is no match for our puny weapons!"
Sun has this whole take-it-or-leave it notion about Java, but I have been interested in migrating to Java by rewriting parts of my apps. The JNI allows Java to call C++, but it also allows C++ to call Java, and while parts of it are a little cumbersome, it is well-documented and you can wrap the plumbing in a set of C++ and Java classes. My notion is that I can start with the non-GUI parts of the program, and perhaps even some of the GUI parts by using the MVC and strategy design patterns to uncouple code from the Windows API code, and over time develop something that is easier to migrate away from Windows. Oh, don't worry Chairman Bill, I am probably not leaving Windows anytime soon, it is just that Java has good features and libraries and I am interested in using it.
For mixed Windows API-managed code programming, I like C++/Java better than C++/C# because to access C# modules from Windows API C++, you have to go through a lot of Windows jive with the GAC and other bits of Klingon language. Connecting C++ and Java through the JNI seems easier to me than connecting unmanaged C++ to C#.
The hassle is that I am really reluctant to make any program I distribute dependent on a Java install on a Windows computer because there is so much to go wrong -- not setting up the PATH, CLASSPATH considerations, and so on. It is not insurmountable to get Java going under Windows, but it is something for users of one's software to not get right.
If MS and Sun were to truly make nice, I would like to see the Java runtime integrated with Windows so you could count on it being there if you distribute apps under Windows. Heck, I would settle for the .NET runtime being part of Windows, but even that you have to download and there is a futz factor setting it up.
My recollections:
Eclipse and other Java IDEs
I recall James commenting that the presence of other Java IDEs was healthy as it promotes competition and encourages the best dev tools. He used a sports analogy about needing more than one team to have a match. Two of the day's briefings were about the new Sun IDEs, hence the reporter's focus on this. I recall he had tried Eclipse and was being gracious but non-committal about it.
DVD Technology
James did say that it was a very sloppy bit of crypto, and wasn't intended as a rock solid algorithm but being sufficient to force companies to license the appropriate patents and other agreements.
Again, underqualified here, but he commented that the .NET support of C and C++ was ... oh, I wish I could remember the colourful phrase ... something like: "the most brain-dead design decision they could have made". I think it was to do with pointer manipulation and arithmetic, which Microsoft allows in the CLR and causes major problems, rather than in Java which keeps you away from all that.
Embedded Software
He was asked what still gets him really excited. He mentioned about the new tiny chips they're building with a micro OS on them, with integrated sensors - I think he called the micro-OS "squawk". He made reference to people using them to plaster all over the sides of bridges to monitor stress patterns. He said that right now they're about an inch square but hope to get them down to the size of your thumbnail. He said that it was a tragedy that you had to have a battery to power these things, as the chip is dwarfed by the battery itself. He mentioned the ubiquity of Java in mobile phones a few times. A few people ribbed him about toasters. One guy pressed him on nanotechnology - driving at an NBIC point of view - James didn't really take the bait which is a shame as I thought that was an interesting question.
He mentioned on a couple of occasions about doing some work with real time applications of Java. And that this is an interesting area as people wouldn't normally think of Java as a good language for real-time, but he said that when you have conversations with these guys, that what they are doing in real-time applications is really scary and "out there", i.e. the current real-time software approaches are really complex, convoluted and much more fragile than you would either think or would like.
James also talked about support for OS X (full production support for Java dev tools, just maybe not the daily builds), and the difficulties of working with Apple (no secret previews or insider knowledge).
There was some talk about scripting languages for Java, with reference to (I'm struggling here) Jython or Ruby. He said people get really religious about it, and he likes the fact that there is not "a single one choice" - the variety is healthy and good.
He spoke encouragingly over the Java Community Process - people ask him "where is Java going" and he observed that it was healthy that it is not down to one single individual. He talked about the Mustang development process and encouraged people to contribute feedback / ideas or participate in the development process.
There were some questions about greatest regrets over the language but sadly I am too underqualified to answer. Whatever he said was really insightful (something about operator casting? I can't recall ... I remember him alluding to people accosting him over the left shift operator not being an I/O operator.. but I could have my wires crossed here) - he said "If I had taken out feature XXX of the language, 5% of the audience would say - Yes! that's exactly right, 40% would shrug, and the remainder would come after me with knives drawn".
He was open, genial, down to Earth, and was a pleasure to go hear speak. I'd recommend it if you get the chance to see something similar near you.
Aegilops