We've provided an overview of the most important open source packages for processing and analyzing geospatial data. The question then becomes when to use a certain package and why. GDAL, OGR, and GEOS are indispensable for geospatial processing and analyzing, but were not written in Python, and so they require Python binaries for Python developers. Fiona, Shapely, and pyproj
were written to solve these problems, as well as the newer Rasterio library. For a more Pythonic approach, these newer packages are preferable to the older C++ packages with Python binaries (although they're used under the hood).
However, it's good to know the origins and history of all of these packages as they're all so widely used (and for good reason). The next chapter, which will be discussing geospatial databases, will build on information from this chapter. Chapter 5, Vector Data Analysis, and Chapter 6, Raster Data Processing, will specifically deal with the libraries discussed here,...