Safia Abdalla
banner
captainsafia.com
Safia Abdalla
@captainsafia.com
👩🏾‍💻: helping people build cloud services with oss at @microsoft.com.
✨: dream big and follow through even bigger.
📝: writing things at blog.safia.rocks
First: I am really proud of this blog post title. It’s for the girlies (IYKYK).

Second: .NET 10 drops tomorrow, so I did a whirlwind tour of the big and small features I worked on this cycle.

Third: go read it!

#dotnet #aspnetcore

📰 :https://blog.safia.rocks/2025/11/10/aspnetcore-ten/
And just like that .NET 10 ships tomorrow
A look at key ASP.NET Core features shipping in .NET 10, including: model validation for Minimal APIs, OpenAPI 3.1 support with unified JSON Schema, improved integration testing with top-level…
blog.safia.rocks
November 10, 2025 at 5:15 PM
What's the killer tool for effectively managing GitHub notifications?

I feel like the default UI is really holding back at this point and I'm not the type to do GH notifications over email.

Octobox hasn't done the trick for me either.
November 7, 2025 at 6:16 PM
I've been doing some hacking on a prototype that requires testing the bebavior of a REST API framework.

It's so nice to use Hurl to write integration tests against a sample app that runs in my CI/CD pipeline. Nicer than unit tests in code even 🫣

hurl.dev
Hurl - Run and Test HTTP Requests
Hurl, run and test HTTP requests with plain text and curl. Hurl can run fast automated integration tests.
hurl.dev
November 7, 2025 at 2:18 AM
Reposted by Safia Abdalla
November 5, 2025 at 2:41 AM
Rerunning a job on GitHub Actions feels like
November 4, 2025 at 4:13 AM
Today’s post is a deep dive into how `aspire deploy` evolved from a simple callback to a full pipeline engine that models build and deployment orchestration in code.

🔗 : A peek at the future of distributed app orchestration: blog.safia.rocks/2025/11/03/a...

#aspire @aspire.dev
Pipe dreams to pipeline realities: an Aspire Pipelines story
The behind-the-scenes chronicles of building Aspire’s pipelines feature: from basic callbacks and progress reporting to a full-on concurrent pipeline concept.
blog.safia.rocks
November 3, 2025 at 4:24 PM
Got the chance to try out @charm.land's VHS for recording terminal-based demos instead of my usual asciienema-based flow and I love the way it turned out.

This is a demo of the new experience for publishing + deploying Aspire apps to Docker Compose.🚀

#aspire @aspire.dev
October 31, 2025 at 9:36 PM
Not sure why it took me this long but TIL about the Feynman Technique: after you read about a topic, write about it as if you were explaining it to someone. Keep rereading and writing until your explanation is fluid.
October 30, 2025 at 2:53 AM
Computing is literally so astounding.

I just stopped for a moment to think about all the tech in place for me to do an OTP auth onto a website and freaked out.

SMTP, DNS, TLS, HTTP, databases, queues, load balancers...all so a six-digit code can travel the world in seconds.
October 29, 2025 at 7:31 PM
Spotted a nifty new feature on GitHub: automatic categorization of diffs in the PR. Total game-changer for quickly getting context on changes to review.
October 28, 2025 at 10:52 PM
I appreciate the PSF for taking a principled stand on this front and decisively supporting diversity, equity, and inclusion in open source.

I've made a donation to the PSF and would encourage you to do the same if you can.

pyfound.blogspot.com/2025/10/NSF-...
The PSF has withdrawn a $1.5 million proposal to US government grant program
In January 2025, the PSF submitted a proposal to the US government National Science Foundation under the Safety, Security, and Privacy of Op...
pyfound.blogspot.com
October 28, 2025 at 4:42 AM
Reposted by Safia Abdalla
Deploying aspire.dev with Aspire - dogfooding at its finest. 🚀

Fast, reliable, and deployed on the tech we're creating. 🤓

#aspire #opensource #free #polyglot @aspire.dev

davidpine.net/blog/aspire-...
Deploying aspire.dev with aspire deploy
A journey of rebranding, replatforming, dogfooding, and mild existential crises
davidpine.net
October 28, 2025 at 4:21 AM
Reposted by Safia Abdalla
.NET Aspire ❌
Aspire ✅🤌🏼

we're officially rebranding - starting with our shiny new website, aspire.dev 💫

join us for a special edition #AspiriFriday to wrap up the week and celebrate with the team! see you there 🎃
October 27, 2025 at 11:04 PM
A redesigned UI for `aspire deploy` is shipping in Aspire 13! 🌟

Used Claude for UX brainstorming, Copilot for implementation, and got something that works great for both local dev and CI/CD.

Read about the process: blog.safia.rocks/2025/10/27/a...

#aspire @aspire.dev
How I used AI to redesign Aspire’s deploy CLI command
How I used Claude and Copilot to design the Aspire deploy CLI, moving from sequential steps to a concurrent-ready design that works in both interactive and CI/CD environments.
blog.safia.rocks
October 27, 2025 at 6:32 PM
I had to reset the "Days Since Monads Mentioned" counter today.
October 27, 2025 at 5:41 PM
Rebuilt grove as a TypeScript CLI this weekend because npx-based distribution is bliss and macOS code signing is chaos. My release pipeline was turning into a horror movie. I chose peace! ✌️
October 27, 2025 at 3:37 PM
Feeling comforted by the fact that converting an EPUB to a PDF is still a non-trivial thing to do locally in your machine.
October 24, 2025 at 11:24 PM
I love Safari so much but why is github.com so trash on WebKit?!!? 😭
October 23, 2025 at 5:26 PM
I picked up the 2nd edition e-book of Liz Price's Container Security last week and have been enjoying it! It lays out the principles of container tech and security in an approachable way for me as someone familiar with Linux, but not containers.

bookshop.org/p/books/cont...
Container Security: Fundamental Technology Concepts That Protect Cloud Native Applications
Fundamental Technology Concepts That Protect Cloud Native Applications
bookshop.org
October 22, 2025 at 4:08 PM
Nice one, Claude! Had me scratching my screen...
October 22, 2025 at 1:37 AM
Merged a PR adding deployment state caching to aspire deploy! 🚀

No more re-entering parameters everytime you deploy: they’re cached + reused locally. It also lays the groundwork for managing state in our new pipelines feature.

📖: blog.safia.rocks/2025/10/20/a...

#aspire @aspire.dev
Cache me if you can: a look at deployment state in Aspire
Exploring the new deployment state caching feature in .NET Aspire that eliminates repetitive prompting during deployments and lays the foundation for more sophisticated deployment workflows and CI/CD…
blog.safia.rocks
October 20, 2025 at 4:12 PM
I've submitted my entry for the Bad UX World Cup!

A date picker where the values get populated by a snake game. The apple is a number that changes randomly.

Try it out at safia.rocks/BadDatePicker/ 🤪
October 18, 2025 at 2:08 AM
The urge to redesign your blog instead of writing stuff is no longer a hinderance because you can use Copilot to polish up your site in 47282829382% less time.
October 16, 2025 at 6:02 PM
Had baked beans with breakfast for the first time in my life in honor of @blowdart.me and @sinclairinat0r.com
October 16, 2025 at 7:09 AM
Reposted by Safia Abdalla
October 15, 2025 at 5:01 PM