C Board  

Go Back   C Board > Community Boards > Projects and Job Recruitment

Reply
 
LinkBack Thread Tools Display Modes
Old 06-15-2009, 11:06 AM   #1
Registered User
 
JanHruska's Avatar
 
Join Date: Jun 2009
Location: Oxford, England
Posts: 8
Help needed to verify a new on-line C test

Do you have 2 years or more experience of C programming?

I am looking for 50 volunteers to help verify the reliability of a new on-line C test.

Each test consists of 20 multiple-choice questions which can be answered in 30 minutes.

Each participant should take two tests, ideally on consecutive days.

As a "thank you" you will get 10 free test credits on Oxford Score - On-line testing ($100 value). However, note that the contents of the site is under development and you may not be able to use your credits until the content is finalised.

To participate email jan.hruska@logiciq.com and you will get your test invitation by email. To see what the tests look like, take one of the free tests on Tests available

Many thanks.
JanHruska is offline   Reply With Quote
Old 06-15-2009, 11:19 AM   #2
and the hat of vanishing
 
Salem's Avatar
 
Join Date: Aug 2001
Location: The edge of the known universe
Posts: 21,214
> Do you have 2 years or more experience of C programming?
Does that matter?

Because I've met people who claimed far more years, yet were basically still ignorant.
__________________
If you dance barefoot on the broken glass of undefined behaviour, you've got to expect the occasional cut.
Up to 8Mb PlusNet broadband from only £5.99 a month!
Salem is offline   Reply With Quote
Old 06-15-2009, 05:14 PM   #3
Registered User
 
Join Date: Oct 2001
Posts: 2,110
What are "test credits" and why would I want them?
robwhit is offline   Reply With Quote
Old 06-16-2009, 03:47 AM   #4
Registered User
 
JanHruska's Avatar
 
Join Date: Jun 2009
Location: Oxford, England
Posts: 8
Quote:
Originally Posted by Salem View Post
> Do you have 2 years or more experience of C programming?
Does that matter?

Because I've met people who claimed far more years, yet were basically still ignorant.
Sure. 2 years of experience is not a guarantee of proficiency, but it does increase the probability that the person is proficient.
JanHruska is offline   Reply With Quote
Old 06-16-2009, 03:48 AM   #5
Registered User
 
JanHruska's Avatar
 
Join Date: Jun 2009
Location: Oxford, England
Posts: 8
Quote:
Originally Posted by robwhit View Post
What are "test credits" and why would I want them?
See Oxford Score - On-line testing
JanHruska is offline   Reply With Quote
Old 06-16-2009, 03:58 AM   #6
Deathray Engineer
 
MacGyver's Avatar
 
Join Date: Mar 2007
Posts: 3,211
Forgive me for being cynical, but I'm so doubtful about the accuracy of C testing. Sometimes I wonder if the people giving tests know what they're doing.

But yeah, 2 years is not really a long enough time to be proficient at C, at least not for most people that I seem to come across.
__________________
MacGyver is offline   Reply With Quote
Old 06-16-2009, 04:15 AM   #7
Woof, woof!
 
zacs7's Avatar
 
Join Date: Mar 2007
Location: Australia
Posts: 3,139
Plus I don't think testing syntax really shows much, although I'm sure the questions are more than just that :-).

Instead of asking for 50 volunteers, which is really a fair bit, why not just release the questions to the public? Or are you afraid that could damage the test in the future?
__________________
"I.T. gets the chicky-babes" - M. Kelly
bakefile | vim

Last edited by zacs7; 06-16-2009 at 04:20 AM.
zacs7 is offline   Reply With Quote
Old 06-16-2009, 04:20 AM   #8
Registered User
 
JanHruska's Avatar
 
