The Story of My A-Level CS Practicals

I never told this story thoroughly enough and my brother is doing his A-levels right now and it's reminding me of my own adventures. This is the story of my computer science practicals.

For my A-levels, I had 4 CS papers. Papers 1 and 3 are easy and hard theory respectively. Paper 2 is on-paper programming - things like SQL and pseudocode. Paper 4 is on-computer practicals where you write actual code on an actual computer.

Cambridge allows you to use any of three languages - VB .NET, Java, and Python. Python is a recent addition too! I believe it was Pascal till recently. A few weeks prior to the exam, candidates need to fill a form with the language you will write in, as well as the IDE you want installed. Among P4 candidates at my school, there were only 2 of us doing Python. Everyone else was composing in VB .NET as that's the language taught at school - probably because it's easy to write, straightforward, and statically typed.
So the two of us agreed that we would sit with Python version 3.10 and use PyCharm from Jetbrains.

Maybe using PyCharm was a bit of a "cheat" as its autocomplete is very powerful and could probably have written large chunks of our code for us. I did not particularly care, as I used IDLE instead.

On the exam day, we got to our computers, and the invigilators told us to make sure the computer works - the screen is alright, the keyboard is functional, and that the required software is present. I had PyCharm installed, wrote a small "hello world" script, tried to run it, and got hit with "python interpreter not found"!

Now the fun part. The people from the Mauritian Examination Syndicate (big name right?) were very used to installing Visual Studio 2022 which comes with everything you need out of the box for VB. PyCharm, on the other hand, is a text editor; it does not come with the interpreter preinstalled and the setup people did not know that.

My friend and I notified the invigilators, who thought it was a computer problem and moved us to the spares. Unsurprisingly, they did not have the interpreter installed either.

The invigilators were panicking at this point. They were not really tech people and didn't know how what the problem was, just that there was a problem.

It was funny when I told them I can install Python, and they were overcome with relief that they were not actually going to be fired over this mistake. The most incredible part is that they gave me access to the only computer with an internet connection (PCs are disconnected from the internet for the exam) to download the Python installer. I then went between the two computers to install Python (and IDLE). Eventually, we started our exam a bit late, and were given quite a lot of extra time to compensate.

The last laugh is that, in my rush, I had inadvertently installed the offline Python docs, so had full access to Python's extensive stdlib documentation while my PC had no internet connection.