James Logan
ponderingpothos.bsky.social
James Logan
@ponderingpothos.bsky.social
Scientific computing in rust and python, firmware in rust, and the occasional circuit board design & testing. Propulsion engineer in a previous life.
Pinned
Take a look under the hood of the state of the art in grid interpolation in Rust and Python!

Come for the compile-time loop unrolling, stay for the profile-guided optimization!

jlogan.dev/blog/2025/11...
Reposted by James Logan
hey uhhh. I got fired yesterday. if anyone has rust positions in the Netherlands let me know!
February 11, 2026 at 10:24 AM
Reposted by James Logan
> dump firmware from a cheap and _very_ cursed handheld "microscope"
>
> look inside
>
> `NES Game`

$ strings plushlogic.bin
...
NES Game
nesGameSubOpenWin
nesGameInnerWinChildClose
nesGameWinChildClose
nesGameSubCloseWin
February 9, 2026 at 4:35 PM
Reposted by James Logan
today i learned that if you don't end a C file with a newline, the compiler is free to steal your apes
February 9, 2026 at 9:16 AM
Reposted by James Logan
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
February 5, 2026 at 2:21 AM
Reposted by James Logan
> Texas Instruments in advanced talks to buy Silicon Laboratories

We march ever closer to the "silicon vendor singularity"

www.reuters.com/technology/t...
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.
www.reuters.com
February 4, 2026 at 11:49 AM
Reposted by James Logan
...horrifying message without context, thank you
February 2, 2026 at 10:42 AM
Reposted by James Logan
🦀 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
January 29, 2026 at 5:48 AM
Reposted by James Logan
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
January 25, 2026 at 6:34 PM
Reposted by James Logan
⚡️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
January 26, 2026 at 4:35 PM
Reposted by James Logan
First Scientific Computing in Rust monthly newsletter of 2026 is out. Enjoy!

scientificcomputing.rs/monthly/2026...
Scientific Computing in Rust
the Scientific Computing in Rust annual workshop and monthly newsletter.
scientificcomputing.rs
January 21, 2026 at 10:08 PM
Reposted by James Logan
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.
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.
www.vectorware.com
January 20, 2026 at 3:39 PM
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!
January 16, 2026 at 3:36 AM
Reposted by James Logan
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...
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!
predr.ag
January 11, 2026 at 8:16 PM
The `interpn` library for Rust and Python has the fastest interpolation algorithms I'm aware of - up to 250x faster than Scipy - and today it got faster!

After years of focusing on single-thread performance, I finally called it good gave it more cores - and the parallel speedup is nearly linear!
January 10, 2026 at 11:07 PM
Reposted by James Logan
SemVer is tricky in all languages. But in #rustlang it's easier than ever before!

By the end of 2024, cargo-semver-checks' capabilities were growing exponentially: 30 -> 57 -> 120 lints. We now end 2025 with 242 lints — 122 new lints were merged this calendar year 🎉

The exponential continues!
December 30, 2025 at 5:14 PM
Reposted by James Logan
I've been wanting to try and start brain dumping some thoughts on (embedded) rust, how I approach problems, write HAL/device drivers, tools I use, etc.

But, I'm terrible at starting to write unless I have specific questions to answer.

So: ask me anything re: embedded/rust/hardware!
December 19, 2025 at 10:44 PM
Reposted by James Logan
Day 18: Function with fast & slow paths. Inline = code bloat. Don't inline = slow fast path. Can't have both—or can you? The compiler finds a surprising way out of this dilemma.

xania.org/202512/18-pa...
youtu.be/STZb5K5sPDs
#AoCO2025
Partial inlining — Matt Godbolt’s blog
Inlining doesn't have to be all-or-nothing
xania.org
December 18, 2025 at 1:05 PM
Reposted by James Logan
Any rust friends have some good resources / insights into doing input fuzzing?
December 4, 2025 at 12:50 PM
Reposted by James Logan
Chip was written in Spade HDL (spade-lang.org), which transpiles down to SystemVerilog. That's then fed into a LibreLane build process that turns the verilog into transistors. All open source!
Spade | Spade Hardware Description Language
spade-lang.org
December 4, 2025 at 2:51 PM
The first batch of Rust-powered Deimos DAQs are ready to deliver for beta testing tomorrow! Time to see what real people make of them!

Meanwhile, I'll be writing up Python bindings for the control program to bring the barrier to entry as far down as possible.
November 30, 2025 at 10:44 PM
Reposted by James Logan
If you've ever used Rust, you've felt jyn's positive influence — even if you never realized it.

I hope my token of recognition is just the start of jyn's invaluable work getting the funding it deserves.

Folks, can we get jyn some more funding? RT 🙏
github.com/sponsors/jyn...
Sponsor @jyn514 on GitHub Sponsors
Support jyn's open source work on Rust, and their writing about a vision for the future of computers
github.com
November 30, 2025 at 3:51 PM
Reposted by James Logan
It's Friday night, which means it's time to write some cursed Rust.

This time, I got rustc to accept some code that I think should have errored out!
github.com/rust-lang/ru...
Maybe-sized RPIT type is unexpectedly allowed in `async fn` · Issue #149438 · rust-lang/rust
I tried this code: playground use std::fmt::Debug; fn breaks() -> impl Debug + ?Sized { 123 } // // error[E0277]: the size for values of type `impl Debug + ?Sized` cannot be known at compilation ti...
github.com
November 29, 2025 at 12:57 AM
Reposted by James Logan
If you look in the mirror and say "no semver breaking changes this release" three times, @predr.ag will appear behind you
I’d heard the rumours, but now I know it’s true.

When you publish breaking change in your #rustlang crate, @predr.ag spontaneously appears. He can **feel** the disturbance.
November 26, 2025 at 6:27 PM
Reposted by James Logan
“lazy use of unwrap blew up a process and took out the internet” bzzt. wrong. judicious use of unwrap blew up a process instead of allowing an Extremely Named CVE to happen and spraying your bank account credentials all over the public internet
People want a technical solution to what is ultimately a judgement problem.

People know that unwrap can cause a panic. That's the choice that's being made when you unwrap. Changing the name won't change that.
November 19, 2025 at 5:10 PM
Reposted by James Logan
November issue of the Scientific Computing in Rust newsletter is out and available [here](scientificcomputing.rs/monthly/2025...).
Crate of the month is [InterpN](crates.io/crates/interpn) by @ponderingpothos.bsky.social

Enjoy!
Scientific Computing in Rust
the Scientific Computing in Rust annual workshop and monthly newsletter.
scientificcomputing.rs
November 14, 2025 at 10:16 AM