field notesAI is here.

It’s overwhelming.

But also truly fascinating.

Explore my thoughts and experiments related to AI.

scroll

my ai philosophy

$ ls ./lab-notes

Notes from
the lab.

My own writing on AI. Notes from real projects and personal experiments, what worked and what broke, written down while the dust was still settling. The newest note always leads.

keep scrolling →

the notes keep coming

The archive
runs deeper.

$ ls ./lab-notes --all ↵

$ ls ./experiments --stats

The lab bench.

An overview of things I have created, in and outside of work. Shuffle the deck, open a card for the full dossier and the exact tools inside it.

Hybrid-Retrieval RAG Platform

LIVE
EXP-01

cross-corpus research Q&A · client work, anonymised

One retrieval platform, eight research corpora. Ask a question across a mountain of consulting research and get a cited, evidence-ranked answer instead of a folder to scroll.

RETRIEVALhybrid BM25 + vector, RRF fused
CITATIONSvalidated in code, fabrications flagged
EVALgold-question harness, HIT@5/10/20
FOOTPRINT8 corpora · 5 subdomains · solo build
React · TypeScript · tRPC · MySQL · Python ingest CLIENT WORK

The dossier: a shared platform spine (auth, retrieval, citations, UI) with a swappable corpus per engagement. Trust-tiered knowledge bases where strategic conclusions outrank raw transcripts, programmatic citation checking, and a retrieval eval harness so changes are measured rather than felt.

BUILT WITH ReactTypeScripttRPCDrizzleMySQLPythonBM25Vitest

CLICK CARD FOR FULL DOSSIER +

In-Memory Document Q&A Service

STABLE
EXP-02

single-corpus retrieval · client work, anonymised

The same idea at its smallest: one research corpus, one bot, no heavy infrastructure. Twenty interview PDFs held in memory and answering questions within the week they were indexed.

RETRIEVALBM25, fully in-memory
CORPUS20 interview PDFs
FOOTPRINT359 KB repo, no vector DB
STATEfeature-complete, stable since Feb
TypeScript · React · tRPC CLIENT WORK

The dossier: proof the platform scales down as well as up. No database, no embedding service, just clean document processing and keyword retrieval sized exactly to the problem. Shipped fast, never needed rescuing.

BUILT WITH TypeScriptReacttRPCBM25

CLICK CARD FOR FULL DOSSIER +

Scheduled News-Digest Pipeline

LIVE
EXP-03

cron automation · zero infrastructure

A scheduled automation that wakes up every Monday, searches the web for client news, writes a digest, and posts it to the team channel before anyone has finished their first coffee.

RUNTIMEGitHub Actions cron, no servers
PIPELINEsearch → summarise → format → post
SECRETSinjected at runtime, none committed
DEPENDENCIES2. that is the whole list
Python · GitHub Actions · LLM web search CLIENT WORK

The dossier: zero infrastructure by design. A CI cron job is the entire runtime, one self-contained Python script does the searching, summarising and posting, and it has never once asked for a day off.

BUILT WITH PythonGitHub ActionsLLM web searchSlack API

CLICK CARD FOR FULL DOSSIER +

Personal Site + WebGL Lab

LIVE
EXP-04

oscarbecher.com · including this page

This website, built end to end: a Next.js site plus the page you are on now, a dependency-free WebGL build with a Blender-scripted 3D character, custom GLSL, and ten typeset articles.

SITENext.js, light/dark token system
LABvanilla Three.js + custom GLSL, no framework
3DBlender-scripted avatar, DRACO compressed
CONTENT10 article pages, client-side search
Next.js · Three.js · GLSL · Blender · Canvas 2D SITE ↗

The dossier: the hero scene runs a trail-simulation cursor reveal, a depth-masked 3D headline system, and an expression-rigged character, composited in two render passes. Article pages ship a grounded ask-this-page search that quotes only from the text. Everything hand-rolled, nothing off the shelf.

BUILT WITH Next.jsThree.jsGLSLBlender + PythonCanvas 2DCSS

CLICK CARD FOR FULL DOSSIER +

Self-Hosted Deployment Server

LIVE
EXP-05

home server · always-on infrastructure

A home server built and configured from scratch to deploy and host web apps: headless Linux, containerised services behind a reverse proxy with TLS, deployed straight from git.

OSheadless Linux, SSH administered
SERVICEScontainerised, reverse proxy + TLS
DEPLOYgit push to live, no cloud spend
DUTYalways-on host for apps and bots
Linux · Docker · Nginx · TLS · Git SELF-HOSTED

The dossier: the unglamorous foundation under the rest. Owning the box means owning the whole path from commit to live URL: DNS, certificates, process management, and backups, with no platform between the code and the internet.

BUILT WITH LinuxDockerNginxLet's EncryptSSHcron

CLICK CARD FOR FULL DOSSIER +

shuffle the deck · click card for more info

$ man ./this-page

Terminal overview.

The whole page, summarized in a terminal. Ask the machine for the notes, the projects, or the shortcuts; everything prints right there on its screen. It still boots.

oscar@ai-lab : zsh
$