- Feature Articles
- CodeSOD
- Error'd
- Forums
-
Other Articles
- Random Article
- Other Series
- Alex's Soapbox
- Announcements
- Best of…
- Best of Email
- Best of the Sidebar
- Bring Your Own Code
- Coded Smorgasbord
- Mandatory Fun Day
- Off Topic
- Representative Line
- News Roundup
- Editor's Soapbox
- Software on the Rocks
- Souvenir Potpourri
- Sponsor Post
- Tales from the Interview
- The Daily WTF: Live
- Virtudyne
Admin
Now I know how to get free coding done ;)
Admin
Admin
The other possibility, of course, is that he decided to write his answer according to his opinion of the questioners. In which case, he has just had very much the last laugh...
Admin
Admin
Admin
What the WTF? I would rank the answer for first question pretty good, second is admittedly a bit lazy, and third question doesn't make much sense. So, so compared to average responses I would expect for this kind of quiz, I would not say those to be WTF responses. Instead - Word documenent - hey come on!
Admin
The questions #2 and #3 are ambiguous enough to make the questionnaire itself a WTF. #2's text says "...print all the courses" and "print 'committee' if more than two". Then the 'suggested output' goes on to print a dynamically extended table. "Confusing? Our best systems designer wrote these questions himself!" Would you take the job? I wouldn't.
Your objective in #2 is to "create a query which will print out...". With cases. The traditional way for non-wizards would be to make a generalized query, then use another language (say, PHP or Java) to actually sort and print out. And how the hell can you make a SQL (okay, we don't know it's SQL) query that "prints out" anything, anyway? In my experience SQL queries just return the data to whatever application that wants it.
To answer #2 I'd just make a script in a random language (they seem to like Java so pick that). If they complain, just ask THEM to make "a query" that prints out anything. On the spot. If they manage to do that, you'll have at least learned something. If not, you'll get to watch your interviewer squirm. No wait, their usual answer would be "I don't work with that" or "I don't actually write code".
Moving on to #3. You have to "locate the original object via the contains method on the HashSet". Okay, contains(Object o) as defined in HashSet returns true if o is in the hash. And you're not allowed to use the original object as an argument. The only function you're allowed to use is contain() so just make a new object (coincidentally containing the same information), use that to get 'true'. Bingo, you've found that o is in the hash. Sure, it's retarded, but so is the question.
That said, I also agree with the view that the candidate should have approached the problem more in the sense of "There are many possible answers, here's one:" instead of "There are many possible answers." In any case, he most certainly deserves an interview. He's honest in admitting that he doesn't have enough experience to create a cased query that (apparently) uses ERQs to print out stuff and he can actually spot inconsistencies in design even when he's not familiar with the methods. How are any of those bad qualities in an interviewee?
All in all, the original WTF article was totally unfair to the guy. He did his best, was honest and provided the most important answer "If I don't know it, I can look it up". I seriously don't see how he can be qualified as "clueless".
Admin
Rethinking #3, let me back up a bit. Yeah, the point would be to have some sort of identifier in the object, so that it returns true when a certain type of object is passed. It's a tricky question and easily reveals if the candidate has actual experience in either HashSets or general information flow.
It still doesn't excuse the horror that is #2.
Admin
Admin
Granted that question #3 could be worded a bit better (such as "determine whether an object is in HashSet without using the same instance that was added to the HashSet") to indicate that perhaps equals (as well as hashCode) should be overridden...
But how do you excuse the following gem?
"To actually “locate” (i.e. get the reference pointer) to the object in the HashSet instance, you would need to get its iterator and then iterating through the Iteration."
WTF???
Admin
Eclipse is quite good, but I am not sure if there is a Windows port for it. If only I did more Java coding I would be able to give you more than "it works well for me" and actually tell you some of the useful features. :)
Admin
It's just not worth trying to have half a conversation online, I swear.
Admin
There is a windows port for Eclipse, and it is the best free Java IDE I've ever used. My preference though, when I can afford it, is IntelliJ.
And yes, I should have overridden hashcode() too. But in my defense, I would never USE a hashSet for storing a simple string and int. Using the equals(..) method would be quick, simple, and would demonstrate the level of familiarity with OOP that a interviewer is trying to ascertain(I hope).
Also, "override" is the proper terminology. As the intention is to extend Object() to create a String&Int() object, the "contains(Object .. )" method will allow the passing of the String&Int object natively without having to create a special "contains(String&Int ..)". If I had to create a special contains(..), then it would be overloading.
Besides, contains() is a part of the hashSet class, overriding it would require extending and modifying hashSet, which I think would be against the intention of the question. But to each his own.
Overloading - multiple methods of the same name, but different input and/or output declarations Override - in a new class where an existing class is extended, substitutes the existing method with a new method, while preserving the same input and output declarations.
Mmmm. Waffles...
Admin
All I was saying is here's a question about children and parents. Think before you blindly answer the question with the example answer from 'Programming Microsoft Access for Idiots' and consider the possibilities this situation could create. And think further than the length of your nose. What if the question is correct, but the client later finds out 'you don't understand, more than one parent is possible'. What good is your grape then?
Conclusion: code monkeys like grapes.
Admin
Admin
I am actually the Lee Burch that originially submitted the crazy answers to the questions I got. Actually the post made on WTF was heavily edited the original is much longer and in my optinion far funnier.
http://leeburch.is-a-chef.com/wtf/wtf.doc
Admin
Admin
Just to be clear I wrote the questions not the answers.
We do the written questions first to weed out folks like him. So I never spoke to the guy. People may feel this is not generous but I have seen dozens if not hundreds of these, at a certain point you can tell with fairly high certainty if someone is a waste of time or not.
There have been those that have said an IT architect does not need to demonstrate such skills on a daily basis, and I would say they are sometimes right (although I as an architect will often need to explain in detail the finer technical points with more junior resources). However at my company we belive IT architects much still be able to function at a basic level in their technology of choice, after all this was not a closed book test he had 24 hours and all the web resources in the world with with to solve these simple problems.
How would you feel if you went to the doctor with a problem and upon examing you he stated that how to fix what was wrong was in a book and left it at that.
Admin
Okay, I'd like to see you write a database query that prints stuff out.
While I agree that the applicant discussed is not exactly prime material, I could (and will, if someone wants to) make a serious case that this while exact applicant may not have fulfilled the weird requirements that this test might have had, that he at least deserves an interview for at least pointing out the problems. If not, I claim that your evaluation criteria are unfair. Please see my previous post for details.
Yes, but that's not really the problem. The problem is that you or someone directly under you sent the problem to TheDailyWTF, without addressing the horrible inconsistencies and ambiguities in the original questionnaire. No matter how big and high and mighty you are, we all started from that unenviable position of trying to apply.
You decided to ridicule someone who made an honest effort. Honestly, I don't like that. You burned a fellow geek who was trying to get a job, who was 100% honest. Okay, he didn't give an actual response. So what? You still burned him.
How would you feel if you were the doctor, and someone came to you saying that he had these exact symptoms and he required this particular treatment while both assumptions were completely false? You're again being unfair to your applicant.
Admin
Your the guy who originally submitted those answers aren't you! Kidding! (maybe)
If you happen to be the sort of fellow that reads "create a query which will print the all the courses" and can't get out of it that the task is to write a SQL query and instead gets caught up in arguing the semantics that the query you create does not print anything but instead it is the tool that executes the query that does the printing then I also thing you are not the sort of fellow I would like to put in front of a client. If instead you provide an answer and make a note at the end of it that technically it is the tool which displays the result of a query that does the printing that might be a little better approach.
I will mention this because I tend to think you might not be too familiar with the recruiting process, it is a game of numbers. With tens of thousands of posted resumes, thousands with relevant skills, you need a way to narrow down the field. If you happen to not like to answer simple questions or perhaps if you like to argue semantics than try and meet the expectations of the interviewers then likely you are not the right man for the job.
Also, His name was removed so I am not sure I see how anybody got burned here. Anyway you are on WTF, did you really expect the posts would all praise the glory of the programmers? Have you read any of the other posts here?
Admin
Ren... let it go. You're embarrassing yourself.
Admin
Well, as I said in my first post, I agree that he should have provided at least one answer. I was mostly annoyed by the amount of posts ridiculing the applicant, and I lashed out. I apologize, you weren't a part of it and I shouldn't have lashed out.
However, you should be the first to agree that the questions themselves are ambiguous. Sure, you're looking for the people who can see through the fog, but... okay, I've never tried to weed out the few people in the several hundred emails I get, I guess I overreacted. I guess seeing through the fog is enough.
You're also right about the name being withheld. If he reads this article, he might get slightly embarrassed, but that'll probably encourage him to write better resumés in the future, and that'll be better for everyone. Meh, no one loses.
But I still maintain that he did try to answer the questions (okay, the long generalization about work applications was a bit thick, I'll agree) and that he provided a reasonable thought progress for someone with little experience in the matters.
Also, if you read my posts, you'll probably find that while I argued the semantics, I offered to create varied examples. While I didn't write them out, I wasn't applying for the job and was mostly following the feel of previous posts. If you'd like, I'd be happy to paste in two java classes that fulfill #3, but I still maintain that #2 is better answered with a mediocre query within context (say, PHP or Java) than one brilliant query.
Admin
I don't like people ganging up on someone who's just trying to get a job. I maintain that he was honest, if not competent. I also belive I put out two points: The questions were ambiguous but he still should have given a proper response to the questions. When applying for a job, the applicant is always wrong. Do you think that's right? Or fair?
If you think that standing up for the one who made a fool of himself, but was being totally honest and at least trying is embarrassing, I feel sorry for you.
Admin
Admin
On the query (question 2), I came up with:
select CourseNo, case when (select count() from dbo.courseinstructors c3 where courseno = c1.courseno) < 3 then Instructor else 'Committee' end as Instructor1, case when (select count() from dbo.courseinstructors c4 where courseno = c1.courseno) = 2 then (select max(instructor) from dbo.courseinstructors c5 where courseno = c1.courseno and not instructor = c1.instructor) else null end as Instructor2 from dbo.courseinstructors c1 where instructor = (select min(instructor) from dbo.courseinstructors c2 where courseno = c1.courseno)
I tested it, and it gives the desired results. Execution plan is a mess, but the test table I created only had 6 rows in it, and I didn't bother with indexes, primary keys, etc. But the sample table structure was pretty bad for that kind of thing anyway (it's got serious normalization issues unless each instructor only deals with one class, for one thing).
Admin
God help us - are these people for real?
Talk about completely missing the point. I think there are plenty more such 'candidates' out there, by the look of this.
I really hope I never have to apply for a job where ThePants999 et al are the interviewers.
Admin
And another comment had this too.
Problem with this is that if you try to store a derived class (one that extends Dude) in the HashSet, this will return false, even though you may want to return true if the rest of the equals code is true.
Admin
Addendum (2007-08-02 00:21): Impeach Bush Impeach Cheney
Addendum (2007-08-02 00:23): Can't edit? Darn... Well, try this one.
http://impeachcheney.org/
Admin
That's not true. The "instanceof" check will return true for any subclass of Dude, because the subclass "is-a" Dude. Proof: Any Java object is an instanceof Object.
You may be confusing this with:
This would return false for subclasses of Dude, because the instance would be of a different class. Sometimes that is what you want. In this particular case it's moot because I intentionally made the class "final" to preserve its immutability -- you can't extend Dude.
Admin
Except the question was for a TREE
Admin
Hey. There are two big idiots. First one is a person who created those stupid questions. And second one is a person who didn't told to first one to kiss his ***.
I would never work with a company like that. Guy who is searching for Architecht is totally insane.
Admin
Hey Valdimir, you looking for a job? We have been looking for someone who combines your good attitude and superb language skills for months!
Admin
Tree in relational database? How about:
PrimaryKey Stuff Parent 1 null 2 1 3 1 4 2 5 2
where Stuff represents data about the record and Parent is the unique id of the parent node with a null value if this is the root.
Admin
penis penis penis penis penis penis penis nerd geek penis fatfuck geek penis
Admin
To the people saying "word document, wtf?".. I think that is the point.
Admin
This should work (I hope...):
select c.courseno, [instructor1]= case (select count(*) from courseinstructors where courseno=c.courseno) when 0 then null when 1 then (select instructor from courseinstructors where courseno=c.courseno) when 2 then (select top 1 instructor from courseinstructors where courseno=c.courseno order by instructor) else ‘committee’ end. [instructor2]= when 0 then null when 1 then null when 2 then (select top 1 instructor from courseinstructors where courseno=c.courseno order by instructor desc) else null end from course c order by c.courseno
Admin
I wish I could guess to answer the same to those students who have interviewed me the last time. The problem is that having 15+ years of programming experience I have never designed a tree. Believe me or not, never! Especially a balanced binary one, which I was asked to design in C# during this interview. All the time I'm dealing with sending documents from BizTalk to MOSS, handling transactions, tracing SOAP calls etc. There are no trees on my lawn. Surprise eh?
Admin
Loving the Transit SQL post from the recruiter!! Sometimes recruiters just don't know anything about technology. I once was trying to explain to a recruiter that I had good knowledge of Analysis Services 2000 and 2005. He was like, yeah, but do you know SSAS?! I'm like it's the same friggin thing, don't you wonder what all those acronyms mean?!
Admin
When u sign in on MSN wot happens if it keeps not responding i get so annoyed with it can u help me i dunno wot to do!!!
Admin
[quote user=You Get What You Ask For"]Damn thats a hard image to read! Just what I need to see when trying to read black text on a white background.. a bunch of rainbow-looks-like-an-anti-aliased-jpeg garbage image.[quote]Why don't you just buy an LCD monitor?
Admin
It reminds me of one applicant I interviewed. This person was unique in such a way that he answered ALL my questions with a SINGLE sentence.
"I don't know the answer right now, but if I was in front of a PC I can Google the answer in 5 minutes"
Admin