runmadan

Measure.Model.Decide.

I'm Ramadan, a petroleum engineer at an oil and gas operator in Indonesia. I read wells, data and my own training the same way: collect what actually happened, find the pattern, then act on it. This page is the work that comes out of that habit.

One method, three fields

Production engineering taught me to trust data over opinion. Building tools made that faster. Endurance training is where I test it on myself every morning.

Wells

Production engineering on mature onshore fields.

  • Well surveillance and production analysis
  • Workover and well intervention candidate screening
  • Electric submersible pump (ESP) design
  • Tracking lost production and its causes

Data

Tools that turn scattered records into decisions.

  • SQL on Oracle and PostgreSQL
  • Power BI, Power Query and Excel models
  • Python and Streamlit apps
  • Automation and AI agents with n8n and Claude

Endurance

Marathon runner, training for triathlon in 2027.

  • Training planned from my own Garmin data
  • Sleep, HRV and load read every morning
  • Personal bests from 5K to the marathon
  • Results on the training page

Projects

Built in the evenings, used every day. None of them shows data from my employer.

Live training pipeline

The distances and personal bests on the front page are not typed in. After every Garmin sync, my own system adds up the week and the year, checks the records against Garmin and publishes them to this website.

  • Garmin API
  • PostgreSQL
  • n8n
  • GitHub API
  1. Garmin watchruns, rides and swims
  2. Life OS databasePostgreSQL, twice a day and on request
  3. n8n workflowsums distance per discipline, reads records
  4. GitHubcommits the new numbers only when they change
  5. runmadan.comdeployed within minutes

Life OS

A personal AI system. One orchestrator routes each message to a specialist agent; PostgreSQL with pgvector is its memory, Telegram is how I talk to it and Notion is its dashboard. It writes my morning brief, plans training from Garmin data, coaches my English practice and keeps my documents searchable by meaning.

  • Claude
  • n8n
  • PostgreSQL + pgvector
  • Telegram
  • Notion
  • Docker
Orchestratorroutes every message
Coachtraining and recovery
Briefingmorning and evening
CareerEnglish and study plan
Memoryfacts kept nightly
Documentssearch by meaning
Opsbackups and alerts

data-mask

A browser tool that masks spreadsheets before they are shared: names become codes that still join across tables, numbers are scaled so trends survive, dates move together and free text is cleaned. Nothing is uploaded; the page has no network access at all.

  • JavaScript
  • Web Crypto
  • CSV and Excel
welldateoil, bbl/dremarks
ALPHA-022026-09-01159.0Waiting on rig for ALPHA-02
WELL-KNRQK3VR2025-08-10173.26Waiting on rig for WELL-KNRQK3VR

Synthetic demo data: the first row before masking, the second after.

Petronome

A team of subsurface AI agents that work one well together, the way a geoscience and engineering team would, with an engineer reviewing every result.

petronome.id
Geologist Geophysicist Petrophysicist Reservoir engineer Production engineer