iter::reskeet(🦀)

@tuckersiemens.com

https://mypronouns.org/he-him Senior Software Engineer at Microsoft. Opinions my own. Sometimes I write code, but more often I just talk about Rust 🦀.

Announcing the 1st cohort of Rust Maintainers in Residence! Thanks to contributions from Google, AWS, & OpenAI, the Rust Foundation and Rust Project have raised $350K to fund 6 contributors on Rustup, Clippy, compiler, stdlib, & rustdoc 🦀 Read announcement: rustfoundation.org/media/rust-p...

Rust Project and Rust Foundation Announce First Maintainers in Residence

New program directs $350,000 toward maintainers supporting critical Rust infrastructure DOVER, Delaware, USA – August 26, 2026 – The Rust Project and Rust Foundation today announced the inaugural coho...

rustfoundation.org

i'm so glad that I can ask Codex to read through all the CI failures and fix little silly mistakes so that I can focus on my true passion: aligning stakeholders and writing docs to drive consensus

AI-assisted programming isn't that you sit back and relax. For building a production-ready product, you have to manage iterations, organize requirements, do QA, raise bugs to AI, and review code. You can't just vibe out a serious project without knowing what you're doing.

Refreshing my Go knowledge, and... you live like this? - Struct assignment copies fields, including mutexes/wait groups/etc! - Pervasive nil! Nil maps accept reads for unset keys, but not writes! - An interface value is nil only if its type and value are nil, even if the value is itself nil!

I'm a believer in moving your conditions as high up in the code as possible. Conditions at the leaf nodes lead to very difficult updates and maintenance. Even if an AI is doing it, your reviews are more difficult because of this. Move conditions UP!

type Variant = 'featured' | 'user-pick' | 'limited-time'

type Props = {
  variant: Variant
  // the rest
}

// I'm hiding a lot of details, but essentially we have a condition
// spreading out into many places. As this grows, this gets harder to
// understand, and you need shotgun surgery to update changes to 
// conditions, updating every branch the condition creates.
function AdComponent({ variant, ...rest }: Props) {
  return  (
  	<div className={decisionHereAboutClasses(variant)}>
      <div>
        {decisionHereAboutLabelWords(variant)}
      </div>
      
      <div>
        {decisionsHereAboutContentEtc(variant)}
      </div>
      
      <div>
        {decisionsHereAboutActions(variant)}
      </div>
    </div>	
  )
}

// Move the decision up, condition assessed in a single place
// This makes one component per branch, and no downstream branches
// Changes can happen in the specific components without needing to
// impact other variants
function AdComponent({ variant, ...rest }: Props) {
  switch (variant) {
    case 'featured': return <FeaturedAd {...rest} />
    case 'user-pick': return <UserPickAd {...rest} />
    case 'limited-time': return <LimitedTimeAd {...rest} />
    default: return <BaseAd {...rest} />
  }
}

The rainbow is here all year long, so we don't need to change the profile for June. But it is a good time to remind everyone that LGBTQIA+ rights are under attack all year long as well. And to steal @haskell.org's message: there would be no Gleam without trans people 🩵🩷🤍

pink star looking in the mirror with text "I'm going to be brave. I'm going to be myself", with rainbow pride and trans pride stickers on it. The background is rainbow

Multitasking has always been truly terrible for our ability to think clearly and work effectively. LLM-based “agents” don’t change that; they just offer one more invitation to distraction and split attention. Ignore the hype that says you must be running a multi-agent swarm: do good work instead.

For everyone writing #rustlang, make your Clippy config stricter! I ran into a bug that the compiler didn't catch but a Clippy lint would have, and then went through the lints to figure out which to enable that would catch these types of errors in the future. emschwartz.me/your-clippy-...

Your Clippy Config Should Be Stricter

“If it compiles, it works.” This feeling is one of the main things Rust engineers love most about Rust, and a reason why using it with coding agents is espec...

emschwartz.me