Paul Fawkesley
About me. I am...
A programmer and engineer. I found coding aged 10 and it shaped my life. I’m hooked on making machines do stuff for me. I studied engineering and unsurprisingly chose robots for my masters. I automate to free up time for things that matter. Programming is my flow state.
A hands-on Dad to a curious, energetic five year old. I work part time so I can spend afternoons with her. We whizz around on our electric cargo bike, meander in nature and tinker with gardening, crafts and robotics.
A climate activist. I’ve invested a lot into decarbonising our home and our lives. I eat mostly plants and travel mostly by bike and train (and I’ve never been healthier). I’ve been arrested with Just Stop Oil and I support local climate activists.
A business owner, running Treasure Hunt Tours for six years with my great friend Ian. Our business is customer-obsessed and highly automated. We prioritise building a company we love over growth for its own sake.
A student of Stoicism and Buddhism. I’ve learned that thoughts and feelings can be shaped and tuned. That anger’s never useful. That nothing’s forever. I’m thoughtful about how I spend time and attention. I’m actively ignorant about fashion, social media, daily news and TV. I have time for thinking, making, reading, playing and being with friends and family.
🛠️ Work & projects
By day I'm building treasure hunt games with my good friend Ian.
I've built PGP software for teams and for several years I ran Expirybot, a reminder service to make life easier for PGP users.
I've built software for printing machines and high-speed network devices, scraped and analysed data for ScraperWiki, Shelter and Global Witness, built backends for Government Digital Service, created the whole stack for Sea Level Research and kicked off the NHS Digital Transformation.
I have a first class MEng degree in Engineering (Digital Communications) from Durham University.
All blog posts
- Wilderness 2025 - August 2025
- How to keep Heroku CLI logged in - January 2025
- Automating my dishwasher for fun and profit - August 2024
- I used AI to recommend talks at Wilderness festival - July 2024
- Review: Plug Me In (Heat) - Heat Pump Installer - July 2024
- How The Light Gets In 2024 - May 2024
- Calderstones Park, The Mersey Forest - February 2024
- Installing Syncthing on Synology with DSM 7 - January 2024
- Otterspool Park, The Mersey Forest - January 2024
- Back to Brick: Preparing for New Windows - January 2024
- Surprisingly high COâ‚‚ levels in the house - October 2023
- Wilderness 2023 - August 2023
- Replacing our front door - July 2023
- Upgrading our Gas Hob to Induction - June 2023
- The speech I gave at my Just Stop Oil trial - February 2023
- Paul Barnes' speech from Just Stop Oil trial - February 2023
- Adding a minimal Go backend to my Hugo static site - December 2022
- Reducing gas reliance with a solar diverter - November 2022
- A tweak to increase blood stocks & improve donor experience - April 2022
- Shutting down keyserver email address monitoring - January 2019
- Smart TVs in the bedoom - July 2018
- How The Light Gets In 2018 - May 2018
- Google Analytics with Do Not Track - April 2018
- A personal retrospective - February 2018
- Signing automated Expirybot emails with GPG - December 2017
- Sabbatical, week 3 - December 2017
- Sabbatical, week 1 - December 2017
- Randomize your WiFi MAC address on Ubuntu 16.04 - December 2017
- Writer's block - November 2017
- Expirybot emails PGP users before their key expires - July 2017
- Don't Like It? Block it! Internet filtering in libraries - March 2017
- The Internet Freedom Festival 2017 (Friday) - March 2017
- The Internet Freedom Festival 2017 (Wednesday) - March 2017
- The Internet Freedom Festival 2017 (Tuesday) - March 2017
- The Internet Freedom Festival 2017 (Monday) - March 2017
- Taking Back My Data, Part 1: Move from Dropbox to Nextcloud - December 2016
- Thoughts about decoupling PGP and email clients - May 2016
- Hardening my Development Machine - March 2016
- Playing with Network Rail Train Movements Data Feed - February 2016
- Hack the Hive: Connecting a Beehive to the Internet - February 2016
- Setting up a UK Limited Company - January 2016
- Building Software Users Love - October 2015
- My Barcamp 2015 Highlights - September 2015
- Hello, Thinking Digital 2015! - May 2015
- The Difference Between GPG, GnuPG, PGP and OpenPGP - March 2015
- GPG For Humans, Part 4: Preparing an Offline Machine - February 2015
- GPG For Humans, Part 3: Protecting your Primary Key - November 2014
- GPG For Humans, Part 2: Public Key Crypto Primer - November 2014
- GPG For Humans, Part 1: Why Care About Cryptography? - November 2014
- Bar Camp for Beginners - October 2014
- How Open Wifi Can Make a City Smarter - October 2014
- Improving Freecycle with SMS Alerts - August 2014
- Automating our Heroku deployments from Jenkins - July 2014
- Your Private Medical Record May Be At Risk From March 2014 - January 2014
- Screen Scrape Your Utility Bills - November 2013
- Resisting the Urge to Build (My New Startup Checklist) - October 2013
- Chilli Cam: Stop Motion Video using old Netbook - August 2013
- Painless merge conflicts in Git - July 2013
- Arduino Isn't Just For Hackers - July 2013
- MongoDB helps you be Lean - Brilliant for Startups - June 2013
- Python PEP8 Style Guide Checker for Vim - May 2013
- Arduino Due, Cortex-M3 and robots with radios - February 2013
- Packaging Python for Windows with Pyinstaller and Wine - February 2013
- Raspberry Pi project ideas - January 2013
- Speaking at Breakerfaire, 11th December 2012 - November 2012