Welcome to Your Future
Your future is bright, your future needs coding. Welcome to Coding Your Future: the guidebook that will help you to design, build, test and code
your future in computing at www.cdyf.me
. Also available as a free ebook and pdf (see section 0.7), this guide is aimed at ALL students in higher education. While this guide supports teaching and learning at the University of Manchester, it doesn’t actually matter:
- where in the world you are studying
- what stage of your degree you are at, from first year through to final year
- what level you are studying at, high school, foundation, undergraduate or postgraduate
- what institution you are studying at, this book is institutionally agnostic
- what subject you are studying, as long as you are computationally curious
There is something in this guidebook for any student of computing, both those inside and outside of Computer Science departments. 👨🏿💻👨💻👩🏽💻👩💻👩🏿💻
0.1 Your Future is Bright, Your Future Needs Coding
A lot of careers advice can be dry, dull, textbooky, generic and boring with few illustrations and conversations. In the novel Alice’s Adventures in Wonderland (L. Carroll 1865) shown in figure 0.1, the protagonist Alice wonders why her sister is reading a book without pictures.
Pictures can tell stories, pictures can explain. Pictures can help you understand. Pictures can help you imagine. Pictures can help you code. (Guo 2013) So this book uses pictures (and conversations) to help you imagine and code your future. Other key differences between this and other guidebooks are outlined in section 1.12.
0.2 Your Future Aims
This guidebook will help you develop stronger habits of mind, body and soul using five key ingredients: C
, D
, Y
, F
and .me
:
-
C is for CODE
: Instructions, algorithms, recipes, methods and strategies contained in this guidebook. Thiscode
is for your consumption, not for a machine. -
D is for DATA
: From big data to microdata, from your data to my data and our data to metadata. From structured data, to semi-structured data and un-structured data. To factual, statistical, graphical, to readable, audible and watchable data. Data bytes, bits and bobs collected together for your analysis and amusement -
Y is for YOU
: This book is all about you, with activities and other coding challenges for you to do in addition to just passively reading -
F is for FUTURES
: Possible futures for you to think about. Try not to dwell on the past. Think about the future. Think about your future. (Ryder 1988, 2019) -
.me is for ME
: Hello, my name is Duncan, see figure 0.2. I’m your tour guide here. If you’re feeling a bit lost, follow me and together we can starting coding your future.
Coding Your Future explores techniques for investigating career possibilities, job searching, making career decisions, writing applications, doing interviews, negotiating job offers and operating successfully in the workplace.
Alongside these practical engineering issues, this guidebook also encourages you to Design Your Future by taking a step back and reflecting on the bigger picture. You will apply computational thinking techniques, to reflect on who you are, what your story is, how you communicate with other people about your experience, skills and knowledge. As there is a computational theme, you will also need to reflect on what your inputs and outputs (I/O) are, both now and in the future. You’ll also need to think about what recipes (or algorithms) you might start experimenting with
This guidebook investigates professional and pastoral issues in computing, for those with and without Computer Science degrees in the early stage of their careers.
0.3 What you won’t learn
This guidebook will NOT teach you how to write code, there’s already lots of fantastic resources to help you do that. We discuss some of them in chapter 7 on computing your future.
0.4 Learning Your Future
So what will you learn from this guidebook? After reading this guidebook, watching the videos and doing the exercises you will be able to:
- Improve your self-awareness by describing who you are, what motivates you and your strengths and weaknesses
- Experiment with using some job search strategies and make adjustments to your algorithms as necessary
- Identify employers, sectors and roles that are of interest to you
- Improve your written communication skills both for job applications and communicating with other people
- Plan and prepare competitive written applications using standard techniques including CVs, covering letters, application forms and digital profiles
- Compete confidently and successfully in interviews. Anticipate and prepare for both technical and non-technical questions
- Plan further possibilities in your career such as promotion, postgraduate study & research, alternative employment and longer term goals
- Search and navigate a large “wordbase” (this guidebook and the work it cites). A wordbase is like a
codebase
, only written predominantly in natural language.
0.4.1 Your Future Requirements
As the title of this guidebook implies, there is a computational flavour here, but you do not have to be studying Computer Science to benefit. There are two main target audiences for this guidebook:
- Undergraduate and postgraduate students studying Computer Science as a major or minor part of their degree. This includes software engineering, artificial intelligence, human-computer interaction (HCI), information systems, health informatics, data science, gaming, cybersecurity and all the other myriad flavours of Computer Science
- Undergraduate and postgraduate students studying any subject, with little or no Computer Science at all. You are curious to know about what role computing could play in your future career because computing is too important to be left to Computer Scientists, see chapter 7 on Computing your Future
- Unless you are a mature student, you are most probably a member of Generation Z
So the prerequisites for this book are that you are studying (or have studied) at a University where English is one of the main spoken languages. You may have some experience already, either casual, voluntary or otherwise, but this book does not assume that you have already been employed in some capacity.
0.4.2 Gutting Your Future
Reading this book from cover to cover like a novel is not recommended. That would be foolish.
Instead of reading this book, I suggest you follow the advice given to historian William Woodruff about reading books when he was at University:
“You don’t READ books, you GUT them!”
So, gut this book like the fish in figure 0.3. Identify the chapters that are most useful to you (the flesh), and skip the rest (the guts). Which chapters are flesh and which are guts will depend on what stage of the journey you are at. This guidebook is designed to be as “guttable” as possible. To aid gutting, the version published at cdyf.me has a built in search and tables of contents. Before you can gut the fish, you’ll need an anatomical map shown in figure 0.4.
0.5 Mapping Your Future
Your future is split into five parts, each of which has several chapters:
- Chapters 1 to 7 investigate DESIGNING your future
- Chapters 8 to 13 investigate TESTING your future
- Chapters 15 to 17 investigate BUILDING your future
- Chapters 18 to 20 investigate DEPLOYING your future
- Chapters 21 to 40 investigate CODING your future, by meeting students who are doing just that followed by the final chapter on Reading Your Future
Although presented in a linear order, follow whatever squiggly path suits you best, as shown on the right hand side of figure 0.4. Many students start with chapter 8, but individual entry and exit points to your future will differ.
Let’s look in a bit more detail at each of the five parts of your future, starting with designing your future.
0.5.1 Designing Your Future
The first six chapters of this guidebook look at what engineers call design. When you build anything, a bridge, a piece of software, a car or a plane you’ll need to do some design like the blueprint in figure 0.5
Building a career isn’t that different to building anything else, you’ll need do many iterations of designing, coding, testing, building and deploying. Designing things often involves answering tricky questions. So when you’re designing your future you’ll need to cover the following:
- Chapter 1: Rebooting Your Future discusses why you should bother reading this guidebook and coding your future
- Chapter 2: Exploring Your Future challenges you to reflect on who you are, what makes you unique and what you have to offer to build better self-awareness
- Chapter 3: Nurturing Your Future looks at ways you to be more concious of, and improve, both your mental and physical health
- Chapter 4: Writing Your Future explores your softer communication skills, how they complement your hard skills and why employers value them so much
- Chapter 5: Experiencing Your Future asks you to reflect on your experience and help identify where you can improve it
- Chapter 6: Choosing Your Future encourages you to broaden your computational horizons. What possibile routes can you choose from, beyond the obvious well-trodden paths?
- Chapter 7: Computing Your Future looks at the role computing can play in your career, especially if Computer Science is not a major part of your degree
0.5.2 Testing Your Future
The next seven chapters look at testing your future, by taking a test-driven approach to career development. What tests do you need to prepare for and pass before you can starting building your future? Just like building high quality software requires that you pass tests, so too, building a career means passing a series of tests. Each of these tests have inputs, an algorithm and outputs:
- Chapter 8: Debugging Your Future looks at debugging your own written communication such as CVs, résumés, covering letters, application forms and digital portfolios.
- Chapter 9: Hacking Your Future invites you to put yourself in the employers shoes by debugging and hacking other people’s CVs
- Chapter 10: Verbalising Your Future gets you to debug your CV by reflecting on your actions and their impact by articulating them using carefully chosen verbs on your job applications
- Chapter 11: Finding Your Future looks at where and how can you look for interesting opportunities
- Chapter 12: Moving Your Future investigates three of the most important criteria of your job search: location, location, location.
- Chapter 13: Speaking Your Future looks how can you turn interviews to your advantage and negotiate any offers you receive
- Chapter 14: Questioning Your Future is based on Frequently Asked Questions (FAQ) by undergraduate students. What questions to people most commonly ask about getting a job?
0.5.3 Building Your Future
The next seven chapters look at building your future. You’ve passed all the tests, what do do you need to do to keep building your future in the same way as you would build a bridge, like the one shown in figure 0.6.
Once you’ve started to answer the design questions in the first part, you can start to implement it, by testing and building your career:
- Chapter 15: Organising Your Future investigates how to schedule and organise the activities in this guidebook
- Chapter 16: Researching Your Future investigates if a Masters degree or a PhD right for you?
- Chapter 17: Enjoying Your Future is a musical interlude, providing a soundtrack that might help with your wellbeing
0.5.4 Deploying Your Future
The fourth part of this book, looks at deployment issues that follow from the design, build and test phases above. You’ll need good deployment strategies to help with the inevitable stresses and strains of building your future as shown in 0.7
- Chapter 18: Starting Your Future looks at the moves you make after landing your first job. During your transition, how will you start to survive and thrive outside (and after) University
- Chapter 19: Achieving Your Future looks at evidence you can collect of your learning and development using various kinds of certifiable evidence
- Chapter 20: Ruling Your Future provides Ten Simple Rules for Coding your Future, this book in a nutshell
0.5.5 Future Coders
The fifth and final part of this guidebook, from chapter 21 onwards meets students who are Coding Their Future and asks them, how did they get to where they are and where are they going next? These chapters form part of a podcast which accompanies this book: Hearing Your Future, see figure 0.8.
The final chapter 40 of the section and book: Reading Your Future lists everything cited in this guidebook.
0.6 Your Future Themes
This guidebook aims to help you build a bridge from where you are now to where you’d like to be in the future. Each chapter of the book contains the following recurring themes:
- Learning your future: What you will learn from any given chapter
- Watching your future: videos and animations for you to watch
- Listening to your future: audio and podcasts for you to listen to
- Speaking your future: articulating from a script or by improvisation, particularly when preparing for interviews
- Discussing your future: breakpoints invite you to pause execution of your code and think about your variables and parameters. Can they be improved? Reflect and discuss.
-
Reading your future: because reading is good for your mind, body and soul. Read The Friendly Manual.
RTFM
. Read THIS Friendly Manual. - Writing your future and rewriting your future: written exercises using natural language
- Quizzing your future: quick quizzes to be done in real-time live scheduled sessions described in chapter 15 (synchronously) and in your own time (asynchronously)
- Assessing your future: activities to be assessed by yourself, your peers, an employer or an academic (depending on who and where you are)
- Challenging your future: coding challenges are designed to take you out of your comfort zone by encouraging you to experiment with your thoughts, discussions and actions
- Signposting your future: the most useful resources that I recommend you read, listen to or watch
0.7 Downloading Your Future
The full text of this guidebook is freely available at www.cdyf.me
, this means the web version (that’s all the *.html
) is searchable, browsable and linkable in any web browser on your phone, tablet, laptop or desktop computer. If you’d prefer to read this guidebook in a single ebook file, you can download a copy at
If you’d like to read this guidebook on your Kindle you can transfer the epub to your Kindle using amazon.com/gp/sendtokindle.
In the future, a traditional printed paper copy from a publisher may also be available. If you’re a publisher who’d like to publish this book the old fashioned way, please get in touch.
0.8 Contributing to Your Future
If you’d like to contribute this guidebook, I welcome constructive feedback from loyal opposition and critical friends, see figure 0.10. All contributions will be gratefully acknowledged in section 0.9 unless you ask for your contributions to remain anonymous. If you’re about to graduate or have already graduated in Computer Science, see section 21.21.
If you find what you’re reading here useful and you think other people might benefit too, I’d really appreciate some stars (likes) on the guidebook’s repository at github.com/dullhunk/cdyf to help other people find us. ⭐️🤩⭐️🤩⭐️
I’m looking for feedback and contributions on everything in this guidebook from the small things like typos, grammatical errors and spelling mistakes through to bigger issues for each chapter such as:
- Does the chapter make sense? How could concepts be made more clear?
- Does it strike the right tone, is it pitched at the right level? Not patronising? Too many platitudes?
- Are there too many motivational (or demotivational) quotations?
- Where is it too long and waffly (see figure 8.20) or too short?
- Are there too many (or too few) pictures? What needs more illustration?
- Is it well scoped? Too broad or too narrow?
- Are the stated learning objectives met by the chapter?
- Are the activities clear? Can students understand why the activities are recommended? What other activities could be added?
- Will it make sense to global readers e.g. will students from America, China and India etc understand the quirks and idioms of English language and culture
- Are there too many metaphors? Mixed metaphors? Awkward analogies? Idiotic idioms? Annoying alliterations?
- Too many citations? Not enough citations? Missed any key citations?
- What else is missing?
- Where are the unstated assumptions? Where is the unconscious bias?
- What are the issues with equality, diversity and inclusion?
- Are there too many musical references or annoying emoji? Please bear in mind I’m trying to be irreverent, light-hearted, not-very-corporate but definitely playful to improve readability 😜
- What else needs to be ruthlessly edited out?
All suggestions welcome! Don’t be shy. There are several ways you can contribute, depending on how comfortable you are with Git:
0.8.1 For Github Contributors
If you’re familiar with git
and markdown
, there are several options if you have a github account (see github.com/join) including:
- Raise new issues at github.com/dullhunk/cdyf/issues/new/choose
- Click on the
Edit this page
link, which appears on the bottom right hand side of every page published at cdyf.me when viewed with a reasonably large screen (not a phone) - Contribute at github.com/dullhunk/cdyf/contribute and help with existing issues at github.com/dullhunk/cdyf/issues
- Join the discussion at github.com/dullhunk/cdyf/discussions
- Fork the repository, make changes and submit a pull request github.com/dullhunk/cdyf/pulls. If you need to brush-up on your pulling skills see makeapullrequest.com
- From the command line, clone the repository and submit pull requests from your own setup:
Most of the guidebook is generated from RMarkdown, that’s all the *.Rmd
files. So markdown files are the only ones you should edit because everything else is generated from them including the *.html
, *.tex
, *.pdf
,*.epub
and *.docx
files.
0.8.2 For Gitlab Contributors
Tell us how we can improve this guidebook and we’ll give you some GitLab.com swag as a token of our eternal gratitude, see figure 0.11. The most actionable and constructive suggestions will get the best swag.
We’d like to know how we can improve your future, specifically:
-
What Went Well (
WWW
) what have you found the most useful part of the guidebook and/or course at www.cdyf.me and why? -
Even Better If (
EBI
) how can we make it better, what is missing? Which bits are boring or unclear? Which bits needlessly replicate better resources that can be found elsewhere? Too long, didn’t read (TL;DR)? -
Any other business (
AOB
) other comments or suggestions, e.g. would you buy a printed copy if one was available? How useful are the*.pdf
and*.epub
versions? How useful is the audio podcast?
Send us your suggestions by:
- Raising an issue privately on GitLab issues (login required) gitlab.cs.man.ac.uk/duncan.hull/cdyf/-/issues/new, if you check the box:
This issue is confidential ...
, your issue won’t be seen by anybody except you and me - Creating an issue publicly on GitHub (login required), get credit for contributing an open source project and build your digital profile with your contributions, see section 0.8.1. Issues and bug reports are just as valuable as
code
anddata
. - Filling in this anonymous login-free form at forms.office.com/e/1U4TCfc8Aa
Send us your feedback by 5pm on Friday 6th September 2024. Besides bagging some swag, we’ll be eternally grateful to you for telling us how to make this guidebook better for other students of computing. 🙏
0.8.3 For Everyone Else
If you don’t want to (or can’t) use git
and github.com then you can:
- Add comments by annotating cdyf.pdf or cdyf.epub using your personal tablet of choice (iPad, reMarkable or whatever) and emailing your updated version to me
- Suggest changes by editing the Microsoft Word version at cdyf.docx. The text is all there, but the images are all over the place. This is because the typesetting algorithms in Word aren’t anything like as good as the LaTeX ones used to create the cdyf.pdf (output) from the cdyf.tex (input).1 Make sure you’ve turned on track changes in Word, one of it’s killer features that allows your corrections to be easily identified from the original text.
- Just email me suggestions for improvements
Any corrections or suggestions will be gratefully received and noted in the acknowledgements section 0.9, unless you tell me otherwise. I welcome all improvements, big and small.
0.9 Acknowledgements
The content of this book is based on hundreds of conversations I have had with undergraduate and graduate students of (mostly) Computer Science, Mathematics, Physics and Engineering, since 2012. It is also based on conversations I’ve had with their employers too.
# Coding Comment
This acknowledgements section is really looooooong because I try to practice what I preach about the importance of expressing gratitude, see section 3.4. It also serves as a live demonstration of a (public) gratitude journal. Expressing gratitude, publicly and privately, is a simple and proven technique for improving your mental health. It will also improve the mental health of the people who you thank, and strengthen the communities that you are part of, see 3.8.
If you want to get to the main content of this book you can skip this and go straight to chapter 1.
0.9.1 Thank you students
First and foremost, I would like to thank all the students who have helped with this book, both directly and indirectly see figure 0.12.
So, if you have studied some flavour of Computer Science at the University of Manchester since 2012, there’s a high probability you have contributed to this book. Thank you for having the courage to tell me your stories. Thank you for being ambitious, hard working, talented, fearless, creative, inspirational and listening to me (sometimes). It has been my pleasure and privilege to work with you all.
I’d especially like to thank current and former industrial experience (IE) students who have completed a year in industry as part of their degree as well as those who have done summer internships, either as part of the Master of Engineering (MEng) program or otherwise, particularly (in alphabetical order) Ingy Abdelhalim, Nadine Abdelhalim, Eman Ahsan, Matt Akerman, Asma Alshebli, Sami Alabed, Teodora Balmos, Luke Beamish, Eirik Björnerstedt, Liam Breeze, Jingxuan Chen, Jonathan Cowling, Raluca Cruceru, Petia Davidova, Maximilian Gama, Mihail Ghinea, David Green, Lloyd Henning, Ivaylo Iliev, Cristian Ilin, Călin Ilie, Sneha Kandane, Bozhidar Klouchek, Joshua Langley, Struan McDonough, Milen Orfeev, Jason Ozuzu, Alice Păcuraru, Stanislava Piskyulieva, Carmen Práxedes, Kristina Radinova, Tom Robinson, Amish Shah, Pedro Marques Sousa, Teodora Stoleru, Peter Sutton, Kamil Synak, Boris Vasilev and Brian Yim Tam. In addition, the PASS leaders and facilitators, (PASS2-2021, PASS2-2020, PASS2-2019 etc), UniCSmcr.com, HackSoc, CSSoc and Manchester Ultimate Programming members have all been influential on the content of this book. I’ve learned heaps by manually trawling through thousands of your CVs too, so if you’ve shown me a copy of your CV, thanks! Chapter 8 on Debugging your future (self assessment) and chapter 9 on Hacking your future (peer assessment) are based on the most common bugs (or are they features?) I’ve seen in CVs.
So, thank you students for being studious. 🙏
0.9.2 Thank you employers
Thanks to all the organisations who have employed students from the Department of Computer Science as either summer interns, year long placements or graduates. A big chunk of this guidebook documents their experience of employers and their graduate recruitment programs.
Thanks to Niall Beard and Sharif Salah at Google for introducing me to Google’s Technical Writing course in section 4.6.2. Writing is rewriting!
So, thanks employers for employing our students. 🙏
0.9.3 Thank you colleagues
I’ve also had significant support from colleagues in the Department of Computer Science (@csmcr), and many other parts of the University: (engineering, natural sciences, social sciences, biology, medicine and health etc) and support staff at the University of Manchester. (@UoMCareers, @alumniUoM, @OfficialUoM)
Thank you Carole Goble for building the community that supported me through postgraduate study. Thanks for creating the environment which this book was written in, especially the e-Science lab, Information Management Group (IMG), Software Sustainability Institute (software.ac.uk) and their spin-offs. Thanks for patiently re-teaching me how to write better by covering early drafts of my Masters thesis in red ink and less patiently (on subsequent revisions) swear words. 🤬
Thank you Steve Furber for playing guitar in our “boy band” Tuning Complete, see chapter 27. All we’ve got is your bass guitar, three chords and the truth. (Howard 1951; Dylan and Hewson 1988) 🎸
Thank you Jim Miles for encouraging me to write a book shortly after you offered me a job. I thought you were joking (about the book) but it actually turned out to be another one of your great ideas. Thanks Jim. 🙏
I’d also like to thank the only three people in the whole world who’ve had the misfortune pleasure of reading all of my PhD thesis cover to cover; Robert Stevens, Anil Wipat and Steve Pettifer. I suspect it was as painful for you to read as it was for me to write it. Thanks Robert for your relentless patience and giving me a well timed, well aimed kick up the (proverbial) arse to write this book in the Midland Hotel, Manchester at the May ball.
So, thank you colleagues for being collegiate. You make the University of Manchester an enjoyable place to work.
0.9.3.1 Thanks to academic staff
Thanks to past and present academic colleagues (see figure 0.15), PhD students and academic staff at the University of Manchester (and elsewhere) who have contributed to this guidebook and the environment it was written in. We are bound together by the power of weak ties (section 11.2.5) alongside stronger forces and friendships.
They include (in alphabetical order): Muideen Ajagbe, Pinar Alper, Sophia Ananiadou, Mikel Egaña Aranguren, Constantinos Astreos, Terri Attwood, Sam Bail, Robin Baker, Richard Banach, Riza Batista-Navarro, Michael Bada, Niall Beard, Sean Bechhofer, Dick Benton, Casey Bergman, Hannah Berry, Lynne Bianchi, Ahmad Bilal, Rupert Blackstone, Stewart Blakeway, Petrut Bogdan, Caroline Bowsher, Linda Brackenbury, Andy Brass, Judy Brewer, Christian Brenninkmeijer, Andy Bridge, Andy Brown, James Brooks, Gavin Brown, Nick Brown, Mihai Bujanca, Bob Callow, Alex Casson, Lloyd Cawthorne, Zhongyan Chen, Oscar Corcho, Grant Campbell, Angelo Cangelosi, Peter Capon, Andy Carpenter, Nicola Carrier, Thomas Carroll, Barry Cheetham, Ke Chen, Sarah Clinch, Hannah Cobb, Mike Croucher, Laurence Cook, Ian Cottam, Brian Cox, Carmel Dickinson, Simone Di Cola, Stavrina Dimosthenous, Dave De Roure, Paul Dobson, Clare Dixon, Janine Dixon, Danny Dresner, Nick Drummond, Ian Dunlop, Warwick Dunn, Dominic Duxbury, Doug Edwards, Sean R. Edwards, Iliada Eleftheriou, Anas Elhag, Suzanne Embury, Michael Emes, Roland Ennos, Harry Epton, Alvaro Fernandes, Jonathan Ferns, Michele Filannino, Nick Filer, Michael Fisher, Paul Fisher, R. W. Foster, Steve Furber, Andre Freitas, Aphrodite Galata, Matthew Gamble, Jim Garside, Kristian Garza, Freddie Gent, Chris Gilbert, Danielle George, Richard Giordano, Birte Glimm, Carole Goble, Antoon Goderis, Rafael Gonçalves, Roy Goodacre, Graham Gough, Anastasios Gounaris, Bernardo Cuenca Grau, Peter R. Green, Arlene Grenade, Keith Gull, John Gurd, Luke Hakes, Robert Haines, Guy Hanke, Lucy Harris, Angel Harper, Simon Harper, Alison Harvey, Jonathan Heathcote, Alex Henderson, Martin Henery, Gareth Henshall, Andrew Horn, Farid Kahn, Chris Hardacre, Matthew Horridge, Ian Horrocks, Toby Howard, Roger Hubbold, Luigi Iannone, Jane Ilsley, Jules Irenge, the other Duncan (Ivison), Daniel Jameson, Olivia Jankiewicz, Caroline Jay, Mirantha Jayathilaka, Marianne Johnson, Huw Jones, Simon Jupp, Yevgeny Kazakov, John Keane, Douglas Kell, Catriona Kennedy, Rachel Kenyon, Chris Knight, Joshua Knowles, Dirk Koch, Nikolaos Konstantinou, Christos Kotselidis, Ioannis Kotsiopoulos, Oliver Kutz, Alice Larkin, Peter Lammich, John Latham, Kung-Kiu Lau, Hugo Lefeuvre, Dave Lester, Peter Li, Zewen Liu, Phil Lord, Mikel Luján and Darren Lunn… (continued after the gratuitous picture break of figure 0.16)
… (continued) Matthew Makin, Nicolas Matentzoglu, Paul Mativenga, Erica McAlister, Mary McGee Wood, April McMahon, Merc and members of the Manchester University Mountaineering Club (MUMC), Simon Merrywest, Eleni Mikroyannidi, Zahra Montazeri, Colin Morris, Norman Morrison, Jane Mooney, Georgina Moulton, Boris Motik, Christoforos Moutafis, Tingting Mu, Ettore Murabito, Mustafa Mustafa, Javier Navaridas, Kostas Nikolou, Aleksandra Nenadic, Goran Nenadic, Paul Nutter, Steve McDermott, Jock McNaught, Mary McGee-Wood, Pedro Mendes, Sarah Mohammad-Qureshi, Tim Morris, Jennifer O’Brien, Tim O’Brien, Steve Oliver, Pierre Olivier, Mario Ramirez Orihuela, Stuart Owen, Ali Owrak, Liam Panchaud, Pavlos Petoumenos, David Petrescu, Luis Plana, Colin Puleston, Ignazio Palmisano, Dario Panada, Michael Parkin, Bijan Parsia, Jon Parkinson, Norman Paton, Jeff Pepper, Steve Pettifer, Ian Pratt-Hartmann, Mark Quinn, Rishi Ramgolam, Allan Ramsay, Magnus Rattray, Alasdair Rawsthorne, Farshid Rayhan, Alan Rector, Giles Reger, Graham Riley, David Robertson, Jeremy Rodgers, Clare Roebuck, Mauricio Jacobo Romero, Nancy Rothwell, William Rowe, Oliver Rhodes, David Rydeheard, Graham Riley, Daniella Ryding, Ulrike Sattler, Ahmed Saeed, Pejman Saeghe, Rizos Sakellariou, Pedro Sampaio, Sandra Sampaio, John Sargeant, Andrea Schalk, Viktor Schlegel, Renate Schmidt, Baris Serhan, Jonathan Shapiro, Liz Sheffield, Lynn Sheppard, Bushra Sikander, Lemn Sissay, Vangelis Simeonidis, Kieran Smallbone, Alastair Smith, Stian Soiland-Reyes, Nikesh Solanki, Irena Spasic, David Spendlove, Laurence Stamford, Robert Stevens, Alan Stokes, Shoaib Sufi, Andrew Stewart, James Sumner, Neil Swainston, John H. Tallis, Paul Taplin, Federico Tavella, Chris Taylor, Tom Thomson, Dave Thorne, David Toluhi, Tony Trinci, Dimitri Tsarkov, Daniele Turi, Fiona Velez-Colby, Jake Vasilakes, Laura Vasques, Delia Vazquez, Giles Velarde, Chiara Del Vescovo, Markel Vigo, Sam de Visser, Andrei Voronkov, Niels Walet, Alex Walker, Louise Walker, Simon Watson, Nicholas Weise, Dieter Wiechart, Judy Williams, Igor Wodiany, Katy Wolstencroft, Natalie Wood, Chris Wroe, Crystal Wu, Lisheng Wu, Terry Wyatt, Yifan Xu, Viktor Yarmolenko, Yeliz Yesilada, He Yu, Serafeim Zanikolas, Xiao-Jun Zeng, Jun Zhao, Liping Zhao, Ning Zhang and Evgeny Zolin.
So thanks academics for being even more sceptical than Christopher Hitchens, see figure 0.17. Thanks academics for being academic. 🙏
0.9.3.2 Thank you professional services staff
Thanks also to the superb support staff (past and present) from professional services, especially the Academic Support Office (ACSO), Student Support Office (SSO) and external affairs office in the Kilburn building. Professional services staff continue to make all the magic of teaching and learning possible: Alyx Adams, Daniele Atkinson, Cassie Barlow, Jasmine Barrow, Jennie Ball-Foster, Rosie Beaty, Nicholas Bell, Emma Bentley, Victoria Bezer, Jennie Blake, Christine Bowers, Ian Bradley, Daniel Bulman, Karen Butterworth, Miriam Cadney, Chris Calland, Stacey Casey, Ben Carter, Patricia Clift Martin, Chris Connolly, Freya Corrywright, Hannah Cousins, Amanda Conway, Emily Conway, Ellie Crompton, Esme Davies, Jean Davison, Lorna Dawson, Holly Dewsnip-Lloyd, Gavin Donald, Kathryn Downey, Lindsay Dunn, Nicola Evans, Molly Fletcher, Matthew Foulkes, Tammy Goldfeld, Penney Gordon-Lanes, Amelia Graham, Arlene Grenade, Charlotte Hart, Iain Hart, Ben Herbert, Thomas Hesford, Kath Hopkins, Sarah Howard, Lynn Howarth, Yvonne Hung, Susie Hymas, Radina Ivanova, Dan Jagger, Alex Jones, Jeremy Jones, Sheezah Kausar, Jessicca Kateryniuk-Smith, Mike Keeley, Kamilla Kopec-Harding, Stephanie Lee, Dominic Laing, Gill Lester, Jez Lloyd, Ruth Maddocks, Cameron Macdonald, Kelly-Ann Mallon, Lisa McDonagh, Tony McDonald, Karon Mee, Anne Milligan, Sarah Millington, Rachel Mutters, Matthew Oakley, Alyson Owens, Chris Page, Carly Peesapati, Melanie Price, Abby Ragazzon-Smith, Chris Rhodes, Stephen Rhodes, Graham Richardson, Martin Ross, Beth Rotherham, Emily Sagues, Emma Sanders, Julian Skyrme, Elaine Sheehan, Angela Standish, Martine Storey, Kory Stout, Bernard Strutt, Hannah Thomas, Jannine Thomas, Joseph Tirone, Daisy Towers, Karen Varty, Anna Warburton-Ball, Richard Ward, Sarah White, Elizabeth Wilkinson, Andrew Whitmore, Rachael Willis, Sorrel Wilson, Lisa Wright, Mabel Yau, Juanjuan Zhang and Liyuan Zhong.
And Wendy. We all miss you and love you Wendy. #JusticeForWendy ✊🏽 Fight the Power! ✊🏽 (Ridenhour et al. 1989)
So, thanks professional services staff for being professional and supporting the work of academics doing research and teaching. 🙏
0.9.4 Thanks to funders
Thanks to support, financial and otherwise, at various stages from the following funding bodies:
- the Council of Professors and Heads of Computing (CPHC)
- the European Union (EU) and European Molecular Biology Laboratory (EMBL)
- the National Science Foundation (NSF)
- The Student Loans Company for financing my undergraduate degree
-
UK Research and Innovation (UKRI) and its consitutent parts:
- the Biotechnology and Biological Sciences Research Council (BBSRC)
- the Engineering and Physical Sciences Research Council (EPSRC)
- the Natural Environment Research Council (NERC)
- The Wikimedia Foundation, Wikimedia UK and the Royal Society.
- Wiltshire County Council for my undergraduate maintenance grant
Money makes the world go round and has enabled me to teach, learn and do research. So thanks funders for opening your purse strings. 🙏
0.9.5 Thank you SIGCSE
Thanks to the sigcse.org, the Special Interest Group (SIG) on Computer Science Education (CSE), part of the Association for Computing Machinery (acm.org). Thanks to my fellow uki-sigcse.acm.org board members Steven Bradley, Janet Carter, Tom Crick, Quintin Cutts, Rosanne English, Sally Fincher, Samia Kamal, Joseph McGuire and Sally Smith for your help, support and advice, see figure 0.18
Thanks to all the SIGCSE journal clubbers including Brett Becker, Neil Brown, Ceredig Cattanach-Chell, Katie Cunningham, James Davenport, Rodrigo Ferreira, Colin Johnson, Michael Kölling, Nicola Looker, Julia Markel, Jim Paterson, James Prather, Sue Sentance, David Sutton, Moshe Vardi, Jane Waite, Pierre Weill-Tessier and Michel Wermelinger. Many of our journal club conversations have fed directly into the content of this guidebook.
Thanks to Sally Fincher and Janet Finlay whose report Computing Graduate Employability: Sharing Practice (Fincher and Finlay 2016) has had a big influence on this guidebook.
So thanks SIGCSE for being special and interesting. 🙏
0.9.6 Thank you scientists
There is a wider community of scientists, engineers and scholars that have influenced this guidebook:
- Thanks to David Malan (@malan) for CS50 which is an inspiration to me and many others. (Malan 2010, 2020, 2021) Thanks to Cristian Bodnar for inviting David to run CS50 in Manchester in 2017 which was a great introduction to David’s work (Malan 2017)
- Thanks to Santiago Perez De Rosso for some great examples of badly written documentation in section 4.5.1. (Rosso and Jackson 2016; Rosso 2017)
- Thanks to Laurie Santos (@lauriesantos), for The Science of Well-being (TSOWB) (Santos 2022b) which was been a big influence on this book had a gradual but significant effect on my personal and professional life. I’ve tried to distill some of the ideas into chapter 3 on Nurturing your future
- Thanks to Hadley Wickham (@hadley), Mine Çetinkaya-Rundel (@mine-cetinkaya-rundel) and Garrett Grolemund (@garrettgman) for R for Data Science (Wickham and Grolemund 2017; Wickham, Çetinkaya-Rundel, and Grolemund 2023) which helped me get started with R and bookdown. If you’re reading this page in some kind of web browser, the stylesheet used here is re-used from the first edition of the book r4ds.had.co.nz
- Thanks to David Walker for his book Energy, Plants & Man which inspired the conversations and pictures idea behind this book. (D. Walker and Walker 1992)
- Thanks to Dave Cliff for your entertaining guest lectures for COMP101, see also figure 3.6
So thanks scientists (and engineers) for being scientific and engineering. 🙏
0.9.7 Thank you Bath
Thanks to the University of Bath for your excellent Postgraduate Certificate in Education (PGCE) course. I graduated with a PGCE in Science in 2011 and have been heavily influenced by the fantastic work of the schools in Swindon (section 0.9.9), Shaftesbury (section 0.9.8) and Stockport (section 0.9.10) where I worked. I also learnt heaps from fellow students on the course and its course leaders:
- Caroline Padley, Physics
- Steve Cooper, Chemistry
- Malcolm Ingram, Biology
So thanks Bath for the initial teacher training (ITT), TeamBath™, the medicinal Aquae Sulis and the beautiful Cotswolds Area of Outstanding Natural Beauty (AONB). 🙏
0.9.8 Thank you Shaftesbury
Thanks to Chris Almond, David Ball, David Booth, Caroline Dallimore, Stuart Ferguson, Caroline Moss, Mr Travers and all the other staff and students at Shaftesbury School who hosted my first PGCE teaching placement, see figure 0.20. Thanks also to my fellow Bath trainees Katharine Platt, Harriet Edwards, Vicky Dury and Joan Shaw for sharing your knowledge through peer learning and peer instruction. Thanks Joan for keeping me awake on the long and winding west country roads to and from deepest darkest Dorset. Thanks for sharing the heavy burden of driving too.
So thanks Shaftesbury for lessons on top of Gold Hill.
0.9.9 Thank you Swindon
Thanks to headteacher & physicist Clive Zimmerman, his team of staff, Mr M. Carter, Mr K. Thomas and the students of Greendown Community School (now Lydiard Park Academy) in Swindon, Wiltshire for hosting my second PGCE teaching placement. (Benke 2015) It was fun teaching you about electromagnetic waves using Alom Shaha’s jelly babies and kebab sticks shown in figure 0.21.
So thanks Swindon for being great and western and Swindon Town Football Club, the best football team in the whole of the West Country. Proper job. 🙏
0.9.10 Thank you Stockport
Thanks to headteacher Joanne Meredith, her team of staff and the students at St. Annes Roman Catholic High School, Stockport for hosting my Newly Qualified Teacher (NQT) year. Thanks to Rebecca Dann, Michael Doody, Keith Doran and other members of the alternative (Elizabethan) staff room for your emotional, moral and practical support throughout a challenging year fuelled by my midlife crisis. According to the Manchester Evening News, St. Anne’s is “the forgotten school” (H. Johnson 2020; Gill and Statham 2021), see figure 0.22, but I’ll never forget you or the lessons you taught me.
So thanks Stockport for being Stopfordian. Thanks for the magnificent Stockport Viaduct and for The Hatters: It’s all that matters, Stockport Hatters. 🙏
0.9.11 Thank you schools
Thanks to all the schools who’ve hosted our undergraduate students as part of an ongoing partnership between the University of Manchester and local schools called Coding their Future, see figure 0.23:
- Mrs Rowland at Fairfield High School for Girls, Droylsden
- Mr Sinnott at Trinity Church of England High School, Hulme
- Mr Clarke at University Technical College (UTC@MediaCityUK), Salford
- Mr Jalloh at Manchester Communication Academy, Harpurhey
- Mrs Wood at The Barlow Roman Catholic High School, Didsbury
- Alan J. Harrison at William Hulme’s Grammar School, Whalley Range
- Mr Rath and Mrs Preddy at Cheadle Hulme High School, Stockport
- Mrs Murray at Laurus Cheadle Hulme, Stockport
- Mr Pownall and Mr. Clarke at Knutsford Academy, Knutsford
- Steve Pearce at Altrincham Grammar School for Girls, Trafford
- Pauline Wilcox at Altrincham Grammar School for Boys, Trafford
- Mr Millington and Mr. Charlton at Manchester Grammar School (MGS), Fallowfield
- Mr Stenhouse at Stretford Grammar School, Trafford
Thanks to Mr Shaw for hosting our primary school codeclub.org. Thanks to Mr Ince and Drew Povey for showing me around Harrop Fold School (now The Lowry Academy) in Salford, host of the Educating Greater Manchester television series on Channel 4. (Sandwell 2020)
Thanks to all the schools who interviewed me for my Newly Qualified Teacher (NQT) year. Doing interview lessons, meeting your students and your senior leadership teams was a gruelling but fascinating magical mystery tour of the UK education system, both public and private. These interviews were very productive failures:
-
Marie Getheridge at Writhlington School, Radstock, Somerset
- see their amazing Orchid project wsbeorchids.org run by Simon Pugh-Jones
- The Cooper School, Bicester, Oxfordshire
- Patrick Hazlewood at St John’s Marlborough, Wiltshire
- not to be confused its posher and famous next door neighbour Marlborough College
- Oasis Academy, Brislington, Bristol
- Redland Green School, Redland, Bristol
- The John of Gaunt School, Trowbridge, Wiltshire
- Rachael Warwick at Didcot Girls’ School, Didcot, Oxfordshire
-
Vicky Tuck at Cheltenham Ladies’ College, Cheltenham, Gloucestershire. (Ournalist 2010; Wilby 2011)
- This was the first time I’d ever set foot in a private school, managing to cross Michael Gove’s Berlin Wall of education by sneaking through Checkpoint Charlie un-challenged. It was an enlightening experience… (Gove 2014)
-
Blackburn College, Lancashire
- “I read the news today, oh boy! Four thousand holes in Blackburn, Lancashire” (Lennon and McCartney 1967)
So thanks schools, for all the excellent work you do educating people, whatever their background. 🙏
0.9.12 Thank you Oxford
Thanks to Martin Clutterbuck, Rebecca Clare, Richard O’Beirne, Simon Witter, Will Wilcox, Gavin, Howard, Isobel, Jess, Paddy, Sara, Spiro and everyone else in the journal production team at Blackwell Science Ltd for looking after me in my first job as a freshly minted graduate. Thanks to Nigel Blackwell, Bob Campbell and Jon Conibear without whom there wouldn’t have been any Blackwell
for me to Science
at. Thanks to Tim, Ruth and Sarah for all the nights in Oxford pubs. (Chelsom 2009)
Thanks to Eileen, Anne & Richard for giving me a home from home.
Thanks to John Chelsom, Kal Ahmed, Clare Ashton, Tim Cave, Mavis Cournane, Eddie Dillon, Niki Dinsey, Phil Gooch, Antony Grinyer, Debbie Hagger, Gareth Hudson, Steve Horwood, Chris Joyce, Joe McCann, Eddie Moore, Keith McCann, Dave Nurse, Ian Packard, Mark Pengelly, Al Power, Lillian Spearing, Ron Summers, Omar Tamer and the rest of the team at (and clients of) CSW Informatics Ltd (csw.co.uk) for looking after me in my second job after Uni and teaching me about Oxford Innovation.
Thanks to my fellow xmlsummerschool.com faculty: Bob du Charme, Paul Downey, Michael Kay, Jeni Tennison, Norman Walsh and Lauren Wood for the memories and the <markup/>
. (R. Johnson 2004; Morali and Willis 1978)
X.S.L.T!
It's fun to program in... X.S.L.T!
Every line in your code
Is an XML node
And the program is one big tree
Thanks to Steven A. Hill, Jane Langdale and Chris Leaver at the University of Oxford (plants.ox.ac.uk) for interviewing me for a Gatsby Charitable Foundation DPhil scholarship. Thanks Chris for teaching me a painful but important lesson about the value of my education and grades.
So thanks Oxford for your dreaming spires, see figure 0.24. 🙏
0.9.13 Thank you Cambridge
Thanks to Christoph Steinbeck, Nico Adams, Marcus Ennis, Janna Hastings, Paula de Matos, Adriano Dekker, Kenneth Haug, Jo McEntyre, Pablo Moreno, Helen Parkinson, Mark Rijnbeek and Susanna-Assunta Sansone at the European Bioinformatics Institute (EBI, see figure 0.25) for looking after me during my time in Cambridge. Thanks to Rolf Apweiler, Michael Ashburner, Ewan Birney, Graham Cameron and Janet Thornton without whom there wouldn’t have been an EBI for me to work at. (Stroe 2019)
So thanks Cambridge for Silicon Fen, I had a really fen-tastic time. I’ll get my coat. 🙏 (Whitehouse and Higson 1994)
0.9.14 Thank you Manchester
Thanks to Greater Mancunians beyond the University of Manchester: Anna, Mark Anderton, Andrea, Rob Aspin, Jon Atkinson, Charlie Ball, Paul Bason, Iain, Julian Bass, Amul Batra, Dean Belfield, Lisa Chan Brown, Martin Bryant, Gemma Cameron, Matthew Clark, Jeremy Coates, Craig, Darren Dancey, Craig Dean, Farhat Din, Anne Dornan, David Edmundson-Bird, Emily, Diana Erskine, Sherelle Fairweather, Shaun Fensom, Steven Flower, Tony Foggett, Katie Gallagher, Giles, Emma Grant, David Haikney, Damian Hughes, Mehran Jalaei, Daniel Jamieson, Matt Jarvis, Jamil Khalil, Ross Keeping, Val Kelly, Kitty, David Levine, Julie Lowndes, Tony McGrath, Chris Marsh, Amy Mather, Lisa Mather, Claire McDonald, Keith Miller, Geraint North, Alan O’Donohoe, Tomas Paulik, Damian Payton, Francesco Petrogalli, Paul, Peppi, Phil, Rich, Ros, Miles Rothbury, Paul Sherwood, Howard Simms, Adrian Slatcher, Jason Souloglou, Joe Sparrow, Martyn Spink, Katie Steckles, Matt Squire, Julian Tait, Rob Taylor, Rachel Thompson, Tom, Andrew Toolan, Hannah Tracey, Wesley Verne, Paul Vlissidis, Tony Walsh, Travis Walton, Ben Webb, Paul Wilshaw and Zoe for friendly Northern support and advice. Thanks to Andrew Back and Tim Harbour for wuthering my bytes at wutheringbytes.com.
So thank you for the music, the songs I’m singing. Thanks for all the joy they’re bringing. Thanks Manchester for the best football team in the world and being Mancunian, see figure 0.26. This is the place! (Longfella 2017)
0.9.15 Thank you Coventry
Thanks to Phil Harris, Steph Harris, Alan Gear, Jackie Gear, Ally, Neil, Esther, Francis Rayns, Graham Smith, Jeremy Cherfas, Morgen Cheshire, Margi Lennartsson Turner, Lady Godiva (see figure 0.27) and everyone else at the Henry Doubleday Research Association (HDRA) and Coventry University for hosting my industrial experience year during my undergraduate degree.
So thanks Coventry for naked women on horseback, a magnificent cathedral and the industrial experience. Thanks for being the place where I bumped into Bryan Mathers, see section 0.9.23. 🙏
0.9.16 Thank you Abisko
Thanks to Malcolm Press, Helena Björn van Praagh, Terry Callaghan, Jackie Potter, John Lee, Mats Sonesson, Nils-Åke Andersson, Rosie, Nick, Dylan, Karin, Kjell, Lennart, Marion, Martin, Ulf and everyone else at Abisko Scientific Research Station / Abisko Naturvetenskapliga Station (ANS, see figure 0.28) for hosting me as a summer research student investigating the effects climate change on subarctic heathlands. (Potter et al. 1995)2 Easily the best summer job I’ve ever had! 🇸🇪
So thanks (tack) Abisko for all the saunas, fika, midnight sun and Swedish hospitality. 🙏
0.9.17 Thank you America
Thanks to the British Universities North America Club (BUNAC) (see figure 0.29) for sponsoring my Exchange Visitor Student Visa which allowed me spend an awesome summer cooking breakfasts for guests at the Phillips Beach Plaza Hotel in Ocean City, Maryland. (Dubel 2021) If the way to a person’s heart is through their stomach. (Chef 2023) then I travelled to the heart of America through its big breakfasty stomach. Thanks to Andy B. for flagging it. 🇬🇧🇺🇸
Thanks to Mitch at Green Tortoise Adventure Travel for driving, entertaining and feeding a bus load of us gentle people with flowers in our hair from San Francisco to New York via Chicago and some of America’s finest wildernesses (and cookouts) in Nevada, Utah, Wyoming, South Dakota, the Yellowstone, Grand Teton and Badlands National Parks. (Phillips and McKenzie 1967)
Thanks to Tom and Letty Gochberg for your excellent hospitality in New York City, your transatlantic history lessons and showing me the very best that Manhattan has to offer. You can hear it in my accent when I talk, I’m an Englishman in New York. (Sumner 1988) Thanks Pat, Colin and Rob Willmott for the introduction via the Single-handed Trans-Atlantic Race (STAR) in Plymouth, Devon from where the Mayflower (eventually) set off for the so-called “New World” in 1620, see figure 0.30.
Thanks Timo Hannay for letting me gatecrash the best party in Silicon Valley: Science Foo Camp (#scifoo
) at the Googleplex in Mountain View, California in 2007 and again in 2009. Thanks to Cat Allman, Sergey Brin, Chris Di Bona, Tim O’Reilly and Larry Page for hosting scifoo. (Hull 2007, 2009)
Thanks Boston, Massachusetts for the Pixies. I wanna grow, grow up to be, be a debaser. DEBASER! (Francis 1989) Thanks Boston hosting disruptive tea parties with the Sons of Liberty, the W3C Healthcare and Life Sciences Interest Group (HCLSIG) and the Association for the Advancement of Artificial Intelligence (AAAI) conference (Hull et al. 2006). Thanks Joanne Luciano for showing me the sights of Cambridge, Massachusetts. Thanks to Ewa Deelman, Yolanda Gil and Bertram Ludäscher for hosting transatlantic workflow collaborations at the San Diego Super-duper-computer Center (UCSD) & University of Southern California (USC) with help from Carole Goble and funding from the Engineering and Physical Sciences Research Council (EPSRC).
So thanks America, I love you guys! 🇺🇸 Thanks America for being American. 🙏
0.9.18 Thank you Moravians
Thanks to Thsespal Kundan, Principal of the Moravian Institute in Rajpur, Dehradun, Uttar Pradesh, India for hosting me and my friend Doug fresh out of high school on a gap year. We learned loads as visiting supply teachers of English and Mathematics, thanks to an introduction from a mutual contact Angus Barker, see figure 0.31. 🇮🇳
Thanks also to the Moravians in Manchester at Fairfield High School for Girls(see section 0.9.11) for hosting undergraduate Computer Science students as part of coding their future.
So thanks Moravians (and Angus) for life changing and formative experiences. 🙏
0.9.19 Thank you influencers
Some of the most important influences on this guidebook are people I’ve only met very briefly, virtually or not at all (yet).
- Thanks to Gayle Laakman McDowell (@gayle), for your cracking series of books (McDowell 2014, 2015; McDowell and Bavaro 2013; Bavaro and McDowell 2021) which have been very useful resources both for students I’ve worked with and me personally
- Thanks to Yihui Xie (@yihui) and contributors to bookdown.org, the software used to produce this book alongwith the comprehensive and well-written documentation on using it. (Xie 2017, 2015; Xie, Dervieux, and Riederer 2020)
- Thanks to Bronnie Ware for your book The Top Five Regrets of the Dying (Ware 2011) which helped me to re-align my values and priorities when they were all out of kilter
- Thanks to Jo Hobbs at Lancaster University for advice on placements and employability in undergraduate teaching
So, thanks influencers for being influential. 🙏
0.9.20 Thank you interwebs
Thanks to the artists, blaggers, bloggers, cartoonists, columnists, doodlers, diarists, essayists, film-makers, journalists, photographers, podcasters and writers whose words and pictures I’ve enjoyed reading, watching and listening to via the magic of the interwebs, see figure 0.32.
So here are some people whose stuff I read, watch, listen to or use, maybe you’ll enjoy their words, pictures and software too:
- Euan Adie at blog.overton.io/author/euan-adie
- Steven Appleby at twitter.com/stevenappleby, see figure 0.33
- Jonathan Black at ft.com/dear-jonathan
- Tim Bray at ongoing
- Geoffrey Challen at geoffreychallen.com/essays
- Jorge Cham at phdcomics.com
- Tom Crawford at TomRocksMaths
- Paul Downey at whatfettle.com and flickr.com/photos/psd
- Mike Croucher at walkingrandomly.com
- Stephen Curry at occamstypewriter.org/scurry
- Athene Donald at occamstypewriter.org/athenedonald
- Stephen Dubner at freakonomics.com
- Alf Eaton at hublog.hubmed.org
- Jonathan Eisen at phylogenomics.blogspot.com
- Michael Eisen at michaeleisen.org/blog
- Julia Evans at jvns.ca
- Martin Fenner at blog.front-matter.io
- Kevin Fong at bbc.in/35jDOwI
- Timothy Gowers at gowers.wordpress.com
- Matt Green at mattgreencomedy.com
- Mark Guzdial at computinged.wordpress.com
- Paul Graham at paulgraham.com
- Bosco Ho at boscoh.com
- Pierre Lindenbaum at github.com/lindenb
- Andrew Maynard at andrewmaynard.net
- Randall Munroe at xkcd.com
- Cameron Neylon at cameronneylon.net
- Peter Norvig at norvig.com
- Samuel Pepys at pepysdiary.com
- Neil Saunders because what he’s doing is rather desperate
- Sue Sentance at suesentance.net/blog
- Kristin Stephens-Martinez at csedpodcast.org
- Greg Tyrelle at nodalpoint.org
- Greg Wilson at third-bit.com
So, thanks writers for writing. Thanks for penning, drawing and recording stuff that has provoked, informed, entertained, influenced and inspired me. 🙏
0.9.21 Thank you githubbers
Thanks to everyone who has contributed via github, listed below in order of github usernames. I will credit any github contributors here, small or large. Even the typos, it all counts. I don’t care what operating system you are using either, see figure 0.34. You can easily add yourself to this roll call (see section 0.8) by correcting my delibreate mitsakes. 😉
Aman (@amanrana1), Keith Mitchell (@apiadventures), Zee Somji (@ezeethg), iliketohelp (@iliketohelp), Jan Machacek (@janm399), teobalmos (@teobalmos), Tsvetankov (@Tsvetankov), Richard Gourley (@richardgourley), Tristan Maat (@TLATER), Safder Iqbal (@safderiqbal), Merve Turan (@mervturan), Mehuli Basu (@mehuli12), Rui Xu (@Ray7788)
So, thanks githubbers for cloning, forking, merging, pulling, adding, committing, pushing and raising issues. 🙏
0.9.22 Thank you Wikipedians
Thanks to all the thousands of editors and engineers that make Wikipedia one of the greatest communities on the internet, see figure 0.35.
Special wiki-thanks to English speaking Wikipedians Evan Amos, Abd Alsattar Ardati, Caroline Ball, Marianne Bamkin, Roger Bamford, Alex Bateman, Dan Brickley, John Byrne, Manu Cornet, Lucy Crompton-Reid, Daria Cybulska, Andrew Davidson, Paul Gardner, Madeleine Goodall, Aaron Halfaker, Melissa Highton, Eoin Houston, Dariusz Jemielniak, Chris Koerner, Darren Logan, Magnus Manske, Andy Mabbett, Charles Matthews, Ewan McAndrew, Daniel Mietchen, Josh Minor, Peter Murray-Rust, Richard Nevell, Frank Norman, Paul Nurse, Rod Page, Bhavesh Patel, Mike Peel, Martin Poulter, Joseph Reagle, Frank Schulenburg, Gage Skidmore, Dario Taraborelli, Sara Thomas, Denny Vrandečić, Ian Watt, Alice White, Jessica Wade, Taha Yasseri for insights, inspiration, support, software, data, pictures and guidance. Thanks also for educating me on issues of equality, diversity and inclusion, especially gender and race.
So, thanks Wikipedians for being Wikipedia. 🙏
0.9.23 Thank you Bryan
Many of the illustrations for this book have been drawn by the very talented Bryan Mathers @BryanMMathers shown in figure 0.36.
Bryan is an artist, visual thinker, entrepreneur and listener who turns stories into pictures. He also happens to have a Bachelors degree in Computer Science from the University of Glasgow. As a renaissance man, his combined skills in art, science and engineering made him the perfect fit for illustrating this guidebook. You can find out more about Bryan at bryanmathers.com and visualthinkery.com. I’m very glad we randomly bumped into each other at the #wikiedu20
conference: wikiedusummit.coventry.domains.
So, thanks Bryan for your witty illustrations, this book wouldn’t be the same without your visual thinkery. 🙏
0.9.24 Thank you St Laurence
Thanks to St Laurence comprehensive school (st-laurence.com), a community I am proud, lucky, privileged and grateful to have grown up in and still be part of decades later: Adam, Alan, Andrea, Andrew, Anna, Bouncing Barney, Charlotte, Catherine, Clare, Dan, Doug, Debbie, James, Jenny, Jim, Jo, John, Jon, Lou, Marcus, Marjorie, Matthew, Philip, Portia, Richard, Sasha, Scott, Simon, Sophie, Sophia, Stephen, Steve & Wilf. I’m especially grateful for the friendship of former St Laurence school students I’ve enjoyed music, cycling, football, walking, travelling, holidaying, drinking and camaraderie with, see figure 0.37. So:
I’m looking forward to the next revolution of our ongoing adventures.
Special thanks to former St Laurence school student and current sixth form head Aidan Blowers for showing me around The Clarendon School in Trowbridge, Wiltshire and leading by example. Aidan’s performance as Lord of the Dance (wearing a white shirt in figure 0.38), inspired the ongoing musical experiment that is Tuning Complete.
Thanks to all my teachers at St Laurence school, some of whom can be seen in figure 0.39.
Thanks to the rest of my St Laurence school teachers not pictured in figure 0.39. In alphabetical order: Phil Arthur, Sally Arthur, Maggie Bignell, Jackie Bolton, Tony Brooks, Dave Brush, Mrs. Buthlay, Andrew Butterworth, Cathy Cooper, Ed Corrin, Mrs Davies, Brian Ellis, Myra Ettridge, Sue Glanville, Ms. Gledhill, Roger Greenwood, Barry Hales, Amanda Hodges, Steven Hollas, Maddy James, Mr Jones, Madame Lindsay, Karen Long, Sheila Macdonald, Simon Mitchell, Lee Musselwhite, Tim Noble, Roger Norgrove, Dave Pegg, Angela Pendennis, Sally Rose, Brian Reynolds, Steve Stretch, Mr Sadler, Mike Sullivan, Phil Smith, Rob Townhill, Beryl Tucker, Chris Watters, James Wetz and Bill Wheeler.3
Thanks to all of the school governors for holding the leaders of St. Laurence to account. I’m a #StateSchoolProud
member of the 93percent.club. 💪
So, thank you to the community that is St. Laurence School, for enabling my GCSE’s followed by A-levels in Physics, Chemistry, Biology and General Studies. Thanks for educating me (and many others) the West Country way. Proper job! 🙏 (Stoke and Green 2013)
0.9.25 Thank you Fitzmaurice
Thanks to my Fitzmaurice Primary School school teachers: Mrs Cripps, Miss Clarry, Morris Clay, Neil Fleming, Mr Jackson, Betty Knowles, Mr. Lucas, Valerie Payne, Miss Sheldon, Hugh Solomon, Miss Uncles and Mrs White. I used to foolishly think it was secondary schools that did all the serious teaching, but they’d be nowhere without the crucial foundations laid in primary school. It takes a whole community (a village) to raise a child and a lot of that starts in primary school, see figure 0.41.So thanks Fitzmaurice Primary School and Edmond Fitzmaurice for laying solid foundations. 🙏
0.9.26 Thank you Branwen
Thanks Branwen Munn, pictured on the far left in figure 0.42, for introducing me to writing loops on the BBC Micro at Fitzmaurice Primary School with help from Mr. Jackson’s code club, see section 27.13. We were lucky to also have access to your very own Commodore 64. Like Emma Mulqueeny I think year 8 is too late. (Mulqueeny 2011) It is unlikely I would have ended up where I am if it hadn’t been for early exposure to computing in primary school. (Danton 2021)
So thanks Branwen, for all the breakdancing, birdwatching, music and computing.
0.9.27 Thank you NHS
Thank you NHS for all the healthcare you’ve provided for me and my family from our cradles to our graves, see figure 0.43. I had taken your services for granted until I thought I was on my deathbed, see section 2.2.7. Thankfully, I was granted some extra “Fergie time” from the Grim Reaper. (Pritchard 2012) ☠️
So, thanks NHS ❤️ for all the publicly funded healthcare. 🙏
0.9.28 Thank you family
To my family: wife, son, mum, dad, brother, sister, μαμά, μπαμπά and extended family: I’m lucky to have been taught by you and that you’ve always been there when I needed you. 🇬🇷🇪🇺🇬🇧
So, thanks to all my family scattered around the world for your unconditional love.
Για πάντα σ’αγαπώ. 🙏
0.10 About me
Hello, my name is Duncan Hull and I’m currently writing this guidebook for undergraduate and postgraduate students as part of my day job at the University of Manchester where I’m a Senior Lecturer (≈ Associate Professor) in the Department of Computer Science.4
So what’s my story? I’ve been gainfully employed as a paperboy, supermarket cashier, shelf stacker, sausage packer, computer hacker, pork pie filler, plongeur, chef, dogsbody, field assistant, database administrator, deli counter server, consultant, matchday steward, envelope stuffer, high school teacher, postdoc, research scientist, chairperson, software engineer, lecturer, external examiner, tutor and scholar. Like many people, my path has been a bit of an Odyssey or what Helen Tupper and Sarah Ellis call a “squiggly career”. (Tupper and Ellis 2020) It’s highly likely that your career will not follow a neat linear trajectory either, also known as a portfolio career. (Tupper and Ellis 2021; Homer 800BC)
Beyond the paid stuff, I’ve done a range of voluntary work too, serving as a competition judge, fundraiser, code club & coderdojo leader, rabble rouser, digital council member, school governor, curator, librarian, beer drinker, itinerant blogger, wikipedia trainer, journal clubber and editor. But as Ronnie Lane and Ronnie Wood (figure 0.45) once said, I wish that I knew what I know now, when I was younger.
This guidebook documents some of what I know now, that I wish I’d known, when I was younger. If you’re starting your career, I hope you find these insights and exercises useful. I’ve sat on both sides of many interview tables, as interviewer and interviewee. I have had some spectacular failures, alongside some modest successes, and have included personal stories where they are relevant.
Most of what I have learned about employment comes from listening to, watching and helping students as they interact with employers on the first tentative moves in their careers, particularly through our industrial experience program, see figure 0.46.
I’ve documented some of what our students have taught me, so reading this book may help you learn from some of their successes and failures.
0.11 Legal Stuff
I am not a lawyer (IANAL) but any opinions expressed in this guidebook are my own and not representative of my current employer, the University of Manchester. This guidebook does NOT therefore, represent University policy.
0.11.1 Licensing your future
The text of this guidebook is published under the Creative Commons Attribution-NonCommercial-NoDerivs 3.0 License (CC-BY-NC-ND) license see figure 0.47.
This means you can copy and redistribute the written material provided that:
- You provide full attribution by linking directly to the original source
- You do not use the material for commercial purposes
- You do not make any derivative works
See the full license (CC-BY-NC-ND) for details.
The images used in this guidebook are published under different licenses, depending on their source. For example, Bryan Mathers illustrations are licensed CC-BY-ND, see figure 0.48. Other images have different licences, for example, images from Wikimedia Commons (commons.wikimedia.org) are typically published CC-BY or CC-BY-SA, fair use, GFDL or public domain. Each figure caption gives details for that images licence.
0.11.2 Your Privacy
This site is hosted on netlify.com, see the netlify privacy policy. This site also uses netlify analytics (server side) and Plausible Analytics (client side) to understand our audience better. Both comply with the General Data Protection Regulation (GDPR).
0.12 Your Future is Bright, Your Future Needs Coding
Your future is bright, your future needs coding, see figure 0.49. Welcome to Coding Your Future: the guidebook that will help you to design, build, test and code your future in computing.
So now that we’ve dispensed with the formalities, we can move on to the next part. Chapter 1: Rebooting your Future looks at why should you bother reading any this guidebook in the first place.