Join Date: Jun 2009
Location: Oxford, England
Posts: 8
Quote:
Originally Posted by MacGyver View Post
Forgive me for being cynical, but I'm so doubtful about the accuracy of C testing. Sometimes I wonder if the people giving tests know what they're doing.
I fully agree that bad tests are not likely to produce valid results. However, I think that I have produced a fairly good test and the statistical analysis which I am undertaking will verify, amongst other things, its validity.

Why not try it?
JanHruska is offline   Reply With Quote
Old 06-16-2009, 04:28 AM   #9
Registered User
 
JanHruska's Avatar
 
Join Date: Jun 2009
Location: Oxford, England
Posts: 8
Quote:
Originally Posted by zacs7 View Post
Plus I don't think testing syntax really shows much, although I'm sure the questions are more than just that :-).

Instead of asking for 50 volunteers, which is really a fair bit, why not just release the questions to the public? Or are you afraid that could damage the test in the future?
Ideally, I would prefer 100 or more since the statistical validity of the findings increases with the number.

On your last point, yes, your conclusion is correct.
JanHruska is offline   Reply With Quote
Old 06-16-2009, 10:38 AM   #10
and the hat of vanishing
 
Salem's Avatar
 
Join Date: Aug 2001
Location: The edge of the known universe
Posts: 21,214
Well I did demo test 1.

Some of the code could be better formatted (or at least with better visibility). I seemed to spend a lot of time just trying to read the code rather than working out what it did.

A consistent formatting style to the code as well would help. Code formatted in unusual ways takes more effort (and time) in just figuring out what it does, before the comprehension has to kick in.

The ticking time is really annoying, and I'm not sure what it proves.

Is say 15 out of 30 in 30 minutes indicative of a better programmer, than one who could get 30 out of 30 in say 60 minutes. Personally (in the work-place), I would much rather value the latter approach. Being fast, but wrong doesn't help anybody.

Take the number of right answers and fit that to one bell-curve, and take the time taken for all the questions and fit that to another bell-curve and produce your composite answer.
With a sufficiently large sample set, you'll have a good idea of how long the test SHOULD take for a competent person, and not the random number of minutes you decided it ought to take.

Measure the time taken, just don't sit there with a stopwatch asking "are you done yet every single second". Sure, if someone is nowhere near finished, and they're past the upper time limit of say 95% of responders, then you might call a halt to the test.

The "do not use a compiler" is a complete red-herring. The effort to get just a few questions up and running would not give the answer in most cases, and burn up a hell of a lot of time in the process. Particularly where the answer is "undefined", you also list the probable answers that common compilers routinely produce as "answers", you'll soon be able to spot those with fast fingers who tried to compile it (they picked a common, but mis-leading answer direct from the compiler), from those who actually know the answer is "undefined".
__________________
If you dance barefoot on the broken glass of undefined behaviour, you've got to expect the occasional cut.
Up to 8Mb PlusNet broadband from only £5.99 a month!
Salem is offline   Reply With Quote
Old 06-16-2009, 11:48 AM   #11
Registered User
 
JanHruska's Avatar
 
Join Date: Jun 2009
Location: Oxford, England
Posts: 8
Thank you for doing the sample test and your subsequent comments.

As you know, the formatting question is a matter of taste and most probably company coding standards. In my experience a good programmer will (and should) be able to read code in most reasonable formatting conventions (but always in a non-proportional font): hence the variety in the questions.

Re the clock countdown annoying you: I felt it was helpful to know how much time you have left, but as it could be annoying to some, I will add the "kill the clock" button.
JanHruska is offline   Reply With Quote
Old 06-18-2009, 05:28 PM   #12
Kernel hacker
 
Join Date: Jul 2007
Location: Farncombe, Surrey, England
Posts: 15,686
I found that some of the questions had a bit of a dubious answer: For example, a program that accesses one element outside the defined range of an array may not crash - it MAY crash, but it also may not.

