Oli Hawkins's Avatar

Oli Hawkins

@olihawkins.com

Editorial data scientist working on computational investigations for the visual and data journalism team at the Financial Times. 🌐 olihawkins.com

13,105
Followers
1,317
Following
70
Posts
14.06.2023
Joined
Posts Following

Latest posts by Oli Hawkins @olihawkins.com

Preview
GitHub - olihawkins/nicar-2026-polars: A Python project for demonstrating how to use Polars to analyze election data. A Python project for demonstrating how to use Polars to analyze election data. - olihawkins/nicar-2026-polars

If you use Python and are curious about learning Polars, you might like the workshop @eadehemingway.bsky.social and I delivered at #NICAR26: Analyzing election data with Polars and Python. The repo contains a detailed walkthrough of everything we covered in the session.

github.com/olihawkins/n...

07.03.2026 11:33 πŸ‘ 13 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0
UK Address Matcher logo

UK Address Matcher logo

We are pleased to release `uk_address_matcher`, a free Python package for address matching and geocoding, developed by Tom Hepworth and me.

The package has several aims: simplicity, speed and accuracy.

04.03.2026 11:43 πŸ‘ 28 πŸ” 9 πŸ’¬ 1 πŸ“Œ 2
Monochrome photograph featuring two women climbing on a rock face with ropes both wearing long dresses and hats

Monochrome photograph featuring two women climbing on a rock face with ropes both wearing long dresses and hats

Rock climbers Lucy Smith and Pauline Rankin of the Ladies’ Scottish Climbing Club, 1908, Salisbury Crags, ScotlandΒ #WomensArt
Welcome to #WomensHistoryMonth

01.03.2026 03:53 πŸ‘ 745 πŸ” 161 πŸ’¬ 11 πŸ“Œ 16

Shit, that sounds rough. I hope you have a swift recovery and a smooth journey back to exercise.

28.02.2026 21:52 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Video thumbnail

When D3 was released in February 2011, it transformed how we build data visualizations for the web and ushered in a new age of unbridled creativity in information design, data journalism, and beyond. Today, it remains the backbone of modern, interactive data viz.

Happy 15th birthday, D3 πŸŽ‚
d3js.org

27.02.2026 20:38 πŸ‘ 163 πŸ” 38 πŸ’¬ 0 πŸ“Œ 7

Choose your fighter. I am β€œDon’t trust NSE”!

bsky.app/profile/ding...

26.02.2026 18:32 πŸ‘ 5 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0

This is a terrific thread which really demonstrates the value of statistical reasoning.

bsky.app/profile/pwgt...

25.02.2026 19:01 πŸ‘ 8 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
GitHub - melissawm/open-source-ai-contribution-policies: A list of policies by different open source projects about how to engage with AI-generated contributions. A list of policies by different open source projects about how to engage with AI-generated contributions. - melissawm/open-source-ai-contribution-policies

Just saw Leah W. share this on LinkedIn - great round-up of AI contribution policies! By @melissawm.bsky.social

github.com/melissawm/op...

25.02.2026 06:07 πŸ‘ 13 πŸ” 3 πŸ’¬ 1 πŸ“Œ 0
Preview
NICAR 2026 schedule | March 4-7, 2026 | Indianapolis Welcome to the NICAR 2026 schedule! Browse sessions, speakers, sponsors and exhibitors.

1/8 So you're excited to go to the @ire.org 2026 NICAR data journalism conference!

And you want to follow all the speakers online. This tutorial will show you how do this quickly with #Rstats and @bsky.app.

schedules.ire.org/nicar-2026/#/

23.02.2026 22:06 πŸ‘ 203 πŸ” 4 πŸ’¬ 1 πŸ“Œ 0
Video thumbnail

New: Drones are redrawing the map of war in Ukraine.

Relentless surveillance has pushed the battlefield 20km beyond the front, in both directions. Supplies arrive by drone; the wounded leave by robot.

This is the β€œkill zone” β€” and the future of warfare.

πŸ‘‰ ft.com/kill-zone

23.02.2026 07:25 πŸ‘ 238 πŸ” 93 πŸ’¬ 4 πŸ“Œ 12

Yes! And as someone else just pointed out, the good natured humour of both threads is a reflection of what is good about the R community.

22.02.2026 21:55 πŸ‘ 2 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0

The thing I specifically remember from the evolution of JS was the move from promises to generators to async. I know someone who literally rewrote all of his packages to support generators using co and then did it again to support async.

22.02.2026 21:06 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

But conversely I think the R community tends to move too slowly. I know plenty of people still using the magrittr pipe, map_dfr, httr etc with absolutely no curiosity to learn new ways of doing things. And I find that a bit frustrating.

22.02.2026 21:01 πŸ‘ 7 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

The JavaScript community, for example, is like a hyperactive child that becomes immediately obsessed with every new toy, instantly forgetting how excited it was about the old toy, which it abandoned the minute the new toy came out.

