James Gosling On .NET And The Anti-Trust Trial
gwernol writes: "There's a short but interesting interview with James Gosling over on ComputerWorld. He talks about the differences between J2EE and .NET and also about the Microsoft anti-trust trial. Some interesting perspectives from the founder of Java."
Printer Friendly, Non-Flash(tm) Version
My 3rd Favorite Website
(from the article)
"Q: What's the old saying, it's the sincerest form of flattery?
A: Imitation is the sincerest form of flattery. "
graspee
I read this comparison last November. The author, Dean Wampler, Ph.D., concludes the following:
.NET are most appropriate for large-scale, high availability applications. The documented tests say little about how well these frameworks support those applications.
.NET and Java Pet Stores support the same features, but they implement different "nonfunctional" requirements. The .NET version assumes a single hardware/OS/database combination and makes performance paramount. The Java version supports multiple hardware/OS/database combinations and ranks performance as less important. In fact, both frameworks can support either emphasis. Hence, comparing the two code bases is misleading.
.NET is a well-designed framework with good tools. J2EE provides greater freedom, but the J2EE community can't ignore the need for tools that create powerful and efficient applications in a timely manner."
"The experimental flaws of the Microsoft tests render the performance comparisons unusable. All tests must be run on the same test bed and a more suitable application must be chosen. J2EE and
The
For developers who are comfortable with limited choices,
The Ultimate Linux Bookmark
Microsoft released their shared-source CLI and C# implementation a couple days ago. I've been playing with it on my FreeBSD box, and while it's hardly the Java killer Microsoft's making it out to be, it's an interesting piece of work. If you've got a spare FreeBSD or Windows XP box lying around, download the source, compile it and play around with it some; it's always nice to know something about the platform before you start bashing it mercilessly :-)
"The problem with the French is that they don't have a word for 'entrepeneur'." -George W. Bush
"I love it! Microsoft did all the stuff that our Java team should have done. Stick everybody with one and only one language? What the hell was I thinking?! I worship their genius."
Table-ized A.I.
7th post'1
I mean, first it's just frightening to think, not to mention the whole morale dilemma about actually using a superior product from a company you revile... and then of course there's the part where pork starts to fly and a huge order for sweaters for Hell comes in.
OK, so I'm trolling... although I still find it amusing how worked up people get before a M$ announcement, then the sigh of relief you can hear geeks around the world breathing at the same time when we all realize it may take over the world, but at least it's still Microsoft.
You are free to breath out now.
"They certainly could have been more creative about the language."
This coming from someone who tries to pretend he was inspired by smalltalk (since its more OO pure) even though its plainly obvious to anyone who knows jack shit about languages that the Java object model is a strict subset of C++'s. I mean, in smalltalk, things like reflection and introspection fall out of the way the object model works. In Java, its a bag on the side, because Bjarne didn't design it into the C++ object model, which Gosling stole wholesale.
Then lying about it and criticising others... This man is obviously incapable of feeling shame.
The worst part of it is that there are millions of "developers" out there who only know Java (or more often: switched to Java from Visual Basic) who simply accept Sun's marketing as fact.
As someone who daily does Java and C/Obj-C development, I see where Java is a more secure RE than CLI, inherently, and that .NET is more convenient for people to use with other languages. I guess what I'd really want is for Java to become easily integrated with all the other "protected memory" (I know that's not the normal term) programming and scripting languages out there. It would be more diverse but without the exploits that comes from memory handling in languages in C/C++.
From this comment in the article: And from a personal point of view, I personally actually read the [Windows] XP license and decided I couldn't sign it. So I've been shifting over to Mac.
:-P) and there is even a movement to create a Trusted Darwin http://www.stosdarwin.org/ . This could be a real opportunity for university CS departments to adopt a platform that really does support Java instead of the Win boxes that so many universities seem to be purchasing for their CS programs.
This is very interesting and parallels what we and others have been experiencing. There is this slow but dramatic sea-change taking place in the community of scientific computation and programming communities. Folks that never before would even look at a Mac are moving to the platform for a variety of reasons including its UNIX core and ease of use. Additionaly it seems that Apple is actually listening to their users these days. They include features requested and the open source Darwin allows for significant development from the community (assuming you are old enough to sign the agreement
Visit Jonesblog and say hello.
This is Sun propaganda pure and simple. I can't wait for a headline on the front page telling us that Coca-Cola says new Pepsi is disappointing. When Microsoft have made less-than-favorable remarks about Java in the past it has instantly been flagged as FUD.
I suggest folks take Sun PR and Gosling's remarks with a grain of salt. Evaluate the technologies for yourselves and decide accordingly.
Perl and Python with a common runtime, Parrot will eventually win.
If you ask me, this interview isn't worth reading. Gosling disses .NET without giving us many examples. Plus, what do you really expect him to say. I know it's just an interview, but people will read it and start up arguments as if it is some kind of objective analysis.
I don't know what to make of this:
Why would he be relieved that MS puts out mediocre stuff? I hate that the world is forced to use boring, insecure, ugly, embraced-and-extended software from MS. I want them to be creative.
Personally, I think .NET is pretty good, technologically. I like C# + CLR a lot more than Java, and infinitely more than C++.
But what troubles me is that it's got a Microsoft copyright on it, which is pretty much a guaranteed poison pill in my view, but that's another issue.
On the whole, we should hope for Microsoft to be "creative", that's the whole point, the whole reason we don't like them. As Steve Jobs said, "they have no taste".
Then again, I shouldn't expect unbaised answers from Gosling, eh?
"They might have done something creative around ... integrating business logic into the language ..."
;-)
What the hell does this mean? Seriously, I want to know, what is business logic and what would it do in a programming language??
"Q: Did you feel that way when you saw C#?
A: Yeah. Yeah. I mean, abused and ripped off was also in there just to some extent."
What, like Bjarne Stroustrup did after Java?
And, I mean, the fact that the syntax [of C#] is so much -- is like exactly the same, or just about exactly the same [as that of Java].
Kind of like how Java is just about exactly the same as, say, C++?
In other news, Mandrake accused of ripping off RedHat, Mrs. Torvalds accused of ripping of Charles Schulz
Speaking of Microsoft's "Freedom To Innovate Network" -- Why do you suppose that freedomtoinnovate.net now seems to point to the EFF?
What a disappointing interview... Could you expect something as boring as this from, say, Larry Wall? Never. Or when Stroustrup criticizes Java, he has some valid (and interesting) arguments. But I have not found any insights in this Gosling interview. Microsoft sucks and J2EE rules. How interesting.
;)
The funny thing is that he says
1) They copied everything from Java
2) They could add clever things to their language, but they didn't
Well, at least, he's honest about Java
Linux is totally chewing up their low end. They don't want to admit it straight out - they have been playing nice with open source folks while quietly taking Cobalt off of the market and making it a bit player.
Meanwhile IBM is taking it apart at the high end with a proposition that focuses as much on services as hardware and software..because IBM knows billable hours are where the real renewable revenue is.
On the architecture side, Sun is pitting itself against an entire enconomy - Intel and Microsoft. Sun simply can't outresearch, outspend or outmarket either of these companies, let alone both of them and their attendent co-competitors (Dell, AMD, HP, etc). Once Microsoft gets Win2k up to par in every respect with Solaris (it will happen), they will start peeling high-price clients off of Sun with little contest (meanwhile linux will chew up Sun's low end more and more).
On top of all of this, they're playing mindshare catch-up with the half-hearted JavaOne. Sorry James, MS beat you to the punch on webservices by a year.
I just hope Java can't be opened up enough that it doesn't evaporate along with its owner.
The multiple languages engine of the .NET does not sound very delightful since it will only work well in MS environment. I don't know if there will be a port, but it won't be as good as the MS one anyway. On the front end side, the people who use .NET will be those VB, VC++, ASP developers. Of course, many programs will be migrated to web-based also. Other than the cross platform ability, I don't think many of us will consider the features of Java VM as critical. This should be the same for .NET.
.NET hype as a chance for the open software community. The web services/components standard does give us a chance to enter this area.
For the back end side, there are things like SOAP, UDDI. Everybody can work on these. I think the open source community will be happy with these, since we finally have something which can compete with the MS DCOM/COM+ stuff(cobra is not popular in the business apps area). The people worry about it are the Java guys/gals. However, even the J2EE or EJB stuff does not domainate the market, Java, as a computer language, still have its way to go.
I see the
First off, bigotry applies to everything, not just race. I do not consider myself a bigot or someone who passes judgement and applies whatever judgement I've made by hate/praise statements. Like every other company, Microsoft is a company. They may happen to have a large market share in the OS world that they've bullied into using their software, they may have copied ideas from other projects/ideas and they may not produce the best code...but name one company that does 100% of the time.
Have any of you even looked at C# as a language? How about looking at the
And so is
Gosling is a joke if he thinks he's anyting special. He got his "fellow" status because of Java, but only once it took off. Other than that, he'd be pretty obscure. Is there anything innovative anymore? Everything is a culmination of ideas. It's like evolution, new species don't just appear, they're based on previous ideas.
Does anyone remember how much Java 1.0 sucked compared to the Java of today? I sure do, because I was one of them! Does ANYONE get version 1.0 perfect? So why do we expect this from Microsoft? Yes, they're bugs are more public because more people use Windows than there are Christians on this planet, but everyone else's 1.0 products are the same! Security? Please! UNIX had 30 years to improve security. My dad tells me horror stories of all the security bugs in the original systems he'd worked on at Bell Labs!
So come one, everyone. Open your mind and be a geek and not just a moron.
Note that I'm not baiting anyone here, so don't come back with dumbass answers like how I am in bed with M$ or something. Give me intelligent responses and arguments and I'll respect that. Anything other than that and let's say that you're a nigger (as in ignorant, not an African or African-American).
Thank you and have a nice day.
Here is an interesting article, describing how Microsoft is trying to get Java developers to write J# (java) code for the .NET platform. Unfortunately .NET only runs on the Windows platform, which has Sun a bit upset.
--It's Pimptastic!--
RMS create Emacs.
It just comes down to this: which would you rather have happen?
- the Bad Guy sees the error of his ways, and turns to Good.
- the Bad Guy suffers his deserved damnable fate, and his victims are avenged.
The second one makes the best pop fiction and is the most emotionally satisfying. The first one is good in a morality play and is the most attractive to a cold objective intellect who just wants to make the world better.But before you choose the first option, consider this: the real world is complicated, and there are shades of gray. The Bad Guy will never fully convert; he'll just do enough to get off the hook.
It's not realistic that a Creative Microsoft would create good software and make computers stop sucking. It's a lot more plausible that they would come up with something that most people consider "good enough", and there is little that can damage progress more than that. The secretary in my office has trouble with MS Explorer (the desktop .. well .. actually the web browser too, but not as much) and the boss has trouble formatting stuff in MS Word -- but they never give up and decide to try something else. Maybe if MS products were 1% worse, everyone would be using something 300% better.
I'm glad MS products are so unusually poor instead of merely being average in the face of great alternatives, and I sometimes just can't help snicker with satisfaction when people struggle with that crap. Sure, some of it is due childish pettiness and bitterness on my part, but it's also due to the hope in my heart that the user's pain will be so great that he will finally wake up from the nightmare. Nothing would thrill me more than to hear someone suddenly scream, "I'm mad as hell and I'm not going to take it anymore!" So keep sucking, MS, because the more you suck, the sooner, louder, and more glorious the chorus of screams will be.
And it basically just sounded a lot like a very smart guy bashing Microsoft.
.Net could completely lack any real redeeming qualities or there wouldn't be projects like Mono attempting to provide a *NIX platform compatible Common Runtime.
I personally doubt
In the same way that if Java was horrible no one would have made third-party JVMs, like Kaffee (sp?).
But, that's just me I could be wrong (and wouldn't that be tragic?)
"The problem with the French is that they don't have a word for 'entrepeneur'." -George W. Bush
You're right, but it seems so much more convincing when it is a single person. He just seems to come off as a lone hacker, who dislikes the way Microsoft is doing things. This appeals to me. I also completely agree with him about shifting to Macs.. I'm hoping that Apple really does stuff with OS X, and maybe ports it to Intel hardware? ;)
:wq
Please smoke appropriate crack.
Here's an intelligent reply - I'm gonna stick my big, fat, pulsating dick into your ripe anus! I wanna fuck you like you've never been fucked before!
HEEEEEEEEEEEEEEEEEEEEEEEE!
What a complete jackass. Java sucks my big fat cock!
"Imitation is the sincerest form of flattery"
While I have great respect for Mr. Gosling's prolific contributions, clearly this imitation goes both ways. For example:
Microsoft Transaction Server 1.0, shipped 12/96
* automatic transactions for objects, including Java objects
* ObjectContexts for automatic services on behalf of objects
* declarative transaction requirements e.g. Transaction Requires New
* declarative, automatic role-based security, and IObjectContext::IsCallerInRole()
* etc.
Enterprise Java Beans, 1.0 final spec shipped 1Q98(?)
* automatic transactions for Java objects
* SessionContexts for automatic services on behalf of objects
* declarative transaction requirements e.g. TX_REQUIRES_NEW
* declarative, automatic role-based security, and EJBContext.isCallerInRole()
* etc.
The provenance of the ideas behind EJB/J2EE, arguably Sun's most commercially important Java technology, would seem to be revealed in its choice of identifier names.
-- an ex-Microsoft software developer
While I am certainly biased against anything Microsoft tries to cram down my throat, I don't think this article is any better than the crap we usually see from Microsoft flacks.
Slashdot should really try to find some better quality articles if they want to have a content rich site.
We get quite a few Sun employee's at our (mac) store, some of whom work on apple hardware (laptops mostly). That, and lots of Sun developers buy scads of HW and seem to have like 5 of the latest macs in their "collection". So there are two conclusions: 1) Sun people seem to like macs. 2) Sun people got mad bankroll.
This is where I get my recommended daily allowance of "Foot in Mouth."
Given choice between a nice language, and a language halfway between a nice language and a sucky language, I'll take the nice language please. Perl turds may taste better when mixed with Python ice cream, but why not just eat Python ice cream without the Perl turds?
To me Microsoft empowers average people to express themselves. To elitest and academics this can be a scary thing.
They don't an interest in letting others have any say or power.
Sun makes stuff only academics and big corporations can afford to use.
Microsoft supports programming languages like VB. No academic is going to go nuts over VB but you can do about 99% of anything you would need to do with it.
Sun makes machines that take years to learn to do anything. If you can afford them.
Java is just huge to learn well. And there aren't any powerful and affordable development tools available.
Anything Microsoft makes for programming will be light years ahead of anything Sun can make as far as price and productivity are concerned.
And just try to rapidly deploy something in BEA! Forget it. Its a piece of crap.
1) They cloned our language
.NET == J2EE
.NET == suck
2) Their language sucks
3) They should've added some business logic
Business Logic Example:
therefore
J2EE == suck
Maybe this guy aughta check his reasoning on his Mac
The answer was too obvious, but too often ignored and the question, if not met with an informed response soon enough would have painted us into a corner. We have to support users on a variety of platfroms, hence Java, or simple HTML forms with asp or servlets on a server will accomplish our goals. Writing client apps in .net means we can only support that portion of our customers who use a current enough OS to support .net Yeah, looks pretty until you start looking at the fact there's a few million legacy computers and macs in the world you won't be able to do squat with. No thanks. .net is dead and buried for now and I mean to keep it that way.
Microsoft's damnable marketing buzz is dangerous, because too many people hear it and just leap at it, because it sounds like a great solution. Too few stop to think things through, often those who know too little about their whole market and end users.
Now this isn't necessarily a Java good, .net bad, thing, it's more of a 'don't jump on the latest bandwagon' thing. For my 2, though I'd be happy with J2EE because it's established, which .net is far from and risky because of it.
A feeling of having made the same mistake before: Deja Foobar
Object wrappers for primitives is not the same as the primitives themselves being treated as objects. Anyone whose used a true OO language like Smalltalk cringes and the inconsistency in Java between primitives and objects. Even C++ tries to make them as interchangeable as possible especially with templates.
For instance in Java there's no way to pass just a primitive like "5" or 2.6 to a method that takes an object while in C# and Smalltalk you can.
If you want to talk about non-OOP features, C# is full of them. Like structs for example. Who came up with that idea? And how about pointers? WTF?
The above comments how that you've somehow confused object oriented with Java which unfortunately are not the same thing. An object oriented system has 3 main qualities i) encapsulation or information hiding ii) inheritance and iii) polymporhism. All three of which can be done with C# structs (or value types). Secondl, I am immensely confused what the existence of an explicit pointer type has to do with whether a language is OO or not.
As far as Indexers go (and pretty much all the differences between Java and C#), they are just syntactic sugar that really just makes code confusing to read compared to Java.
Really? So is easier to read than On what planet?
That's a hoot! The fact is that CLR doesn't support anything that can't be accessed from C#. That's why implementations of other languages have had to drop features like multiple inheritance before CLR implementations. All CLR does is provide a Procrustian cot for other languages to lie on. Head over the top? Lop it off!
The Java VM was designed to run Java while the CLR was designed to be language agnostic. The fact that C++ can run on the CLR is a testament to this fact.
One of my friends and I were at a microsoft user group (i'm not a member, i was just there for my free copy of windows xp :) meeting a few months ago, and he is a java fanatic, and there were showing some C# source code. My friend is a really smart guy, and he looks at it for a second, and says, "that would probably compile under java." and a few seconds later he said, "Hey, wait a second, that actually would compile under java." Needless to say, i laughed for a while about that one.
my other penis is a vagina
All you need to look at are these pages:
http://biz.yahoo.com/fin/l/m/msft_qb.html Balance Sheet
http://biz.yahoo.com/fin/l/m/msft_qc.html Cash Flow
Note:
2.1 Billion incoming cash. 5.2 Billion Cash on Hand.
I think MSFT is solid.
I mean use a little intuition. Every beige box sold means $40 in revenue from windows. What's the Marginal Cost of another copy of windows $2? Now add in Office or Works. Then add all the copies of NT server that are sold, all the CAL's. All the Exchange servers, all the Exchaneg CALS. All the SQL servers, all the SQL CALs. Thats a honkin lot of revenue, and very little marginal cost. MS in making money hand over fist. That's what monopolies do, maximise the difference between marginal revenue and marginal cost. MS can keep cranking out licences and were stuck buying them.
MS growth may slow, (although one could argue that vast international markets lay untapped), but they aren't about to colapse Enron style.
Now how the hell did you get here?
Get out while you still can. Tell the others to never come near this horrible, horrible place.
Don't worry about me, only save yourself!
*is pulled back into the mob of drooling Linux zealots*
There is nothing wrong with the C#/CLR "memory model". By default, it is safe, just as in Java. If you write an unsafe model, the memory model is unsafe, just like it is in Java. Oh, you say, Java doesn't have unsafe modules. But it does. They are called "JNI". The only difference to C#'s unsafe modules is that JNI is less efficient and harder to program. (Both Java's and C#'s security models label unsafe code as such.)
I guess one of my pet areas is scientific computation. They might have done something creative to make that easier.
This is adding insult to injury. C# has value classes, operators, multidimensional arrays, and easy and efficient interfaces to native code. Sun and Gosling have been promising some of those features for years and failed to deliver on even the simplest of them. The best we are getting is a cumbersome proposal from IBM for multidimensional arrays that most implementations will probably not even bother to optimize.
And, I mean, the fact that the syntax [of C#] is so much -- is like exactly the same, or just about exactly the same [as that of Java].
Well, gee, what a coincidence. Microsoft thought Java was a great idea, but they wanted to have their own libraries. Sun sues them. So, they did the next best thing: they cloned Java as much as they could, fixed a bunch of small things Sun has been promising to fix for years, and called it C#. What does Gosling expect Microsoft to do? Just roll over and die? And Sun really has a double standard there: when Apple exposes all their native platform APIs to Java, that's fine. It's just not fine when Microsoft does it. Who's going to get sued next? What can open source developers do with Java before Sun is going to try and sue them?
I am no friend of Microsoft, and I won't use a Microsoft-only platform. But I am really getting tired of the marketing fluff coming out of Sun. When Java originally came out, Sun was promising a well-defined, open, standardized, and efficient platform. Today, it's a huge system with incompletely specified APIs, lousy support for high-performance computations, and no independent third party implementations (all compliant Java2 implementations depend to a large degree on Sun's source code). Sun has dropped out of every standardization process around, and they have been threatening others with lawsuits left and right.
I don't want to be tied to either a litigious Sun Java monopoly nor to a bundling Microsoft .NET monopoly. If Sun doesn't clean up its act quickly, after seven years of lobbying for Java and using it for lots of software, I'm dropping it. And I suspect others are getting similarly annoyed with Sun.
A few things here:
.NET in general is just another in the cycle of forced upgrades. Before you used VB, now you use VB.net. In another 4 years you'll use something else. Of course, all the good ol MS apps will still be written in C++ all along. The primary reason to use MS products is always the same: "everyone else will." Which of course is self-fullfilling prophecy.Everyone believes that so everyone jumps on board.
#1: To the person talking about financials and MS being a "pyramid scheme." In a way this is true, but this is common practice today. If you look at a company like Cisco, if you count stock options they lose huge amounts of money, but if you don't count them they make money. Stock options are very easy to abuse from a financial reporting standpoint. The key is, when people cash in those options the company has to either buy them back at the market price, or must simply have the options on hand, when they could have sold the shares for much more. Paying someone in options is like paying Hershey's employees in candy bars - in the end it's still money spent.
#2: What Gosling was saying about C# being a rip-off is true. Java may not have done anything new but it at least combined some syntax and pieces in a new way. C# is a straight port of Java for the most part. Java is NOT a copy of C++, it is a copy of a hodgepodge of things. Whereas C# really is just a copy of Java.
#3: Safe vs. unsafe code. People are being very naive about this. How many web pages do you go to that give you the warning "this page blah blah unsafe..." Yet you still enter that credit card number. Marking code as "safe" or "unsafe" is irrelevant. This is what will happen: people will write unsafe code, and it will be common enough so that end users will have to use it. The same thing happens with ActiveX controls. How many people honesty won't run an unsafe ActiveX control? Or a program that uses unsafe Word macros? The other day I had to change my security level in word so I could use a documentation tool - and I went right ahead and did it, and so will everyone else!
The fact is, if it's easy to write unsafe code, people will write it, and then users will have to run it if they want to use that product or service. Marking it safe or unsafe makes no difference at all, the typical user will run unsafe code.
#4: Sun really does need to get it's act together. Good god there are so many Sun products, so many APIs and old APIs and new APIs and different "initiatives" it's impossible to tell what's what. For example JavaOne, how many people can figure out what actually is in there and what it does?
#5:
#6: MS has been found guilty of anti-trust violations multiple times. And they still get worse even as the trials go on! If I were a judge I would say "stop mocking these proceedings or I'll throw your ass in jail!" Most people who are for another weak settlement are people who just make vague arguments against the entire notion of anti-trust, something like "they're just trying to do what every company wants to do and be the leader. Stop whining!" Well, we *have* antitrust laws! And we have them for a reason. And if they apply to ANYONE, they apply to MS. MS protests that a harsh penalty could destroy the company? Well, when you get arrested for murder and put in jail for life that pretty much destroys whatever you had going at the time. It's called "punishment." That's the point! If you can't stand the punishment, don't commit the crime, not once, but twice even! That logic is akin to saying "I can't go to jail because jail is a nasty place." MS was found guilty, they didn't stop, in fact they got worse. A breakup to me is the only logical thing to do, they've shown they can't play by the rules. Yeah, that's "harsh." But, there is a simple way to avoid penalty: don't break the law! Yes Virginia, it really is that easy!
Gosling is fat. Also, Java has serious issues itself when it comes to scientific computing.
Please see this paper for further information.
Funny he should mention that as one of .Net's shortcomings.... Also he feels "ripped off"? Sure, C# is an awful lot like Java, but then Java was an awful lot like C++. Borrowing good features from past languages isn't robbery, its just smart.
In short, shut up fatty!
That's what monopolies do, maximise the difference between marginal revenue and marginal cost.
Er, not quite. All companies seek to hit the spot where MR = MC. Why? If I sell one more unit, the extra revenue (MR) is more than the extra cost (MC). That's called profit. Its true for a monopolist as well as for a company in a competetive market. So how does a monopolist differ from a company in a competetive situation? For the individual company in a competetive market, MR (dR/dQ where Q is the Quantity sold) is constant since they face a linear demand curve for their individual share of the total demand supplied by all companies in the market. The monopolist, on the other hand, faces a negatively-sloped market demand curve. So dR/dQ is negative. Each extra unit sold brings in less revenue than the previous unit. I'll leave it as an exercise for the student to show that the Q sold by a monopolist is less than the quantity sold by the sum of the companies in a competetive market. By MR = MC for both.
FreeSpeech.org
there you have it.
onmouse over=" kasd jrm-rfm iloversmsrmrsmsrmrsmrsmsrmsrmsrmrsmsrmsrmsrmrsmsrm srmrsmrsmrsmrsmrssmr .me .got .asfdfsdafdas .asdfs dafsda .fasdsfdafdas .sfdafdassfdafdas .sdafsfdafd assfda .sdafdassfdafdas .sadsfdafdas .FIRST .POST . FIRST .POST .FIRST .POST .FIRST .POST .FIRST .POST . FIRST .POST .FIRST .POST .FIRST .POST .FIRST .POST . FIRST .POST .FIRST .POST .FIRST .POST .FIRST .POST . FIRST .POST .FIRST .POST .FIRST .POST .FIRST .POST . FIRST .POST .FIRST .POST .FIRST .POST .FIRST .POST . FIRST .POST .FIRST .POST .FIRST .POST .FIRST .POST
sssssd sfdlfdas dasfl dasf asdfds Important Stuff:
Please try to keep posts on topic.
Try to reply to other people comments instead of starting new threads.
Read other people's messages before posting your own to avoid simply duplicating what has already been said.
Use a clear subject that describes what your message is about.
Offtopic, Inflammatory, Inappropriate, Illegal, or Offensive comments might be moderated. (You can read everything, even moderated posts, by adjusting your threshold on the User Preferences Page)
Problems regarding accounts or comment posting should be sent to CowboyNeal
Please try to keep posts on topic.
Try to reply to other people comments instead of starting new threads.
Read other people's messages before posting your own to avoid simply duplicating what has already been said.
Use a clear subject that describes what your message is about.
Offtopic, Inflammatory, Inappropriate, Illegal, or Offensive comments might be moderated
- You're using J2EE. That implies you probably should be using JBuilder 6 Enterprise which has numerous J2EE features for automating configuration of EJB's. If you're not using the enterprise edition, then your comparison is lacking in credibility, as Visual Studio .NET enterprise edition is approximately the same price.
- You have to edit four files to add a field to an EJB? Let me assume for a minute that you're using container managed persistence, which is the only scenario that would require such changes. Most tools will allow you to define the new field in your local interface, and will then propagate that field to your implementation class and your ejb-jar XML file. The second XML file, I will assume, is a custom deployment descriptor. Again, I would hope you're using a vendor's tool to manage this thing. But even if not, I find your indignaton towards all of this "work" somewhat amusing.
To put this tremendous amount of work in context, how much work does it take to add a field to a regular database table wtih a SQL call in JDBC, or for that matter, ADO.NET? That would require:
- doing a DML statement on the table to add the column at easiest. In some environments this may require several DML statements to create the new table, re-populate it with old data, populate it with the new column's data, then drop the old table and rename the new one.
- changing 1-2 method call signatures to take in extra parameters for inserts and updates.
- changing the JDBC code for reading, updating, and inserting to take the new field into account
- possibly adding the field to a data object that holds the data in memory.
Phew! I'm glad there's alternatives to EJB, it's so much easier without it.
Now, on to the next cow:
Deploying a JAR to two different places (jBoss and Tomcat). Firstly, I question what the problem is. You would deploy an EJB JAR to a jBoss instance and a WAR to tomcat, or you could just put it into one big EAR file and fo'gettaboutit. If you have two servers, then the ant optional tasks package could very easily do this work for you with approximately 3 lines of XML configuration.
The best part about your post is that "there probably are better ways". Yes, there are. Hire a consultant for 3 or 4 hours to help you out, it will probably be worth the $1000+. If you're missing GUI tools for jBoss, that would be because it doesn't really have any. Use a commercial server if you're not willing to hand-craft your config & deployment.
-Stu
Some of you Linux fanboys will line up to praise anything as long as it slams Microsoft apparently. This guys argument boils down to "Microsoft stole our syntax! They're an icky company!" - You can probably count the factually verifiable assertions he makes on the fingers of one hand, the rest is just that old familiar FUD, aimed paradoxically at the people who are most famous for the tactic. I guess that's poetic justice in a way, but shame on you otherwise intelligent people for not calling this interview the pile of corporate shill horsecrap that it is.
Well I love Delphi and use it all the time, but comparing the two is inaccurate. They -are- pretty different.
Does anyone remember how much Java 1.0 sucked compared to the Java of today? I sure do, because I was one of them! Does ANYONE get version 1.0 perfect? So why do we expect this from Microsoft? Yes, they're bugs are more public because more people use Windows than there are Christians on this planet, but everyone else's 1.0 products are the same! Security? Please! UNIX had 30 years to improve security. My dad tells me horror stories of all the security bugs in the original systems he'd worked on at Bell Labs!
True to some extent but consider Apache. It has a higher market share than IIS but where is the Apache version of Code Red? I seem to recall IIS in on version 6, or is it 7? I can't remember. But Apache is just about to reach v2.
Gosling is a joke if he thinks he's anyting special. He got his "fellow" status because of Java, but only once it took off. Other than that, he'd be pretty obscure. Is there anything innovative anymore? Everything is a culmination of ideas. It's like evolution, new species don't just appear, they're based on previous ideas.
So why did Java take off in such a big way and Smalltalk didn't? Don't believe it was just marketing, because it wasn't. The fact is, that Java was the right product at the right time. There are languages out there that are so "innovative" they are barely usable for real world projects. So it didn't include hundreds of good ideas - but it did combine those ideas in a way that had mass appeal. I consider that innovative in a way.
J2EE is not EJB, and the ideas behind J2EE model really have nothing to do with MTS.
.NET.
On the EJB hand, you're quite right, they borrowed heavily from MTS. But I would claim that MTS was beta-quality software until at least 2.0, and didn't support object pooling until COM+'s release. EJB 1.0 servers were doing that around the same time, and while many were crappy, there were production quality ones out by late 1998 (WL 4.5, Gemstone, Persistence, etc).
In the story of MTS vs. EJB, it really was a story of execution. MTS and COM+ were slow to mature, and didn't take off at all. Which is one of the driving factors behind
-Stu
Well, the "mad bankroll" has to be a little slimmer than it was when the stock was at $64. Unless they all were smart and cashed out then.
There are huge benefits though to being on a Mac with OS X. Not the least of which is a mature set of apps in classic mode, cool stuff in X, and access to all your favorite Unix goodies. For them that has to be as close as it gets to heaven.
And I agree with the comments posted above Re: the message this sends to Microsoft. Satan loses another user, others will follow.
Really? So
Math.Add(myList.getObjectAtIndex(0), myList.getObjectAtIndex(1));
is easier to read than
Math.Add(myList[0], myList[1])
On what planet?
-------
For the record, Java has never had any method
named getObjectAtIndex(). There are a few methods
named getObject() in the sql package, but to perform
the operation you're suggesting, you could do either:
Math.add(myList.get(0), myList.get(1))
That is assuming (incorrectly) that Java has a
static method in Math called add();
it does not. If you want to perform addition,
you'd simply say:
int val = myList.get(0) + myList.get(1);
or if you're using arrays instead of a Collection,
you could say:
int val = myArray[0] + myArray[1];
While I'm at it, on "what planet" is
myList[0], myList[1]
"easier to *read*" than myList.getObjectAtIndex(0)?
My first language is English, not C syntax, so
words written in a human language tend to come
off as "easier to *read*".
I'd rather read and write something like:
myArray at: myIndex
which is the truly "easier to *read*" syntax
of Smalltalk which isnt based on C syntax like
practically every major language in use today.
(apologies if I come off as too bitter but
it sucks that Smalltalk doesnt have the market-
or mind-share that all these beloved C syntax
langs do)
-
Max Korn
Technically TCL was in much better shape that time. It was extensible, very flexible, very compact, fast, with two or three OO extensions (itcl and OOtcl I can remember at least).
Why is TCL dead if it's so good? Sun's marketing + Sun's interna policy to screw up all research of John Ousterhout.
I hope IBM with their support revenue will spend more effort on OSS langs (perl, python, tcl), besides they already do with Linux.
My interpretation is that Gosling mentioned scientific computing because he saw that Java hadn't covered that area well, just like it doesn't cover logic/query programming, transparent persistence, workflow, continuations, program-as-data and dozens of other useful ideas from the last 40 years.
However, this is much more of an indictment of C# than Java - Java's innovation was in the VM, not the syntax, which was deliberately conservative. Despite a huge R&D program, MS has not managed even to synthesise ideas from even two significantly different languages/VMs, let alone attempt to bring together best practice from industry and academia. Gosling's 'rip-off' charge looks pretty solid to me.
To me Microsoft empowers average people to express themselves. To elitest and academics this can be a scary thing. They don't an interest in letting others have any say or power.
That's fine and dandy, but do you want average people expressing themselves in your mission-critical software?
Microsoft supports programming languages like VB. No academic is going to go nuts over VB but you can do about 99% of anything you would need to do with it.
You would be amazed at the number of people I know who are about to graduate with skills in Drinking and VB.
Sun makes machines that take years to learn to do anything. If you can afford them.
Expensive? Yes. Steep learning curve? Unless you are already a UNIX guru, yes. Better than Microsoft? Yes.
Java is just huge to learn well. And there aren't any powerful and affordable development tools available.
I learned Java by reading a few of books and modifying C++ code until it would compile. I develope Java at home with javac, jEdit, and the JavaDocs I downloaded from sun, and store it all in CVS under CygWin (until I get the cash for my Mac). Heck, I don't know of any serious programmers who use much more than a command line compiler, emacs or something simmilar, and a version control system, all of which are available for free. If that's not enough, go grab Forte for Java or JBuilder. It's been a while since I've looked, but I believe that both of those are available for free, at least for personal use.
No one who knows what they are talking about would say that the Java API is small, but it is relativly easy to pick up on if you know what to look for, and the JavaDocs are the best documentation I have seen in ages. Not a tutorial, but if you need to find something fast, they are hard to beat.
Sure, you can spend hundreds (or thousands) of dollars to express yourself with Microsoft products, or you can spend a few hours downloading and express yourself with Java for free. You may need to invest some time in learning it, but is there really anything of value for which that isn't true?
Thomas Galvin
So this means that IBM's market cap is a little over half of MSFT's (which is 328.3B). And IBM's P/E is 23.91 whereas MSFT's is 55.33. So basically MSFT has a little less than twice IBM's market cap, and about 2.5 times the P/E.
The moderators who made you +5 insightful need to learn how to count...
reference
We should thank God that Microsoft exist. Without MS we would live under Sun's Java dictate.
I think it is very important that the browser should be not the only component to experience a fair competition. Ideal "light" MS OS should be all component based. Imagine MS Windows GUI with Linux kernel and/or X11 behind.
Technically it means to change a lot in MS OS, but it's doable. Practically - that's where Microsoft should spend part of their unfair profit.
If MS Windows is the only choice I have from a manufacturer then I want to buy PC with either a "stripped-down" OS or some sort of "OS Installer" when I can complete OS configuration online from home by choosing OS components either from Microsoft or from Linux.
At this time Linux and Microsoft don't work well together. But that shoud be a problem of Microsoft executive - they have created a monopoly and they should think how to change API in order to survive. Or else...
And he also wrote vi.
But no matter, it's all about pico.
autopr0n is like, down and stuff.
I'm not sure if that was supposed to be a ironic one-liner or not, but unless you work at a games company almost all your code is going to be VB or Java (or COBOL!)
autopr0n is like, down and stuff.
For instance in Java there's no way to pass just a primitive like "5" or 2.6 to a method that takes an object while in C# and Smalltalk you can.
No, but you can do myList.add(new Integer(5)); or myList.add(new Double(2.6)); if you want to. Yeh, the semantics are a bit diffrent, but the effect is exactly the same. Also
Really? So
Math.Add(myList.getObjectAtIndex(0), myList.getObjectAtIndex(1));
is easier to read than
Math.Add(myList[0], myList[1])
On what planet?
Um, on earth? "getObjectAtIndex()" actualy tells you what's going on. Of course, those of us who have been programming for a while see "[]" as meaning the same thing. And anyway, it's not "getObjectAtIndex()" but rather just "get()". Not exactly that much harder to type or whatever (especialy since you don't have to leave the 'qwerty' part of the keyboard.
autopr0n is like, down and stuff.
Yes, they are different, but consider who wrote C# and who worked on Delphi. Same person. (If on one knows who this is, obviously you don't know anything about C# and that's my point...prejudging).
True to some extent but consider Apache. It has a higher market share than IIS but where is the Apache version of Code Red? I seem to recall IIS in on version 6, or is it 7? I can't remember. But Apache is just about to reach v2.
Each company has its own methods for version control, so version numbers should have nothing to do with a comparison. For instance, Look at how many x.x.xxx Apache versions there have been and compare that to Microsoft (IIS 5.1 and that's all). Apache obviously uses versioning smartly as opposed to Microsoft, whose versioning is based on Market Influence. As a matter of fact, you stated yourself that IIS has a larger market share. Part of that is through marketing hype, by saying "look how mature we are at version 10,000 while our competitiors are still at v2". With that argument to uninformed, typical business users, who wouldn't fall for that line?
So why did Java take off in such a big way and Smalltalk didn't? Don't believe it was just marketing, because it wasn't. The fact is, that Java was the right product at the right time. There are languages out there that are so "innovative" they are barely usable for real world projects. So it didn't include hundreds of good ideas - but it did combine those ideas in a way that had mass appeal. I consider that innovative in a way.
Whole-heartedly, 100% agree with you that Java was just in the right spot, at the right time, unlike Smalltalk. But, if that is your argument, that combining technologies is also innovative in a way (albeit small), then why is the DOJ asking Microsoft to unbundle then?? Isn't that hypocritical (not saying that you said this, but it's a fair comparison)?
I don't normally reply to posts from stomach acid, but thank you for making my case about how moronic a lot of /. posts really are.