On Fri, 21 Sep 2007 10:14:51 -0500, Mike Andrews
<[EMAIL PROTECTED]> wrote:

>As with any of these kinds of discussions, it's very polarized and I agree
>with some against these kinds of tests.
>I do regard them as silly.
>I've had one once where I would had to write out SQL on paper to
demonstrate
>my knowledge of sql coding.  To me this is quite inane.
>In the "real world" of programming I will not be using paper to write SQL,
>nor will I not have access to parsers to help me make sure my code is
>accurate.
>I've also had some where I would have to hand write code on paper in VB.
I
>really want to know what purpose any of this serves?

I quite agree....I was thinking about giving a simple question.....and
then allowing the candidate to have a PC, with C# compiler, internet
access and away they go.....doing it on paper is, as you say pointless.


>I would much rather someone ask me some technical questions to which I can
>answer from my knowledge than have me write down some "silly" algorithm
that
>I wouldn't normally do in "real life" anyway.

have you never had to process things in loops?

I was not going to do the tests as a replacement for the sort of questions
you propose below...*but*....I learn from my mistakes....I have employed
people who while technically knowledgable, are not technically able....I
want the able ones....knowledge can be acquired.


>
>For instance how about these framework-style questions:
>
>1)  Can you tell me the difference between "by reference" and "by value"
for
>method parameters?
>2)  What does the params keyword do in a method?
>3)  What is a class?  What is an interface?  What's the difference
between a
>Class and Object?
>4)  What is generic convergence?
>5)  How can you use generics to reference "your" class type in the class
>itself?
>6)  What is threading?
>7)  How can you implement a background thread?
>8)  What is a listener?
>9)  What is remoting?
>10)  What is a monitor?  What's C#'s generic way of using the Monitor
>class?  What is VB's generic way of using the Monitor class?
>11)  How do you implement asynchronous programming in .NET?
>12)  What does a Using statement do? (requires two answers)
>13)  What does the default C# keyword do?  How can you use it?
>14)  Is multiple inheritance implemented in the Framework?
>15)  What is polymorphism?  Encapsulation?
>16)  How do you create an event in C#?  In VB?
>17)  What is a delegate and for what is it used?
>18)  What are the benefits of Generics over non-generic programming?
>Limitations?
>19)  What is a dictionary?  How do you use it?
>20)  Does the graphics object need to be disposed in the Paint event of a
>control?
>
>I think someone that's able to answer these types of questions
>satisfactorily might demonstrate the ability to think and reason and
>really work on the task at hand over someone who can reverse a string.

I disagree....I think they demonstrate knowledge....the sort of knowledge
one gets from forums like this.....they do not demonstrate the ability to
think....just to recall.

>I suppose it all boils down to personal preference though.
>I don't believe that a test asking me to reverse a string in place or
>whatever is a true test of my abilities as a programmer.

I agree that includes beign able to design, communicate, research,
analyse, listen, learn......etc.

> If someone can
>answer those for me, I'll know right away that they have studied the
>Framework and have taken the time to learn over someone who can pull some
>"generic" algorithm out to fit the particular test.

see

http://www.joelonsoftware.com/articles/fog0000000073.html

The problem with asking such questions in technical forums is that they
value technical knowledge....the questions presumes that innate ability is
more important.....so I've probably got what I deserved.

>
>On 9/21/07, Frans Bouma <[EMAIL PROTECTED]> wrote:
>>
>> > On Fri, 21 Sep 2007 15:40:24 +0200, Frans Bouma <[EMAIL PROTECTED]>
>> wrote:
>> > >> Well, if it's for a junior programmer they might not have a lot of
>> design
>> > >> experience, so asking them to solve a coding problem working it out
>> in
>> front
>> > >> of you, and thinking out loud, will reveal a lot about how they
>> think. So
>> I
>> > >> wouldn't call this "stupid" (in fact I think that's uncalled for).
>> > >
>> > >        The tests are IMHO stupid because they:
>> > >1) could make you not pick the one you should because the daily work
>> the
>> hire
>> > >will do is different than writing little routines which are already
in
>> the
>> > >framework
>>
>> does the question get harder if a method doesn't exist in the framework?
>>
>>        I think your employee will write code ON TOP OF the framework,
not
>> the
>> framework code itself or tiny routines already there. So code working
with
>> the
>> framework is often different than code which should be in the framework
or
>> a
>> tiny routine.
>>
>> (your example was in fact *not* an example or reversing a string in
place)
>>
>>        Indeed. I didn't do it in place. But it's not possible to do it
in
>> place, as in C# strings are immutable. :) Did you think of that btw?
>>
>>        So I failed your test and you would not hire me. See how silly
this
>> is? :)
>>
>> > >2) could make you pick the wrong person because you think his string
>> reversal
>> > >goo was excellent while he'll fail miserably designing some classes
or
>> writing
>> > >some basic OO code.
>> >
>> > the point is if he *cannot* write the function......if he cannot
reverse
>> a
>> > simple string then what does that tell us?
>>
>>        that he can't reverse a string. Though I don't think the person
>> would
>> draw a complete blank stare, so there will be thoughts of solutions.
THOSE
>> will tell you more. I'm with Per, you should talk about various .net
>> elements
>> instead.
>>
>> > Again it would seem to be the claim there is no correlation between
>> > programming and the application of basic algorithms.
>>
>>        programming is about writing algorithms, not about typing code.
So
>> I
>> don't think I can agree with your conclusion that I would claim what you
>> say I
>> claim. All I say is that if you test a person if s/he can cook up a
given
>> algorithm that it would tell anything. I say: no that doesn't say
>> anything.
>>
>>                FB
>>
>> ===================================
>> This list is hosted by DevelopMentor(r)  http://www.develop.com
>>
>> View archives and manage your subscription(s) at
>> http://discuss.develop.com
>>
>
>===================================
>This list is hosted by DevelopMentorĀ®  http://www.develop.com
>
>View archives and manage your subscription(s) at
http://discuss.develop.com

===================================
This list is hosted by DevelopMentorĀ®  http://www.develop.com

View archives and manage your subscription(s) at http://discuss.develop.com

Reply via email to