Slash O
Isotherm
11.0 °
Contour
5 / 9
Zone
0.00
Probe
x .500  y .500

The field at rest. Values recorded at build.

Evidence before intervention.

I audit the engineering of media groups before anyone changes it, coding agents included. A measured baseline first, because the obvious fixes cost traffic and nobody can prove it afterwards. Below is what I look for, what I have tried on my own sites, and what I will not do. Read it and decide whether it is worth a conversation.

Book a call See what I will not do

What usually goes wrong

Three things I find in most media groups, usually in this order. If none of them sound like your group, I am probably not the person to call.

measured as
content systems in use
cost to publish one page
teams who can deploy

CMS sprawl from acquisitions

Every acquired title arrived with its own stack, and every migration since was scoped as a quick one. Five years later there are four content systems, three ad wrappers and nobody who can say what a page costs to publish.

measured as
indexed URLs, 90 days
click share by template
crawl budget spent on waste

Search decay that resists post-mortem

Organic traffic slides for eighteen months. Every team has a theory, every theory fits the chart, and nothing was measured before the redesign, the consent banner or the template change that everyone now blames.

measured as
consented share of sessions
addressable reach, by title
the two numbers, side by side

A shrinking addressable audience

Consent rates fall and third-party identifiers go. The audience the sales team sells is a fraction of the one the analytics dashboard shows, the gap is rarely known, and the sales deck is built on the larger number.

Where I am useful

leaves behind
system map
ranked risk register

Platform and architecture review

How many systems there are, who owns each, what a page costs to publish, and where the coupling is. Written as a map the board can read, with the risks ranked and the first move named.

leaves behind
template-level search baseline
crawl budget report

Search at editorial scale

Crawl budget, template-level performance, internal linking, structured data, and what a newsroom of two hundred writers does to all of it every day. Measured per template before anyone touches a template.

leaves behind
addressability report
consent implementation review

Consent and audience addressability

What share of your audience you can still measure and sell, how consent is implemented across titles, and what the honest number is. The gap between the dashboard and the deck, closed.

leaves behind
agent-readiness baseline
architecture tests
mutation score
CI documentation gates

Engineering with coding agents

Every engineering team is being told to adopt coding agents this year. Before that happens, I measure how the codebase behaves: whether the tests are deterministic, whether the architecture rules are tested rather than written down, whether the documentation gates in CI catch what agents get wrong, and how much of the repository an agent can work in without a human reading every diff.

Then the same measurements after. Without the baseline, nobody can separate what the agents broke from what was already broken. I build this way myself, every day, and run the sites below through it.

Where I am not

The same honesty in the other direction. If your situation is one of these, a conversation wastes your time and mine.

  • Building the fix for a problem you paid me to find. That one is a rule; there is a section on it below.
  • Work that competes with Webedia Group, where I am employed.

I still run my own sites, with agents

Three sites I own and run myself. Anything I recommend, I have tried on them first.

URLs in sitemap
580
last published
2026-09-23

explorecordoba.com Córdoba, in English, for people who are actually going

URLs in sitemap
525
last published
2026-09-23

exploregranada.org Granada and the Alhambra, the same way

URLs in sitemap
638
last published
2026-09-23

darkskiesatlas.com Where the sky is still dark, and how to get there

They are run through one content factory. Each agent has a role and a written brief. A piece of content passes validators before it publishes, every commit and push runs through gates, and a build-determinism check runs before anything deploys.

Nothing publishes because an agent said it was fine. It publishes because the gates passed, and the gates have their own tests.

Questions I get asked

Asked by people doing the work, answered the way I would answer them in a room. Each one is dated and attributed by role.

asked on
asked by
an SEO analyst

How do I analyse a lot of Apache logs with AI?

Not by sending the logs to a chat model. It reads every line as tokens, so the bill grows with the log, and a month of access logs is millions of lines that a parser reads exactly, for nothing. Filter to the crawlers you care about and confirm they are who they say they are. Then count hits, status codes and response times by URL. None of that needs a model.

The model is useful where the rules run out: deciding which section or page type a URL belongs to when the URL patterns stopped being consistent years ago. Ask that once per distinct URL, not once per line, and use a model built for that kind of judgment, such as TypeSafe’s Jev, which returns a label and a probability instead of writing text. Thousands of questions instead of millions, and answers that code can count.

Then the question that was asked in the first place has an answer you can check: where the crawl budget goes, by section, and how much of it lands on pages nobody should be crawling.

asked on
asked by
the head of SEO at a publisher

How do we find pages that compete with each other in search?

Start from Search Console, not from the content. Cannibalisation shows up as several of your URLs taking impressions for the same query, with the one Google ranks changing from week to week. Group by query, keep the queries where two or more URLs share the impressions, and code has built the list for nothing.

Content similarity comes second. Embeddings find the pairs of pages that say the same thing, including across titles that were bought years apart and never compared. A model judges the borderline pairs: the same intent, or two angles on one subject? Two angles can both stay.

A person decides which page is canonical and what happens to the other: merge, redirect, or rewrite it toward a different query. Then watch the query group, not the page, because the point was that one of them wins.

asked on
asked by
the CTO of a media group

Should we let coding agents work on our legacy CMS?

Yes, once you know how it behaves today. Record the baseline first: which tests exist and pass, how long a build takes, the error rates in production, what a page costs to render. It is a short piece of work next to what comes after it.

Without it, the first incident after the agents arrive gets blamed on the agents and nobody can prove otherwise. Or it gets blamed on the old code, and nobody can prove that either.

Then give the agents narrow jobs whose result can be checked: tests for code that has none, dependency upgrades behind a passing build. Leave the parts nobody understands for last. An agent will change them with confidence.

asked on
asked by
the CEO of a digital publisher

Can AI tell us why our traffic dropped?

Not on its own. A drop has many candidate causes: a deploy, a template change, the consent banner, a migration, an algorithm update, a competitor, the season. A model can line them up against the chart, but only the ones somebody recorded, with a date.

So the first job is the record: what changed, where and when, from deploy logs, the CMS, the tag manager’s history and Search Console. Then split the drop by template, section and query group. A real cause shows up in one slice before it shows up in the total.

The model is useful for reading that timeline next to the slices and saying which changes line up. It proposes, and the slices confirm it or do not.

How I work

If I can help
agreed per case
priced after the conversation

If I can help

Engagements have taken two shapes: a fixed-scope look at something specific, and a standing advisory arrangement. Which one fits, how long it runs and what it costs are decided per case, after the conversation, not before it.

I do not have a package to sell you.

What I do not do: Slash O does not sell the fix it recommends.

I build. I do it every day, with agents, on the sites above. What I will not do is find you a problem and then sell you the solution to it. If what I measure says you need a team, I will help you find one and I will not be it. An auditor who also sells the fix has already decided what the fix is.

I advise in a personal capacity. Webedia Group is not party to any engagement, and I do not take work that competes with it.

Working languages
EN
FR
ES

Working languages

English, French and Spanish. Anything I write for you is in English unless you ask otherwise.

Book a call

Madrid, local time

Contact

Write to me with the group, the titles, and what you think is wrong. I reply within two working days. If I cannot help, I will say so, and I will try to tell you who can.

[email protected]

Or book a call directly.

Olivier Depiesse Engineering Manager at Webedia Group, Madrid LinkedIn