Tips for success installing python packages

Although python has a functional story around packaging, there are plenty of footguns for people who only occasionally dabble with package management. This situation is fairly common in my line of work, when a project is started, the project team get set up with working developer environments, and then happily forget about packaging problems for the next x months until the next project starts. So this is a quick reference I hope to point people to the next time I get “my python environment isn’t working / I can’t install package x questions”.

Data Roaming

I’ve recently been on an overseas trip, and it seems without fail that the concept of mobile roaming charges causes confusion and headaches for me (or perhaps more specifically my travelling companions). This is a short post to crystallise what I’ve re-learnt and to have something to refer to There are a few related concepts at play: Roaming - whether you can do anything (make calls, send messages, emergency calls, access the internet) with your phone using cellular data.

Remote Access with SSH Quickstart

This is a post that I hope to be able to point someone to the next time I’m teaching someone how to ssh into a machine. I’m sure there are better posts out there on this, but I want this to be terse and pragmatic, without a whole lot of backstory. So you want to log into a remote server, either a local server computer or on the cloud. Usually, I’m teaching a windows speaking audience, where I personally use WSL for ssh, but these instructions are also geared to powershell.

Setting up a pandas/main environment for GeoPandas

Although it’s not something I tend to advertise very often, I’m a maintainer for GeoPandas which is the de-facto standard tool for tabular geospatial analysis in Python. My contributions here wax and wane here with the amount of free time and mental space I have to volunteer. As part of this, we keep the software in sync with developments in pandas, and our CI tests against pandas/main. From time to time (more frequently with the upcoming pandas 2.

Exploring the cross platform dependency management situation in Python - Part 2: piptools internals

This is a continuation of [my previous post about pip-tools]({{< ref “python_dep_management.md” >}}), and the unsatisfying conclusion that it doesn’t handle generating cross platform requirements particularly elegantly. I started this investigation with the premise that it should be possible to generate a cross-platform environment specification from a single computer. This post determines the validity of that premise, by taking a peek at the internals of the pip-tools and its dependency solver.