Sign in

James Logan

@ponderingpothos.bsky.social
96 followers 141 following 115 posts

Scientific computing in rust and python, firmware in rust, and the occasional circuit board design & testing. Propulsion engineer in a previous life.

PostsRepliesMedia
Reposted by James Logan
Predrag Gruevski @predr.ag · 21/09/2026
GitHub Actions + Rust's Miri can leak your secrets in CI 🧵 If you run Miri in CI: - upgrade to the 2026-09-22 nightly - clear caches - rotate any secrets that the `cargo miri` CI job had access to GPT-6 Astra helped find this 🦀
GitHub Actions makes it possible to cache directories between runs. Typical setups allow CI runs on main (and other branches) to write to cache, and PRs can only read from cache (preventing cache poisoning). Rust projects tend to speed up CI by caching binaries built by cargo install and sometimes the contents of target/.

PR CI can be triggered by anyone who can open PRs on your repository. GitHub requires maintainer approval for the first PR, but future PRs will rerun CI on every push. Anyone who has previously landed a change can trigger a CI run extracting information from cached target/ and then cover their tracks by pushing a second commit to the PR.

GitHub sometimes hides overwritten commits in its UI, making this kind of attack harder to detect. CI run logs and overwritten commits are also deleted after a few months.

When cargo miri is invoked, Miri needs to retain build-relevant environment variables between runs. The current code to do so achieves this by storing all environment variables to target/. This, of course, persists when target/ is cached.

