Category/Tag: Umbraco
Umbraco CMS Tips and Tricks
- By Caleb Aston
- Software Engineer
The story of my learning Umbraco and the helpful tips and tricks that I learned to help me gain an understanding of how to use the CMS.
The story of my learning Umbraco and the helpful tips and tricks that I learned to help me gain an understanding of how to use the CMS.
You told the LLM to fix OCR artifacts. It also "fixed" words that weren't broken. "Judiciary" became "judicial." Em-dashes quietly became hyphens. A numbered list item lost its prefix without a trace. None of it was malicious — the LLM just can't help optimizing toward well-edited when you asked for OCR-cleaned. Those aren't the same thing. The solution: a guard layer that watches what the LLM changes and silently undoes anything it had no business touching. Sounds simple, right? Then the edge cases and failing unit tests really begin.
My AI pipeline was slower than it needed to be. When building a Book-to-Audio converter, the obvious culprit was the LLM cleaning every paragraph of OCR-mangled text. The fix seemed simple: add a gate that skips clean paragraphs entirely. It worked. But then the timing data revealed a second hidden slowdown that the optimization itself had exposed — one that was invisible until the gate made it visible.
What if you could write a program without actually writing it? Genetic Programming does exactly that — it evolves code the same way nature evolves species: randomly, ruthlessly, and surprisingly effectively. In this post I walk through how it works, build up a toy version from scratch, and then turn it loose on a hidden mathematical function to see if it can find the answer on its own. Spoiler: it can. But the more interesting question is how.