x lines of Python: Physical units

Difficulty rating: Intermediate Have you ever wished you could carry units around with your quantities — and have the computer figure out the best units and multipliers to use? pint is a nice, compact library for doing just this, handling all your dimensional analysis needs. It can also detect units from strings. We can define our own units, it knows about multipliers (kilo, mega, etc), and it even works with numpy and pandas. To use…

Continue reading


The hack returns to Norway

Last autumn Agile helped Peter Bormann (ConocoPhillips Norge) and the FORCE consortium host the first geo-flavoured hackathon in Norway. Maybe you were there, or maybe you read about the nine fascinating machine learning projects here on the blog. If so, you’ll know it was a great event, so we’re doing it again!Hackthon: 18 and 19 SeptemberSymposium: 20 SeptemberCheck out last year’s projects here. Projects included Biostrat!, Virtual Metering, sketch2seis, and AVO ML — a really…

Continue reading


Impact structures in seismic

I saw this lovely tweet from PGS yesterday:Our basin studies team spotted this on fast-track imaging from Republic of Guinea. A 7.5 km diameter depression, with no salt or mobile shale, nor dissolution of fluid escape. We interpreted the structure as a complex meteorite impact crater. https://t.co/Z4TUOtsv54 #meteorite pic.twitter.com/hScJ31SoE3— PGS (@PGSNews) August 1, 2019 Kudos to them for sharing this. It’s always great to see seismic data and interpretations on Twitter — especially of weird…

Continue reading


Is your data digital or just pseudodigital?

A rite of passage for a geologist is the making of an original geological map, starting from scratch. In the UK, this is known as the ‘independent mapping project’ and is usually done at the end of the second year of an undergrad degree. I did mine on the eastern shore of the Embalse de Santa Ana, just north of Alfarras in Catalunya, Spain. (I wrote all about it back in 2012.)The map I drew…

Continue reading


Training digital scientists

Gulp. My first post in… a while. Life, work, chaos, ideas — it all caught up with me recently. I’ve missed the blog greatly, and felt a regular pang of guilt at letting it gather dust. But I’m back! The 200+ draft posts in my backlog ain’t gonna write themselves. Thank you for returning and reading this one.Recently I wrote about our continuing adventures in training; since I wrote that post in April, we’ve taught…

Continue reading


TRANSFORM happened!

How do you describe the indescribable?Last week, Agile hosted the TRANSFORM unconference in Normandy, France. We were there to talk about the open suburface stack — the collection of open-source Python tools for earth scientists. We also spent time on the state of the Software Underground, a global community of practice for digital subsurface scientists and engineers. In effect, this was the first annual Software Underground conference. This was SwungCon 1.The spaceI knew the Château…

Continue reading


Feel superhuman: learning and teaching geocomputing

Diego teaching in Houston in 2018. It’s five years since we started teaching Python to geoscientists. To be honest, it might have been premature. At the time, Evan and I were maybe only two years into serious, daily use of Python. But the first class, at the Atlantic Geological Society’s annual meeting in February 2014, was free so the pressure was not too high. And it turns out that only being a step or two…

Continue reading


The order of stratigraphic sequences

Much of stratigraphic interpretation depends on a simple idea: “Depositional environments that are adjacent in a geographic sense (like the shoreface and the beach, or a tidal channel and tidal mudflats) are adjacent in a stratigraphic sense, unless separated by an unconformity.” Usually, geologists are faced with only the stratigraphic picture, and are challenged with reconstructing the geographic picture.One interpretation strategy might be to look at which rocks tend to occur together in the stratigraphy.…

Continue reading


Machine learning project review checklist

Imagine being a manager or technical chief whose team has been working on a machine learning project. What questions should you be thinking about when your team tells you about their work?Here are some suggestions. Some of the questions are getting at reproducibility (for testing, archiving, or sharing the workflow), others at quality assurance. A few of the questions might depend on the particular task in hand, although I’ve tried to keep it pretty generic.There…

Continue reading


What makes a good benchmark dataset?

An Ordance Survey benchmark. Last week I mentioned that we need more open benchmark datasets in geoscience. I think benchmarks are important for researchers to work on, as a teaching aid, and as a way for us to objectively measure how well we’re doing on a particular problem. How else can we know how we’re doing, or compare Company X’s claim with Company Y’s? What makes a good benchmark?I haven’t unearthed any guides from other…

Continue reading