I didn't do as well as I expected - not sure if that's because I got things wrong because I was quick (I didn't take even close to the full time for either of my two attempts). I got 67% and 81% - I guess that's better than average, but I expected that I'd get better than that, since I'm generally quite good at understanding and spotting things that are wrong. I guess I belong to the category that Salem wouldn't want to work with - fast but not always right

I also think that a relatively large amount of the questions where dealing with undefined behaviour or bad coding - whilst it is important to understand these things, it is not necessarily the ONLY important thing to understand, and a more generic "can you read code" type questions would perhaps make more sense.

--
Mats
__________________
Compilers can produce warnings - make the compiler programmers happy: Use them!
Please don't PM me for help - and no, I don't do help over instant messengers.

Last edited by matsp; 06-18-2009 at 05:30 PM.
matsp is offline   Reply With Quote
Old 06-19-2009, 01:00 AM   #13
and the hat of vanishing
 
Salem's Avatar
 
Join Date: Aug 2001
Location: The edge of the known universe
Posts: 21,214
> For example, a program that accesses one element outside the defined range of an array
> may not crash - it MAY crash, but it also may not.
Well that sums up all undefined behaviour. Even if it doesn't crash immediately, it may have triggered a chain of events which would lead to a crash.
I suppose the tone of that question (I didn't get that one on my random set) would be to see if you knew you could POINT to the N+1 element of the array for comparison with another pointer.
__________________
If you dance barefoot on the broken glass of undefined behaviour, you've got to expect the occasional cut.
Up to 8Mb PlusNet broadband from only £5.99 a month!
Salem is offline   Reply With Quote
Old 06-19-2009, 07:09 AM   #14
Registered User
 
JanHruska's Avatar
 
Join Date: Jun 2009
Location: Oxford, England
Posts: 8
Quote:
Originally Posted by matsp View Post
I found that some of the questions had a bit of a dubious answer: For example, a program that accesses one element outside the defined range of an array may not crash - it MAY crash, but it also may not.

I didn't do as well as I expected - not sure if that's because I got things wrong because I was quick (I didn't take even close to the full time for either of my two attempts). I got 67% and 81% - I guess that's better than average, but I expected that I'd get better than that, since I'm generally quite good at understanding and spotting things that are wrong. I guess I belong to the category that Salem wouldn't want to work with - fast but not always right

I also think that a relatively large amount of the questions where dealing with undefined behaviour or bad coding - whilst it is important to understand these things, it is not necessarily the ONLY important thing to understand, and a more generic "can you read code" type questions would perhaps make more sense.

--
Mats
Thank you for doing the test and your comments. You did very well on a tough test. The average for a large (100+) pool of job applicants on a very similar test would typically be around 35%.

One of the reasons for the "toughness" is that points are deducted for wrong answers in order to discourage guessing. You do not loose points for clicking "pass".

Thank you also for your suggestion for more "can you read code" questions: this has been noted for future development.
JanHruska is offline   Reply With Quote
Old 06-19-2009, 01:34 PM   #15
Kernel hacker
 
Join Date: Jul 2007
Location: Farncombe, Surrey, England
Posts: 15,686
Quote:
Originally Posted by JanHruska View Post
Thank you for doing the test and your comments. You did very well on a tough test. The average for a large (100+) pool of job applicants on a very similar test would typically be around 35%.
But how many of those have 15+ years experience of programming in C and C++?

--
Mats
__________________
Compilers can produce warnings - make the compiler programmers happy: Use them!
Please don't PM me for help - and no, I don't do help over instant messengers.
matsp is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Pointer and Polymorphism help. Skyy C++ Programming 29 12-18-2008 09:17 PM
print line by line from a file SoFarAway C Programming 3 02-18-2005 01:36 PM
Read only one line using seekg RedZippo C++ Programming 3 03-31-2004 11:10 PM
if is faster than switch? skorman00 C++ Programming 32 03-06-2004 01:15 PM


All times are GMT -6. The time now is 01:35 PM.


Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.3.0 RC2

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22