Skip to content

Instantly share code, notes, and snippets.

@underchemist
Created October 10, 2024 04:53
Show Gist options
  • Save underchemist/d850b18a1ce81d57e5652ca98f527376 to your computer and use it in GitHub Desktop.
Save underchemist/d850b18a1ce81d57e5652ca98f527376 to your computer and use it in GitHub Desktop.
e84 tech radar - tools

Geopandas

  • Moved from trial to adopt
  • You're probably already familiar, but recent under-the-hood upgrades to IO (pyogrio over fiona) and geometry functionality (shapely 2.0), both of which are aimed at better vectorized operations.
  • In practice, things are more streamlined and potentially you spend less of your life trying to load a 20 GB GeoJSON into a DataFrame.

pyogrio and shapely

  • pyogrio is optimized for bulk reading/writing of spatial vector data

Pyogrio is fast because it uses pre-compiled bindings for GDAL/OGR to read and write the data records in bulk. This approach avoids multiple steps of converting to and from Python data types within Python, so performance becomes primarily limited by the underlying I/O speed of data source drivers in GDAL/OGR. We have seen >5-10x speedups reading files and >5-20x speedups writing files compared to using row-per-row approaches (e.g. Fiona).

  • shapely 2.0 brings array/vectorized functionality from pygeos, and in general better interoperability with numpy

uv

  • I suggested this to Greg a few weeks ago and also spent some time tinkering with and enjoying it
  • Manage python environments, multiple python versions, and project/app dependency management in one tool with minimal overhead
  • Avoids bootstrapping issues that some other tools like poetry have that require python to already be installed, compatible with python installs from other distributions (conda, system, etc.)
  • fast

AI Coding assitants

kepler.gl

  • Geospatial data analysis/visualization framework using MapLibre GL and deck.gl
  • related: lonboard, deck.gl rendering of spatial data in Jupyter notebooks

Dovetail

  • Notion-like (ai integration, rich document editing) designed for client/user interviews and notetaking.
  • Looks flashy, I imagine it can be quite useful depending on how much effort you put into it, but probably costs a lot of money

Keeping an eye on

  • duckdb
  • rastervision/torchgeo
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment