zabirauf || Zohaib
Author

Zohaib Rauf

Apr 27, 2026

Using open coding harness to be more model agnostic

I’ve been primarily using Claude Code. The recent launch of DeepSeek V4 and GPT 5.5, has made me realize the importance of having an open coding harness that

Apr 21, 2026

Lightening of a room has a lot of effect on how you feel about it

Good article describing CRI (Color Rendering Index). Living in the Pacific Northwest, past winters I've been thinking of how to improve SAD by using better lighting. This article

Apr 18, 2026

Apps and programming: two accidental tyrannies

Coding agents have a tendency to make all experiences be alike. Using them to push UX is more of something we should do as experimentation is now a lot cheaper.

Apr 18, 2026

Should tests in codebase be tripwires

I've been thinking about AI-generated tests and the friction around them. AI can generate a lot of tests, but figuring out which ones are "good" requires

Feb 13, 2025

How to safely connect cloud server to home GPU server

Unlock home GPU power for cloud workloads with Tailscale and Docker. I demo a simple architecture that tunnels requests to your local rig, skipping pricey cloud GPUs. All ports stay hidden, ensuring a tight, cost-effective environment.

Feb 8, 2025

DeepSeek-R1: A Peek Under the Hood

DeepSeek-R1 uses cost-effective Reinforcement Learning to unlock emergent reasoning. By rewarding correct, verifiable steps, it refines logic and answers—showcasing how systematic feedback can reduce data needs and boost performance. Here I discuss my understanding from research paper.

Jan 1, 2025

Using LLMs and Cursor to become a finisher

Struggling to finish side projects due to limited time? In my latest blog post, I share how I improved my productivity using AI tools like LLMs and Cursor IDE. Learn to refine specs, bootstrap code, and iterate effectively to rapidly build and deploy your projects—even with a busy schedule.

Oct 27, 2024

Managing Secrets in NixOS Home Manager with SOPS

Discover how to securely manage secrets in NixOS Home Manager using SOPS and sops-nix. Learn to set up Age encryption, create encrypted secret files, integrate SOPS with NixOS, and access secrets as environment variables. Perfect for maintaining secure, declarative NixOS configurations.

Sep 6, 2024

Run custom GGUF model on Ollama

Learn how to install a custom Hugging Face GGUF model using Ollama, enabling you to try out the latest LLM models locally. This guide covers downloading the model, creating a Modelfile, and setting up the model in Ollama and Open-WebUI.

Jul 31, 2024

Guide to extending OpenWebUI using Pipelines

Explore OpenWebUI's Pipelines: extend your self-hosted LLM interface. Learn to create custom pipelines, from filters to tools. Intercept LLM interactions, implement function-calling, and integrate new providers. Enhance AI workflows or build RAG systems with this guide to OpenWebUI's extensibility.

Feb 15, 2024

A beginners guide to fine tuning LLM using LoRA

Discover how to create a synthetic dataset, select the right metrics for evaluation, and fine-tune your model using LoRA for a narrow scenario. Plus, learn how to serve your model efficiently using LLaMa.cpp on Mac/Linux.

Sep 30, 2023

A guide to using Python with Supabase securely

Learn how to use Python with Supabase for web development for all your AI/LLM backend needs. Create a secure Python service that validates JWT tokens from Supabase and integrates with Next.js.

Jan 28, 2022

Suggestions for onboarding remote Software Engineers

Onboarding remote Software Engineers can be challenging. Here are some suggestions from my experience of onboarding multiple engineers remotely to make them become part of team.

Apr 21, 2021

Why I created a vaccine finder

I recently built findvaccinefor.me [https://findvaccinefor.me] which gets data from WA state sources such as vaccinelocator.doh.wa.gov [http://vaccinelocator.doh.wa.gov] and prepmod.doh.wa.

Jan 18, 2021

Debugging in Google Colab notebook

Introduction on debugging in Python Jupyter notebooks with examples in Google Colab using ipdb.

Jun 9, 2020

Fence your TypeScript, for saner project boundaries

Solve the problem of dependency creep and add boundaries to your TypeScript project to limit what is exported and imported from a package.

Aug 7, 2019

Using path aliases in React Native created with Expo and Typescript

Managing big apps have its own problems and one of them is managing imports. Typescript allows you to have path aliases which makes it easier to refer to modules. In this tutorial we will see how we can use path aliases in React Native app created using Expo and Typescript.

Sep 11, 2018

Securing MongoDB using Let's Encrypt certificate

I had to setup few instances of MongoDB in DigitalOcean [https://m.do.co/c/1fe978d3b5b4] but I also wanted to make them secure using TLS/SSL. One way would

Apr 18, 2018

Upgradeable smart contracts in Ethereum

Imagine a world where a software is maintaining millions of dollars worth of money, but there is an exploit which allows the hacker to take all that money away. Now

Jan 11, 2018

Libraries in Solidity for code reusability and testing it

What are Libraries in Solidity You might have heard of the DRY principle (don't repeat yourself). It is very essential in large programs to have the ability to

Jul 3, 2017

Leverage union types in Typescript to avoid invalid states

Typescript has a type system which provides more capabilities than the type system in C# and Java. The one that I found to be very useful is the union type

May 12, 2017

Creating object based on interface type in Typescript

Interface in Typescript is used to tell the compiler what the shape of the JS object should look like. It is a compile time construct hence it will not have

Feb 25, 2017

Setting up continuous integration for F# Suave app to Azure

Whenever I start a project I tend to have a continuous build and deployment pipeline setup as it makes the development and testing a lot more easier. In this tutorial

Oct 16, 2016

Deploying F# Suave web app to Azure using Flynn

I was playing around with F# and Suave to build a service and the first thing I usually do whenever I dive into a new language and web framework is

Jun 18, 2016

Use Wit.ai Natural Language Processing in Elixir for bots

When creating bots you have to converse with the users and maintain context of the conversation so you can understand the intent of the users, do the necessary actions and