MoAm is an over-ambitious hobby project, and it is not science. It puts Earth's resources and Earth's people on one map and lets you look at the gap. Nothing here forecasts, recommends, or ranks anything — it is arithmetic on open data, shown honestly.
Every layer is poured into the same hexagonal grid (Uber's H3, resolutions 3 and 4 — cells of roughly 100 km and 40 km across). Population is summed per hex; every resource field (solar, crops, wind, tree cover, temperature) is averaged. The "mild climate" layer is the one transformed value: closeness of a hex's long-term average temperature to an 8–24 °C comfort band — the band is our own knob, and labelled as such. One deliberate rule — the equality principle — applies throughout: no region is ever shown at finer resolution than any other, even where finer data exists. The map is drawn on the Equal Earth projection, which preserves relative areas — a map about distribution should not inflate the rich north.
The headline number is the share of land hexes that hold half of all people, counted directly from the grid. "The average human's sunshine" weights each hex's solar potential by the people living there, then asks where that value ranks among all land hexes. Same for cropland. That's it — no model, no projection, no opinion.
Fully static — no server, no accounts, no tracking. Offline Python pipeline (rasterio · NumPy · H3) → hex JSON → TypeScript canvas renderer (d3-geo Equal Earth, H3, topojson). Type set in Inter and IBM Plex Mono. Built by one human with an over-ambitious streak, and Claude. Raw data is date-stamped and kept as obtained; a missing citation is treated as a bug.
Two kinds of question keep coming up: "why do you keep insisting this isn't science?" and "okay, but how does it actually work?" Here are both, in the open.
No — it's the most accurate label we have. Science makes falsifiable claims and submits them to peer review. MoAm makes none. Everything past the raw data is a choice: how much you value sun over soil, how densely people may pack, what counts as a "mild" climate, by when your ideal world should arrive. Those are values, not findings. The data underneath is real and cited to its source; everything built on top is a thought experiment you steer.
Absolutely not. "Optimal" only ever means "where the logic you chose would put people." It's a mirror, not a manifesto. The point was never the destination — it's the size of the gap between where humanity actually is and where any single logic would place it. That gap is the whole show.
No — and please don't read it that way. "Movers per year" is a way to make the misplacement legible: a distance expressed as a pace. It's a ruler, not a plan. Nobody should be relocated anywhere against their will; this is arithmetic about a hypothetical, set beside the ~7 million people the world already resettles each year so the scale means something.
Deliberately, all of it — and thank goodness humans don't actually arrange themselves by resource-optimisation. Stripping that away isn't a claim that it doesn't matter. It's what makes the gap visible. The distance between "logical" and "actual" is precisely the space where everything human lives.
Any map can be misread. That's why the framing is unmissable and why "optimal" never travels without its disclaimer. This tool argues for nothing. It hands you a lens and shows you the consequences of looking through it — the conclusions are yours to own.
The misplacement index. Each hex gets a "suitability" score: a weighted blend of the resources you care about, every one normalised across its own 5th–95th percentile so a strong wind hex and a sunny hex speak the same language. Then all 8.2 billion of us are poured into the world in proportion to that suitability raised to a power — because humans cluster in the very best places (half of us live on ~2.7% of the land), they don't spread evenly across every merely-adequate one; a plain linear spread floods every sunny hex, even the Sahara. The pour is capped at your density limit, by a water-filling step: a binary search for the single multiplier λ where the capped populations sum back to the real total. Misplacement is then half the total absolute difference between today's distribution and that ideal, as a share of everyone. Half, because every person who leaves one hex arrives in another — count both and you'd double it. (That clustering exponent is a chosen knob, not a law — one more value baked into the mirror.)
They're Uber's H3 cells: near-equal area everywhere, no fattening toward the poles, and every cell has six equidistant neighbours (squares mix close edges with far corners). One rule governs everything — the equality principle: every layer is shown at the same resolution, even where finer data exists, so no region is secretly privileged with more detail than another.
It's the Equal Earth projection, and "equal" is the entire point. A map about where people are must not inflate the wealthy global north the way Mercator does. Equal Earth keeps every hex's area honest; a distribution argument drawn on a distorting map would be lying before it started.
It's centred on the meridian where it's local midnight right now, creeping westward at Earth's true rate — 15° an hour. The gold layer is night-lights, so the planet's night side always faces you: the Earth quietly turning under the map. Grab it at world view and you can spin it yourself; zoom out first if you want the whole globe small beside the panels.
The one value we cook rather than measure. The input is real long-term average temperature; we score each hex by how close it sits to an 8–24 °C comfort band, fading to zero at −12 and 38 °C. That band is our knob — a stand-in for "pleasant" — and pleasantness is a judgement, not a fact, so it's flagged as ours wherever it appears.
Because the best open source for it — NASA's GRACE-FO gravity data — sits behind a login we haven't wired up, and we won't paint a fake or a loose proxy just to fill the slot. An honest hole beats a plausible-looking guess. It lights up when the real data is in, not before.
No. No server, no account, no analytics, no cookies — the whole thing is static files served from a CDN. Your entire scenario lives in the page's URL (that's what makes a link shareable), and nothing you do leaves your browser unless you deliberately share it.
Deep time. The HYDE dataset reconstructs human population back to 10,000 BCE, and the plan is to score misplacement against where people actually lived through history — a real yardstick instead of a hypothetical one. After that, a consequence engine: nudge the world and watch temperature and biomes shift in response. It's a hobby project climbing one rung at a time.