Brainbench C++ test (OT?)

M

Mark (newsgroups)

Hi,

This may be slightly OT, but is is to do with C++. I've been asked to
take a brainbench C++ test with a prospective contract opportunity.
Having been travelling for several months since my last job, I was a
little wary how my current knowledge would be. I also dislike these sort
of tests a lot because I have a poor medium term memory, and find I
forget stuff that I'm not using weekly. This unfortunately reflects
poorly when I do have to take this sort of test. It hasn't stopped me
being an excellent developer (not to sound too immodest), and I've
always been highly regarded at previous positions.

Anyway, I took a practice test today so I wouldn't go in to the test
completely in the dark, and also to get an idea if it was worth me just
forgoing it altogether. It was 40 questions, 3 minutes each, and I
scored decently, 78% (better than 78% of people it means) which is
probably better than I expected, but worse than where I should be if it
was fresh in my mind. I'm just wanting to know how similar the practice
test will be to the "real" one the company has asked me to do. Will the
questions be similar? I even read someone say some are reused. Has
anyone ever taken one of these tests?

Also, since it's a good idea for me to freshen up anyway, could anyone
recommend any good resources for this? Online is great, but a book that
I could read is also good. Obviously there is a lot of stuff out there.

Thanks
 
T

Tuno

I am finding that there is NOT a lot of stuff out there, as far as
online C++ proficiency tests. (I did find a couple of bad ones!)

(I posted a query earlier today for tips on where to find one, but no
responses (yet).)

I can recommend a few texts, available at your local bookstore:

"C++ in a Nutshell" by Ray Lischner, O'Reilly
"Effective C++" by Scott Meyers (Third Edition), this should be
mandatory reading for all C++ professionals
"More Effective C++" by Scott Meyers

I have technical interviews next week and am having trouble finding
good material with which to test my C++ knowledge.

-ted
 
L

Linonut

* Tuno peremptorily fired off this memo:
I can recommend a few texts, available at your local bookstore:

"C++ in a Nutshell" by Ray Lischner, O'Reilly
"Effective C++" by Scott Meyers (Third Edition), this should be
mandatory reading for all C++ professionals
"More Effective C++" by Scott Meyers

Also Bjarne Stroustrop's book!
 
T

Tuno

<snip> Also Bjarne Stroustrop's book! </snip>

Stroustrop's book is useful as a reference and for raising my monitor
a couple of inches, but is a bit too verbose and esoteric for daily
use by regular mortals.

It is however in my mandatory list, along with the Nicolai Josuttis
book, "The C++ Standard Library", one of the few fifty-buckers that's
actually worth it.

-ted
 
M

Mark (newsgroups)

Tuno said:
I am finding that there is NOT a lot of stuff out there, as far as
online C++ proficiency tests. (I did find a couple of bad ones!)

(I posted a query earlier today for tips on where to find one, but no
responses (yet).)

I can recommend a few texts, available at your local bookstore:

"C++ in a Nutshell" by Ray Lischner, O'Reilly
"Effective C++" by Scott Meyers (Third Edition), this should be
mandatory reading for all C++ professionals
"More Effective C++" by Scott Meyers

I have technical interviews next week and am having trouble finding
good material with which to test my C++ knowledge.

Thanks for the tips. I believe I used to own a copy of C++ in a Nutshell
a couple of years back but I must have lent it to someone.

I've browsed Effective C++ a number of times because a colleague had it
constantly sitting on his desk. Very good book and something I've often
thought of picking up for myself.

I still dislike these tests though, I feel some people are just more
natually adept at them than others. It also feels like burning my
bridges with a company if I do badly, whereas face to face interviews
I'm fine with. Still, they're part of the industry now for better or worse.
 
I

Ioannis Vranos

Linonut said:
* Tuno peremptorily fired off this memo:


Also Bjarne Stroustrop's book!

The name is Bjarne Stroustrup and he is the creator of C++. His website:
http://www.research.att.com/~bs


He has written "The C++ Programming Language" book, the latest being 3rd
edition and special edition. The difference of the two currently is the
page cover only. It details C++ features thoroughly, and I think you
must have read this "cover to cover" before considering yourself a very
good programmer.
 
A

acehreli