22.02.2026 20:59 πŸ‘ 4 πŸ” 1 πŸ’¬ 2 πŸ“Œ 0

I don’t want to weigh in on either of those things, but it got me thinking about how the cultural momentum to adopt new features varies across programming language communities.

22.02.2026 20:58 πŸ‘ 2 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0

Have seen two R threads this week debating language features: the first on base R dataframes vs tibbles; the second on the magrittr pipe vs the native pipe.

22.02.2026 20:57 πŸ‘ 6 πŸ” 1 πŸ’¬ 4 πŸ“Œ 0

I think there is one way that technologists can future-proof their CV against this outcome, which is to start taking a serious interest in cybersecurity. Uncritical reliance on agentic AI is going to introduce so many vulnerabilities into vital business systems in the next five years.

20.02.2026 10:16 πŸ‘ 5 πŸ” 0 πŸ’¬ 2 πŸ“Œ 1

It's one of those packages that once you find out about it, you wish you had found out much sooner!

20.02.2026 09:50 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Preview
retry Easy to use retry decorator.

My friend Ivan recently told me about this Python package, and if you need to routinely fetch data from a flaky API, it's a gift.

pypi.org/project/retry/

20.02.2026 09:42 πŸ‘ 6 πŸ” 0 πŸ’¬ 2 πŸ“Œ 0
Title slide: Acting as if our research might matter - Analyzing data

Image: A meteor about to strike the earth.

Title slide: Acting as if our research might matter - Analyzing data Image: A meteor about to strike the earth.

Clinical Researchers:

I am here to warn you about a meteor hurling towards us.

That meteor represents increasing scrutiny of clinical research; and in particular how we approach data collection, analysis, interpretation and reporting.

Prepare now, or face the consequences.

1/

24.10.2024 07:49 πŸ‘ 155 πŸ” 70 πŸ’¬ 22 πŸ“Œ 20

love a bit of continvouclous morging

16.02.2026 17:10 πŸ‘ 832 πŸ” 231 πŸ’¬ 39 πŸ“Œ 44

Also a classic!

15.02.2026 22:04 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Display an album that was important to you when you were nineteen.

bsky.app/profile/rsim...

15.02.2026 21:45 πŸ‘ 8 πŸ” 2 πŸ’¬ 1 πŸ“Œ 1
A screenshot from the Mac application DaisyDisk showing the contents of the Application Support folder in my home directory. Slack is using 23.2GB.

A screenshot from the Mac application DaisyDisk showing the contents of the Application Support folder in my home directory. Slack is using 23.2GB.

Just discovered a 23GB Slack cache on my machine!

15.02.2026 16:39 πŸ‘ 8 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
How Generative and Agentic AI Shift Concern from Technical Debt to Cognitive Debt This piece by Margaret-Anne Storey is the best explanation of the term cognitive debt I've seen so far. Cognitive debt, a term gaining traction recently, instead communicates the notion that …

Short musings on "cognitive debt" - I'm seeing this in my own work, where excessive unreviewed AI-generated code leads me to lose a firm mental model of what I've built, which then makes it harder to confidently make future decisions simonwillison.net/2026/Feb/15/...

15.02.2026 05:22 πŸ‘ 465 πŸ” 88 πŸ’¬ 42 πŸ“Œ 20
Post image Post image

A special FT magazine issue all about maps is out today, w great pieces by @okr.bsky.social and @theboysmithy.ft.com, plus maps by me on how glacial melt is redrawing Alpine borders, the battle to redraw America and more

Read it online here (though best enjoyed in print!) www.ft.com/content/efab...

14.02.2026 12:22 πŸ‘ 52 πŸ” 22 πŸ’¬ 1 πŸ“Œ 2

If you're a data journalist using Python and you are going to be at NICAR, we are running an introduction to Polars workshop.

schedules.ire.org/nicar-2026/#...
bsky.app/profile/emil...

14.02.2026 13:35 πŸ‘ 17 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0
Preview
Polars DataFrames for the new era

If you are user of the Python package Pandas, I cannot recommend switching to Polars highly enough. #astrocode

I'm doing some groupbys for some plots, and a complicated set of string & numerical operations on *25 million rows* takes just 3 seconds on my laptop.

The Pandas equivalent: 2+ minutes. 🀯

12.01.2026 10:44 πŸ‘ 121 πŸ” 18 πŸ’¬ 6 πŸ“Œ 5

I’m not saying this shouldn’t be an option but at least spell it out. All of the proposals to build a new Parliament in the North and turn the Palace of Westminster into a museum would be more expensive.

05.02.2026 09:31 πŸ‘ 5 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Okay. But the only way to save that money is to let a World Heritage site sink into the Thames. If you build a new Parliament elsewhere, you still have a failing building full of asbestos, ageing wiring, leaking pipes, falling masonry etc which you can’t use for any purpose in its current state.

05.02.2026 09:29 πŸ‘ 5 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0