For Developers

Build with Python, AI, and scientific data. Explore how AI agents work, turn a Python script into an application, and develop the numerical and data skills behind scientific software. Start with a concept explainer or follow a project walkthrough. The developer paths below introduce the tools as you go; geoscience examples provide real problems to work on.

Find your starting point Browse all developer posts Explore GitHub projects

Choose a path

Understand the ideas

AI agents & machine learning

Learn how tools, state, and feedback turn a model into an agent, then explore how it can choose a useful next observation.

  1. How an agentic harness works
  2. Expected information gain, step by step

Concept explainers with worked scientific examples.

Work with data

Scientific Python & algorithms

Work with NumPy arrays, organize Python code, and understand the numerical methods behind the results.

  1. Start with NumPy arrays and vectorization
  2. Python classes and object-oriented design
  3. Explore numerical methods

Python fundamentals, data workflows, and algorithm walkthroughs.

Make something useful

Apps, APIs & DevOps

Build a local voice journal, or follow an API project through testing, continuous integration, and monitoring.

  1. Build a FastAPI + Whisper journal
  2. Test and monitor a FastAPI service
  3. Get comfortable with Docker

Project walkthroughs with linked source code, plus container basics.

Keep building

Find more web and cloud projects, explore the tutorial collections, or get new Earth Inversion articles by email.

All posts on this track (92)

Prefer one chronological stream of everything? See all recent posts.

2026 9

Agentic Harness Explained: How AI Agents Get Work Done

Agentic Harness Explained: How AI Agents Get Work Done

12 minute read      MACHINELEARNING     

An agentic harness gives an AI model tools, context, memory, permissions, and feedback. See how the pieces work together in a scientific Python workflow.

A monitored building with a cracked lower joint and a slower vibration trace, suggesting a loss of stiffness.

When Frequency Changes Signal Structural Damage

14 minute read      STRUCTURAL-HEALTH-MONITORING     

An unexpected drop in a building’s natural frequency is the structure reporting that it has lost stiffness — usually the first sign of damage. Here is why to...

2025 1

MacOS File Indexing using Python

MacOS File Indexing using Python

4 minute read      UTILITIES     

A Python-based solution for indexing and searching files on a macOS system using SQLite, FAISS, and semantic search.

2024 9

Mastering Large Data Processing with mpi4py in Python

Mastering Large Data Processing with mpi4py in Python

6 minute read      DATASCIENCE     

Explore the power of mpi4py for simplifying data distribution in parallel computing with its efficient broadcast functionality, which seamlessly sends data f...

2023 4

2022 8

How to set up SSH-Keys for Github

How to set up SSH-Keys for Github

4 minute read      UTILITIES     

You will learn how to generate and set up an SSH key for github so that you don’t need to always type your username and password when accessing github repo.

How to load dynamic libraries in C/C++?

How to load dynamic libraries in C/C++?

4 minute read      UTILITIES     

We will see how to load shared libraries in C/C++. We will write a library to convert km to degrees and vice-versa. Then we create a utility program to conve...

Create beamer slides using Python

Create beamer slides using Python

3 minute read      UTILITIES     

We will use the Python package to create beamer presentation and append existing figures to each slide

2021 42

How to deal with irregularly sampled time series data

How to deal with irregularly sampled time series data

6 minute read      TECHNIQUES     

While analyzing time series data, we often come across data that is non-uniformly sampled, i.e., they have non-equidistant time-steps. Infact, most of the re...

How to install jekyll on Apple M1 Macbook

How to install jekyll on Apple M1 Macbook

5 minute read      BLOGGING     

If you have recently bought a M1 mac and have been doing blogging using Jekyll, then you must have experienced that installing Jekyll on the M1 architecture ...

How to create a simple Makefile in linux

How to create a simple Makefile in linux

6 minute read      UTILITIES     

We learn how to write a Makefile to automate the compilation of our source code. We will use one example from Fortran.

Introduction to Numpy for scientific computing

Introduction to Numpy for scientific computing

8 minute read      UTILITIES     

This tutorial gives a brief description of scientific computing using numpy by introducing arrays, methods, attributes, random numbers, indexing, broadcastin...

The right way to loop in Python (codes included)

The right way to loop in Python (codes included)

6 minute read      TECHNIQUES     

What is the fastest and most efficient way to loop in Python. We found that the numpy is fastest and python builtins are the most memory efficient.

2020 14

Writing NetCDF4 Data using Python (codes included)

Writing NetCDF4 Data using Python (codes included)

6 minute read      UTILITIES     

NetCDF file format has been designed for storing multidimensional scientific data such as temperature, rainfall, humidity, etc. In this post, we will see how...

How to insert equation numbering in MS Word

How to insert equation numbering in MS Word

3 minute read      UTILITIES     

It is essential to insert equation numbers in your thesis and/or any scientific paper. In this post, I will show you some of the easiest ways to insert equat...

Reading NetCDF4 Data in Python (codes included)

Reading NetCDF4 Data in Python (codes included)

10 minute read      UTILITIES     

In Earth Sciences, we often deal with multidimensional data structures such as climate data, GPS data. It ‘s hard to save such data in text files as it would...

Writing scientific papers in Ulysses

Writing scientific papers in Ulysses

5 minute read      UTILITIES     

Ulysses is a natural, freestyle way of writing. If you got any idea, just write it down, worry about the format and other things when you’re done. Don’t let ...

Some Handy Mac Tweaks [macOS]

Some Handy Mac Tweaks [macOS]

2 minute read      LIFEHACKS     

Some handy tweaks for mac like relocating default screenshot location, renaming batch files etc

Introduction to Automating Mac [macOS]

Introduction to Automating Mac [macOS]

1 minute read      LIFEHACKS     

Mac can be easily automated by the help of several tools such as automator, quick actions, applescripts

2019 4

Using GitHub for Team Collaboration

Using GitHub for Team Collaboration

10 minute read      TECHNIQUES     

Tutorial on how to use Git and GitHub for team collaboration on a project. Content includes installing, setting up, creating a repository, making commits, un...

2017 1

Introduction to Python for beginners

Introduction to Python for beginners

4 minute read      TECHNIQUES     

In this tutorial post, I give a quick demo of how to install Python (using anaconda) and then getting started with writing simple scripts.

Curious what the code is used for?

See how these ideas are applied to seismic data, with introductions to the domain-specific methods: