Skip to content

Gunnþór Karl Rafnsson: Maps and tools built on Iceland's public data, and a few experiments.

By day I work in data migration and integration. In my spare time I build things with public data, and use them as an excuse to experiment with AI.

Iceland in 481 dots, about 209 km² each. Each row starts as a count of its land, then moves to where that land is. Coastline: Natural Earth, public domain.

01 Selected work

Three live maps, three kinds of evidence.

A thousand years of recorded conflict, a live earthquake catalogue, and a wind forecast checked against real stations. Each one is built around a decision about what its data can honestly say.

Sagas of Blood & Fire on its parchment base map: Iceland covered in coloured markers for battles, raids and executions, with era and confidence filters above and a timeline of events from 875 to 1976 below.
Screenshotmap.gunnthor.is22 Oct 2026Map tiles © Esri. Source: Esri, USGS, NOAA

Sagas of Blood & Fire

01History mapLive

An interactive map of Iceland's historical battles and violent conflicts.

The decisionEvery event carries a confidence level, and saga-era places that are uncertain are marked as approximate instead of presented as fact.

Events
53, from 875 to 1976
Interface
Map, timeline, filters
Languages
English and Icelandic
Iceland Live: a dark map of Iceland with the last 24 hours of earthquakes as small orange and grey dots, headline figures across the top, regions ranked by unusual activity on the left, and an activity histogram below.
Screenshotlive.gunnthor.is22 Oct 2026Earthquake data from Veðurstofa Íslands at the time of captureBasemap © CARTO, © OpenStreetMap contributors

Iceland Live

02Live mapLive

A real-time map of earthquakes, volcanic systems and official warnings around Iceland.

The decisionEach region is compared only with its own past, so activity is ranked by how unusual it is there, not by raw count.

Source
Veðurstofa Íslands
Windows
1 hour to 30 days
Summary
Deterministic, no LLM
Vindur: wind over the Reykjavík capital region drawn as streaks of blue particles, with station arrows on the map, a time scrubber along the bottom and a panel of current readings on the right.
Screenshotwind-reykjavik.vercel.app22 Oct 2026Icelandic interface© OSM · Esri, HERE, Garmin · Open-Meteo · Veðurstofan

Vindur

03Weather mapLive

Live wind over the Reykjavík capital region, drawn as particles and scored against real observations.

The decisionIt grades itself: every station is checked against the model at its exact coordinates, with bias, MAE and RMSE on show.

Model
DMI Harmonie, about 2 km
Observations
19 Veðurstofan stations
Window
24 h back, 48 h ahead

02 More work

More work

Illustration, not a screenshotFasteign is not publicly launched yet

05Data explorerIn progress, not publicly launched

Fasteign

A map-first explorer of actual property sales in the Reykjavík capital region.

The simpler model won: a ridge regression lost to comparable sales on a time-separated holdout, so it stayed out of the product.

03 About

Messy in, ordered out.

Data migration · AI experiments · Software

I spend my working life moving data between systems that were never meant to talk to each other: reconciling shapes, chasing down the records that do not fit, and making sure nothing quietly disappears in transit.

Outside that, I build small things properly. Most of what is here started as a question I could not answer by searching, so I built the thing that answers it. I like projects where the hard part is the data model rather than the framework, and I would rather ship something narrow and finished than broad and vague.

Habits from migration work that show up in the projects

  1. Say what was measured and what was modelled.

    Vindur switches its station markers to model values the moment you scrub away from now, and says so. Iceland Live states that its dispersal runs are simulations before it lists a single one.

    Vindur case notesIceland Live case notes

  2. Sources outrank models.

    In Nafnaval, cited dictionary entries always win. AI-drafted meanings fill the gaps behind an óstaðfest badge and are never merged into the cited data.

    Nafnaval case notes

  3. Keep the simpler model when it wins.

    Fasteign tested a ridge regression against plain comparable sales on a time-separated holdout. The regression lost, so it stayed out of the product.

    Fasteign case notes

04 Contact

Happy to talk about data work, or any of these projects.