Shing Lyu

Disclaimer: This content reflects my personal opinions, not those of any organizations I am or have been affiliated with. Code samples are provided for illustration purposes only, use with caution and test thoroughly before deployment.

Poor Man's Raycast: Replace Raycast Features Using Only macOS Built-ins

I was really into Raycast. The global hotkeys, the instant app launching, the clipboard management – it transformed how I worked on my Mac. But I really don’t want to use their AI features. I found out it’s quite difficult to completely turn them off. With sensitive data flowing through my clipboard and workflows, I want absolute certainty that nothing leaves my machine. Also, Raycast is always in the gray area for corporate IT, and I live in the constant fear of it being banned by my employer.

That’s when I discovered something surprising: I could rebuild almost everything I loved about Raycast using tools that were already on my Mac.

(continue reading...)


Vibe Operations—The Next Indispensable Trend

The industry chatter is loud about “vibe coding”—the AI-assisted writing of software. Yet, as someone who’s spent years observing how we build and manage cloud infrastructure (and recently preparing for the Google Cloud Professional Cloud Architect exam), I’ve noticed a much more profound trend quietly emerging on the operations side. It’s not about “vibe coding,” it’s about Vibe Operations.

For me, the realization hit while deep in hands-on labs that exposed the current limitations of our tooling. The true AI revolution isn’t just about speeding up code creation; it’s about fundamentally changing operational speed, precision, and skills acquisition for cloud architects and DevOps teams.

The core of this trend lies in the Gemini CLI in Cloud Shell. I believe this tool points to the future of cloud interaction.

How I Use the Gemini CLI

For those who don’t spend a lot of time in the command line, here is the basic workflow:

  1. Open Cloud Shell: From the Google Cloud console, you click the small terminal icon. This launches a fully provisioned Linux terminal right in your browser.

  2. Invoke Gemini: Inside the Cloud Shell terminal, I start the AI agent by typing the command gemini.

  3. Describe Intent: Instead of looking up complex commands, I simply describe the resource or action I need (e.g., “create a private GKE cluster in region europe-west4 with an auto-scaling node pool. Explain the command you are about to run in detail.”).

  4. Review and Execute: The Gemini CLI generates the precise gcloud command, which I can review for correctness and then execute instantly with a single keypress. This allows me to both operate faster and learn the exact syntax in context.

(continue reading...)


Google Cloud Professional Cloud Architect Exam Changes October 2025: Key Updates You Need to Know

While working on my recent exploration of Rust on Google Cloud Run, I was impressed by how seamless and developer-friendly the experience turned out to be. The container-based approach provided more flexibility and better tooling integration than I expected, sparking my interest in Google Cloud’s broader ecosystem and architectural patterns.

This hands-on experience led me to consider pursuing the Professional Cloud Architect certification. As I began researching study materials and exam guides, I discovered that Google Cloud was releasing an updated version of the certification exam in October 2025. Rather than rush into the old version, I decided to wait and understand what changes were coming. The updates include new AI-focused content and formal incorporation of the Well-Architected Framework principles.

(continue reading...)


Poor Man's Raycast: Replace Raycast Features Using Only macOS Built-ins

I was really into Raycast. The global hotkeys, the instant app launching, the clipboard management – it transformed how I worked on my Mac. But I really don’t want to use their AI features. For the AI features it provides, I prefer using my own LLM provider. But I found out it’s quite difficult to completely turn it off. With sensitive data flowing through my clipboard and workflows, I want absolute certainty that nothing leaves my machine. Also Raycast is always in the gray area for corporate IT, and I live in the constant fear of it being banned by my employer.

That’s when I discovered something surprising: I could rebuild almost everything I loved about Raycast using tools that were already on my Mac.

(continue reading...)


Serverless Rust on GCP Cloud Run: From Basic Deployment to Optimized Container Builds

A few weeks ago, I published a comparison of Rust across AWS Lambda, Azure Functions, and GCP’s serverless offerings. I was pretty harsh on GCP, essentially dismissing Cloud Run as “not really serverless” and suggesting Google was missing the boat entirely.

The GCP community didn’t let that slide.

Multiple comments and messages pointed out that I hadn’t given Cloud Run a fair evaluation. They were right. I was so focused on function-as-a-service models that I didn’t appreciate what GCP was actually offering with their “serverless containers” approach.

I had wrongly assumed that “containers” meant always-on hosts, but Cloud Run actually uses a microVM security model that provides strong isolation while still billing you only for the time your function runs - just like other serverless platforms.

So I did what any curious engineer should do: I went back and gave it another try.

And honestly? I was pleasantly surprised. Cloud Run’s container-first approach actually works brilliantly with Rust, and the developer experience is surprisingly smooth once you understand the optimization patterns.

(continue reading...)