In the third year of your physics degree you will take what is called a Skills Elective. If you are doing the MPhys, like me, you will take one of these, but if you are doing the Bsc you will take one in semester one and another in semester two. The point of the skills electives is, as the name suggests, to help you learn a new skill. You get to pick from the following list: Python (a programming language); Astrodynamics and Mission Simulation; Numerical methods in C; Group Industry projects; Electronics; Introduction to Physics in Education; Group Education projects; Lean LaunchPad: Evidence Based Entrepreneurship; and Group Business projects. I am going to be honest I don’t know what most of those are, and I can only speak for my experience on the skills elective I took: Python. However, don’t worry, when you are choosing your special electives you are given a document which describes each one in detail.
I have to say I think the skills elective module is the most helpful thing I have done in my degree so far. I plan, after uni, to do a PhD in theoretical astrophysics and I know, from my tutor, programming is a very important part of this. However, I would say learning programming is just good in general since so many jobs now include programming.
The python module is very well structured. You are give tasks that are split up into sections, each section is on a new topic and contains roughly 5 tasks each. As you work your way through the sections the tasks get longer and harder. What I was surprised about was the creativity it required to do programming; it really tests your problem solving skills. In total there are 12 sections (I am currently on 11 with two weeks to go), but section 12 is more open ended and many of the supervisors assured us not many people complete it. Section 12 asks you to make a game called ‘Slugz’ similar to the game worms. This sounds very hard, but I hope I do get to it so that I can at least give it a go.
You are marked on the number of tasks completed as well as the quality of your section twelve (if you get that far). But, don’t worry completing all the sections before twelve gets you 81%, but completing section 12 shows you have a deep understanding of python which is what earns you the top marks.
Python sessions are scheduled for 3 hours each week, but you can work on the tasks in your own time. They are supervised by both teaching staff and PhD students who are extremely helpful and mark your work as you go along.
p.s. Be prepared for a lot of Monty Python reference; they are scattered through out the tasks.