Domain: dreambean.com
Stories and comments across the archive that link to dreambean.com.
Comments · 7
-
Re:Pet Store Performance/Cost comparisons
For more info, check this Register article...
Right at the end of your precious Register article is a link to another article that shows The Middleware Company to be the liars that they are.
The J2EE vs. .NET benchmarks referenced above are a scam. -
Re:Pet Store Performance/Cost comparisons
Would this artcle which is linked from the register article be what you were looking for?
Claims C# guys cheat. -
Re:That's nice
You're talking about the The Middleware Company's "shootout" between their "optimized" PetStore implementation and their
.NET version.Laying aside that Sun never put the PetStore demo forward as a benchmark, The Middleware Company did a lot to optimize the
.NET version that they did not do for the Java version. The fact that Microsoft was paying for the comparison may have had something to do with this.Read Rickard Öberg's analysis of the comparison to learn all of the ways in which the comparison was flawed. To name just one, The Middleware Company announced that it took fewer lines of code in the
.NET version to do the same thing, but they left methods in their Java version that were never even called anywhere in the code.In addition, the
.NET version did aggressive caching in memory, in such a way that it would be impossible to scale the code across more than one server, while the J2EE version was implemented using BMP, which robs an application server of the ability to do any caching whatsoever.It goes on and on and on. Read the analysis for yourself.
-
Tutorials versus Production Applications
Are you saying that performance shouldn't be taken into consideration when deciding what "proper coding practices" are?
Yes. Now let me explain:
You're right that performance is important, and teaching performance techniques is important; however, there are times when that's not what you want to teach.
Example 1: Let's say we're going to teach a "hello world" application that displays "Hello World" in a web browser. Let's say I decide to do it with PHP or JSP or ASP and get the string from a database. Is that really the best way to print "Hello World?" No. Absolutely not. You'd just write the HTML and be done with it. In this case, you're trying to show how a technology works, not the best way to solve the "print 'hello world'" problem.
Example 2: For my work I recently did a simple Jakarta Struts example. It basically just queried a table from one of several databases and printed it out in HTML. It was overly complicated for just this task (did validation, internationalization, muliple views...). Now if I really wanted to put this application in a production environment, is this how I would code it? Probably not. It's overkill for this particular example. But what I was teaching was the techniques of database transactions, validatation, etc. We have other applications in development that do need these features. So what I was teaching was not "How to overly complicate your application." but "A trivial example using complicated techniques you will one day need to use." The problem with this comes when developers cannot understand when such features are needed and when they're overkill.
Back to our Java vs .NET example. I think the argument being made here is that Sun did a 'trivial' example to show how things work. Microsoft just wrote the (to use my previous example) 'html' version of 'hello world'. Is Microsoft's approach wrong? No, that's probably how you should write such an application. The problem comes when you try to compare and benchmark the two. So Middleware tries to rewrite the Java version to optimize it and it's still bad. Conclusion? Well, the whole point of this discussion is that Rickard Öberg claims that Middleware didn't do a proper job of rewriting it.
I do agree with some other posters that it would be nice to see someone take the java petstore example and really do it right. Perhaps .NET would still win. Fine. That's great. But until then, spreading inconclusive results is only spreading more FUD. -
Lawsuit Time for TMC and their LIES
The whole review is total CRAP!!! Check out this review of the comparison. It sums up the whole situation pretty well.
There was no optimisation - it was a stacked deck against J2EE -
Re:Save your time
Oh, one interesting fact, "the
.NET version required 14,004 lines of code, while the Java version featured 2,096."
Hm... the PDF document, as well as this page, both say the opposite: .NET had 2,096 LOC, while J2EE required 14,004 LOC. The dreambean link goes into detail about why the J2EE solution has so much more code, etc...
It looks like you were quoting something -- where did you copy that quote from? Or was it just a misquote from memory? -
Re:You've got it reversed.
Why not go to the source [middleware-company.com] and draw your own conclusion. I looked at the report and it seemed more than fair. This was a straight up "best practices vs. best practices" competition, using Sun's recommended coding standards.
Obviously you did not read the rebuttal.