<snip> Also Bjarne Stroustrop's book! </snip>

Stroustrop's book is useful as a reference and for raising my monitor
a couple of inches, but is a bit too verbose and esoteric for daily
use by regular mortals.

I agree: it's a reference book.
It is however in my mandatory list, along with the Nicolai Josuttis
book, "The C++ Standard Library",

That's an excellent day-to-day book.
one of the few fifty-buckers that's
actually worth it.

One of the most valuable C++ books for me has been Exceptional C++ by
Herb Sutter. I consider that one a must to read. Sutter's other books
are very good too, but Exceptional C++ has been a huge eye opener.

Ali
 
A

Alf P. Steinbach

* Mark (newsgroups):
This may be slightly OT, but is is to do with C++. I've been asked to
take a brainbench C++ test with a prospective contract opportunity.
Having been travelling for several months since my last job, I was a
little wary how my current knowledge would be. I also dislike these sort
of tests a lot because I have a poor medium term memory, and find I
forget stuff that I'm not using weekly. This unfortunately reflects
poorly when I do have to take this sort of test. It hasn't stopped me
being an excellent developer (not to sound too immodest), and I've
always been highly regarded at previous positions.

Anyway, I took a practice test today so I wouldn't go in to the test
completely in the dark, and also to get an idea if it was worth me just
forgoing it altogether. It was 40 questions, 3 minutes each, and I
scored decently, 78% (better than 78% of people it means) which is
probably better than I expected, but worse than where I should be if it
was fresh in my mind. I'm just wanting to know how similar the practice
test will be to the "real" one the company has asked me to do. Will the
questions be similar? I even read someone say some are reused. Has
anyone ever taken one of these tests?

Also, since it's a good idea for me to freshen up anyway, could anyone
recommend any good resources for this? Online is great, but a book that
I could read is also good. Obviously there is a lot of stuff out there.

I recently interviewed for a position with a company that had first
"courted" me to sign as C++ expert, because they are trying to change
over from C to C++ where possible. The last interview (of 3) was about
technical ability. I suspect the company had not-quite-perfect internal
communication because the interviewer asked very basic hardware-oriented
novice-level questions, not anything that could tell whether I fit into
any position as C++ expert/guru/teacher, which was a bit provocative,
and didn't seem to understand all my responses because he didn't seem to
recognize e.g. constructor initializer lists, and told me at the end
that he didn't have to search very far to find someone who knew more
about C++ than I thought I did -- in fact, "Tore" down the hall, who
did Fourier transforms (i.e. implicitly, "Tore" did only math, no C++),
was an example -- and one doesn't say such things for fun.

A Brainbench test would probably have given much more accurate results
for what was asked about, and to guard against the interviewer having
his/her own incorrect ideas about "right" answers and so on, I suspect a
Brainbench test of the interviewer would be a Good Idea(TM).

I took a Brainbench test last last year, and it covered a lot more than
that interview. I thought I flunked it because I knew I answered
incorrectly on a few questions (that I also did on the interview above
;-)), and thought I was very slow in answering (I don't know whether
that counts or not), but surprisingly ended up with "Expert (Master)":

<quote>
Test Taker : Alf Steinbach
Email : (e-mail address removed)

Test : C++
Overall Score : 4.69

Date : 28-Jul-2006
Weights : 100% C++
Elapsed time : 53 min47 sec

----------------------------------------------------------------------



Module : C++
Score : 4.69
Proficiency Level: Expert (Master)
Percentile : Scored higher than 97% of previous examinees.

Demonstrates understanding of most advanced concepts within the subject
area. Appears capable of mentoring others on the most complex projects.

Strong Areas

Basic Structure and Syntax
Class Member Functions
C++ Class
Templates

Weak Areas


None noted
</quote>

Note: I don't think that in reality there is such a thing as "expert" in
C++, with the possible exception of Andrei.

