Advertisement

Programming exams

Started by July 15, 2015 03:56 PM
30 comments, last by Thaumaturge 9 years, 3 months ago
I'm doing a bachelor degree in CS now, and while I generally am pleased with how my university college does stuff, the way they do programming exams is quite frustrating.
Normally in the course we get assignments that we must solve on our own, and then get the code reviewed and hopefully acceoted by the lecturer or a senior student. But on our final exams each semester, all code is written by hand, with pen on paper. This is the only time we write code this way. I just wondered, is this normal? Or have most places moved on to computers for programming exams? I mean, it feels kindof pointless to dot down so much code by hand, when it's not something you need to be skilled at..

I agree to the concept that we should prove what we know though, so just Notepad would be sufficient.. Refactoring just gets so hard with pen and paper.. :)
Programmer of HolyPoly games.

We had to write code on paper only for the very first programming class in college (Java).

Advertisement

The details vary by school and by teacher.

Talk to your teachers about it if the practice bothers you.

If they do require hand-written stuff, I'm sure the instructors are intelligent enough to realize it hasn't been run through a compiler and there may be issues with it; they're looking for concept, not production quality.

As for why they do it, there is one extremely good reason. Unfortunately, cheating in Computer Science has become endemic. Many students will change a few variable names and some line spacing to attempt to get away with it. Others won't even bother going that far, then just cite "the internet" as their source of "inspiration". Various groups have written software that analyzes code based on code structure rather than names and spacing, but it gets many false positives for small programs. Forcing you to write code away from a computer and under the supervision of test center proctors helps reduce that problem.

True..
Although I think a better solution would be to test the programming itself using projects where they could monitor the progress, and have more conceptual questions for the exams.
It went okay for me though, and it was mostly just the two first semesters.

But say you could have offline terminals of some sort for each student. Where would the acceptable line go in terms of computer assistance? auto-closing braces and indentation? Syntax highlighting? I'm thinking auto-imports and auto-completion would be a bit too much :)

Programmer of HolyPoly games.

I just wondered, is this normal?


For introductory courses, very much so, but it's not unusual for 3rd to 4th year classes to have some hand-coding from time to time. After the introductory classes they become much less picky about syntax and it becomes more about expressing algorithms. In my experience the systems programming courses have the most hand-coding and it's mostly in C.

Refactoring just gets so hard with pen and paper..


Are you actually writing enough code that refactoring is necessary in a programming exam? O_o


Are you actually writing enough code that refactoring is necessary in a programming exam? O_o

Well, the ones we had ended up in 10-20 pages of code each.. The one with OpenGL was perhaps the worst.

Programmer of HolyPoly games.
Advertisement

Are you actually writing enough code that refactoring is necessary in a programming exam? O_o


Well, the ones we had ended up in 10-20 pages of code each.. The one with OpenGL was perhaps the worst.


Okay, that I find unusual. Most programming questions I ended up dealing with were at most 2 pages and most were less than a page.


Okay, that I find unusual. Most programming questions I ended up dealing with were at most 2 pages and most were less than a page.

Yeah :/

Oh well. We took it up with the university college, just as all the previous classes have, and now we're done with these kinds of exams..

No wait. I'll get the same in the C++ exam this christmas. And THEN I'll be done with these kinds of exams :)

Programmer of HolyPoly games.


ormally in the course we get assignments that we must solve on our own, and then get the code reviewed and hopefully acceoted by the lecturer or a senior student. But on our final exams each semester, all code is written by hand, with pen on paper.
I've had exams in paper in pseudocode for introductory courses, in Ada and Java, also in paper, with Swing specific stuff, for more advanced courses. They're bullshit. Its because our course plan is bullshit. Simple stuff like linking a library isn't taught because they insist on paper bullshit.

If it is normal, it shouldn't be.

"I AM ZE EMPRAH OPENGL 3.3 THE CORE, I DEMAND FROM THEE ZE SHADERZ AND MATRIXEZ"

My journals: dustArtemis ECS framework and Making a Terrain Generator

But on our final exams each semester, all code is written by hand, with pen on paper.

Our university did this for midterm and final exams, in a subset of courses centring on correct code (i.e. assembly language, compilers and programming languages, and data structures and algorithms). Most courses not centred on correct code didn't include programming in exams at all. They'd either have written theoretical exams, or require final class presentations instead.

I actually think it's possibly the most valuable skill you could practice at university. 99% of programming interviews involve hand-written code on whiteboard or legal pad. Don't be that schmuck who can only write compiling code with an IDE and Intellisense.

Tristam MacDonald. Ex-BigTech Software Engineer. Future farmer. [https://trist.am]

This topic is closed to new replies.

Advertisement