Index ¦ Archives  ¦ Atom  ¦ RSS

Using Bazel to build a new Rust project

Wed 25 September 2024

Looking around, it seems that everyone uses Cargo for new Rust projects, then teams will switch over to Bazel if they need to. For me, I have an existing Bazel project that I'm adding Rust to, so I don't want to start with Cargo, so in this post I'll document …continue

Continue reading →


Terraform in GCP in 2024

Mon 01 January 2024

Happy New Year! I hope you've had a chance to update your copyright line on all your static websites!

I also hope you've had a chance to upgrade all your dependencies in 2023, because a lot has changed in the past few years and if you're anything like me, you …continue

Continue reading →


Dev onboarding, then and now

Fri 15 December 2023

Edited: 2024-09-25, added remoteUser: ${localEnv:USER} to avoid chowning the workspace folder to the root user

Onboarding to a new project can be a wild ride. Sometimes, you just have a codebase that "worked on the dev's machine" and no instructions beyond that. Other times there's a documented series of …continue

Continue reading →


Running Too Much Kubernetes

Sat 01 July 2023

In my previous post, I mentioned running vouch-proxy to protect internal apps. In it, I didn't mention that I over-complicated it by running it under Kubernetes using nginx as an Ingress instance rather than just running nginx itself.

Turns out, I've been on a kubernetes kick for a bit. As …continue

Continue reading →


Protecting Internal Apps

Thu 13 April 2023

I've been an early engineer/team member of a few companies/startups, as well as an engineer at Google (and later, a second time, at Waymo). One of the big things I missed in the small companies (well, when they were small) that I remembered from my time at Google …continue

Continue reading →


Free Solution #2: Amazon's Item reuse/scam problem

Sun 26 March 2023

Have you ever searched for a common item on Amazon and found items that have strange names, descriptions, etc but have great reviews?

I sure have.

And in the rare instances where I've bought those things, or friends of mine have, they've basically been a lottery ticket in terms of …continue

Continue reading →


Free Solution #1: Uber Eats' Swapped Order problem

Sat 18 March 2023

While at a restaurant recently, I noticed they had multiple shelves of pickup orders. It's a popular local restaurant, so they had orders from all the major food delivery companies, Doordash, Uber Eats, Grubhub, and they all had little receipts on them.

Each receipt had one line printed really large …continue

Continue reading →


Introducing the Free Solutions series

Sat 18 March 2023

There are a lot of problems in this world, and while it's easy to point out problems, it's a lot harder to proffer solutions, especially ones that might actually be reasonable to implement.

I would like to offer the following series as my attempt to do so. If you have …continue

Continue reading →


Completing tasks, even prerequisite tasks, does feel good

Thu 16 March 2023

Another few weeks have gone by, but now there is good news!

The new desktop is fully working, the old one is now relegated to being part of a cluster. My home network is now capable of gigabit transfers, including > 100Mbps download speeds. My laptop is going through the final …continue

Continue reading →


Prelude to actually getting anything done

Sun 05 March 2023

A few weeks ago, I mentioned I would be started this blog up again, and I mean it. However, in the past few weeks I hit a few snags with my personal hardware, and realized how out-of-date it all is.

I initially wrote out a thousand words on my current …continue

Continue reading →

© Fahrzin Hemmati. Built using Pelican. Theme by Giulio Fidente on github.