- 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
It's like the people who try to be witty about it always end up looking stupid.
Admin
LOL!
Admin
Obviously the former wife of Mr. Bean.
Admin
In an interview, ask them to write a standard for loop on some array.
If someone applying for a programming job cannot write a for loop, they have no business in a programming job.
Admin
A really good idea. Although as a candidate I hate them, but interviews really should involve technical testing.
I work for a big US multinational (as a Java contractor, albeit one who can actually code!) and about a year ago we hired a new guy to join our very small and specialised team. We use a custom framework and platform so were just looking for good Unix, Java, Perl and XML skills. My manager hired someone who refused to tell us where he'd worked before (very odd) and despite having Unix on his CV, I found myself having to teach him to use basic commands like ls. Talking about pipes got me a very blank look. He was fired within a week, but I just can't believe we hired him in the first place!
Admin
Quite the contrary. I've experienced interviews where everything was about knowledge of tiny details like that. As soon as I didn't have the exact answer, the interview was over.
That seems to be ever more the norm in Europe and the US now that it's once again an employers' market and companies can again make impossible demands on candidates.
After all, they can always pull out a can of Indians or Romanians instead.
Remember the days in the mid/late '90s when they were asking for 10 years' experience worth in Java and Windows 2000? They're back.
Admin
Your problem for not having alarm bells go off when he refused to tell you where he'd worked before...
Would you instead go asking people for minute details of your custom framework (yes, I've seen it happen)? That would ensure noone passes your interview except MAYBE people currently working on the team.
You'd never hire me as I always do terrible on such "aptitude tests", despite doing quite well in my work.
I've seen total failures do very good on them though.
And you'd likely hire one of the guys I used to work with. He did very well on interviews, was extremely slick.
He knew all the buzzwords, and even knew enough about them to make people believe he knew more than just the words.
But his entire CV was a fabrication (as we found out after 5 years, he fooled everyone for that long). His diplomas didn't exist (he'd claimed they had been lost in a housefire), his employment history was greatly exagerated (but impossible to track down as none of the companies existed anymore, something he has in common with me).
Only when a customer found him lacking even basic skills he claimed to have and threatened to sue us for faking his CV was he investigated and were attempts made to find his education history which turned up none of the schools or universities he claimed to have attended had ever heard from him.
He'd have passed your interviews, probably done well enough for a while too, until he wouldn't have someone to fall back on.
Admin
I wonder how the weekly status meetings went. First few months; sounds like 8 meetings, at least. I've never had specs that I didn't have a question about. I've never been in a project where I didn't have to elaborate (during any meeting) to some detail how I solved a problem/issue/whatever. If the specs are that clear, it should be fairly easy to pin-point progress, so, what happend?
Admin
Unfortunately I wasn't allowed to help out in the interview process, being a contractor. The refusing to tell us where he'd worked before happened on his first day in the office. We certainly wouldn't have asked any questions about our framework and platform for the very reason that no-one would have a clue.
And note I didn't say aptitude tests. I said technical tests. Like being asked to write some code, do some basic stuff in Unix, make the candidate prove that they really do know XPath. Simple, easy things that anyone who hasn't lied on their CV can do. I can't abide general aptitude tests because they don't give you any meaningful information about a person.
Admin
"Charm?" Is that what you call it?
Admin
Regarding your second paragraph--I knew people like that too, and I eventually reached the point where I stopped providing freebies like that. It's only enabling, and it's not fair to them. If they're not cut out for it, better they learn while they can still hopefully change their major, rather than get fired a few times.
Admin
Grr. I got yer WTF right here, and it's the fact that the forum software omitted what I wanted to quote, which was this, from Whatever.:
Admin
It's no problem to get far in anything if you always cheat.
Admin
I never bothered.
It is in the textbook.
I did not have that problem. I was prepared to help people and I did so, but I resisted any efforts by them to make their homework my problem. You have to watch it. There is a certain point where you are simply enabling them. I also ran into this in the writing centre where I tutored. No, I will not give you the answer. You work for it.
Sincerely,
Gene Wirchenko
Admin
I'm TI (teaching intern; similar in responsibilities as a TA except I don't have to grade and I'm an undergrad) for the second semester programming class at my college, and do things similarly. I almost always will sit down with someone and make them reason through how to solve it, asking questions intended to lead to the answer, but not detailed enough that they make it too easy. Sometimes if there's multiple ways to do things I'll explain both ways and the pros and cons of each way and let them pick which way they want to go.
Admin
<font size="2">Send Paula picture! =)</font>
Admin
My favourite question when tutoring is "Why do you say that?"
Sometimes, there is a bit of training time. "No, I did not say you are wrong, but why do you say that?" I want your reason. There is quite a difference between "That is what it says in the book." and "That is what it says in the book, and from what happened in my earlier projects, that makes sense." There is also, "I am guessing. I think it has to be around x because of y, but I do not know how to narrow it down further."
Sincerely,
Gene Wirchenko
Admin
I don't think they ever left. I think it's only getting worse. In 2003, I saw a job on Monster.Com for a windows
admin needing 5 years of experience with Windows2000.
Not that I wanted the job (windows, eww :D ), but I kindly wrote them an email stating that they would never find such a candidate as Windows 2000 came out in very late 1999. Sooooooo... they might want to consider revising their job ad.
I ACTUALLY GOT A RESPONSE. The woman commented I was the only person to point it out... and that "touche' " and that she would have it changed immediately.
Interestingly, she also did not ask for my resume, if I was available or if I would like to interview for the position.
Because I can ALSO tell you that company owners SAY they want to hire people smarter than them (I've seen it quoted in magazines) but that's never the case. It's because they hire managers, and managers NEVER want to hire people smarter than them. Makes 'em look bad.
:)
-Ben
Admin
Giving people my code always made me nervous. Where I went to school, the C.S. department was paranoid about cheating, to the point that showing ANY code was cheating (if they decided that you had cheated, you failed the class, do it again and you're no longer in school).
I solved the problem of people wanting to look at my code by not being there when they were coding. For most projects we got at least a week to complete it. So I'd just do it ASAP and try not to be there the night before it was due (which is when most people want to look at my code).
Other than that, I tried to have an open meeting before I got down to the actual coding of the more difficult projects, where my classmates and I could talk about different ways to get the project done (in broad terms, which the teachers had no problem with). If you were lucky, the teacher would show up and ask questions.
cg
Admin
No-one else has pointed it out yet, so I will. This forum tends to have a higher-than-average sarcasm level... you may wish to keep that in mind as you read the posts.
Cheers,
Taryn
Admin
Ouch, I was never pestered that much. But then I made it pretty clear up front that I was not in the mood to help people that just wanted to have their homework done for them. I'd happily answer general questions where the person seemed genuine, though. Still I have ot admit that I was pretty stereotypically geeky and didn't socialise much with the CS students... I guess keeping to yourself has some advantages.
The down-side was that I had a lot of trouble learning the general-knowledge stuff that everybody else seemed to just get... I could always ask a tutor about the subject-matter, but nobody taught me how to, I dunno, view an image under unix, or whatever... all the incidental stuff that most people assume you can already do once you have a degree - I never learned until I was on the job.
Admin
I do something sort of similar, except my questions tend to be more focused on the code and less how they came up with it. Like "what's that supposed to do?" or "why is that there?" I'll often plop a "that's right" or a "that'll work" in there to not freak them out.
I think I'll try to go more for the how they got there questions in the future. Though it can sometimes be difficult, because when I'm doing this stuff are at bi-weekly (wait, is that twice a week or every other? I mean twice a week...) help sessions, and when stuff's due soon we get (1) a lot of people and (2) people who come in the night before it's due and go "okay, how do I start this?" on projects that I question if I could complete in 3 hours, having done them myself already. And then have problems with, say, a for loop when we're talking about recursion. Ah, good times. ;-)
Admin
I do that as well. It depends what level the discussion is at. It appears we operate similarly.
Sincerely,
Gene Wirchenko
Admin
Yeah... I still don't believe it. This WTF can't be true. Nobody can spend "a few months" on coding a solution and come up with only 6 lines. At least, I hope not...
This WTF reminds me of the recurring nightmares I had after I graduated from college: I had a class that I couldn't find or didn't go to and finals came up and I hadn't studied at all.
Poor Paula Bean had to live my nightmares. I hope that she had underwear on, at least.
Admin
This story has given me great inspiration. Just when i thought *I* was beginning to write obscure code (which none of it has shown up here, thank God) i am shown a brief glimpse of a higher glory.
Long live Mel!!
Admin
I had a teacher whos fav. question was 'are you sure of that?' and 'but is there a BETTER way to do it?' -- even if i was 100% spot on the first time.
we once went on for 2hrs discussing other options, and at the end of it all, we agreed that my way, which i had said 5mins after he posed the problem, was indeed THE best way anyone could come up with.
If it taught me anything, it is that i should go with my initial instinct and not waste time trying to find a 'better' way. i AM right. and yes, i AM sure. why? you tell me once I have finished it and YOU have thought about it.
Admin
I have to agree with the other people who say that if this did indeed happen, the greater WTF is not Paula, but the project team leaders who never checked up on what she was doing. You gave this woman salary for six months, and you didn't once ask for a demo, some junit test cases, some proof of how her code would integrate with the rest of the system?
While we love to bash specific languages here, in my experience projects fail for the following reasons, in order of importance:
Admin
Isn't one of the first posts (by Gene Wirchenko) saying that already?
Admin
I intended this sentence to be a reply to the assuption, of Ytram at the end of page 1, that Lon Varscsak is the first to realize that brillant is written wrong.
Admin
Yeah, the boss should be fired.
Admin
Multi-thread threads, such as on slashdot, should be destroyed because they're an unwieldy and unbrowsable labyrinth of posts.
The sane thing is to append so that a thread is indeed that: a thread. All decent online forums do that.
The insane thing is to include a 'reply' button on EACH AND EVERY post.
When in doubt, click 'Quote'.
Admin
To be fair to <FONT color=#555555>Gene Wirchenko</FONT> he was the first to point this out.
Take a look at the FOURTH POST.
"If debugging is the process of removing errors, then programming must be the process of inserting them!"
Admin
i wonder why nobody mentioned iterators yet?
6.times do
stuff
end
or
[0..5].each do
stuff
end
Admin
I only once did someone's homework. In my final year a girl (I'm still not sure if gender was relavent) got me to help her with some intorduction to C stuff. Write a function to find the length of a string [write strlen()]. So I wrote a recursive function that used the ?: operator, and relied on x++ doing a post-incriment (or may it relied on the pre-incriment, I can't recall). Something that if she handed in would make the professor go WTF, and call her in, knowing that either she got someone else to do it (beginners course remember), or administration wouldn't count her 10 years of C experience as credit to skip the class.
Actually I left a off by one bug in there intentionally, so even if the professor wasn't paying attention, handing it in would cost some point because it didn't work. Debugging it of course would get her to the point where she understood when the program was doing.
Admin
okay, when posts fail validation, the forget their reply-status?
this is a reply to the "GOTO"-discussion
Admin
This must be post of the year. There are other posts that made me laugh harder, and still others that got my keyboard/monitor messier. However the Brillant Paula Bean has entered the collective mindshare like nothing else. Therefore this is the WTF of the year.
Admin
<font size="1" style="font-family: verdana;">
<font size="2">Ah, it all makes perfect sense now: Gene Wirchenko == Eliza!
Insincerely,
Brian Boitano
</font></font>
Admin
Was this Rainer Typke? Sounds all too familiar ;-)
Admin
what is wrong with implicit constructors?
nothing.
Admin
WTF Lon was not the first to pick up on the misspelling!!!
Admin
To be really fair, I was the first in this thread. It was mentioned first in the original thread.
Gene WirchenkoAdmin
Yeah, the CS industry is consistantly shooting itself in the foot with the Big College Project. Because the Big College Project isn't really all that big, one person solves the problem and the whole class cribs it and there's basically no way to detect it, if they're clever cribbers.
One of the reasons -- there are many -- that I opted for a rhetorical theory rather than a CS degree in college was that I knew what I was doing. Which is a problem -- if CS students find out you know, and can solve, their problem, they use all manner of tactics to sweat it out of you. For example, in my logic design class, I did 15 labs every week -- which usually meant doing mine last, and alas, shoddiest. I got a D in Data Structures, because I had done the big project for the year completely differently from everybody else and two people had shoddily replicated code I'd stupidly left in the temp drive of the mainframe. And computer architecture I should have failed outright, because I never completed a single lab write up...I was too busy acting as an adjunct TA.
The real way to teach CS, and to grade CS, would be to give every student a conceptually similar but fundamentally different task. Yeah, you can re-use them from semester to semester, but right now all we're testing is a student's ability to parrot and crib -- which is precisely why there are so shoddy programmers, and so many overstressed, overworked people supporting them.
Also, I'm shocked at how many people I know who have CS degrees but "don't want to program." Da hell? We can't all think up strategies, manage projects and work as pocket dictator IT janitors. Programming is to CS what writing is to a rhetorician and if you don't like it...well, switch to MIS or some other BS in BS.
Admin
I KNEW I wasn't the only one who thought this way. What do we do about it though?
Admin
In Java, there's an implied no-arg constructor, provided that no other constructor is defined.
Admin
No, you can not repeat them from semester to semester. They still get cribbed.
Sincerely,
Gene Wirchenko
Admin
What do we do about it?
Well, we can insist on a fierce hiring policy like the one my company's adopted...pre-screenings, quizes about basic language and framework systems, applied solutions, etc -- all performed off-the-cuff and in person. Failing a quiz isn't a problem, so long as you fail gracefully and know how to find the solution or at least where to start -- and we actually passed on a guy who failed by looking too deeply into the problem and creating a lot of cruft that wasn't in the spec.
It's a tough process, taking hours per candidate. I think it's worth it -- but then again, I passed.
Ironically, even after six years in the industry there are a lot of doors that will remain closed to me because I don't have a C.S. degree, doors which these clowns waltz through. I'd be bitter -- if there weren't so many companies in my area that thought exactly like this one, rewarding works over the grace of a fine resume.
Admin
When I was a grad student and taught a fluid dynamics class, I gave one guy who didn't turn in over 50% of the lab work and failed the final a "D". It's still technically a passing grade. He complained to my advisor (I taught him in my last semester, so I got the call at home after I had already left with my M.E. degree) and I just told my advisor: look, do whatever you want, give him an "A" for all I care, but he doesn't even deserve what I gave him.
That's how this stuff happens.
When people pay to go to school, they feel entitled to good grades and complain if they don't get them.
Admin
Do you really think this is the best solution? For each project, come up with (in the case of the class I'm TIing, based on this coming semester's numbers) almost 100 different projects? And Gene's right, you probably would have to change each semester. You might be able to get away with rotating every, say, three semesters, but I wouldn't do it more frequently than that. Your projects would have to be close enough that they test the same thing and different enough that copying is hard.
Then there's the added strain on the grader and instructor.
I'm not saying it's a bad idea, I just don't think it's workable unless you're a really small department.
And I'm not sure about how best to deal with this. I think I'd be in favor of having to write simple programs on tests. It's a situation where cheating is harder than with HW, but on the other hand there could be some people who don't cheat on the HW and yet would have a difficult time on a timed test.
Admin
The other insane thing this place does (or one of them anyway) is load the separate pages with post messages instead of get. A consequence of this is that if you make a post, it sends you back to the first page in the thread.
(As an aside, the different threading models are good in different situations. Many /. discussions are big enough that an approach like this would be, in my opinion, completely unworkable. I think this site is about the limit of popularity for this model.)
Admin
-Unless- you are getting -tangible- benefits (eg sex or money), -never- do other people's work for them, in class or at work. It reduces the value of your work, either by making it seem commonplace or making you seem less productive.
The -only- reason people do other people's work for them is EGO. And the people who manage to get other people to do their work are exercising a highly-developed social skill.
Also, the manager who allowed Paula to get away with doing nothing for a "few months" is either lazy or (too) busy brown nosing his/her superiors. In fact, the amount if time it takes to review code, to determine productivity and a base-level of competence, is pretty minimal. The review of code, of course, should occur early and often for "unknown quantities".