# Steps Ventures — full text > We build deeptech companies and the market-intelligence tools behind them. Engineer-run, revenue-first. Every article published at https://www.stepsventures.com/blog, in full, newest first. The map of the whole studio is at https://www.stepsventures.com/llms.txt. Contact: mike@stepsventures.com --- title: "The best model for reading a page depends on the script" description: "On clean Persian typeset print, Gemini 2.5 beats 3.x by roughly three times. On the nastaliq script Afghan lithographs actually use, the ranking flips and stays flipped, and the model that wins the first test is the worst reader in the second." date: 2026-08-12 topic: "Method · model choice" author: "Mike German" publisher: "Steps Ventures" canonical: https://www.stepsventures.com/blog/model-choice-is-script-dependent --- # The best model for reading a page depends on the script *On clean typeset print one generation wins by three times. On the nastaliq these lithographs actually use, the ranking flips and the earlier winner becomes the worst reader tested.* August 2026 · Method · model choice · Steps Ventures We needed to pick a model to read 69,000 pages of Afghan print. The sensible way to do that is to benchmark the candidates on Perso-Arabic text and take the winner. We did, and it nearly cost us the whole project, because which model wins depends entirely on which script you test. ## Three benchmarks, four models We scored four Gemini models against human ground truth on three different kinds of Perso-Arabic page. Clean typeset naskh, from the OpenITI corpus. Handwritten nastaliq manuscript, from OpenITI MAKHZAN with line-level human transcription. And the thing we actually cared about, real lithographed nastaliq from the Afghanistan Digital Library. On clean naskh print, the 2.5 generation wins by roughly three times, and 2.5-flash ties 2.5-pro at flash prices. That is a clear, comfortable result, and it points straight at the cheap model. On nastaliq the ranking inverts. Gemini 3.x wins decisively on the manuscript benchmark and stays ahead on the real lithographs. And 2.5-flash, the model the first benchmark recommended, is the single worst reader of the four on lithograph nastaliq by a wide margin. ## Why this was nearly expensive Our pipeline had already distilled a cheap student model into 2.5-flash, on the reasoning that it matched the expensive teacher. It did match, on a benchmark where the teacher was also a 2.5 model. That comparison was circular. Independent gold showed the student was the worst available reader on the script we were actually reading. The whole distillation target was wrong, and no amount of additional training data would have fixed it, because the ceiling was the base model. The tell we missed for months is that our accuracy work and our model choice were validated against each other rather than against anything outside the system. ## What to take from it Script is not a detail of a text-recognition benchmark, it is the axis the result turns on. Naskh and nastaliq are both Perso-Arabic and both read right to left, and a model can be three times better at one and worst-in-class at the other. If you are choosing a model to read a specific corpus, benchmark on that corpus, or on the closest public material to it, and treat a result from adjacent material as a hint rather than a decision. The second lesson is about who grades. If your candidate and your reference come from the same model family, you have measured family resemblance rather than accuracy. Build the answer key from a different vendor, or from real human transcription where any exists. ## One caveat on the numbers The absolute error rates on the lithograph column are inflated, because the reference is a modern printed edition and part of the gap is editorial rather than a misreading. The cross-model ranking is the decision-relevant signal, and it is consistent across all three benchmarks. We would not quote the absolute figures without the caveat, and we say so on the archive itself. ## Related - [There is no ground truth for Afghan lithographs](https://www.stepsventures.com/blog/no-ground-truth-for-afghan-print) - [The forty pages that lied](https://www.stepsventures.com/blog/the-forty-pages-that-lied) - [Method, accuracy and limits](https://afghanpress.org/about.html) --- --- title: "The intervention that failed usefully" description: "Cropping a page into regions before reading it cost eleven times as much and produced no measurable accuracy gain. It was still worth building, because it rescued eight percent of pages that otherwise returned nothing at all." date: 2026-08-12 topic: "Method · negative results" author: "Mike German" publisher: "Steps Ventures" canonical: https://www.stepsventures.com/blog/the-intervention-that-failed-usefully --- # The intervention that failed usefully *Cropping pages before reading them cost eleven times as much for no measurable accuracy gain. It shipped anyway, because it rescued eight percent of pages that returned nothing at all.* August 2026 · Method · negative results · Steps Ventures The most obvious way to improve machine reading of a dense newspaper page is to stop asking the model to read the whole page at once. Detect the columns and blocks first, crop them, read each one separately. Everyone who has looked at a page of nineteenth-century Afghan newsprint has this idea within about a minute. We built it. On a fair test it produced no accuracy gain at all, at about eleven times the cost. And we shipped it anyway. Here is why both halves of that are true. ## The clean test All 102 gold pages, whole-page against layout-first, same prompt, same model, same pages. The only variable was the cropping. Paired across the 91 pages both arms scored, the median difference was −0.0035 in favour of not cropping, layout-first won 41 of them, and the sign test came back at p = 1.0. That is a coin flip, and arguably a slight loss. An earlier version of this experiment had reported a 46% improvement. That number came from the forty easiest pages in a difficulty-sorted file, and it is now retired. ## The part the average hides Whole-page reading produced no scoreable output at all on 8 of the 102 pages. Not a bad reading. Nothing. Layout-first scored all 102, and those eight came in at a perfectly respectable median. It failed on zero pages where whole-page succeeded. That changes the accounting. If you score a total failure as zero rather than excluding it, which is the only honest way to look at it when you are reading a whole collection, median yield goes from 0.376 to 0.406. About eight percent of the corpus moves from nothing to a usable read. The median across the pages that both methods could handle is still a coin flip. Both facts are true at once, and only one of them shows up in the headline number. ## What we actually shipped Not the default. Cropping means roughly eleven model calls per page against one, so making it the default would have multiplied the bill by an order of magnitude to move the median by nothing. Instead it is a fallback: read the page whole, and if the output comes back empty, too short, or failing its sanity check, re-read that page with cropping. That buys the entire eight percent rescue at roughly eight percent of the cost. The general shape is worth naming, because it comes up constantly in this kind of work. An intervention with no effect on the median can still be the difference between having a page and not having it. Averages are the wrong instrument for finding that out. Look at the failures separately, count them as zero rather than dropping them, and ask what the intervention does to the tail rather than to the middle. It is also a reminder that "it did not work" and "do not build it" are different conclusions. This one did not work at the thing we built it for, and it is in production for something else. ## Related - [The forty pages that lied](https://www.stepsventures.com/blog/the-forty-pages-that-lied) - [Ninety percent of the bill was thinking](https://www.stepsventures.com/blog/ninety-percent-of-the-bill-was-thinking) - [The Afghan Press Archive](https://afghanpress.org) --- --- title: "There is no ground truth for Afghan lithographs" description: "No one has hand-transcribed a page of the Afghanistan Digital Library, so there is nothing to score a machine reader against. Here is how you manufacture ground truth from a modern reprint, and what that measurement can and cannot tell you." date: 2026-08-12 topic: "Archives · ground truth" author: "Mike German" publisher: "Steps Ventures" canonical: https://www.stepsventures.com/blog/no-ground-truth-for-afghan-print --- # There is no ground truth for Afghan lithographs *Nobody has hand-transcribed a page of this collection, so there is nothing to score against. Here is how you manufacture a benchmark, and what it cannot tell you.* August 2026 · Method · ground truth · Steps Ventures Every claim about how well a machine reads a page rests on a page somebody already read by hand. For Afghan lithograph printing of the 1870s to the 1930s, that page does not exist. We looked hard. There is no page-level human transcription of the Afghanistan Digital Library anywhere, and as far as we can tell there is none for early Afghan lithograph print in general. That is an awkward position. You have 69,624 pages of machine-read text and no way to say how good it is. ## Manufacturing a reference The way out is that some of these texts were reprinted in modern type. A modern edition is clean, and a model reads clean type very well. So you read the modern edition, align it page by page against the original scans, and have a model adjudicate every candidate pair with explicit instructions that shared author, topic and era are not evidence of a match. What survives is a set of verified image-to-text pairs, for the price of the compute. For us that produced 102 aligned pairs of lithographed Kabul nastaliq, matching the Siraj al-akhbar newspaper against the 2008 reset edition of its own author’s collected articles. As far as we know that benchmark did not previously exist. The method transfers to any corpus with a modern reprint, and the code is open. ## What the number actually means On that benchmark, in the configuration we used to read the whole collection, the median character error rate is 0.361. Roughly two thirds of characters agree. That sounds bad and it overstates how bad the reading is, for a reason that has nothing to do with the machine. A modern editor normalises spelling, adds punctuation, and regularises archaic forms. A Kabul printing may follow a different recension of the text entirely. So a chunk of that 0.361 is the distance between a 1911 lithograph and a 2008 reprint, not a misreading. We measured that effect separately at about 0.19, and here is the part it is tempting to skip: we measured it on a different pairing, classical verse against a canonical text, not journalism against its author’s reprint. Carrying it across is an analogy. It is not a measurement. Subtracting it entirely would imply about 83% of characters correct, and nobody has verified that. ## Why we publish the uncomfortable version It would be easy to lead with a better number. We have one. On human-transcribed Persian nastaliq manuscripts the same model family reads at about 93% of characters. That figure is real and it is about a different corpus, in a different medium, and quoting it as this archive’s accuracy would be a lie of exactly the kind that is hardest to catch, because every individual word of it is true. The first person to check will be a subject specialist with the page open beside them. If the published number does not survive their first ten minutes, nothing else on the site is worth anything either. ## The ask The single most valuable thing anyone could give this project is a handful of hand-transcribed pages of Afghan lithograph print. Not a thousand. Twenty would change what we can say. If your institution holds any, we would gladly hand over the full gold set and the code that produced it in exchange. Until then the honest description of the text is a finding aid rather than an edition. It is good enough to find the page you want across 69,624 of them. It is not good enough to quote. Read the image. ## Related - [The Afghan Press Archive](https://afghanpress.org) - [Method, accuracy and limits](https://afghanpress.org/about.html) - [The forty pages that lied](https://www.stepsventures.com/blog/the-forty-pages-that-lied) --- --- title: "The forty pages that lied" description: "Our benchmark file was written sorted by difficulty. Taking the first forty rows was not a sample, it was the forty easiest pages, and it made every absolute accuracy number this project published about twice as good as the truth." date: 2026-08-12 topic: "Method · benchmarks" author: "Mike German" publisher: "Steps Ventures" canonical: https://www.stepsventures.com/blog/the-forty-pages-that-lied --- # The forty pages that lied *Our benchmark file was sorted by difficulty. Taking the first forty rows was not a sample, it was a best case, and it inflated every absolute number we published.* August 2026 · Method · benchmarks · Steps Ventures We are teaching machines to read Afghan lithographs from the 1870s to the 1930s. To know whether a reader is any good you need pages where you already know the answer, and to iterate quickly you test on a slice rather than the whole set. Ours was the first forty rows of the gold file. For months, every headline number this project produced came from those forty pages. They were the forty easiest pages in the file. ## How it happened The gold file was written sorted by alignment quality, ascending. That was a sensible thing to do when it was built, because it put the cleanest matches at the top where you could eyeball them. Nobody wrote down that the file was sorted. Later, a different piece of code took the first forty rows and called it a sample. It reads like a sample. It looks like a sample in the code. It is a best case. The gap is not subtle. Across those forty pages the median gold character error rate was 0.232 and never went above 0.297. Across the other sixty-two it was 0.462. So the test set was not just easier, it excluded hard pages by construction. ## What it cost Every absolute accuracy figure this project published before we caught it is roughly twice as good as reality. That includes a fine-tuned model bakeoff, a comparison against a commercial model, and a cropping experiment whose headline was a 46% improvement. The 46% number is now retired. On a fair sample the same intervention wins 41 pages out of 91, which is a coin flip. One thing did survive, and it is worth being precise about why. Every arm in those experiments ran on the same forty pages and was compared pair by pair. A shared bias that lifts both arms equally does not change which one wins. So the rankings held up and the absolute numbers did not. That is the useful distinction: a contaminated sample can still tell you which of two things is better, as long as you never quote the number itself. ## The second bug, found while reading the first While re-deriving the results we found that our significance test summed only one tail. Any arm that lost most of its pages came back with p = 1.0, which reads as "no measurable difference". Several cheap-model configurations had been recorded as indistinguishable from the expensive one on exactly that basis. They were not indistinguishable. They were losing. The fix was a proper two-sided test that also reports direction, and the raw win counts had been recorded all along, so everything could be re-derived rather than re-run. ## What we changed Both harnesses now subsample evenly across the difficulty-sorted file instead of slicing the head. We checked the new sampler against the full set before trusting it: median gold error 0.363 versus the full set at 0.364, spanning 0.070 to 0.710. That is what a sample is supposed to look like. The general lesson is cheap to state and easy to miss. A sorted file plus a head slice equals a best case, and neither half of that sentence looks like a bug on its own. If you take a slice of anything, check the distribution of the slice against the distribution of the whole. It is two lines of code and it would have saved us months of numbers we had to withdraw. We publish the corrected figures on the archive itself rather than only here. The Afghan Press Archive states its measured error rate, what it was measured against, and what that reference cannot tell you, on every page and in a machine-readable provenance record. ## Related - [Method, accuracy and limits](https://afghanpress.org/about.html) - [The Afghan Press Archive](https://afghanpress.org) - [When a whole subfield’s numbers are too good](https://www.stepsventures.com/blog/numbers-too-good-to-be-true) --- --- title: "Ninety percent of the bill was thinking that did not help" description: "Turning a model’s reasoning budget down cut output tokens tenfold and cost ninefold, and the accuracy difference was statistically undetectable. Turning the model itself down was significantly worse. The two are not the same lever." date: 2026-08-12 topic: "Method · cost" author: "Mike German" publisher: "Steps Ventures" canonical: https://www.stepsventures.com/blog/ninety-percent-of-the-bill-was-thinking --- # Ninety percent of the bill was thinking that did not help *Cutting the reasoning budget saved ninefold with no measurable quality loss. Substituting a cheaper model looked identical on medians and lost 73 pages out of 94.* August 2026 · Method · cost · Steps Ventures We had 63,000 pages of Afghan lithograph to read and a quote of about $9,000 to read them. That is the kind of number that makes you look for a cheaper model. The cheaper model turned out to be the wrong lever, and the right one was sitting in a config field we had never touched. ## The test Six configurations, each reading the same 102 gold pages once, same prompt, same rendering. Only the model and the reasoning budget varied. Cost came from each response’s own usage metadata at published list price rather than from an estimate, because estimates on this kind of job are usually wrong in the direction you want them to be. ## The result nobody expected Setting the reasoning budget to low on the same frontier model cut output tokens from 11,736 per page to 1,130. That is a tenfold reduction, and cost fell ninefold, from $0.1433 a page to $0.0161. The quality difference, measured pairwise across 93 pages, was −0.0012 with 43 wins and p = 0.53. There is no detectable difference. Roughly ninety percent of what we were paying for was reasoning that did not change what the model read off the page. For the full job that is $1,012 instead of $9,030. ## The result we were expecting, which was wrong The obvious next move is to also drop to a cheaper model. It does not work, and the way it fails is instructive. Looking at medians alone, the cheap model looks fine: its median score of 0.461 actually edges the expensive one at 0.460. Compared page by page, the expensive model wins 73 of 94 pages with p = 7e-8. Comparing medians of two separate distributions would have picked the wrong model. Only the paired test shows it. So we asked whether there was at least a subset of easy pages worth routing to the cheap model. There is not. The cheapest model matches or beats the expensive one on only about 21% of pages, and an oracle router with perfect foresight, which nobody can build, would save $209 out of $1,012. A real router captures a fraction of that. Worse, the pages where cheap was good enough are indistinguishable from the rest on every feature you can see before you know the answer: 1,118 output tokens versus 1,198, 633 normalised words versus 651. There is nothing to route on. ## What this generalises to Reasoning budget and model tier feel like the same dial. They are not. On this task the reasoning budget was almost pure waste and the model tier was almost pure signal, and the two moved cost by similar amounts. If you are running a large batch job against a frontier model, test the reasoning budget before you test a cheaper model. It is a config change rather than a quality change, and on our job it was worth eight thousand dollars. The other lesson is about medians. Two distributions with nearly identical medians can still be separated at p = 7e-8 when you compare them on the same inputs. If you are choosing between models and you are not testing them pairwise on identical items, you are not measuring what you think you are measuring. The corpus this came from is public. 69,624 pages, read at the configuration this test chose, with the measured error rate and its caveats published alongside. ## Related - [The forty pages that lied](https://www.stepsventures.com/blog/the-forty-pages-that-lied) - [Method, accuracy and limits](https://afghanpress.org/about.html) - [The Afghan Press Archive](https://afghanpress.org) --- --- title: "I do not write code. Here is what I shipped anyway." description: "A year of running a real software operation without writing code, through Claude. What worked, the honest failure rate, and the one habit that made it hold up." date: 2026-07-12 topic: "Studio · how we work" author: "Mike German" publisher: "Steps Ventures" canonical: https://www.stepsventures.com/blog/i-dont-write-code --- # I do not write code. Here is what I shipped anyway. *A year of running a real software operation without writing code, through Claude. What worked, the honest failure rate, and the one habit that made it hold up.* July 2026 · Studio · how we work · Steps Ventures I am an engineer by training, a Ph.D. and a P.E., but I have never been a software developer. I do not write the code. For about a year now I have run a real software operation anyway, with Claude doing the writing and me doing the deciding. This is a plain account of what that actually produced, including the parts that did not work. ## The scoreboard, stated at the confidence it deserves More than thirty services run in production today, doing business development, customer research, technical analysis, and document generation. Separately, and more checkable by a stranger, more than twenty fixes I authored have been merged into open-source projects I do not own, across sixteen different codebases in fields from reactor physics to ocean modeling to bioinformatics. Another sixty-odd are open and under review. Every one carries my name and a real reproduction, not a bot signature. You can go read them. ## What the job actually is When you are not typing the code, the work moves up a level. My day is scoping a problem so it can be handed off cleanly, deciding which of three approaches is worth trying, reading a diff for the thing that will break in production, and saying no to the plausible-but-wrong answer. The model is fast and tireless and occasionally very confidently mistaken. My job is to be the judgment in the loop. That turns out to be a full-time job, and it is a different one than writing the code myself would have been. ## The failure rate, out loud Here is the part most demos skip. I built a scanner that hunts for a recurring class of bug across open-source scientific code, then has a large model read the suspect files and rate its findings. Even the findings it rated at maximum confidence were wrong forty to fifty percent of the time. The model rubber-stamps anything that looks surgical. The only thing that reliably separated a real bug from a convincing hallucination was boring: clone the repository, reproduce the failure, run the test suite, read the surrounding code. Not one fix went upstream without passing that gate, and I threw away more than a dozen confident-looking candidates that did not survive it. ## The rejections count too I opened a pull request to a project whose maintainer simply did not want the change. He said so, and he was right to. Some communities have decided they do not accept AI-assisted contributions at all, and the correct response is to respect that and walk away, even when the bug is real. A contribution that ignores what a maintainer asked for is worse than no contribution. Volume is not the goal. A few careful, disclosed, human-owned fixes to people who want them beats a flood every time. ## The one habit that made it hold up If there is a transferable lesson, it is this. The model is a strong negative filter and a weak positive one. It is very good at telling you something is definitely wrong, and unreliable at telling you something is definitely right. So I stopped trusting any answer that had not survived contact with reality: a test that runs, a page that loads, a customer who used it. State claims at the confidence the evidence supports, and leave the people around you more capable than you found them. That is most of it. The rest is showing up every day and deciding well. ## Related - [More on the work](https://www.stepsventures.com/mike) - [How the studio decides what to build](https://www.stepsventures.com/blog/free-thing-first) --- --- title: "How do you test a claim about a place no one has ever seen?" description: "No human has watched a European eel spawn. Here is how you can still ask, with 44 years of ocean data, whether climate is moving its birthplace in the Sargasso Sea." date: 2026-07-06 topic: "Ocean · eels" author: "Mike German" publisher: "Steps Ventures" canonical: https://www.stepsventures.com/blog/how-we-test-where-eels-spawn --- # How do you test a claim about a place no one has ever seen? *No human has watched a European eel spawn. Here is how you can still ask, with data, whether climate is moving its birthplace.* July 2026 · Ocean · eels · Steps Ventures Here is a strange fact. Nobody has ever watched a European eel reproduce. No one has found an eel egg in the wild. The animal is on your dinner plate and in your rivers, and its most basic private act has never been seen. So when someone says climate change is moving the place where eels are born, you should ask an obvious question. How would you even check that? This is the fun part of the work. You can test a claim about a place you cannot visit, as long as the place leaves a trail. The eel does. We spent time this year pulling that trail apart, and the popular story turned out to be wrong in an interesting way. ## What we actually know Every European eel seems to be born in one region, the Sargasso Sea, a warm, calm patch in the middle of the North Atlantic. The evidence is indirect but strong. A century ago a Danish oceanographer named Johannes Schmidt caught eel larvae all across the ocean and noticed the smallest ones clustered in the Sargasso. Smallest means youngest means closest to home. That is still the best pointer anyone has. The larvae are the sensor. ## The claim we set out to test The eel is critically endangered. Its numbers have fallen by more than ninety percent. Climate change is the usual suspect, and the common version is specific. It says warming pushed the Sargasso spawning ground somewhere else, made the trip to Europe longer or broken, and so fewer babies get home. It is a clean, intuitive story. Clean and intuitive is exactly the kind of story worth checking. ## How you check a place you cannot see You use the physics the place cannot escape. We pulled 44 years of sea-surface temperature from satellites and ships. We ran the same front-detection methods oceanographers use to find the boundaries between water masses. We built a drift model of how larvae actually move on real currents, and we validated it against a public database of where real eel larvae have been caught. The idea is simple. If the birthplace moved, the temperature bands and the fronts and the drift routes all have to move with it, and each one is measurable. ## What came out The textbook story did not hold. The warm temperature bands the eel spawns between, roughly 22 to 24 degrees Celsius, have crept about 190 kilometers toward the pole over four decades. That part fits warming. But the physical front that organizes the spawning region moves much slower than the warm water does. So the warmth is climbing north through the spawning zone faster than the structure it sits in. The ground is not sliding away wholesale. It is heating up where it stands. We started calling that warming in place, and the distinction matters more than it sounds. If the birthplace were simply moving, you could at least hope the eel follows it. Warming in place is worse in a quiet way. The thing the animal is tied to is getting hotter underneath it, and the spawning region already sits near the warm limit the eel can tolerate. There is not an obviously better place to go. ## Where we stop We are careful about what this does not prove. We did not find a stationary front and we are not claiming one. We found that the warm water outruns the front, which is a geometric consequence of fairly even warming across the region. We also found the trip to Europe is governed more by how the larvae swim than by the currents that carry them, so the collapse is probably not mainly a transport problem. And we still cannot tell you the exact spot where an eel spawns. Two thousand years of trying has not settled that. What we can now say, with data and with checks, is something concrete about what climate is doing to the place it happens. That is the whole method in one animal. Pick a question a field cares about, find the public record that field has not fully computed, use a mature method that maps onto it, and above all find a way to check the answer. If we cannot check it, we do not claim it. The full notebook and every number behind this are open. ## Related - [The eel research program](https://www.stepsventures.com/research) - [The full eel story](https://www.stepsventures.com/research/posts/eel-sex-mystery) - [The research notebook](https://www.stepsventures.com/research/notebook) --- --- title: "Why we can trace a baby eel home but never a baby turtle" description: "The ocean erases where a lost-years sea turtle came from in about two weeks. A baby eel is still traceable. One simple inequality, the invertibility frontier, says which animals fall on which side." date: 2026-07-06 topic: "Ocean · turtles" author: "Mike German" publisher: "Steps Ventures" canonical: https://www.stepsventures.com/blog/why-turtle-origins-are-erased --- # Why we can trace a baby eel home but never a baby turtle *The ocean erases where a lost-years turtle came from in about two weeks. A baby eel is still traceable. One inequality says which animals fall on which side.* July 2026 · Ocean · turtles · Steps Ventures A sea turtle hatches on a beach, scrambles into the surf, and disappears. For years no one knows where it is. Biologists call this stretch the lost years. The turtle turns up again as a dinner-plate-sized juvenile far out in the ocean, and eventually comes back as an adult to nest near the same beach it hatched on. So a natural question is whether you could take one of those lost-years turtles and run the tape backward to the exact beach it came from. The answer is no, and not because it is hard. The information is physically gone. That surprised us, because the sister version of this question, for baby eels, comes out the other way. You can trace a young eel back toward its birthplace. The difference between the two animals turns out to follow one clean rule, and that rule is the interesting part. ## The ocean is an eraser Turbulent water mixes. Two hatchlings that start on beaches a few kilometers apart get stirred together fast. We measured how fast three separate ways: a computer twin experiment, the spreading of thousands of real ocean drifters, and the tracks of real tagged turtles. They all point to about two weeks. Within roughly two weeks, the uncertainty about where a turtle started grows larger than the spacing between nesting beaches. After that, many possible birthplaces map onto the same spot in the ocean. Run the drift backward and it fans out to everywhere. That is why the field assigns turtle origins with genetics, not by tracing currents. ## So why does it work for eels? Eel larvae get caught when they are only about eight days old. Turtles are observed months to years into their drift. Timing is the whole game. Catch an animal early enough and the ocean has not finished erasing where it came from. Catch it late and the record is gone. ## One inequality for every drifting animal This is not special to eels or turtles. Whether you can reconstruct any drifting animal’s origin depends on three numbers. How old it is when you observe it. How vigorously its patch of ocean mixes. And how far apart the candidate birthplaces are that you need to tell apart. Reconstruction is possible only while the age at observation stays below the spacing squared, divided by twice the mixing rate. We call that line the invertibility frontier. Eel larvae, observed young, sit well below it, so their origin is still readable. Lost-years turtles, observed old, sit well above it, so their origin is erased. The nice thing about a rule like this is that it predicts. Give us the age, the mixing, and the spacing for a species nobody has tried, and it says up front whether tracing the origin is even possible. It says young bluefin tuna larvae should be traceable and spiny lobster larvae, which drift for months, should not. It turns a one-off result into something you can falsify. ## What we do and do not claim This is a first-order map, not a precise calculator. Real ocean mixing is messier than the simple version, and it varies a lot from place to place, so each animal is really a smudge on the diagram rather than a dot. If anything the messy reality makes tracing fail sooner, so the frontier is a generous bound. And there is a useful corollary. The exact beach is unrecoverable within weeks, but the coarse region a turtle came from survives much longer, which is why combining a weak genetic signal with a weak drift signal can still place most turtles in the right general area. The forward problem and the backward problem are not mirror images. We can predict where the lost years go. We can prove you can never run that backward to a birthplace. And now we can say, for any animal the ocean carries, exactly which side of the line it lands on. ## Related - [The sea turtle lost years](https://www.stepsventures.com/turtles) - [The eel research program](https://www.stepsventures.com/research) - [10 clickbait headlines, all true](https://www.stepsventures.com/turtles/clickbait) --- --- title: "When does a quantum computer actually help with quantum biology?" description: "The honest version. For the animal magnetic compass, a laptop still wins, today’s quantum hardware is deaf to the signal, and we can name roughly the year that changes. Myth versus reality." date: 2026-07-06 topic: "Quantum · myth vs reality" author: "Mike German" publisher: "Steps Ventures" canonical: https://www.stepsventures.com/blog/quantum-computers-and-quantum-biology --- # When does a quantum computer actually help with quantum biology? *The honest version. For the animal magnetic compass, a laptop still wins, today’s hardware is deaf to the signal, and we can name roughly the year that changes.* July 2026 · Quantum · myth vs reality · Steps Ventures Quantum computing and quantum biology sound like they were made for each other. One is a machine built on quantum mechanics. The other is life apparently using quantum mechanics to do something useful. Put them together and surely the machine cracks the biology. That is the headline you keep seeing. We wanted to know if it is true yet, so we picked a real case and measured it instead of guessing. ## The case: a compass made of chemistry Birds, sea turtles, and probably eels seem to sense Earth’s magnetic field. The leading explanation is genuinely strange. Light hits a protein in the eye and knocks an electron loose, leaving two electron spins that are quantum-correlated. Earth’s weak magnetic field nudges how those spins evolve, and the chemical outcome depends on which way the animal’s head points. A compass, built out of quantum mechanics, wired to vision. It is also, conveniently, a physics problem you can hand to a computer. ## One: a laptop already wins The version of this compass that fits on today’s quantum computers is small. Small enough that an ordinary laptop solves it exactly, in a fraction of a second. We pushed the ordinary methods as far as they go and they kept working well past where people assume they quit. Running the small version on a quantum computer proves the machine functions. It teaches you no new biology. A lot of "we did it on a quantum computer" results are really "we reproduced, on an expensive noisy machine, something a cheap reliable one already does." We wanted to be clear about which kind this was. ## Two: the popular shortcut is off When the system gets too big for the exact method, chemists reach for a famous approximation from the 1970s that treats the magnetic nuclei as a random blur. It is fast and it is everywhere. We checked it against the exact answer. It overshoots the magnetic effect by roughly a factor of two in the realistic case, and by much more when one nucleus dominates. That is a real, standalone result. Some published numbers that lean on the shortcut are probably inflated. ## Three: today’s hardware is deaf to it, and we know why We built the quantum circuit correctly. On a perfect simulator it nails the answer. Then we turned on realistic hardware noise, and the signal did not merely fade. It vanished at the second step up in size. The reason is elegant. The compass signal is a difference. You compare the chemistry with the field on versus off, and the small gap between them is the whole story. Hardware noise scrambles both cases by about the same amount, because the noise does not care about the magnetic field. Subtract, and the noise cancels and takes the real signal with it. The machine is not lying to you. It is deaf to the exact thing you are trying to hear. Error-correction tricks rescued only the simplest case, and only barely. ## So when does it help? We did the arithmetic for the full molecule, the version no ordinary computer can ever finish. It needs on the order of 29 perfect logical qubits and hundreds of millions of careful operations, which in practice means tens of thousands of physical qubits wrapped in error correction. That is not a 2026 machine. It is the kind of fault-tolerant quantum computer the roadmaps point at for roughly the end of this decade. So the honest headline is not "quantum computer solves biology." It is "quantum computers cannot do this useful biology yet, here is exactly why, and here is the year to watch." In a field full of quantum hype, measuring the limit felt more useful than dancing around it. The wonder is real. A quantum compass in a living eye is a wild idea, and on the hardware we even watched the signal fade as we dialed the field down toward the levels of an ancient near-collapse of Earth’s magnetism. The honesty about what the machine can and cannot do yet is the part we are proud of. ## Related - [The full quantum compass write-up](https://www.stepsventures.com/research/posts/quantum-compass) - [The research program](https://www.stepsventures.com/research) - [The sea turtle work](https://www.stepsventures.com/turtles) --- --- title: "A whole subfield’s accuracy numbers are too good to be true" description: "Many published clinical machine-learning models report near-perfect accuracy that comes from data leakage, not real skill. On public ICU data, one correct change drops a model from about 0.98 to 0.79. We built an open screener to flag it." date: 2026-07-06 topic: "Data · reproducibility" author: "Mike German" publisher: "Steps Ventures" canonical: https://www.stepsventures.com/blog/numbers-too-good-to-be-true --- # A whole subfield’s accuracy numbers are too good to be true *Many published clinical machine-learning models report near-perfect accuracy that comes from a data mistake, not real skill. One correct change can drop a model from 0.98 to 0.79.* July 2026 · Data · reproducibility · Steps Ventures If you read machine-learning papers in medicine, you notice something odd. The accuracy numbers are amazing. Models that predict who will get sepsis or die in the ICU, scoring 0.95, 0.98, sometimes a flat 1.00. Real medicine is not that predictable. When a whole subfield reports numbers that good, the most likely explanation is not that everyone is a genius. It is that a common mistake is quietly inflating the scores. The mistake has a boring name, data leakage, and it means the model got to peek at the answer during training in a way it never could in the real world. It is easy to do by accident and it is everywhere. We decided to stop talking about it and demonstrate it on data anyone can download. ## How the peeking happens Two flavors show up constantly. The first is splitting the data by row instead of by patient. One patient has many hours of records. If some of that patient’s hours land in training and some in testing, the model can half-memorize the person instead of learning the disease. On public ICU data, fixing just that dropped a model from about 0.93 to 0.80. The second flavor is balancing the classes before splitting. Medical outcomes are lopsided, so people manufacture synthetic patients to even it out. Do that before you split, and copies of the same synthetic patient end up on both sides of the wall. On the same public data, that one error pushed a model from about 0.79 all the way to 0.98. The fix is a single line, moving the balancing step to after the split. The inflation was the whole gap. ## Why this matters beyond the leaderboard These are not just numbers in a table. A leaky model looks like it works, gets published, gets cited, and sometimes gets built into a product that touches real patients. Then it fails quietly in the hospital, because the skill was never there. And the published record looks far more confident than reality, which sends the next lab chasing a signal that was always an artifact. ## What we built We are building an open screener. You give it the identifier for a paper, it pulls the public summary, and it scores the described setup against a fixed checklist of leakage patterns. It does not accuse anyone. It flags risk. On a first batch of clinical-ML papers it flagged a chunk as high-risk and correctly left the careful ones alone, including papers that simply do not describe their split, which is silence, not a crime. Where a paper also has public data, we go further and reproduce the authors’ own number first, then show what one correct change does to it. ## The rules we hold ourselves to This work only earns trust if it is fair. So the guardrails are strict. Methods, never motives. Reproduce the original number before we critique it. One mechanically demonstrable flaw per paper, not a pile of vague doubts. Right of reply before anything goes public. And we report risk, not verdicts. This is a public good, not an accusation. The point is a subfield with numbers you can believe, and an open tool that lets anyone check a paper before they trust it. The larger idea is the same one that runs through the rest of our research. Re-test published claims on their own data. If the signal survives the honest test, wonderful. If it evaporates, that is worth knowing too, and knowing it early is cheaper for everyone. ## Related - [The research program](https://www.stepsventures.com/research) - [On testing yourself to destruction](https://www.stepsventures.com/research/posts/wrong-in-public) - [Every data source we reviewed](https://www.stepsventures.com/research/sources) --- --- title: "What it takes to retire the diesel generator at a cell tower" description: "Tens of thousands of European telecom and critical sites still lean on diesel for backup power. Solar plus solid-state hydrogen is a way out. A Steps Ventures field study of where it pencils, across 34,000+ diesel-reliant sites in 30 countries." date: 2026-07-06 topic: "Energy · AtomH2" author: "Mike German" publisher: "Steps Ventures" canonical: https://www.stepsventures.com/blog/retiring-the-diesel-generator --- # What it takes to retire the diesel generator at a cell tower *Tens of thousands of European telecom sites still lean on diesel for backup. Solar plus solid-state hydrogen is a way out. A field study of where it pencils.* July 2026 · Energy · AtomH2 · Steps Ventures A cell tower has to stay up when the grid goes down. For decades the answer has been a diesel generator sitting at the base, a tank of fuel, and a truck that comes to refill it. It works. It is also loud, dirty, expensive to service, and a target for fuel theft. There are a lot of these sites. The interesting question is not whether diesel backup is bad. It is where you can actually replace it, and where you cannot yet. We did a field study on that question with AtomH2, a company building solar plus solid-state hydrogen backup for exactly these sites. Our job was the analysis, not the sales pitch. Map the sites, find the ones where the swap pencils, and be honest about the ones where it does not. ## The idea Put solar on or near the site to carry the normal load and charge storage. For the backup, instead of a diesel tank, use hydrogen held in a solid-state form that is safer and denser to store than pressurized gas. When the grid drops, the stored hydrogen runs a fuel cell and the site stays up. No fuel truck, no diesel exhaust, far less to steal or maintain. That is the pitch. Whether it works at a given tower is an engineering and economics question, one site at a time. ## How big is the target Bigger than you would guess. We mapped more than 34,000 diesel-reliant sites across 30 European countries. In Spain alone the tower count runs into the tens of thousands. These are not just phone masts. The same backup problem shows up at any critical site that cannot go dark, which widens the field well past telecom. ## Where it pencils, and where it does not The swap looks best where three things line up. Enough sun to make the solar carry real weight through the year. A backup requirement that is frequent or long enough that diesel servicing and fuel logistics are a genuine cost, not a rounding error. And a site where the alternative, running and maintaining a generator, is unusually painful, remote, noisy-sensitive, or theft-prone. Where the sun is thin, the outages are rare, and a technician can reach the generator easily, diesel is hard to beat today. We would rather say that plainly than pretend the answer is everywhere. That is the shape of the work. A clean idea, a large and specific target, and an honest map of where it is ready. The full study, including the site mapping across those 30 countries, is on the AtomH2 page. ## Related - [The AtomH2 field study](https://www.stepsventures.com/atomh2) - [How the studio decides what to build](https://www.stepsventures.com/thesis) --- --- title: "Most supplements are built for an average that does not exist" description: "A woman’s physiology changes across a 28-day cycle. A daily dose that ignores that is guessing. Selene is performance supplementation built for the cycle instead of the average." date: 2026-07-06 topic: "Health · Selene" author: "Mike German" publisher: "Steps Ventures" canonical: https://www.stepsventures.com/blog/supplements-built-for-your-cycle --- # Most supplements are built for an average that does not exist *A woman’s physiology changes across a 28-day cycle. A daily dose that ignores that is guessing. What it means to build for the cycle instead of the average.* July 2026 · Health · Selene · Steps Ventures Open most supplement bottles and you get one dose, taken the same way every day, forever. That is fine if your body is the same every day. A woman’s is not. Across a roughly 28-day cycle, hormones move through distinct phases, and with them energy, recovery, temperature, and how the body handles training and stress. A single flat daily dose is built for an average that no real person actually lives in. That gap is the whole reason Selene exists. It is performance supplementation designed around where you are in your cycle, not a monthly average of where you might be. ## Why an average misleads Take a need that peaks in one phase and dips in another. Average it and you get a number that is too much half the month and too little the other half. You are rarely getting the right amount, which is a strange thing to accept from something you take every single day. The fix is not more ingredients. It is timing. Match the support to the phase the body is actually in. ## How Selene is built One pouch a day, changing across the four phases of the cycle. The point is simple. What you take on a high-energy training day should not be identical to what you take when your body is asking for recovery. Building for the cycle instead of the average is the difference between a product that knows where you are and one that guesses. ## Why this is a real market, not a niche Women’s health has been underserved by measurement for a long time. The market is enormous, the supplement market it sits inside is larger still, and a large majority of women say the products they can buy do not fit them. That is not a small preference gap. It is most of the customer base being handed an average. A product that respects the actual biology has room to matter. This fits how we build across the studio. Start where measurement beats marketing, respect what the body is actually doing, and make the honest version of the product instead of the convenient one. ## Related - [Selene](https://www.stepsventures.com/selene) - [How the studio decides what to build](https://www.stepsventures.com/thesis) --- --- title: "There is energy leaving New York’s buildings as steam" description: "Big New York buildings vent heat and pressure they already paid for. A Steps Ventures analysis of the city’s public benchmarking record found 167 viable buildings, tens of millions in annual savings potential, and filings that break physics." date: 2026-07-06 topic: "Energy · nLine" author: "Mike German" publisher: "Steps Ventures" canonical: https://www.stepsventures.com/blog/the-steam-under-new-york --- # There is energy leaving New York’s buildings as steam *Big buildings vent heat and pressure they already paid for. A public benchmarking record shows where recovery pencils, and where the filings do not add up.* July 2026 · Energy · nLine · Steps Ventures A lot of large New York buildings run on steam. It heats them, and much of Manhattan buys it from a district system that pipes it under the streets. Steam carries pressure, and pressure is energy. In many buildings that pressure gets thrown away at a valve, knocked down to a usable level and vented. The building already paid for it. Then it lets it go. There is a machine for that. A small turbine sits where the pressure gets knocked down, and instead of wasting the drop it turns it into electricity. We ran an analysis with nLine to find where this actually pays in New York, using data the city already publishes. ## The data was already public New York makes large buildings report their energy use every year. That benchmarking record is open. It tells you which buildings use a lot of steam, which is the first thing you need to know to find a recovery opportunity. Nobody had to knock on a door to start. The signal was sitting in a public spreadsheet, waiting for someone to compute it. ## What we found Screening the record, 167 public buildings looked viable for steam energy recovery. Together they point to tens of millions of dollars a year in savings potential and a meaningful cut in carbon, on the order of tens of thousands of metric tons avoided per year, from roughly 187 turbine installs. Brooklyn and the outer boroughs turned out to matter more than the Manhattan-first intuition would suggest. Public housing was the biggest single prize. Hospitals were the easiest early wins, because they run steam hard and cannot afford to waste it. ## The buildings that broke physics A nice side effect of reading a public record closely is that you catch its errors. Six buildings reported energy numbers that are not physically possible, the kind of thing that only happens when a value was typed into the wrong box. Each one is a real data-entry mistake in the city’s official benchmarking file. That is useful two ways. It cleans the analysis, and it is a friendly, factual reason to reach a building owner. Point out the error, and you have opened a conversation without selling anything. This is the studio pattern again. Find the public record a field has not fully computed, get the signal out of it, and let the finding open the door. The full New York analysis is on the nLine page. ## Related - [The nLine × NYC analysis](https://www.stepsventures.com/nline) - [How the studio decides what to build](https://www.stepsventures.com/thesis) --- --- title: "The free thing has to stand on its own" description: "How a one-person venture studio decides what to build. Give real value for free first, make the paid step obvious, go deep where the buyer has a budget, and stay honest about what is a business and what is a project." date: 2026-07-06 topic: "Studio · thesis" author: "Mike German" publisher: "Steps Ventures" canonical: https://www.stepsventures.com/blog/free-thing-first --- # The free thing has to stand on its own *How a one-person studio decides what to build. Give real value for free first, make the paid step obvious, and stay honest about what is a business and what is a project.* July 2026 · Studio · thesis · Steps Ventures Steps Ventures builds a lot of things. Climate tools, a health product, real-estate software, open research. From the outside that can look scattered. It is not. Almost everything shares one shape, and the shape is what keeps a one-person studio from turning into a pile of half-finished ideas. ## One motion Give someone real value for free first. An automated assessment, a report, a working tool they can use today. Then offer a clear, honest path to go further. Two rules make it work. The free thing has to stand on its own, useful even if the person never pays. And the paid thing has to be the obvious next step, not a bait-and-switch. When both are true, you do not have to push growth. It follows the value. ## Where we go deep We push hardest where we have an unfair advantage. Regulated, deadline-driven markets where the work is real and the buyer has a budget. Disaster recovery and government closeout. PFAS and water treatment. Building decarbonization. External security. Small-business acquisition. And in health, where measurement beats marketing. We would rather own one of those than dabble in ten. Breadth is how we find the deep thing. It is not the goal. ## How we build Smallest working version first. Automate the boring parts, research, monitoring, drafting, so a studio of one moves like a team. Ship the backend before the front end that needs it. And prove something stays in use before we make it pretty. A tool nobody returns to does not deserve polish yet. ## The test that keeps us honest Every product has to answer three questions. Who exactly is this for. What is the one outcome they want. What single channel reaches them. If we cannot answer all three, it is a project, not a business, and we say so out loud. Calling a project a business is the easiest way to waste a year. Naming the difference is how the studio stays pointed at the things that can actually pay their way. That is the whole thesis. One motion, deep where the buyer has a budget, built smallest-first, and honest about what is real. The longer version is on the thesis page. ## Related - [The full thesis](https://www.stepsventures.com/thesis) - [The research program](https://www.stepsventures.com/research)