George Watson-Hyde

# Data Scientist


Your connection to this website is end-to-end encrypted using Transport Layer Security (TLS). This makes it difficult for eavesdroppers to read or interfere with your communications with this website. The CDN delivering this website (provided by CloudFlare) is configured to support only TLS versions 1.2 and 1.3. It is recommended that you use a browser that supports the latest version of the protocol.

Both and have valid SSL certificates issued via CloudFlare and Let’s Encrypt. The domain, including all its subdomains, supports HTTP Strict Transport Security (HSTS) and has been submitted to the Chrome preload list. This domain receives an A+ rating from SSL Labs. The domain is deliberately preserved as a backup in case of an issue with the HTTPS/HSTS configuration, but still fully supports HTTPS and receives an A rating. The canonical domain for this website is It is strongly recommended that you use this domain to access this website.

I recommend also using a private DNS protocol such as DNS over HTTPS or DNS over TLS to resolve domain names. Nameservers supporting these protocols include by CloudFlare.

I can do very little to prevent your internet service provider, employer, government, or parents from tracking your activity. If you wish to secure your connection further, consider connecting via an anonymous proxy, a VPN, or the Tor network.

Data collection

I offer the facility to subscribe to new blog posts by email. This service is provided by You are under no obligation to use this service, but if you do I will be able to see your email address and the date on which you subscribed. This information is securely stored on’s servers. You can unsubscribe at any time. If you prefer not to subscribe by email, you can see all new posts by checking the blog regularly or subscribing to the Atom feed using your favourite RSS reader.

Like all websites, some information may be stored in my server logs regarding your visit to this website. These logs include information such as your IP address and User-Agent string, the resources on this server you attempt to access, the address of the page that referred you to the resource, and the status code returned to you by the server, along with the date and time. This information does not identify you personally, and is necessary for the operation and stability of the server. The log files are stored securely on a virtual private server hosted by DigitalOcean, and are regularly rotated. No copies are ever made of any part of these logs.


I may store the following first-party cookies on your device:

  • __cfduid
  • cookieconsent_status
    • Purpose: Records that you have dismissed the cookie notification banner
    • Content: A Boolean (true/false) value
    • Provider: Cookie Consent by Insites
    • Tracking: This cookie cannot be used to identify you personally, and provides no capability for cross-site tracking.
    • Effects if disabled: Disabling or deleting this cookie might result in you seeing the cookie notification banner every time you visit this website.
    • Source code: The Cookie Consent by Insites source code is available on GitHub.
  • mjx.*
    • Purpose: Stores your MathJax preferences, used on pages with embedded equations
    • Content: Several cookies containing a series of values representing your preferences
    • Provider: MathJax
    • Tracking: This cookie cannot be used to identify you personally, and provides no capability for cross-site tracking.
    • Effects if disabled: If you disable or delete this cookie, equations should still display, but some functionality and customisability may be lost.
    • Source code: The MathJax source code is available on GitHub.
  • style
    • Purpose: Stores your chosen stylesheet, if you choose to interact with the stylesheet selector in this website’s footer
    • Content: The name of your chosen stylesheet; may be automatically set with the value default
    • Tracking: This cookie cannot be used to identify you personally, and provides no capability for cross-site tracking.
    • Effects if disabled: Deleting or disabling this cookie will result in the stylesheet being reset to default on every new page load; you can still temporarily change your stylesheet by using the buttons in the footer or your browser’s built-in stylesheet chooser.
    • Source code: The source code for this cookie is available in this website’s GitHub repository.

Other cookies may be stored by the following organisations. Links to their cookie policies are provided below.

  • CloudFlare
  • Google (on pages with embedded content from Google services)
  • Remarkbox (on pages with embedded comments sections)
  • Twitter (on pages with embedded Twitter widgets)

You can probably disable cookies on a per-site basis in your browser settings. See your browser’s help pages for information on how to do this. You can also delete cookies at any time. See the Opting Out section for more information.

Other organisations

I may embed content from other organisations. This content is subject to those organisations’ privacy policies. If you do not agree to their terms, it may be possible to disable tracking by visiting those websites. Otherwise, you can always block this content; see the Opting Out section for details.

For your convenience, a non-exhaustive list of such organisations is provided below, including links to their privacy policies. I recommend that you familiarise yourself with these, since these all form core parts of the modern Web infrastructure and are widely used across many websites.


This website does not use web analytics beyond the information stored in Apache server logs and CloudFlare traffic data.

Prior to 21 July 2020, Google Analytics provided web analytics on this website. This consisted of aggregate data and does not allow me to identify you personally. This information is stored on Google’s servers. See Google’s privacy policy for more information.

The Google Analytics code was never loaded if your browser sent a Do Not Track (DNT) header.

Opting Out

You can opt out of cookies by disabling them for this website — or for all websites — in your browser settings. Existing cookies can be deleted in your browser, probably near where your history is stored. You could also choose to browse in Private/Incognito mode.

You can opt out of some third-party analytics by sending the Do Not Track (DNT) header with your HTTPS request. You can probably enable this in your browser’s settings.

You can disable embedded widgets such as comments and Twitter timelines by disabling JavaScript in your browser, or by using one of the many browser extensions that allow you to block specific frames of external content. This prevents these companies from tracking you. Where it is reasonable to do so, an appropriate fallback will be provided.

Your User-Agent string can probably be changed in your browser. Your IP address can be masked by using a web proxy or VPN service, many of which are available for free. Any referrer information can be removed from your request by pasting the URL directly into your address bar instead of following a hyperlink. If you’re privacy-conscious enough to care about these things, you probably already know what you’re doing.

These opt-out mechanisms are simple and standardised, and provide fine-grained control across multiple websites. I consider this superior to the deliberately difficult, confusing, and non-standard mechanisms provided by most websites in the name of GDPR compliance.


I reside in England, in the United Kingdom. My server is hosted in London, UK, by DigitalOcean, a company based in New York, United States.

Every effort has been made to comply with the laws of England & Wales and the wider United Kingdom. I am not bound by the laws of any other legal system; it is your responsibility to ensure that you are not breaking any local laws by visiting or interacting with this website.

I am not responsible for the content or policies of most external websites, even if I embed or hyperlink to them. Linking to, embedding, discussing, or recommending an external website or organisation does not imbue me with responsibility for that website or organisation’s actions, and should not be viewed as an endorsement of their policies. Other websites will have privacy policies that differ from this one. Nothing in this privacy policy applies to other websites, and it is your responsibility to ensure that you agree to the terms of any websites or organisations with which you choose to interact.

Transparency Report

  • I have never received any request for personal information regarding any visitor to this website from a government or law enforcement agency.
  • I have never been enjoined or otherwise legally prevented from publishing any material on this website.

The above notices are correct as of commit 22c162e on 8 September 2023. The largest number of notices ever displayed above is 2. What’s this?

Updates and Queries

This policy was last updated in commit 7368f3a on 9 July 2021. All changes to this privacy policy will be recorded in the commit history of the GitHub repository associated with this website. You can subscribe to an Atom feed provided by GitHub if you wish to be notified of commits involving changes to this policy.

If you have any queries, contact [email protected] or use one of the other contact media listed on the Contact page.