Paul Bradshaw·Jul 9Caught in a trap: what journalists can learn from systems thinkingOne of the most powerful ways to generate original journalism is to look at the systems behind stories — particularly the points where…
Paul Bradshaw·Jun 11How to: generate hundreds of maps by combining QGIS with Python (code included!)There’s a new post over on the Online Journalism Blog based on a workshop I ran at this year’s European Investigative Journalism…
Paul Bradshaw·Mar 4Telling stories with data: more on the difference between ‘variation’ stories and ‘ranking’ anglesThis post was first published on the Online Journalism Blog.
Paul Bradshaw·Feb 26Parallel prompting: another way to avoiding deskilling with AIThis was first published on the Online Journalism Blog.
Paul Bradshaw·Jan 15How to ask AI to perform data analysisIn a previous post I explored how AI performed on data analysis tasks — and the importance of understanding the code that it used to do so…
Paul Bradshaw·Jan 10I tested AI tools on data analysis — here’s how they did (and what to look out for)This was first published on the Online Journalism Blog. Subscribe at onlinejournalismblog.com for updates on new posts.A response icon1A response icon1
Paul Bradshaw·Dec 10, 2025How to reduce the environmental impact of using AIOne of the biggest concerns over the use of generative AI tools like ChatGPT is their environmental impact. But what is that impact — and…
Paul Bradshaw·Dec 9, 2025No, the explainer isn’t dead. It just needs a reason to live.Cross posted from the Online Journalism Blog.
Paul Bradshaw·Dec 4, 2025Why I’m no longer saying AI is “biased”TLDR; Saying “AI has biases” or “biased training data” is preferable to “AI is biased” because it reduces the risk of anthropomorphism and…
Paul Bradshaw·Dec 2, 2025How do I get data if my country doesn’t publish any?In many countries public data is limited, and access to data is either restricted, or information provided by the authorities is not…