Sign in

James Thomas

@jatonline.uk
179 followers 509 following 42 posts

Head of Research Engineering at the Jean Golding Institute for Data and AI, University of Bristol. jatonline.uk

PostsRepliesMedia
Reposted by James Thomas
Institute for Research Software @softwaresaved.bsky.social · 01/09/2026
⬡ Today, we become the Institute for Research Software. For 15 years, we've worked as the Software Sustainability Institute to make research software more sustainable and properly recognised.
13325
James Thomas @jatonline.uk · 11/12/2025
journals.sagepub.com/doi/10.1177/... :)
journals.sagepub.com
Route network simplification for transport planning - Will Deakin, Zhao Wang, Josiah Parry, Robin Lovelace, 2025
Route network datasets are fundamental to transport models, serving as both inputs for analysis and outputs for visualization and decision-making. The increasin...
050
Reposted by James Thomas
Jean Golding Institute @jgibristol.bsky.social · 13/08/2025
Bristol Data Stories Episode 3: Understanding human interaction through geographic data science with Lenka Hasova In this episode, Lenka discusses human interaction in space and talks about her career journey, which began with a degree in cartography. Listen now: tinyurl.com/4yam4xce
Thumbnail for the podcast episode featuring headshots of Lenka Hoasova, James Thomas, and Will Chapman
051
James Thomas @jatonline.uk · 12/08/2025
@buttondown.com Assume you get notified about 500 errors, but should I report any other way?
Screenshot of Buttondown website's "Confirm Unsubscribe" page.Screenshot of Buttondown website showing a "500 Internal Server Exception" page.
120
Reposted by James Thomas
Jean Golding Institute @jgibristol.bsky.social · 30/07/2025
📢 Last chance to apply to be part of the Ask-JGI cohort! Deadline for Ask-JGI applications is tomorrow at 23:59. This is a great paid opportunity for @bristoluni.bsky.social PhD students to gain experiences that will be useful for future research or careers. Details to apply in the post below 👇
012
Reposted by James Thomas
Emily Riederer @emilyriederer.bsky.social · 27/07/2025
Technical writing is hard bcs "writing is thinking" but we often should tell our story not in the order we worked. Solution? I wrote a quick post on how @quarto.org 's embed shortcodes can reframe technical writing as reproducible evidence curation www.emilyriederer.com/post/quarto-... 🧵 (1/n)
emilyriederer.com
How Quarto embed fixes data science storytelling | Emily Riederer
Literate programming excels at capturing our stream of conscience. Our stream of conscience does not excel at explaining the impact of our work. Notebooks enable some of data scientists’ worst tendenc...
411223
Reposted by James Thomas
University of Bristol @bristoluni.bsky.social · 17/07/2025
🚀 The UK’s most powerful AI supercomputer, Isambard-AI, is now live in Bristol. Officially launched at the NCC today by Secretary of State for Science, Innovation, and Technology Peter Kyle, it can complete 80 years of human work in one second. A new era for research begins🔬 ➡️ brnw.ch/21wUdXk
0116
Reposted by James Thomas
Frank Wiles @fwiles.bsky.social · 29/06/2025
Wrote about some of my favorite tools and shell hacks I use daily to streamline my workflow. Life is too short folks, take a few minutes each week to sand down some of the rough edges of your work. frankwiles.com/posts/my-cl...
033
Reposted by James Thomas
The Conversation UK @uk.theconversation.com · 14/06/2025
Looking back in time could inspire the aircraft innovations of the future.
tcnv.link
How pterosaurs can inspire aircraft design
Looking back in time could inspire the aircraft innovations of the future.
22010
Reposted by James Thomas
Liz Martin-Silverstone @gimpasaura.bsky.social · 14/06/2025
Check out this article @davehone.bsky.social, Mike Habib and I wrote based on our ideas about pterosaurs as models for aircraft. Heavy lifting done by Dave Hone and very little by me while I’m on mat leave, but still appreciate being involved!
03311
Reposted by James Thomas
Frank Wiles @fwiles.bsky.social · 10/06/2025
Like Django ORM managers I think management commands are one of the more overlooked features of Django. Partly because the boilerplate is a pain. Well django-click and django-typer remove all of that and let you get right to the meat of what you need. www.revsys.com/tidbits/bet...
revsys.com
Better Django management commands with django-click and django-typer
Writing Django management commands can involve a ton of boilerplate code. But Revsys uses two libraries that cut our management command code in half while making it more readable and powerful: django-click and django-typer.
021
Reposted by James Thomas
Accessibility Awareness @a11yawareness.bsky.social · 07/06/2025
Everyone who works on a website has a role to ensure the site and its content are accessible. This resource from Vox Media breaks down some accessibility tasks by job role, including content creators, designers, developers, project managers, and testers. accessibility.voxmedia.com
accessibility.voxmedia.com
Vox Product Accessibility Guidelines
As journalists, advertisers, producers, and creators, content is at our core at Vox Media. We want to ensure that everyone—regardless of ability, situation, or context—can access it.
05023
Reposted by James Thomas
Jean Golding Institute @jgibristol.bsky.social · 04/06/2025
Bristol Data Stories Episode 2: Professor Jean Golding OBE's life in Science In this special edition, we talk to Professor Jean Golding OBE, Emeritus Professor at the ‪@bristoluni.bsky.social‬, and founder of the ‘Children of the 90s' study (ALSPAC). Listen now: tinyurl.com/mr38kpne
Thumbnail for the Bristol Data Stories podcast episode with Jean Golding. Includes headshots of Jean Golding, Madlen Williams, and Will ChapmanCamera view of Jean Golding in the view finder Jean, Madlen and Will sat down looking at Hamish filmingWill and Madlen sat down facing Jean whilst a camera is recording Madlen
053
Reposted by James Thomas
Jean Golding Institute @jgibristol.bsky.social · 05/06/2025
Thank you to everyone who came along to our AI for Good: Celebration of the University of Bristol's National AI Award event last night! If you came along, we hope you enjoyed our keynote and panel. We want to thank our keynote speaker, panel members, exhibitors, and everyone involved.
The panel sat on chairs on the stage with the chair standing up. An audience is sitting watching them.Aerial view of the keynote speaker at a lectern on stage. The audience is sitting in rows of chairs watching.Leon Danon speaking to the Lord Mayor in the exhibition room with people surrounding them Colin, Seth, and Conor sat on the stage with the Slido questions on the screen behind them.
042
Reposted by James Thomas
Jean Golding Institute @jgibristol.bsky.social · 02/06/2025
Day 1 of #BristolDataWeek2025 is officially over! Today we had our Introduction to Python training session, Essentials of Working with Sensitive Research Data workshop, and the @gw4alliance.bsky.social‬ AI and Data Science: AI, Climate and Health event. Thank you to all of our speakers!
Group of people looking at the posters at the GW4 eventPhD student panel sat on bar stools at the front of the audiencePeople sat at desks on laptops for the JGI training sessionZosia Beckles presenting a slide on 'What is sensitive data?'
044
Reposted by James Thomas
Frank Wiles @fwiles.bsky.social · 31/05/2025
Our site upgradedjango.com got some love last week. It now shows you which versions of Python are supported by Django version! #python #django
042
Reposted by James Thomas
Jean Golding Institute @jgibristol.bsky.social · 27/05/2025
Join our celebration event to honour @bristoluni.bsky.social recent win as AI University of the Year with a keynote talk from ‪@sanakb.bsky.social‬ 🗓️ 17:00 - 20:00, 4 June, Victoria Rooms Open to all interested in data science and AI. Get your free ticket now: tinyurl.com/2s3tv6jy
AI for Good event graphic featuring text about the event and headshots of Conor Houghton, Sana Khareghani, Simon McIntosh-Smith, Genevieve Liveley, Sidharth Jaggi, Agnes Nairn, Colin Gavaghan, and Seth Bullock
044
Reposted by James Thomas
Saloni @scientificdiscovery.dev · 23/05/2025
This is a nice practical guide to data visualization by @nrennie.bsky.social @royalstatsoc.bsky.social! royal-statistical-society.github.io/datavisguide/
Screenshot showing two panel layouts, with one row or one column of panels. Comparison of a chart with a legend vs a chart where lines are labelled directly.
04512
Reposted by James Thomas
Huw Day @huwwday.bsky.social · 26/05/2025
I've been leading the development of a 3 hour, An Intro to AI in Python course (bristol-training.github.io/intro-to-ai/..., with help from some of the JGI Research Advocates, see the contributors page first!) for Bristol Data Week! I've done lots of thinking on how to teach AI...
bristol-training.github.io
contributors – Introduction to AI
131
Reposted by James Thomas
GitHub @github.com · 26/05/2025
Great docs = Great developer experience ✅ Want to write clearer, more effective docs? We've put together tips on structure and tone—with plenty of real-world examples for reference. 📝 Check out the developer's guide. ⬇️
github.blog
Documentation done right: A developer’s guide
Learn why and how you should write docs for your project with the Diátaxis framework.
3726
Reposted by James Thomas
DuckDB @duckdb.org · 21/05/2025
DuckDB v1.3.0 “Ossivalis” is out and it packs a ton of new features, fixes and optimizations. See the announcement blog post: duckdb.org/2025/05/21/a...
06017
Reposted by James Thomas
Martin Fleischmann @martinfleischmann.net · 26/03/2025
After last year's success, we have opened a registration to 2025 instalment of **Spatial Data Science in Python** as a standalone course open to anyone.  It is perfect for anyone looking to dive spatial data analysis using Python, regardless of prior experience. 🔗 martinfleischmann.net/sds/micro/
martinfleischmann.net
A course on Spatial Data Science – Spatial Data Science in Python
0154
Reposted by James Thomas
Ralph Spandl @spandl.ca · 21/05/2025
Always a pleasure to listen to @jburnmurdoch.ft.com that just gave another fantastic presentation about how to tell better data stories. Watch again here on YouTube: www.youtube.com/watch?v=uRRO...
youtube.com
Designing for impact with John Burn-Murdoch
YouTube video by Flourish
151
Reposted by James Thomas
Hsuan-Pei Huang @pikapei.bsky.social · 13/05/2025
Switching from conda/mamba to pixi. Like it!
011
Reposted by James Thomas
James Thomas @jatonline.uk · 12/05/2025
🎞️ Can others reproduce your conda results? Using 'pixi' in a Python data analysis project... you can now watch my recent talk on how keeping track of package versions is hard, can go wrong if your developers use multiple platforms, and how @prefix.dev's pixi helps! ▶️ www.youtube.com/watch?v=ws92...
youtube.com
Can others reproduce your conda results? Using 'pixi' in a Python data analysis project
YouTube video by Jean Golding Institute
174
James Thomas @jatonline.uk · 12/05/2025
Plus if you're in Bristol, UK on 2-6 June, check out our FREE in-person training as part of @jgibristol.bsky.social's Bristol Data Week 2025: bristol.ac.uk/golding/even... Explore the full range of courses, talks and workshops on the interactive schedule: jgibristol.github.io/data-week/
bristol.ac.uk
Bookings Now Open for Bristol Data Week 2025!
000
James Thomas @jatonline.uk · 12/05/2025
Both of these talks were lunch and learns originally delivered by @jgibristol.bsky.social to data scientists and resarch software engineers at @bristoluni.bsky.social. Learn more about our free training bristol-training.github.io and our group bristol-reg.github.io on our various websites!
bristol-training.github.io
Data Science and Research Software Engineering Training
100
James Thomas @jatonline.uk · 12/05/2025
The uv talk covers: - What does uv do? - When pip goes wrong when installing new packages - How uv helps - Using uv in a data science context Supporting material and code examples for both talks are also available: jatonline.github.io/managing-dep...
jatonline.github.io
Can others reproduce your results? Using uv and pixi in Python data analysis projects
100
James Thomas @jatonline.uk · 12/05/2025
Reproducible programming environments allow for consistent & reliable software development, aiding collaboration & long-term maintenance of projects. What if you don't use conda? There is a complementary talk on @crmarsh.com's tool: uv, too! ▶️ www.youtube.com/watch?v=OJ_-...
youtube.com
Can others reproduce your results? Using 'uv' in a Python data analysis project
YouTube video by Jean Golding Institute
100
James Thomas @jatonline.uk · 12/05/2025
See how as a data scientist, research software engineer or scientific coder, you can take practical steps to incorporate pixi into your project. The talk covers: - What does pixi do? - When conda can go wrong when others update your project - How pixi helps - Using pixi in a data science context
100
James Thomas @jatonline.uk · 12/05/2025
🎞️ Can others reproduce your conda results? Using 'pixi' in a Python data analysis project... you can now watch my recent talk on how keeping track of package versions is hard, can go wrong if your developers use multiple platforms, and how @prefix.dev's pixi helps! ▶️ www.youtube.com/watch?v=ws92...
youtube.com
Can others reproduce your conda results? Using 'pixi' in a Python data analysis project
YouTube video by Jean Golding Institute
174
Reposted by James Thomas
James Thomas @jatonline.uk · 04/05/2025
Last week I gave a lunch and learn talk on "Can others reproduce your conda results? Using 'pixi' in a Python data analysis project" showing how keeping track of package version using conda is hard and can go wrong if your developer use multiple platforms, and how pixi helps.
Title card for the video: Can others reproduce your conda results? Using pixi in a Python data analysis project. By James, Thomas, Jean Golding Institute, University of Bristol
121
James Thomas @jatonline.uk · 04/05/2025
In the uv talk I show how just using pip to install packages into an existing virtual environment can lead to conflicts & how uv avoids this with lock files. I also show how using `uv init --lib` can set you up nicely with a separate code library to your notebooks. Perfect for data science projects!
010
James Thomas @jatonline.uk · 04/05/2025
The pixi talk will published be published next week, but if you want a sneak peak, you can check out a similar talk I gave on using uv in a data science project earlier in the month: www.youtube.com/watch?v=OJ_-... @crmarsh.com @prefix.dev
youtube.com
Can others reproduce your results? Using 'uv' in a Python data analysis project
YouTube video by Jean Golding Institute
110
James Thomas @jatonline.uk · 04/05/2025
Last week I gave a lunch and learn talk on "Can others reproduce your conda results? Using 'pixi' in a Python data analysis project" showing how keeping track of package version using conda is hard and can go wrong if your developer use multiple platforms, and how pixi helps.
Title card for the video: Can others reproduce your conda results? Using pixi in a Python data analysis project. By James, Thomas, Jean Golding Institute, University of Bristol
121
Reposted by James Thomas
Marcus Noble @averagemarcus.bsky.social · 30/04/2025
New blog post: ✨ My tips on giving technical talks ✨ marcusnoble.co.uk/2025-04-30-my-tip…
marcusnoble.co.uk
My tips on giving technical talks
I've been giving talks at meetups and conferences for a few years now. I started off after the encouragement of my friends giving their own talk and looking so cool doing it! It's taken a while but I ...
155
James Thomas @jatonline.uk · 30/04/2025
Good luck!
000
James Thomas @jatonline.uk · 30/04/2025
This may be minor and/or unrelated and/or not a problem, but it looks like you have a ~ character in your path that isn't being expanded to your home directory in the output lower down. If you're using ~ in the path that points to your python interpreter, you may need to use $HOME instead.
VS Code error messages showing:

