1. The MIT licence is community hostile - 2020 June 02

    The more I think about the MIT licence the more I think it encourages freeloading and other community hostile behavior. It also has very substantial issues with software patents that can, and do, derail projects.


    read more
  2. PyPi web API - 2020 May 12

    PyPi has a web API that will give you JSON encoded information about packages.


    read more
  3. Updating your setup.py files to the newer format - 2020 May 11

    One of the not so nice things about legacy installable python packages is the executable nature of setup.py files. This means amongst other things that you can't reliably determine the contents of some setup.py files without arbitrary code execution. This is what led to PEP 518 which specified a declarative metadata format that can be stored in easy to parse file. Updating is a pain though, but thankfully there's some tooling that makes this easier as I found out recently.


    read more
  4. Creating your own user events in pygame - 2020 April 21

    Here's how you can create your own user events in Pygame.


    read more
  5. Unicode whitespaces in Python - 2020 April 20

    Getting a list of all the Unicode whitespace characters is less straightforward than I would have hoped.


    read more
  6. The HTML abbreviation tag - 2020 April 16

    TIL there's a HTML tag for marking up abbreviations that helps readers by showing them how you have defined your abbreviations and acronyms, for example "TIL", that is natively supported by browsers.


    read more
  7. Finding out what a python script imports - 2020 April 16

    Finding out what a Python module imports


    read more
  8. Pylint false positives with C extensions - 2020 April 14

    Pylint can give you false positives for missing-member errors when C extensions are involved, here's why and what you can do to avoid the issue.


    read more
  9. Have we reached peak Python? - 2020 April 09

    Has Python reached the peak of the hype cycle?


    read more
  10. Stringly typed functions - 2020 March 28

    An overuse of strings when you could use better types is an antipattern I commonly see when doing code review of distressed systems. This tends to come up more often in older languages that have weaker type systems, but the issue can come up in more modern language also.


    read more

« Page 2 / 10 »