If your environment contained secrets, these can now be accessed by PRs via the cache.
1389
Reposted by James Logan
TheZoq2 @thezoq2.mastodon.social.ap.brid.gy · 20/09/2026
One of the coolest things to happen in Spade yet 👀 @breakingtaps wrote and taped out a Transport Triggered Architecture processor from scratch in a month with 0 prior experience! This video is also one of the better intros to digital hardware design I've seen, certainly much better than some of […]
mastodon.social
Original post on mastodon.social
0213
Reposted by James Logan
Adam Chalmers @adamchalmers.com · 12/09/2026
If anyone is curious, I'm considering generalizing KCL's UoM support: docs.google.com/document/d/1...
docs.google.com
KCL 3.0 UoM
Proposal: Dimensional analysis in KCL 3.0 Background Current Units of Measurement (UoM) system as of KCL 2.0 is documented here. But I'll give you a quick summary: KCL numbers currently all have a uni...
121
Reposted by James Logan
Eris @isolyth.dev · 10/09/2026
New favorite painting discovered Symphony of the Sixth Blast Furnace (1979), Sedukhin
619527
Reposted by James Logan
Adam Chalmers @adamchalmers.com · 07/09/2026
As usual I enjoyed a @jyn.dev post: jyn.dev/simple-is-no...
jyn.dev
simple is not small
small programs hide coupling
0243
Reposted by James Logan
Oxide Computer Company @oxide.computer · 01/09/2026
With Oxide, your compute gets more valuable over time, not less. The same Rack Model 0 we launched in 2023 now supports more than 2x the vCPUs per rack with our latest compute sleds and system version 21 which adds support for Zen 5c processors.
0495
Reposted by James Logan
reto @galactic-forensics.space · 28/08/2026
This week I received a Deimos DAQ Rev7 from @deimoscontrols.bsky.social It acquires precision measurement, here from two thermocouples, and can use these to control outputs, here a GPIO pin. All controllable from #Rust (or python). Thanks @ponderingpothos.bsky.social for all your help!
A Deimos DAQ Rev7 data acquisition and hardware control module with two thermocouples plugged in. A volt meter is connected to a GPIO output pin and shows a signal of 3.291V.
142
Reposted by James Logan
Matt Keeter @mattkeeter.com · 23/08/2026
New blog post for the WebGPU aficionados! WGSL layout rules are annoying, and I got tired of mismatched CPU/GPU layouts (because the failure mode usually required rebooting my entire laptop) As it turns out, it's not too hard to automatically cross-check them, with the power of runtime reflection!
mattkeeter.com
Testing WebGPU data layouts with Facet
Using Facet's run-time reflection to check the layout of structs against their definitions in WebGPU shaders
34910
Reposted by James Logan
reto @galactic-forensics.space · 30/07/2026
InstrumentRs just got a derive macro to let you derive InstrumentParameter, i.e., how your new types get transformed into instrument commands. You can read all about it here: blog.galactic-forensics.space/blog/10-deri...
blog.galactic-forensics.space
InstrumentRs: #[derive(Parameter)]
Thoughts and ideas...
121
Reposted by James Logan
James Munns @jamesmunns.com · 28/07/2026
"We have generic parameters from outer item at home" play.rust-lang.org?version=stab... I feel like I keep re-discovering that this works, and forgetting why it's more limited than I actually want it to be in the general case, but it does print what you'd expect it to print :)
Screenshot of code at the playground link
3305
Reposted by James Logan
AstraKernel 💫 @astrakernel.bsky.social · 22/07/2026
✨ Programming languages & Open Source - based on GH search Repository created in: 2026 Stars: Greater than 100 1. Python - 5000 2. JS - 1300 3. Rust - 1000 4. Go - 775 5. Swift - 431 6. C++ - 413 7. C - 319 8. Kotlin - 260 9. C# - 223 10. Java - 167 -- PHP - 56 Ruby - 22 #programming #rustlang
052
Reposted by James Logan
austin (e/accordion 🪗) @thebadcode.com · 04/07/2026
i agree with conputer dipshit: looking at what's coming and not thinking it's going to raise the water line for shipped software is nuts
2836
Reposted by James Logan
Oxidize Conference @oxidizeconf.bsky.social · 29/06/2026
Hiring or being hired in Rust? A panel with Till Adam (KDAB), Julius Gustavsson (Volvo Cars), Thomas Fleischmann (Accenture), Julia Sommer (Ferrous Systems) and Liran Aloni (JetBrains) on navigating the maturing Rust job market. 🔗 oxidizeconf.com/sessions/pan... #Oxidize2026 #RustLang #RustJobs
Promotional graphic for a panel titled “Navigating the Rust Job Market: Hiring and Being Hired" at the Oxidize applied Rust conference in Berlin, Sept 14–16, 2026. The image features the names of the panelists: Till Adam (KDAB), Julius Gustavsson (Volvo Cars), Thomas Fleischmann (Accenture), Julia Sommer (Ferrous Systems) and Liran Aloni (JetBrains). The background is light blue with abstract curved shapes, and the Oxidize logo appears at the bottom left.
064
Reposted by James Logan
poorly drawn cats @poorlycatdraw.bsky.social · 27/06/2026
a poorly drawn cat that looks like zubat, the pokemona picture of a black cat yawning and stretching, but it looks like it has a weirdly large mouth!
91296304
Reposted by James Logan
Cat Hicks @grimalkina.bsky.social · 22/06/2026
I have been watching the dialogue on this one closely. To everyone who is saying "OP is special, no one could use AI this way" well, I have spent 18 months doing significant amounts of scicomm in patient communities and they are ALL using AI this way. wrote this to help: github.com/DrCatHicks/i...
github.com
GitHub - DrCatHicks/informed-patient: A Claude Skill to create an evidence review to inform specific health questions
A Claude Skill to create an evidence review to inform specific health questions - DrCatHicks/informed-patient
921548
Reposted by James Logan
Predrag Gruevski @predr.ag · 21/06/2026
The parallels between the rise of CNC and AI are astonishing. We went from "this will de-skill machinists" to the modern marvels of engineering that we all take for granted, like the one I'm typing on. Another excellent video from @asianometry.bsky.social www.youtube.com/watch?v=OgXm...
youtube.com
Fanuc and the Numerical Control Revolution
YouTube video by Asianometry
121
Reposted by James Logan
The Rust Foundation @rustfoundation.org · 16/06/2026
We're building the Rust Commercial Network: A free community where the companies running Rust in production work together and with Rust community members to advance language adoption. First public meeting: June 22, 4pm UTC. All welcome. More info: rustfoundation.org/media/buildi...
072
Reposted by James Logan
Matt Keeter @mattkeeter.com · 08/06/2026
inside of you there are two wolves
Screenshot of the Github code review screen.

