An extra escape in eight diagrams
For a while, eight posts on this blog showed the seven characters — in the middle of a sentence, inside the diagrams. Not a dash. The literal text. It has since been repaired in every…
Where the database schema actually lives
Everything this service does is in version control. The code is, anyway. The database it runs on is 32 tables, and 15 of them have no definition anywhere in the repository — no CREATE…
Why our config file is mostly comments
The .htaccess on this server is 478 lines long. 98 of them are rules. 309 are comments. 309 — comment lines 98 — rules 11 lines carry a date, 12 carry a measurement 478 lines in total Three…
How we check every translation
This blog has 64 posts in eleven languages: 704 rows and about 2.2 million characters. No post is missing in any language, which is a claim that only means something if something enforces…
Why we don't email our old users
The counter table on this service holds 4,148 e-mail addresses. They belong to counters created over the past twenty years, back when a counter came with an address field and people filled…
What the AI may and may not write
At the top of a public statistics page here there can be two or three sentences describing what the counter did this month. They are written by a language model. The model invents nothing,…
The toplist now has a link in the navigation
This site has a toplist: the busiest public counters, plus per-country and per-language sub-lists. It is built, it is translated into eleven languages, it has an opt-out, and it has been…
Not every table keeps thirty days
A statistics page here is not one table. It is twelve, one per question — countries, pages, browsers, hours, devices, operating systems, languages, regions, referrers, bots, screen…
Six finished features and the way back to them
On 23 August 2026 this site answered 101,461 requests. In all of them, the owner token — the ?t= that unlocks the settings box on a statistics page — appeared exactly zero times. Not…
Three columns left over from Stats4U 2
The main counter table here has 166,436 rows and a number of columns that look like they matter. Three of them are lastdomain, firstdomain and userdomain. They hold data: lastdomainnot…
New privacy policy, terms and DPA
As of 19 August 2026, stats4u.net has three legal documents where it used to have one: a rewritten privacy policy, a terms of service, and — new — a data processing agreement (DPA) under…
What came off the about page, and why
The old about page had a feature list on it. Rebuilding that page meant reading the list line by line against the software, and four entries no longer matched it. One of them had not…