Luca Palmieri @lpalmieri.com · 26/09/2026Now it's time to go back to building products! I'll be starting something of my own in the world of agentic engineering, with a focus on security and governance. (if that sounds interesting, stay tuned: we'll be building up the team over the coming weeks 🏗️) 2220
Luca Palmieri @lpalmieri.com · 26/09/2026Next Wednesday will be my last day at Mainmatter. I joined as the first Rust hire, with a simple goal: build a world-class consulting team for Rust. 3 years later, Mainmatter is a household name in the space—it wasn't always easy, but I learned a lot during the ride. 2260
Luca Palmieri @lpalmieri.com · 30/06/2026GitHub's UI is slow and quite terrible when it comes to reviewing large changesets. 000
Luca Palmieri @lpalmieri.com · 30/06/2026For purely local reviews of my own code I'm using hunk and that works just fine. But I need something that lets me comment locally/in the browser and then syncs with remote. I'd prefer not to build it myself. 200
Luca Palmieri @lpalmieri.com · 30/06/2026Pierre's diff are superb, but I can't leave comments via Diffhub, and having to then track down the same line range in the GitHub PR diff view is not exactly efficient :/ 100
Luca Palmieri @lpalmieri.com · 30/06/2026On PR reviews: not something that the whole team must adopt; simply a more effective UI for me, which integrates back into GitHub's "native" PR review flow. 120
Luca Palmieri @lpalmieri.com · 30/06/2026Looking for your wisdom folks. I am increasingly interested in: - Better *single-user* tools for PR reviews. - Products to spin up multiple cloud-hosted agents for coding purposes. No need for long-running VMs, ephemeral is good enough. What should I be checking out? 350
Luca Palmieri @lpalmieri.com · 11/06/2026You're not the first one to remark on that! But in my heart it's C Header Gen(erator) ❤️ 010
Luca Palmieri @lpalmieri.com · 11/06/2026I've been spending quite some time working on a mixed C/Rust project over the past year. cbindgen is the established solution in this space, but we ran into enough friction during an incremental C→Rust migration that I started exploring a different approach. 020
Luca Palmieri @lpalmieri.com · 11/06/2026cheadergen, a new tool for generating C headers from #rust crates, is now ready to try! I've been working on it for a while, and it has seen enough real-world use that I'm comfortable recommending it to others. Documentation, examples, and source at cheadergen.comcheadergen.comIntroduction - cheadergenGenerate C/C++ headers from Rust libraries that expose a `pub extern "C"` API. 281
Luca Palmieri @lpalmieri.com · 30/05/2026Pretty close, yep! If only I could use it—never got a chance, on any of the projects I worked on 🥲 100
Luca Palmieri @lpalmieri.com · 29/05/2026That weird urge to go build a new CI platform. Pure control plane for task orchestration, plug-your-own-compute with a marketplace of vendors, easy to bridge to GHA for initial adoption. 4140
Luca Palmieri @lpalmieri.com · 23/05/2026I still use jj workspaces to drive multiple agents in parallel, so the need for worktree-like primitives doesn't go away entirely! 120
Luca Palmieri @lpalmieri.com · 23/05/2026But it also sucks to perform commit surgery on a branch with 80+ revisions, which you intentionally created to be able to split this into granular PRs which can be sanely reviewed. With a bit of AI support, you can improve the life of the reviewer with minimal overhead. 020
Luca Palmieri @lpalmieri.com · 23/05/2026Latest occurrence: I'm currently working on a trait redesign which requires touching _every single impl_ in the project (>30). As you work through the impl, you realize some tweaks are needed to the design and start accumulating clean-up commits. It'd suck to review that. 130
Luca Palmieri @lpalmieri.com · 23/05/2026Underrated agentic workflow: take a messy commit history and slowly rewrite it into atomic revisions that can be reviewed and merged independently. Works beautifully with jujutsu (jj), using a duplicated branch to ensure no destructive changes are made to the original PoC. 2210
Luca Palmieri @lpalmieri.com · 17/05/2026I had not realized the situation had degraded to such a degree. Hugs ♥️ 030
Luca Palmieri @lpalmieri.com · 03/05/2026They are rough around the edges, but if you take them for a spin let me know how you find them! 000
Luca Palmieri @lpalmieri.com · 03/05/2026This is actually not a proc macro! The main usage happens in CLI-style tooling—e.g. Pavex's transpiler. The main goal of extracting the core out is to reuse the technology across different projects. 010
Luca Palmieri @lpalmieri.com · 03/05/2026Little update on my reflection adventures: I have extracted the core components of Pavex's compile-time reflection engine as a set of standalone crates! It serves as a preliminary step ahead of another release in the coming weeks 🛠️ 2241
Luca Palmieri @lpalmieri.com · 18/04/2026Not in London anymore! But I swing by once or twice a year 040
Luca Palmieri @lpalmieri.com · 16/02/2026You won't get pushback from me on the topic—you need to know the fundamentals to drive these tools effectively. It's up to the organisation to set expectations and norms around LLM usage. 110
Luca Palmieri @lpalmieri.com · 16/02/2026I was inspired to write this down by @oxide.computer's podcast episode on software rigour in the LLM age. There's a ton of interesting work in this area, but it gets drowned by the larger discourse. So here I am, trying to do my part in pushing it above the noise threshold! 140
Luca Palmieri @lpalmieri.com · 16/02/2026The mainstream conversation around AI agents is stuck on "AI slop." There's more to it: we can use cheap agent code to do quality-raising work that didn't make economic sense before. What's viable now that writing code isn't the primary bottleneck? lpalmieri.com/posts/agenti...lpalmieri.comCan agentic coding raise the quality bar?Five examples of using agentic coding to improve software quality, instead of delivery throughput. 3293
Luca Palmieri @lpalmieri.com · 11/02/2026Depending on the coast, it _may_ be possible to make it work for freelancers. Some clients do require occasional onsite travel, which is why Europe-based is preferred for employees. 120
Luca Palmieri @lpalmieri.com · 11/02/2026New year, new vacancies: Mainmatter is looking (again!) for an experienced Rust developer to join our Rust migration projects. C, C++, Delphi. Different starting points, same target: Rust! If you're interested, send an email to the address in the screenshot. 3198
Luca Palmieri @lpalmieri.com · 09/12/2025You can find the full job post here: gist.github.com/marcoow/2948...gist.github.comRust Engineering Consultant – Backends.mdGitHub Gist: instantly share code, notes, and snippets. 050
Luca Palmieri @lpalmieri.com · 09/12/2025Mainmatter is looking for a Rust backend engineer, either as a full time employee or a freelancer. You'll be working on cloud-native projects, helping clients either adopting Rust or scaling it successfully. If you're interested, send an email to the address in the screenshot! 1121
Luca Palmieri @lpalmieri.com · 04/11/2025Mainmatter is looking for an experienced Rust developer to join one of our projects as a freelancer. We're migrating a database from C to Rust. The project is complex and performance-sensitive. That's what makes it fun! If you're interested, send an email to the address in the screenshot. 1206
Luca Palmieri @lpalmieri.com · 21/10/2025I'll be a busy bee! I'll kick off on November 2nd with a Rust-Python interoperability workshop. On November 4th I'll be @fasterthanlime's sparing partner in his unfair Rust quiz and I'll close down the conference schedule with a talk on dependency injection. Looking forward 🚀 072
Luca Palmieri @lpalmieri.com · 21/10/2025Less than 10 days left before Rustlab! It's a conference that's close to my heart—one of the first I spoke at, back in 2019! Years have been passed, but the vibe and the community have only improved. Tickets are still available—use `SP20FR` for a last-minute 20% discount. 1100
Luca Palmieri @lpalmieri.com · 04/10/2025RustConf just uploaded on YouTube the recording of my C-to-Rust migration talk! Check it out if you want to learn more about the Rust work we've been doing on Redis Query Engine over the past few months. youtu.be/H0AUP2OgppE...youtube.comLuca Palmieri: "Rewrite, Optimize, Repeat: Our Journey Porting a Triemap from C to Rust" | RustConfSlides: https://docs.google.com/presentation/d/1HQAISo6jnNdxO_0YPfEAbtF7OVD0yWDDaNtWwcpay6E/edit?usp=sharingRediSearch GitHub repository: https://github.com/... 1303
Luca Palmieri @lpalmieri.com · 29/09/2025Concrete goal: define a driver-agnostic way to configure a Postgres connection. Then you research the details, obsess over an aspect (i.e. SSL configuration) and end up working for several ways on a generic way to configure a TLS client policy. Cool, but slow. 020
Luca Palmieri @lpalmieri.com · 11/08/2025Looking forward to both @rustconf.com and @oxidizeconf.bsky.social, where I'll get a chance to dive into the details of the thought process and technical strategy that made this possible. 091
Luca Palmieri @lpalmieri.com · 11/08/2025New Redis release, but with a twist. It includes our first Rust patches to Redis Query Engine! In particular, it ships the new TrieMap implementation I wrote with Henk Oordt, as part of @mainmatter.com's ongoing collaboration with Redis. 1132
Luca Palmieri @lpalmieri.com · 03/07/2025That beautiful feeling of being ~done on a 35k lines* PR 🍉 *Don't do this at work. **Many lines are test snapshot updates. 0100
Luca Palmieri @lpalmieri.com · 26/06/2025Especially for compiler lints, but it's a step in the right direction. 000
Luca Palmieri @lpalmieri.com · 26/06/2025We have another opening at Mainmatter, this time for a *technical writer*. You'd be working directly with me on new Rust training material, blog posts and other kinds of technical long-form content. If you're interested, send your resume job AT mainmatter DOT com 2114
Luca Palmieri @lpalmieri.com · 26/06/2025Then might be now apparently, if one is well-versed enough in clippy-config-fu. bsky.app/profile/lpal... 020
Luca Palmieri @lpalmieri.com · 26/06/2025It turns out clippy has this at home, just named differently from what we would expect! bsky.app/profile/lpal... 260
Luca Palmieri @lpalmieri.com · 26/06/2025An even better solution from @briansmith.bsky.social: you can set an MSRV *just for clippy* via clippy.toml. This will configure a variety of lints to behave as if you were using that version to run clippy, including the collapsible_if one. Back to fearless toolchain updates! 2134