@jamesmunns has approved the PR with "Let's go"
@hawkw has approved the PR with "sure fine whatever"
121111
Reposted by James Logan
Adam Chalmers @adamchalmers.com · 01/06/2026
C++ programmers really will say 'you use borrow checkers? that pales in effectiveness to my strategy, properly de/allocating memory' and then not properly de/allocate memory
720827
Reposted by James Logan
nia (cia asset) @nia.is.fckn.gay · 24/05/2026
WHEEEEEEEEEE github.com/rust-lang/ru...
github.com
alloc: stabilise `Allocator` by nia-e · Pull Request #156882 · rust-lang/rust
Stabilise a bare-minimum (dyn-incompatible, but could be in the future) Allocator trait, alongside Box::new_in(), Vec::new_in(), the System Allocator impl, and a blanket impl of Allocator for T: Gl...
417938
James Logan @ponderingpothos.bsky.social · 14/05/2026
Bring back schematics printed on the enclosure
a wind speed meter with the electromech diagram on the front panelan unknown instrument with the electromech diagram on the front panelanother wind speed meter with the electromech diagram on the front panel
011
James Logan @ponderingpothos.bsky.social · 13/05/2026
Bring back pondering the orb
A stokes sphere device for measuring hours of daylight
010
Reposted by James Logan
✧✦Catherine✦✧ @whitequark.treehouse.systems.ap.brid.gy · 08/04/2026
hey wanna see somethng cursed one part of this NIC is downloading UEFI boot options from another part of this NIC over HTTP. (well, failing to do it for some reason) you're welcome
22016
Reposted by James Logan
FerrousSystems @ferroussystems.bsky.social · 02/04/2026
Some fun compiler-adjacent #RustLang reading: How can you make sure [panic!] is unreachable in part of your program? This write-up goes into how we approached callgraph analysis in #Ferrocene – and how you can try it out for yourself! 👉 ferrous-systems.com/blog/callgra...
A colourful box that says: 
New blog post!
Callgraph Analysis
Writing custom lints for fun and profit! Compiler team lead Jynn Nelson dives into the world of static analysis and callgraphs by showing how Ferrocene ensures that only the most strictly tested code is used in safety-critical applications.
Thank you for reading and following us on BlueSky.
0207
Reposted by James Logan
Freya Holmér @freya.bsky.social · 26/03/2026
I'm almost there it's so pretty!! 😭 this is the first time I've made extensive use of complex numbers in shader code, which has been fun! it's an analytic 2D lighting system through piecewise conformal maps representing angular light/"sky" exposure, which means you get fully analytic penumbras!
a partially finished analytic 2D lighting solution, showing both the angular and radial component with a checkerboard pattern and color coding
672065169
James Logan @ponderingpothos.bsky.social · 21/03/2026
New gear day!!
Picture of a spectrum analyzer and EMC probe set
010
James Logan @ponderingpothos.bsky.social · 19/03/2026
Deimos DAQ is an interface between hardware and software for industrial and scientific use. Unlike most DAQs, it comes integrated with precision frontends for common sensors. The design is near complete. For project updates, check it out on Crowd Supply! www.crowdsupply.com/deimos-contr...
A snip of mechanical CAD of a circuit board in an enclosureSnip of electrical CAD of a circuit board
151
Reposted by James Logan
Jeremy Morrell @jeremymorrell.dev · 08/03/2026
Cat points out a real problem. Rather than “everyone builds their own custom app” with all the overhead that entails, my working hypothesis is that we’ll see an explosion of what @inkandswitch.com calls malleable software www.inkandswitch.com/essay/mallea... A solid core + ability to extend
Graph showing that there is a long tail of user needs and most apps tend to serve only the needs that most users have. The long tail is under-served
77112
Reposted by James Logan
Adam Chalmers @adamchalmers.com · 26/02/2026
wasm supremacy continues hacks.mozilla.org/2026/02/maki...
hacks.mozilla.org
Making WebAssembly a first-class language on the Web – Mozilla Hacks - the Web developer blog
This post is an expanded version of a presentation I gave at the recent WebAssembly CG meeting in Munich. WebAssembly has come a long way since its first release in 2017. The 1.0 version of WebAssembl...
3293
Reposted by James Logan
Cat Hicks @grimalkina.bsky.social · 25/02/2026
I whipped up another learning related Skill! Smaller than Learning Opportunities, but very complementary: interactive guidance through a quick research-backed psychological intervention that helps improve learning plans, motivation and commitment

 github.com/DrCatHicks/l...
