In 2005, the scientist and engineer Phil Bourne starting publishing a series of articles which distilled people’s hard won knowledge into Ten Simple Rules. (Bourne 2005) Over a decade more than 1000 rules were published in over 100 articles in the scientific journal PLOS Computational Biology. (Bourne et al. 2018) These articles offer a huge range of advice from making the most of a summer internship (Aicher et al. 2017) to teaching programming (N. Brown and Wilson 2018) and even winning a Nobel Prize. (Roberts 2015) Articles as lists, or “listicles” as they are sometimes known, are a convenient way to summarise key points. So here are Ten Simple Rules for Coding Your Future: the too long, didn’t read (TL;DR) summary of this guidebook.
There is a lot more to you than your degree. Yes, you’ve spent (or will be spending) three or four years getting your degree. Use this time to identify your weaknesses and work out how to improve them. Knowing your future depends on knowing who you are now, see chapter 2 and figure 14.2.
Look after yourself mentally and physically. Studying at University can be enjoyable but it can also make you stressed, anxious and depressed. Choose your reference points carefully, try not to compare yourself to the person at the top of the class. Ask yourself, am I doing better than last time? Be kind to yourself because nurturing yourself now will nurture your future, see chapter 3.
It’s too easy to fall into a trap of thikning if I had… when job hunting. Use what you already have, see figure 14.4.
When you’re job hunting, it can be competitive and cut-throat. You might find yourself falling into poor habits of mind:
- “If I had a better degree from a different university, I’d be more successful…” see section 1.6
- “If I had more experience, more voluntary work, more internships, I’d stand a better chance…” see section 5.3
- “If I’d done more projects and extra-curricular activities…” etc see section 7.6.4
- “If I’d got better grades at school and Uni…” see section 12.2
- “If only I’d worked harder…” see 2.7.1
- “If I was more confident at speaking and interviews … ” see chapter 10 on Speaking your future
- “If I’d been to a different school, I could be more successful…” see the 93percent.club (Nye 2021; Verkaik 2021)
Coulda. Woulda. Shoulda. This is all the usual dialogue you can expect from your inner critic. Acknowledge these thoughts, see section 3.3, then try distance yourself from them. Start from where you are, use whatever you have and help who you can.
Grow your networks, make use of all the contacts you have and foster new connections where you can. People can help you, even those you’re not particularly close to, see figure 14.6
Remember that the weaker ties in your network (see section 8.6) may be more important than your stronger ties, especially when it comes to finding jobs. It’s not (just) what you know, but who you know.
You can classify your mistakes and failures into two categories:
- Productive mistakes: those you learnt from
- Unproductive mistakes: those you didn’t learn anything from (and risk repeating)
Mistakes and failure are inevitable in life, but productive mistakes are going to help you much more that unproductive ones (Petroski 1992). That doesn’t just mean you should “fail fast, fail often” (Babineaux 2013) or “move fast and break things,” but to consciously learn from any mistakes you make so that you don’t repeat them. One way to turn unproductive mistakes into productive ones is deliberately and consciously reflect on why you made them. This is part of the growth mindset we discussed in chapter 3.
In a growth mindset, mistakes can be good, but the fear of making them is not. You are more likely to take more chances when you’re unafraid to fail, and this will improve your chances of success.
Many education systems around the world don’t teach people how to fail, because they put too much emphasis on success (as measured by grades) rather than progress and learning. (Lahey 2016) So as the angel investor Esther Dyson once said, “Always make new mistakes,” see figure 14.7
- If you’ve got some harsh feedback on your CV, how can you make less buggy in the future?
- If you’ve applied to lots of companies and not even had a reply yet, how you improve your job search strategy?
- If you’ve neglected to develop interests and projects outside of work, how can you rebalance?
- If you crashed and burned in an interview, how can you use the experience to do better next time?
- If you failed to get the promotion you thought you deserved, what will you do differently in the future
There are good reasons to be grateful, showing gratitude doesn’t just help other people, it helps you too see figure 14.8
Join a team by helping someone, be a team player, help others, thank others for their help.
Be flexible in approach. Don’t just big employers that you’ve heard of, there are plenty of startups and smaller organisations you’ve never heard of who have lots to offer, see figure 14.9
You are not just a techie, Either.
Computer science is a young and rapidly changing discipline which means you can not afford to be left behind. Never stop learning, see chapter 12.
Am I being insensitive asking people to step outside their comfort zone when we’ve all be stretched beyond breaking point during COVID-19? We’re all going to need to continue to step outside of our respective comfort zones in order to meet the challenges we face around the world, see figure 14.11.
This takes courage, but that’s often when you learn most. So step outside your comfort zone if you’re feeling brave enough to learn.
Job hunting is hard. Job hunting is stressful. Job hunting is time consuming. Some employers will waste your valuable time, see section 8.3.6. Some employers will reject you but try not to take it personally, see 8.3.7. Job hunting may affect your mental health, see chapter 3. The important thing is to not give up, see figure 14.12. Try to make any failure productive, rather than unproductive, see section 14.5.
This chapter is under construction because I’m using agile book development methods, see figure 14.13.