What does this man have to do with C# and Java? I have had the fortune of being able to participate in both sides of a technical interview on many an occasion. One question that I have heard (as well as asked myself) many times is the classic "What are some differences between C# and Java?"
Now, the stock response normally takes one of several forms:
- "Java is interpreted while C# runs natively" (which is actually technically incorrect - Java normally runs interpreted but *can* be run natively, while C# always runs natively in the end)
- "Java makes all members virtual by default while C# does the opposite"
- "But...I'd do anything for this job" followed by disco music and the removal of clothing, etc. (I'd note this is actually Igloo Coder's standard response to any interview question, as well as the bartender's inquiry of "Don't you think you've had enough?")
- "Java is interpreted while C# runs natively" followed by
"I'd also like you to know I'd do anything for this job", typically said to me when it is a one on one and the other side of the table is female (which of course is a tad awkward when I am the one being interviewed). I'm not sure why this always happens. *
Thankfully for you, those days of giving those pat, standard answers are over! I've recently had the chance to read
Dare Obasanjo's mammoth paper with the mammoth name, "
A COMPARISON OF
MICROSOFT'S C# PROGRAMMING LANGUAGE TO SUN MICROSYSTEMS' JAVA PROGRAMMING LANGUAGE", and I can tell you this goes into almost
too much detail as to all of the minute differences between C# and Java.
Now you too can seduce your co-workers, interviewers, pizza delivery people, candy stripers, and masseuses with your depth of knowledge re: C# and Java differences. I can't tell you the number of times I had been at the bar and some woman asked *me* if both Java and C# allowed pass by reference. Don't let this potentially emasculating moment happen to you!
This C# vs Java information was not the only truly illuminating information I discovered while reading Dare's magnum opus. Buried in the middle of this paper (in the
"Properties" section) is the following code snippet...
public static void Main(string[] args){
User newuser = new User("Bob Hope");
User.MinimumAge = -5; /* prints error to screen since value invalid */
User.MinimumAge = 18;
//newuser.Name = "Kevin Nash"; Causes compiler error since Name property is read-only
Console.WriteLine("Minimum Age: " + User.MinimumAge);
Console.WriteLine("Name: {0}", newuser.Name);
}
thus revealing that Dare is not only a top-class developer but a top-class fan of Big Sexy #2**,
Kevin Nash (see photo above)! C'mon and admit it Dare; I know you've got the giant foam finger sitting beside you while you're coding.
After-blog: D'Arcy asks "Notice anything disturbing?" I would have to say it's the fact that a nearly 30 year old man with no kids is attending a live-action Dora the Explorer. Did I guess right? ;)* It's possible I have this confused with some movie I saw once, but I heavily doubt it.
** I think we all know who "Big Sexy #1" is. And no Donald, I didn't mean Jon Secada. I mean, just E-mail the guy or something if you're still man-crushing about him!!!