github.com
GitHub - DrCatHicks/learning-goal: A Claude Code skill for designing learning goals during AI-assisted coding
A Claude Code skill for designing learning goals during AI-assisted coding - DrCatHicks/learning-goal
25619
Reposted by James Logan
EuroRust @eurorust.eu · 25/02/2026
Our CFP is now open! 🦀 Submit your proposal by April 27 and join this year's conference as a speaker. We’re looking forward to seeing you in Barcelona! 🇪🇸 Submit your talk now 👇 sessionize.com/eurorust-2026/ #rustlang #eurorust25
083
Reposted by James Logan
Cat Hicks @grimalkina.bsky.social · 15/02/2026
Key to efficient learning is realizing how we ACTUALLY learn, not just what FEELS like learning. I wrote a Claude Skill for some friends to help them think about this and they've liked it -- see Principles for some directions you could explore github.com/DrCatHicks/l...
github.com
GitHub - DrCatHicks/learning-opportunities: A Claude Code skill for deliberate skill development during AI-assisted coding
A Claude Code skill for deliberate skill development during AI-assisted coding - DrCatHicks/learning-opportunities
925345
Reposted by James Logan
Alice Averlong 🏳️‍⚧️ @alice.averlong.com · 23/02/2026
Outer Wilds, if you haven't played it yet, is one of the best games of all time. It's a fun space exploration game with a timeloop twist, and 90% of all game progress happens in your head, as you learn things about the universe and your situation. Absolutely play it if you haven't yet.
19425136
Reposted by James Logan
Crowd Supply @crowdsupply.bsky.social · 23/02/2026
Coming soon: Ampisu, a full-featured, programmable lab power supply you can take anywhere 💫 www.crowdsupply.com/nessie-circu...
crowdsupply.com
Ampisu
A full-featured, programmable lab power supply you can take anywhere
042
James Logan @ponderingpothos.bsky.social · 22/02/2026
It been 0 days since @thea.codes 's KiCanvas saved my bacon again by opening an old layout file that was crashing KiCad. If you're using KiCad for PCB design and haven't seen KiCanvas, give it a look! kicanvas.org
kicanvas.org
Interactive KiCad file viewer
1275
Reposted by James Logan
Dion Dokter @diondokter.nl · 17/02/2026
Pssssst, psssst... Hey kids, wanna see the embassy executor running on a GPU?
1475
Reposted by James Logan
Adam Chalmers @adamchalmers.com · 13/02/2026
I added a new helpful one-stop-shop for all your physical analysis in Zoo's CLI. Find your model's mass, volume, surface area, etc with "zoo kcl analyze".
Terminal with three panels. Top-left shows "zoo kcl analyze" command output, with a table showing mass, density, volume etc. Bottom-left panel shows "zoo kcl view" displaying four different angles of a model rendered as PNG. Right panel shows the KCL code for the model.
2131
Reposted by James Logan
waffle .-. @waffle.pet · 11/02/2026
hey uhhh. I got fired yesterday. if anyone has rust positions in the Netherlands let me know!
66438
Reposted by James Logan
✧✦Catherine✦✧ @whitequark.treehouse.systems.ap.brid.gy · 09/02/2026
> dump firmware from a cheap and _very_ cursed handheld "microscope" > > look inside > > `NES Game` $ strings plushlogic.bin ... NES Game nesGameSubOpenWin nesGameInnerWinChildClose nesGameWinChildClose nesGameSubCloseWin
2167
Reposted by James Logan
Andy Wingo @wingo.mastodon.social.ap.brid.gy · 09/02/2026
today i learned that if you don't end a C file with a newline, the compiler is free to steal your apes
screenshot from C11 standard, appendix J.2, specifying that "The behavior is undefined in the following circumstances:
— A ‘‘shall’’ or ‘‘shall not’’ requirement that appears outside of a constraint is violated
(clause 4).
— A nonempty source file does not end in a new-line character which is not immediately
preceded by a backslash character or ends in a partial preprocessing token or
comment (5.1.1.2).
..."
52418
Reposted by James Logan
Ben Pfaff @benpfaff.bsky.social · 05/02/2026
Many of the #rust floating-point math functions have a note: "The precision of this function is non-deterministic. This means it varies by platform, Rust version, and can even differ within the same execution from one invocation to the next." When would results vary between invocations? #rustlang
452
Reposted by James Logan
James Munns @jamesmunns.com · 04/02/2026
> Texas Instruments in advanced talks to buy Silicon Laboratories We march ever closer to the "silicon vendor singularity" www.reuters.com/technology/t...
reuters.com
Texas Instruments in advanced talks to buy Silicon Laboratories for about $7 billion, source says
Texas Instruments is in advanced talks to buy chip designer Silicon Laboratories for about $7 billion, a source familiar with the matter told Reuters on Tuesday.
3283
Reposted by James Logan
amos @fasterthanli.me · 02/02/2026
...horrifying message without context, thank you
Error: entity released
824828
Reposted by James Logan
AstraKernel 💫 @astrakernel.bsky.social · 29/01/2026
🦀 WhatsApp adopts Rust for media security > Rust version showed performance and runtime memory usage advantages over the C++ > We anticipate accelerating adoption of Rust over the coming years engineering.fb.com/2026/01/27/s... #rustlang #whatsapp
WhatsApp architect overview and rust
0103
Reposted by James Logan
Olaren @olaren.dev · 25/01/2026
Here is what I've been doing this past week: git.olaren.dev/Olaren/mapto... A little python program that generates poster for cities! You might have seen stuff like this around lately, but I modified it to put an emphasis on rail infrastructure :3
A picture showing an example output of the program on the city of Montréal and the autumn color scheme. You can see a map of the city with all the roads, trains, subways and light rail. At the bottom there the poster is titled MONTRÉAL - QUÉBEC. The latitude and longitude are also written under the title.A picture showing an example output of the program on the city of Paris and the emerald color scheme. You can see a map of the city with all the roads, trains, subways and light rail. At the bottom there the poster is titled PARIS - FRANCE. The latitude and longitude are also written under the title.A picture showing an example output of the program on the city of Tokyo and the japanese ink color scheme. You can see a map of the city with all the roads, trains, subways and light rail. At the bottom there the poster is titled TOKYO - JAPAN. The latitude and longitude are also written under the title.A picture showing an example output of the program on the city of Berlin and the noir color scheme. You can see a map of the city with all the roads, trains, subways and light rail. At the bottom there the poster is titled BERLIN - GERMANY. The latitude and longitude are also written under the title.
1425659
Reposted by James Logan
AstraKernel 💫 @astrakernel.bsky.social · 26/01/2026
⚡️Using a Cheap USB Logic Analyzer for Embedded Rust Debugging - A beginner-friendly post on logic analyzers (Rust is a small part of the post). > Focuses on understanding samples, capture duration, and reading waveforms with PulseView. blog.implrust.com/posts/2026/0... #rustlang #embedded
logic analyzer output
0123
Reposted by James Logan
reto @galactic-forensics.space · 21/01/2026
First Scientific Computing in Rust monthly newsletter of 2026 is out. Enjoy! scientificcomputing.rs/monthly/2026...
scientificcomputing.rs
Scientific Computing in Rust
the Scientific Computing in Rust annual workshop and monthly newsletter.
085
Reposted by James Logan
vectorware.com @vectorware.com · 20/01/2026
We are excited to announce that we can successfully use Rust's standard library from the GPU. This has never been done before. www.vectorware.com/blog/rust-st... Supporting Rust's standard library enables existing Rust code to work on the GPU and makes GPU programming feel normal.
vectorware.com
Rust's standard library on the GPU
GPU code can now use Rust's standard library. We share the implementation approach and what this unlocks for GPU programming.
424957
James Logan @ponderingpothos.bsky.social · 16/01/2026
InterpN is now 100% statically-analyzable and about 30% faster by eliminating the need for recursive methods. In addition to a nice speedup, this change shrinks the repo by about 45%, removing about 2600 lines of code!
Plot showing up to 320x speedup compared to scipySnip showing +460/-3064 lines changed
120
Reposted by James Logan
Predrag Gruevski @predr.ag · 11/01/2026
cargo-semver-checks is growing faster than ever: - 7 new releases, from v0.39 to v0.45 - 122 new lints, more than double last year's count - 4x reduction in lint execution time — some lints became up to 10x faster - across 26 (!!) rustdoc format versions predr.ag/blog/cargo-s...
predr.ag
Exponential growth continued — cargo-semver-checks 2025 Year in Review
More than twice as many lints as last year, and that's just the start!
1355