2026-09-02 16:22:52 +01:00
|
|
|
import type { Metadata } from 'next';
|
|
|
|
|
import Image from 'next/image';
|
2026-09-08 17:12:25 +01:00
|
|
|
import { notFound } from 'next/navigation';
|
2026-09-02 16:22:52 +01:00
|
|
|
import { absoluteUrl } from '@/lib/site';
|
2026-09-08 17:12:25 +01:00
|
|
|
import { getFlags } from '@/lib/flags';
|
2026-09-02 16:22:52 +01:00
|
|
|
import { personJsonLd, organizationJsonLd } from '@/lib/jsonld';
|
|
|
|
|
import styles from './About.module.css';
|
|
|
|
|
|
|
|
|
|
export const metadata: Metadata = {
|
|
|
|
|
title: 'About',
|
|
|
|
|
description:
|
|
|
|
|
'Who builds schoolcompare, why it exists, and where its numbers come from.',
|
|
|
|
|
alternates: { canonical: absoluteUrl('/about') },
|
|
|
|
|
};
|
|
|
|
|
|
2026-09-08 17:12:25 +01:00
|
|
|
/*
|
|
|
|
|
* Gated on about_page. The default 300s read is the right floor here: this
|
|
|
|
|
* page declares no revalidate of its own, so nothing is lost by it, and a flip
|
|
|
|
|
* lands within five minutes.
|
|
|
|
|
*
|
|
|
|
|
* notFound(), not a redirect: while the flag is dark this URL does not exist,
|
|
|
|
|
* and a 404 is what tells a crawler not to keep it.
|
|
|
|
|
*/
|
|
|
|
|
export default async function AboutPage() {
|
|
|
|
|
const flags = await getFlags();
|
|
|
|
|
if (flags.about_page !== true) notFound();
|
|
|
|
|
|
2026-09-02 16:22:52 +01:00
|
|
|
const jsonLd = {
|
|
|
|
|
'@context': 'https://schema.org',
|
|
|
|
|
'@graph': [personJsonLd(), organizationJsonLd()],
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
return (
|
|
|
|
|
<div className={styles.page}>
|
|
|
|
|
<script
|
|
|
|
|
type="application/ld+json"
|
|
|
|
|
dangerouslySetInnerHTML={{ __html: JSON.stringify(jsonLd) }}
|
|
|
|
|
/>
|
|
|
|
|
|
|
|
|
|
<header className={styles.header}>
|
|
|
|
|
<Image
|
|
|
|
|
src="/brand/tudor.jpg"
|
|
|
|
|
alt="Tudor, who builds schoolcompare"
|
|
|
|
|
width={96}
|
|
|
|
|
height={96}
|
|
|
|
|
className={styles.portrait}
|
|
|
|
|
priority
|
|
|
|
|
/>
|
|
|
|
|
<div>
|
|
|
|
|
<p className={styles.kicker}>Who's behind this</p>
|
|
|
|
|
<h1 className={styles.heading}>I'm Tudor. I built this site.</h1>
|
|
|
|
|
</div>
|
|
|
|
|
</header>
|
|
|
|
|
|
|
|
|
|
<div className={styles.prose}>
|
|
|
|
|
<p className={styles.lede}>
|
|
|
|
|
I'm a parent in south-west London. When we started looking at
|
2026-09-02 17:14:20 +01:00
|
|
|
primary schools, I found the information I needed was all published,
|
2026-09-02 16:22:52 +01:00
|
|
|
and almost impossible to hold in one place.
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
|
|
<p>
|
|
|
|
|
SATs results were in one government table. Ofsted judgements were in a
|
|
|
|
|
separate service, in a format that had just changed. Admissions
|
|
|
|
|
distances were buried in council PDFs, a different one per borough,
|
|
|
|
|
each with its own layout. I ended up building a spreadsheet, and then
|
|
|
|
|
I got tired of the spreadsheet.
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
|
|
<p>
|
|
|
|
|
So I built this instead. It pulls the official figures into one place
|
|
|
|
|
and puts them side by side, which is what I wanted and could not find.
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
|
|
<h2 className={styles.subheading}>I'm not an education expert</h2>
|
|
|
|
|
|
|
|
|
|
<p>
|
|
|
|
|
I want to be straightforward about that. I'm not a teacher, a
|
|
|
|
|
governor, or an education researcher. I have no qualification that
|
|
|
|
|
makes my opinion about a school worth more than yours.
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
|
|
<p>
|
2026-09-02 17:14:20 +01:00
|
|
|
What I do have is the problem itself. I'm going through primary
|
|
|
|
|
admissions right now, and I work with data for a living. That
|
|
|
|
|
combination is enough to take published figures and present them
|
|
|
|
|
honestly. It is not enough to tell you which school is right for your
|
|
|
|
|
child, and this site never tries to.
|
2026-09-02 16:22:52 +01:00
|
|
|
</p>
|
|
|
|
|
|
|
|
|
|
<h2 className={styles.subheading}>Where the numbers come from</h2>
|
|
|
|
|
|
|
|
|
|
<p>
|
|
|
|
|
Everything here is official published data: Key Stage 2 and Key Stage
|
|
|
|
|
4 results and school characteristics from the Department for
|
|
|
|
|
Education, inspection outcomes from Ofsted, and admissions data from
|
|
|
|
|
local authorities. Nothing is estimated, modelled or filled in. Where
|
|
|
|
|
a figure is missing, the page says so rather than showing a guess.
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
|
|
<p>
|
|
|
|
|
This is an independent site. It is not affiliated with the Department
|
|
|
|
|
for Education or with Ofsted, and nobody pays to appear on it or to
|
|
|
|
|
rank higher.
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
|
|
<h2 className={styles.subheading}>What the data can't tell you</h2>
|
|
|
|
|
|
|
|
|
|
<p>
|
|
|
|
|
A school is not its results. The figures here describe one year group,
|
|
|
|
|
on a handful of days, measured in a way that suits national statistics
|
2026-09-02 17:14:20 +01:00
|
|
|
rather than your child. A small cohort makes percentages swing wildly.
|
|
|
|
|
In a class of thirty, one pupil is worth more than three points.
|
|
|
|
|
Results say nothing at all about whether a child will be happy
|
|
|
|
|
somewhere.
|
2026-09-02 16:22:52 +01:00
|
|
|
</p>
|
|
|
|
|
|
|
|
|
|
<p>
|
|
|
|
|
I try to build that honesty into the site rather than just say it
|
|
|
|
|
here. Special schools and pupil referral units are never compared
|
|
|
|
|
against a mainstream national average, because that comparison is
|
|
|
|
|
meaningless and makes good schools look like failing ones. Where a
|
|
|
|
|
number is unreliable, the aim is for the page to tell you before you
|
|
|
|
|
draw a conclusion from it.
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
|
|
<h2 className={styles.subheading}>If something's wrong</h2>
|
|
|
|
|
|
|
|
|
|
<p>
|
2026-09-02 17:14:20 +01:00
|
|
|
Tell me and I'll fix it. If a figure looks wrong, or a page gives
|
|
|
|
|
a misleading impression of a school, I genuinely want to know.
|
2026-09-02 16:22:52 +01:00
|
|
|
It's the fastest way this gets better.
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
|
|
<p>
|
|
|
|
|
<a href="mailto:contact@schoolcompare.co.uk" className={styles.link}>
|
|
|
|
|
contact@schoolcompare.co.uk
|
|
|
|
|
</a>
|
|
|
|
|
</p>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
);
|
|
|
|
|
}
|