So you want to do a PhD?

After finishing my MSc at the School of Computer Science in 2009, I went on directly to start a PhD here. It wasn’t exactly planned and, given that the process of starting and obtaining a PhD is vastly different in Germany (my home country), didn’t know what to expect at first.
The university offers quite a few research seminars and workshops to get new PhD students off the ground at the beginning of the year, which gave us an idea of what was expected from us. But as with so many things in life, repetition is key, and now – almost 2 years into my degree – I have figured out a few things that I was probably told when I started  my PhD, but didn’t realise were actually essential until later. Here is a list of my ‘Top 10 things I should have done during my 1st year but (sometimes) failed to do’ (in no particular order):
  1. Be prepared & read! Books like How to get a PhD etc. provide helpful advice and get you in the right mindset when you start out. There are also a number of PhD blogs which can give you (often slightly humorous) advice on things like how to get yourself to write, manage your time, prepare research posters, and beyond.
  2. Get involved in your research group early on, know what others are doing. If possible, share knowledge, chats over coffee, tools and code. My work overlaps with other people’s at some points, and it’s great to discuss potential solutions to a problem together, share data and test cases, rather than everyone working away on their on approaches and ending up with (slightly or very) different solutions that might not be compatible.
  3. Make a nice and comfy bed for your literature using tools such as Mendeley, BibDesk etc – and stay on the ball (check for new papers, RSS feeds etc). Then read with a structure (basics and most important papers first) and write up a short, structured summary for each paper, such as: what is the purpose of this paper? What is the methodology? Is it relevant to your research?
  4. BACKUP. Everything. Twice. Then backup again. Needless to say.
  5. Develop a useful system for documenting the work you do (for example coding, use of software, statistical analysis) and finding it again later, then document every step of what you do, why you do it, and what the outcome is. Write as much as possible – it’s great when you can reuse fragments of your documentation in a paper or other form of report. Doing the same work twice because you forgot that you had done it before is pretty annoying.
  6. Identify the tools you will need, then get familiar with them – Excel, statistics, LaTeX, databases, scripting, you will need one or the other (or all of them…) at some point. The easier it is for you to use these things in everyday life, the easier your work will be.
  7. If you’re good at coding – great. You’re safe. If you’re okayish at coding – be prepared to spend hours fixing bugs, but make sure you don’t waste too much time that you could spend doing actual research. If you’re really really bad at coding or come from a different discipline (or both), try and avoid it where you can. Getting to grips with code when you’ve got no experience can be a massive headache and cost you a lot of time that you could have spent on something far more productive.
  8. Get feedback. Talks, seminars in your research group, presentations, discussions – get involved and don’t run away from them. You can run, but you cannot hide, and getting feedback helps you spotting errors and improving your work.
  9. Mingle. Yep, that’s basically a summary of points 2 and 8.
  10. Learn to ask questions! Don’t just collect data, ask what the purpose is, what the benefits and disadvantages of your methodology are, what the expected outcome is, what could affect the outcome, what the applications of your work are, and so on. Learn to ask why, then learn how to answer the question sufficiently.