My AI adoption journey

#664 – February 15, 2026

methodical journey to finding value in AI coding tools through six phases

My AI adoption journey
12 minutes by Mitchell Hashimoto

Mitchell shares his methodical journey to finding value in AI coding tools through six phases. He started by abandoning chatbots for agents that can read files and execute programs. He forced himself to reproduce his own manual work using AI to build expertise. He began running end-of-day research and triage sessions to gain efficiency during off-hours. Once confident in AI capabilities, he delegated slam-dunk tasks while focusing on work he enjoyed.

High-signal AI code review with your team’s context.
sponsored by Unblocked

Unblocked is the only AI code review tool that uses deep insight of your codebase, docs, and discussions to give high-signal feedback based on how your system actually works – instead of flooding your PR with stylistic nitpicks.

Semantic search without embeddings
14 minutes by Doug Turnbull

Doug challenges the common assumption that semantic search requires embeddings and vector databases. He explains that semantic search needs three components: shared representation, similarity scoring, and match criteria, with embeddings struggling at the third. Traditional hierarchical taxonomies, now enhanced by LLMs for easier classification and maintenance, can provide better results for domains needing precise categorization.

The PERFECT code review
12 minutes by Daniil Bastrich

Daniil's guide explains how to make code reviews effective without overwhelming reviewers. Using the PERFECT principles—Purpose, Edge cases, Reliability, Form, Evidence, Clarity, and Taste— he shows how to focus on what matters, reduce mistakes, and improve code quality. Daniil offers practical steps for structured reviews, clear conventions, and automation, helping teams save time, avoid unnecessary debates, and build a sustainable, high-value code review process.

The cost of a function call
3 minutes by Daniel Lemire

Function inlining replaces function calls with the actual function code at compile time. For simple functions like adding numbers, inlining can boost performance over 20 times by eliminating call overhead and enabling advanced optimizations like SIMD instructions. However, for more complex functions processing large inputs, inlining may offer little benefit or even slow things down.

Art of roads in games
7 minutes by Ef

Nature's intricate patterns, from ant colonies to honeycombs, emerge from simple rules without blueprints. Roads follow similar principles but are poorly represented in city-building games. Most games use Bezier curves for roads, which fail at tight angles because they don't maintain parallel edges when offset, unlike real vehicle tracks. Ef argues the solution lies in circular arcs or clothoid curves, which preserve parallelism and mirror how civil engineers actually design roads.

And the most popular article from the last issue was:

newsletters