watchnews.now went live today. It is a news reader built on an idea that sounds
small and turned out not to be: you should be able to follow a desk rather than
an algorithm, and see what it actually published, in the order it published it.
What it does
Pick a beat, or pick a newsroom. The front page shows what landed today. Every
story links straight out to the publisher. There is no account needed to read,
no ads, and nothing is ranked by engagement.
The stories come from two places. The first is newsroom RSS, read directly from
the publishers: the BBC, Al Jazeera, the Guardian, Deutsche Welle, France 24,
NPR and the Wall Street Journal world wire. A newsroom feed is the one thing in
news that is reliably free, because publishers want it read. No key, no quota,
no intermediary deciding what you get.
The second is GDELT, which indexes news in 65 languages across a very long tail
of outlets and tags each story with the country and language it came from. That
is the part you cannot get from seven English desks. It is why watchnews.now
has 67 followable outlets after its first sync rather than seven, and why you
can watch one story land across a hundred mastheads at once.
Every source is free and keyless. That was a constraint, not an accident.
The part that was interesting to build
watchnews.now is not a new codebase. It is the same code that runs
tipoffwatch.com, our sports calendar, with one environment variable set
differently.
That platform already had a whitelabel: a single file holding everything that
differs between sites, with a comment arguing that a new site should be an entry
in it rather than a fork. We had not taken that advice before. Our film and TV
site, genrewatch.com, is a separate repository, and it pays for that every time
a bug is found: the fix has to land twice, by hand, in two places that have
drifted apart.
So this time it is a brand entry and one data provider. About 250 lines. A fix
found here lands once and all three sites get it.
The mapping needed no database change at all, which is the same thing that made
the film site possible. A beat is a league row. An outlet is a team row. A story
is an event with one participant instead of two, which is a shape the schema
already had, because a race and a fight card do not have two sides either.
The thing that did not fit
There was one genuine mismatch, and it is worth writing down because it is the
kind of thing a vocabulary layer cannot paper over.
A fixture is something that will happen. A release is something that will drop.
A story has already been published by the time anyone can read it. The schema
holds that fine, since a timestamp is a timestamp. The words do not.
Every other site on this platform has a page that counts down to the next thing.
On a news site that page can never have anything on it. We could have quietly
left it empty under a sports sentence. Instead the page says what is true:
Deliberately empty. Every other site running this code counts down to a
fixture or a release; a story is only news once it is published, so there is
nothing here to count down to.
That is precisely why the whitelabel holds whole sentences rather than
substituted nouns. "Never miss a game" reads fine for a game and badly for a
release, and it fails completely for a story that has already happened.
Where the data comes from
The feeds are not parsed by watchnews.now itself. They are parsed by
nichedb.dev, our open directory of sources, which gained a News collection on
the same day. nichedb does the fetching, parsing and deduplication, and serves
the result as keyless JSON that anyone can read. watchnews.now is a projection
of that, not a seventh set of feed parsers.
That collection also carries something watchnews.now does not use yet: 920 live
news channels worldwide, each with its public stream. Half the news channels in
the directory have no public stream at all, and a row you cannot watch is not an
answer to "where do I watch this", so only the ones you can watch are stored.
Making them playable is the obvious next step for a site with "watch" in the
name.
Try it
watchnews.now. Free, no ads, no account to read.
Top comments (0)