Also, I think it's impossible to answer correctly on all questions,
except by chance, because at least one question had only incorrect
answers. So one must guess a little. But based on that test, which is
my only Brainbench test, I think it's not possible to "read up" on C++
in order to prepare: even if not entirely perfect, the test covers a lot
of ground, and includes reasoning questions where you need understanding
(I hate those questions because I'm very slow at reading code and very
bad at memorizing what foo1, foo2, foo3 etc. stands for, yes they used
such names, except when presented in Visual Studio, I don't know why).

Anyways, I think it's best for both applicant and firm that the test or
interview accurately reflects & communicates the general abilities of
both, not a "read up on it", because a relationship based on incorrect
perception of the other is most probably doomed and can hurt both.

Cheers, & hth.,

- Alf
 
T

Tomás Ó hÉilidhe

Mark (newsgroups):
This may be slightly OT, but is is to do with C++. I've been asked to
take a brainbench C++ test with a prospective contract opportunity.
Having been travelling for several months since my last job, I was a
little wary how my current knowledge would be.


I'd much prefer if the examiner was sitting there beside me so I could:

1) Point out his errors
2) Make sure he understands what I'm doing rather than marking it wrong
because he doesn't understand my methods.

I had a programming exam there about a week ago, and while I didn't dumb-
down my coding, I put in explanations to explain to the examiner what I was
doing, for fear that they would mark it wrong because they erroneously
thought that I was doing something wrong. For instance, I had a function as
follows in one part:

void Func(SomeType param[2])

, but then I drew a big arrow to the function parameter saying "identical
to SomeType *param". I did this so that the examiner wouldn't erroneously
think that I'm trying to pass an array by value. Unfortunately, we don't
get our scripts back unless we actually kick up a storm about getting a
undeserved bad mark.
 
T

tragomaskhalos

I still dislike these tests though, I feel some people are just more
natually adept at them than others. It also feels like burning my
bridges with a company if I do badly, whereas face to face interviews
I'm fine with. Still, they're part of the industry now for better or worse..

I share your disquiet about these tests. IMO the only way to correctly
gauge a candidate is via a face-to-face written test, where you can
see how they work things out, give guidance when needed, and generally
get a real personal feel for the candidate's competence. Automated
tests
do have their place, as up-front bozo filters and, I suppose, to
supplement the face-to-face, but the problem is that HR departments
see
them as a cheap way to seive candidates, which is misguided.

Perhaps the biggest problem with automated tests is that they tend to
be multiple choice, which is great for discovering whether a candidate
has in their brain some fact that they could look up in 30 seconds,
but
is a pitifully inadequate way of discovering whether they can actually
write code.
 
T

tbarta

Anyway, I took a practice test today so I wouldn't go in to the test
completely in the dark, and also to get an idea if it was worth me just
forgoing it altogether. It was 40 questions, 3 minutes each, and I
scored decently, 78% (better than 78% of people it means) which is
probably better than I expected, but worse than where I should be if it
was fresh in my mind. I'm just wanting to know how similar the practice
test will be to the "real" one the company has asked me to do. Will the
questions be similar? I even read someone say some are reused. Has
anyone ever taken one of these tests?

I've taken these tests a few times. There's a limited set of
questions available, so you'll probably see some repeats. My
experience has been that there will always be a few questions that a
good developer won't know, because they essentially test "what happens
when you do something stupid?" The only real use of a BB-style test
is to weed out completely worthless candidates, IMO. Most questions
can be answered with the help of a compiler on-hand, so anyone who
does worse than that either doesn't know or doesn't care. 78% is
definitely in the "this person is worth talking to in person" range.

Some other books to add to the list are Herb Sutter's "Exceptional C+
+" and "More Exceptional C++". After reading those books, I found I
was able to look through GCC's STL implementation and understand the
various tricks they were doing much better.
 
L

Linonut

* Tuno peremptorily fired off this memo:
<snip> Also Bjarne Stroustrop's book! </snip>

Stroustrop's book is useful as a reference and for raising my monitor
a couple of inches, but is a bit too verbose and esoteric for daily
use by regular mortals.

Hmmm. I use Bjarne's book a lot while coding.

And it has some very interesting, and even humorous digressions about
programming (such as Section 24.2.4 Avoiding Programming).
It is however in my mandatory list, along with the Nicolai Josuttis
book, "The C++ Standard Library", one of the few fifty-buckers that's
actually worth it.

I'll have to look into that one. Thanks!
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,755
Messages
2,569,535
Members
45,007
Latest member
obedient dusk

Latest Threads

Top