Process Execution:
~/anaconda3/envs/defaultwork/bin/python

09:12:06.174 [error] Failed to request kernel info [Canceled: Canceled at Ah. value /Users/~/. vscode/extensions/ms-toolsai.jupyter-2025 3
100
James Thomas @jatonline.uk · 28/04/2025
Well, this is neat! Looking forward to trying it!
020
Reposted by James Thomas
Martin Fleischmann @martinfleischmann.net · 28/04/2025
Ever needed to simplify street networks? I did. And it is a pain. So we wrote an algorithm that does that for us. And can do for you, as it is available as a Python package called `neatnet`. Here's a short blog about it - martinfleischmann.net/simplificati... and package - uscuni.org/neatnet
Original network on the left, simplified one on the right.Diagram of the neatnet's workflow.Image of face artifacts.
48219
James Thomas @jatonline.uk · 28/04/2025
Thanks @fwiles.bsky.social - very useful! Two other routes I've used for installation, which might be useful for some: uv tool install rust-just (from PyPI) pixi global install just (from conda) Also for Windows users: winget install --id casey.just
110
Reposted by James Thomas
Frank Wiles @fwiles.bsky.social · 27/04/2025
/usr/bin/just do it! Quick demo and details on why you should replace that Makefile or folder of scripts with just task runner. youtu.be/fDDDvC4VSvE
youtube.com
/usr/bin/just do it - Demoing the just task runner
Learn how the just command runner is useful day to day for your software development and devops projects. Replace existing Makefiles or folders full of scri...
194
Reposted by James Thomas
Dr. Dawn Foster @geekygirldawn.bsky.social · 27/04/2025
The biggest thing that I wish people knew before starting their 1st tech job (probably most jobs) is that asking someone more experienced for the “answer” is what you should do as soon as you get stuck. It’s drilled into students that this is “cheating”, so this is a big change for new hires.
3123
James Thomas @jatonline.uk · 24/04/2025
❤️ Small quality of life improvement - is it possible to have the docs link back to the repo, as well?
000
Reposted by James Thomas
Adam Johnson @adamj.eu · 24/04/2025
🎨 django-upgrade now has a swish logo! 📖 And its documentation has moved to ReadThe Docs! 👉 Check it out at django-upgrade.readthedocs.io/en/latest/ #Django
django-upgrade logo
261
Reposted by James Thomas
Society of RSE @society-rse.org · 22/04/2025
It’s looking like we’ve got enough updates for an April newsletter… but we’d love to add a few more bits before it hits inboxes! If you have events, news or announcements that you would like us to include, then please submit them here ⏳ by end of Friday 25th April ⏳: society-rse.org/calling-for-...
society-rse.org
Call for Newsletter Submissions - Society of Research Software Engineering
Our regular newsletter announces new Society initiatives, and gathers RSE news, events, blogs, papers and anything interesting and relevant together in one place. We are keen to feature content from…
032
James Thomas @jatonline.uk · 22/04/2025
👀 TIL about the Wagtail and Django release timeline: github.com/orgs/wagtail... Essential reading, alongside the Django and Wagtail release schedules: www.djangoproject.com/download/#su... github.com/wagtail/wagt... Thanks for this @wagtail.org!
Screenshot of the Wagtail and Django release timeline, filtered for releases prior to June 2025, with security support at least until today (22 April 2025). Shows Wagtail 7.0 LTS (in the future), and current supported versions (in order): Django 5.2 LTS, Wagtail 6.4, Wagtail 6.3 LTS, Django 5.1, Wagtail 5.2 LTS and Django 4.2 LTS. Wagtail 5.2 LTS support ends soon.
000
Reposted by James Thomas
Jean Golding Institute @jgibristol.bsky.social · 18/04/2025
We are hosting the SCRIBE Hackathon, a collaborative event aimed at developing the Strategic Rapid Integrated Biothreat Evaluation data tool. 🗓️ Kick-off workshop: 17 June, 9:30am–4pm 🗓️ Half-day review workshop: 1 July, 2–4pm Info: jgibristol.github.io/scribe-hacka... Register: tinyurl.com/39e2vrma
jgibristol.github.io
SCRIBE Hackathon
The SCRIBE Hackathon is a biothreat datathon to explore access, nature, and integration of data relating to biothreats in complex environments. Working with expert partners from across life sciences, ...
033
Reposted by James Thomas
DuckDB @duckdb.org · 17/04/2025
New blog post by Pedro Holanda, Gabor Szarnyas and Gerardo Vitagliano: DuckDB's CSV Reader and the Pollock Robustness Benchmark – Into the CSV Abyss duckdb.org/2025/04/16/d...
0164
James Thomas @jatonline.uk · 09/04/2025
If you’re interested, you can find out more about what OpenGHG is: openghg.org/about/
openghg.org
About - OpenGHG.org
OpenGHG
010