1. My bank workshop experience - 2022 February 17

    Just as the Covid pandemic was starting I ran a workshop that was easily the worst one I've run in my career. Despite things going poorly there was a huge learning opportunity that I'm glad I had. The banking industry has changed dramatically and I wasn't prepared for it.


    read more
  2. Getting CORS to work with Flask - 2021 September 14

    Getting CORS to work can be a pain, here's an annoying issue I ran into with flask.


    read more
  3. Another reason why piping the outputs of curl into bash is a security risk - 2021 September 05

    Piping the output of curl into bash is a bad idea for a lot of reasons, please don't do it and don't suggest that other people do it either.


    read more
  4. Type annotations in Python 3.7 - 2021 August 31

    Forward type annotations are significantly easier in Python 3.7+ since PEP 563 landed in the language, here's how you can use them.


    read more
  5. Numpy and mypy type checking - 2021 August 11

    Getting numpy to work with mypy requires installing the right package and making a few configuration changes.


    read more
  6. SQLAlchemy and mypy type checking - 2021 August 10

    Getting SQLAlchemy to work with mypy requires installing the right package and making a few configuration changes.


    read more
  7. Beware of Python assertions in production code - 2021 July 18

    Python assertions have a few important downsides that need to be discussed.


    read more
  8. Sentinel objects and mypy type checking - 2021 July 16

    There's a few annoying edge cases with using sentinel objects with mypy. Since I think both sentinel objects are useful and mypy is useful I want to be able to use both.


    read more
  9. Javascript support in this blog - 2021 July 05

    I've finally got around to supporting javascript in this blog.


    read more
  10. WordPress enumerations - 2021 June 09

    While looking through my server logs the other day I saw a bunch of suspicious requests looking to scan/exploit WordPress installs.


    read more

« Page 2 / 13 »