Sign in

Francis Windram

@franwin.co.uk
79 followers 104 following 111 posts

Postdoc, Computational ecologist interested in spiderwebs, biological traits, imaging, vector-borne disease and good solid R code. www.franwin.co.uk for more details. he/him. Views my own.

PostsRepliesMedia
Francis Windram @franwin.co.uk · 04/09/2026
But companies who we pay real money to for real services seem to be completely ambivalent to actually providing functional support or websites.
000
Francis Windram @franwin.co.uk · 04/09/2026
Or...I suppose...they're facing such catastrophic cuts that the concepts of unit testing and basic QA are either completely ignored or are again replaced by AI that fundamentally gets it wrong. If my code simply doesn't work, my paper might get retracted or my package removed...
100
Francis Windram @franwin.co.uk · 04/09/2026
#3 AN "ENTER YOUR BIRTHDAY" FIELD THAT LITERALLY STARTS TICKING DOWN WHEN YOU ENTER IT. YOU ENTER YOUR BIRTHDAY AND BY THE TIME YOU CLICK "CONFIRM" YOU ARE 4 YEARS OLDER! This is absolutely ludicrous. Either front-end devs are just getting worse, or they are being replaced by shit coding agents.
100
Francis Windram @franwin.co.uk · 04/09/2026
While AI can be really helpful for coding, I have seen a serious uptick in stupid UI fuckups in the last few years which I do strongly suspect is related. Today I found #1 an insurance form that just didn't work and didn't save quotes. #2 A "message us" button that does nothing. But best of all...
100
Francis Windram @franwin.co.uk · 04/06/2026
No no, sun cream is a traditional English dessert similar to a posset. It's an egg custard mixed with titanium dioxide, beach sand, and an unidentifiable floral aroma.
120
Reposted by Francis Windram
Traces @traces.info · 02/06/2026
There seems to be evidence, at least from lucid dreams, that the experience is in real time because communication is possible with dreamers (I find this mindblowing). Some report that they hear the signals as coming from objects in the dream (a radio, say). www.sciencedirect.com/science/arti...
sciencedirect.com
Real-time dialogue between experimenters and dreamers during REM sleep
Dreams take us to a different reality, a hallucinatory world that feels as real as any waking experience. These often-bizarre episodes are emblematic …
373
Reposted by Francis Windram
Sadie J. Ryan (she/her) @sjryan3.bsky.social · 10/04/2026
NEW: "Ecological and socioeconomic factors associated with globally reported tick-borne viruses", led by @samsambado.bsky.social, in which she applied BRT modelling to a global database of TBVs to pick apart the complicated pathway from transmission to reported cases! www.nature.com/articles/s43...
nature.com
Ecological and socioeconomic factors associated with globally reported tick-borne viruses - Communications Medicine
Sambado et al. examine how environmental and social conditions shape where tick-borne viruses are reported worldwide. Using machine learning, they find that both ecological and economic are important, and that wealthier nations are more likely to report these overlooked diseases.
1139
Francis Windram @franwin.co.uk · 10/04/2026
Haha apologies for that confusion :) Getting this version out had quite a bit of nasty work behind the scenes to get it up to scratch for CRAN. Hope you enjoy the new models!
100
Reposted by Francis Windram
Daniel Padfield @padpadpadpad.bsky.social · 10/04/2026
Finally managed to get a new version of rTPC (v1.1.0) onto CRAN, with @franwin.co.uk driving most of the changes. There are now 49 models included. cran.r-project.org/web/packages... And parallel fitting of TPCs can be done using mirai and purrr. padpadpadpad.github.io/rTPC/article... 🧪 #rstats
094
Reposted by Francis Windram
The Pandemic Institute @thepandemicinst.bsky.social · 31/03/2026
We're at the Vector-Borne Diseases conference today here in Liverpool. Let us know if you are too! #VBD26
042
Francis Windram @franwin.co.uk · 08/03/2026
Also if we were going to get people to take anything from package dev into their normal analysis, it should be 1) Dependency checking using rlang::check_installed() and then using ::-style calling, 2) Proper messaging using cli, & 3) properly documenting functions with Roxygen.
000
Francis Windram @franwin.co.uk · 08/03/2026
That's kind of a wild suggestion for researchers (and one that I haven't personally encountered). I'm all for spinning off reusable functions into their own package, but the way one uses R for analysis is just so very different to how one writes a package. Just code/data/results works in most cases!
120
Reposted by Francis Windram
VectorByte @vectorbyte.bsky.social · 03/03/2026
Will you be at AMCA 26? Come find @vectorbyte.bsky.social and chat to us about our databases, workshops, data management, and let @samrund.bsky.social give you stickers, perhaps? #AMCA26
We are exhibiting at AMCA 26!
055
Francis Windram @franwin.co.uk · 11/02/2026
ohvbd 1.0.0 has now been released on CRAN! This package should help those looking for VBD data by interfacing with vbdhub.org for searching, and the VectorByte trait and population dynamics databases for data download (alongside much more). vbdhub.org/blog/ohvbd-c... #rstats #vectorbyte #vbd
vbdhub.org
ohvbd 1.0.0 has been released on CRAN! - Blog
Announcing ohvbd v1.0.0 on CRAN: a unified R interface for retrieval and harmonisation of vector-borne disease data.
053
Francis Windram @franwin.co.uk · 09/02/2026
It's so good!!! I initially was a bit sceptical about recode_values until I was shown the whole lookup table approach, and now I am super excited. Recoding is one of the least enjoyable things that I actually do regularly.
120
Reposted by Francis Windram
Stevoisiak @stevoisiak.bsky.social · 03/02/2026
I made a filterlist for uBlock Origin to remove Generative AI features on websites. Includes blocks for * Google AI Summaries * YouTube Ask button & chat summaries * GitHub Copilot * Facebook AI chat * X's Grok buttons * Deviantart DreamUp * Booru AI images * And more github.com/Stevoisiak/S...
Google with AI buttonsGoogle without AI buttons
3122405011924
Francis Windram @franwin.co.uk · 02/02/2026
It is a tool, and it is one that is not right for every purpose. I personally believe coding is a situation where it can significantly enhance the already highly-skilled. I also believe that one does themselves a disservice by relying too heavily upon it. It can _code_, but it can't _think_ for you.
000
Francis Windram @franwin.co.uk · 02/02/2026
You do not have to think it is terrible at everything to think it is less useful than others find it. You do not even have to believe it is good at everything to believe it is good at some things. It is certainly good at natural language processing for example.
110
Francis Windram @franwin.co.uk · 02/02/2026
My own take at least is the following: - When it works it's great. - When it doesn't work it's not. - Knowing when it doesn't work can be hard. - It is hard to realise when it hasn't worked without out-of-band knowledge. - It is hard to develop said knowledge without other skills.
120
Francis Windram @franwin.co.uk · 10/01/2026
Oh I shall, thanks!
000
Francis Windram @franwin.co.uk · 09/01/2026
I did actually play with that (parquet is such a cool data format). Alas as this is not _primarily_ a spatial package I figured it was probably best not to add an extra dep for that sweet sweet extra 300ms reduction. You did get a shoutout in the changelog though! ohvbd.vbdhub.org/news/index.h...
ohvbd.vbdhub.org
Changelog
120
Francis Windram @franwin.co.uk · 09/01/2026
Out of interest I actually ended up switching up a little more and settling on GeoPackage for this particular usecase. It further reduced load time by 33% for the largest files.
110
Francis Windram @franwin.co.uk · 09/01/2026
Oh that's a fantastic idea! Honestly shapefiles have always annoyed me, but I don't do enough with them to have done a deep dive into alternative formats. Already implemented and this saved me 25% storage size and ~35% load time for the largest files! Thank you so much!
100
Francis Windram @franwin.co.uk · 08/01/2026
I definitely agree, devs should strive to inform the user when caches are created (and, better yet, used). In the end it is a little tricky if your code is only ever run once, because after that you have no ability to affect the user's system in any meaningful manner. But still...let them know!
110
Francis Windram @franwin.co.uk · 08/01/2026
That is super interesting and very much along the lines of what I was thinking for a unified cache tracking mechanism should that be needed. Thanks!
010
Francis Windram @franwin.co.uk · 08/01/2026
Yeah that's a really good point, though I also have support for custom cache locations specifically for those cases. Still I'm inclined to agree. I hope the CRAN folks view it the same way!
000
Francis Windram @franwin.co.uk · 08/01/2026
Ahh yes memoisation would be great within sessions, these are more like large lookup shapefiles and data tables that get used across sessions. I'm inclined to agree that I should just rely on the user to handle it. Thanks for the link!
010
Francis Windram @franwin.co.uk · 07/01/2026
I could (and possibly will) make it so that any function that interacts with the outside world automatically cleans the cache, but I don't _really_ love that either as then a function that interfaces with one DB might clean the cache relating to another.
010
Francis Windram @franwin.co.uk · 07/01/2026
I struggle with this because on one side I don't like doing things under a user's nose, but on the other I really don't like the idea of just eating up space on a user's drive until they interact with the cache-maintenance helpers (which they may not find).
110
Francis Windram @franwin.co.uk · 07/01/2026
An #rstats question for package developers: If my package maintains a cache to minimise data downloads, is it sensible/preferred to put an automatic cache cleaner (delete anything older than x days) in .onLoad, or to just mostly leave cache maintenance to the user (with appropriate helpers)?
553
Reposted by Francis Windram
Jem Arnold @jemarnold.bsky.social · 16/12/2025
{ggview} can print plots to Viewer (Rstudio or Positron) with true scaling. Adjust plot settings and see the final proportions immediately. Save the plot once 👌 e.g.: ggplot(...) + ggview::canvas(width = 220, height = 220*2/3, units = "mm", dpi = 300) per @nrennie.bsky.social #datavis #rstats
312333
Reposted by Francis Windram
Daniel Padfield @padpadpadpad.bsky.social · 12/10/2025
@franwin.co.uk drove a massive rework of rTPC this year, making package maintenance much easier. rTPC now supports 49 different model formulations, vignettes are updated, & you can parallelise model fitting using new purrr & mirai, which is DOPE. #rstats 🧪 padpadpadpad.github.io/rTPC/article...
1133
Reposted by Francis Windram
Sara Gandy @saragandy.bsky.social · 29/08/2025
🚨 New paper 🚨 How does livestock grazing impact tick-borne disease hazard? Our new study in the New Forest National Park used a paired experiment to find out. Important for #rewilding and #conservation grazing schemes! #Ticks #LymeDisease @ukhsa.bsky.social www.sciencedirect.com/science/arti...
sciencedirect.com
The role of large ungulate grazers on Ixodes ricinus and tick-borne pathogens in the New Forest - a case study for future rewilded landscapes
Large ungulate grazers can manage habitats via conservation grazing, a practice using livestock to control vegetation growth, which has many ecologica…
121
Francis Windram @franwin.co.uk · 05/08/2025
Honestly, for me I'm still being pushed away from Positron by the lack of inline output for qmd/Rmd. Being able to play around then build and send is pretty important for me.
020
Francis Windram @franwin.co.uk · 27/07/2025
Ah, esquisse was the package!
010
Francis Windram @franwin.co.uk · 27/07/2025
I wish I'd had R before my Master's (though 4 languages in 7 weeks definitely made up for it). For point and click basics, Jamovi ain't terrible. Though there is an R package (the name of which escapes me) which allows for really easy visual exploration of data, which would be good for teaching!
120
Francis Windram @franwin.co.uk · 27/07/2025
Coding does it to us all. I blame undergrads taught in SPSS for triggering this particular sadistic (stadistic?) streak though.
110
Francis Windram @franwin.co.uk · 27/07/2025
Or "# the only way to win is not to play". And if you type it on a solvable problem it randomly replaces 5 double quotes in your code with single quotes and vice versa.
120
Francis Windram @franwin.co.uk · 27/07/2025
This would very quickly become my favourite game I reckon. As a bonus it should very occasionally throw in a problem that seems easy and actually was a fiendish open question in computer science or mathematics for 50+ years.
120
Francis Windram @franwin.co.uk · 24/07/2025
- Lost scrolls - The missing works of Arthur Conan Doyle - Bullet holes in bombers that got back to base - Bayesian...stuff - Dream interpretation - Random fluctuations in atmospheric noise - The trajectory of the sun across the sky - Homeopathy - The kind of computer vision we've had for decades
050
Francis Windram @franwin.co.uk · 24/07/2025
- Scattered pages of notes - Balls dropped from height onto pieces of paper - High school science demonstrations - Twitch chat messages - Numerology - The wikipedia game - Syncretic religious beliefs - Arcane and disturbing incantations - Ants - Foreign influence campaigns - Community shaming
140
Francis Windram @franwin.co.uk · 24/07/2025
- Reinforcement learning from the '50s - A dartboard in the break room - An octopus with some balls - Dice-based RNG - Reddit comments - The howls of the damned - Drunken antics - Hope and prayers - A pen and paper - Excel - The memory of a small boy from Manchester - A Commodore 64
130
Francis Windram @franwin.co.uk · 24/07/2025
Things that you as a data scientist can replace the term "artificial intelligence" with in stupid marketing text to stop your brain detonating E.g. "We will use advanced methods such as <BLANK> to track sewage spills." - Basic regression models - Interns - The CEO's best guess - An actual fish ...
1175
Francis Windram @franwin.co.uk · 16/07/2025
I feel genuinely ashamed that this wooooshed me for a full two minutes before I realised they weren't serious. I need more coffee before reading exceptionally funny posts :)
040
Francis Windram @franwin.co.uk · 13/05/2025
Huh, I just saw that they did actually acknowledge the fall, but in point 101, a point entirely unrelated to this fact. Solid copyediting too then.
000
Francis Windram @franwin.co.uk · 13/05/2025
Right I've got to get back to work, but points 106-110 are also pretty heinous. Remember to always read the source material, don't trust those looking to divide us, and push for properly and sustainably funded higher education.
010
Francis Windram @franwin.co.uk · 13/05/2025
This is very cynical, as it is purely the opinion of the authors that students are using the asylum system in this way, but they present it as fact. It's manipulative, dangerous anti-immigration rhetoric. Again the authors should be ashamed. If you are in policy, endeavour to do better than this.
110
Francis Windram @franwin.co.uk · 13/05/2025
103-105 are pretty dire. Specifically asylum is an internationally protected obligation of a state. There is little reason to claim asylum when you are already living legally in a country, that doesn't mean that you would be safe if you went back home then. Would you claim asylum if you had ILR?
Paper text: "103. Higher inflow and lower outflows of students over time has led to students representing a higher proportion of net migration in recent years, with student net migration at 262,000 in the year ending June 2024.

104. The number of asylum claims matched to a visa has increased relatively steadily since mid-2021. Around 30% of asylum claims are from visa holders. Of this, students account for the largest proportion, at almost half (47%) of all asylum claims from visa holders.

105. The majority of the students claiming asylum do so as they approach their visa expiry date. This indicates that some people might therefore be using the student route to make claims for humanitarian protection when circumstances in their country have not changed. "
110
Francis Windram @franwin.co.uk · 13/05/2025
Additionally, graduate visas only commenced in their current form in January 2021, so this graph could be considered misleading as this point is not highlighted. Also when a government introduces a visa, it is expected that said visa will be used? You can't then use that as an argument against them.
110