ARCHIVE
아카이브
기존에 공개한 글을 원래 주소 그대로 보관합니다.
과거의 글에는 작성 당시의 기술과 관점이 담겨 있습니다.
356개 글 · 3 / 12 페이지
· EN
Control AI Crawlers with robots.txt: Block vs. Allow (2026)
Many sites block GPTBot in one line and call it done. I built a robots.txt that separates training, search, and fetch crawlers, then verified it with a parser.
· EN
Lighthouse Accessibility 55 to 100: Fixing WCAG Failures
A demo bakery page scored 55 on a Lighthouse accessibility audit. Here's the log of fixing six WCAG failures to reach 100, plus a keyboard trap the tool missed.
· EN
8 Agents, One Local LLM — Ollama Concurrency Measured
I fired 8 agents at one local model expecting a speedup. Default Ollama serializes requests, so eight at once matched one. I benchmarked OLLAMA_NUM_PARALLEL.
· EN
LocalBusiness JSON-LD: Server-Side Beats JS Injection
Inject LocalBusiness JSON-LD with JavaScript and the raw HTML has zero ld+json blocks. I compare it with server-side output, Google's stance and ranking limits.
· EN
Local Reasoning Model Token Cost — thinking ON/OFF Measured
I ran 13 questions on gemma4:12b with thinking ON and OFF. Reasoning got one more right while spending 68x the output tokens and 19x the wall-clock.
· EN
Ollama num_ctx Silent Truncation — Why My Agent Forgot Its Prompt
My local agent kept ignoring its system prompt on long inputs. Past num_ctx, Ollama silently trims the front of the prompt — no error. I measured where it breaks.
· EN
Local LLM Cold Starts — Why First Replies Take 10 Seconds
After idling, my agent's first reply dragged. I pulled Ollama's load_duration across model sizes: 1.5s for 2GB up to 9.7s for 9.6GB, and split it by keep_alive.
· EN
Why Local LLMs Slow Down in Long Chats — Prefill vs Generation
A 9,700-token prompt took 55s to its first token, then 65ms on the identical second call. I split Ollama's timings into prefill vs generation to see why.
· EN
The Non-English Token Tax — Korean Costs 1.4x, Measured
I tokenized 285 of my posts across ko/ja/en/zh with three tokenizers. Korean ran 1.38x English tokens, Japanese 1.34x. The non-English token tax, measured.
· EN
Local LLM Reproducibility: Testing Temperature and Seed
I sent the same prompt to local Gemma 4 dozens of times. temperature=0 was deterministic, and even at higher temperature a fixed seed collapsed output to one line.
· EN
Stop Feeding Raw JSON to LLMs — 9 Data Formats Measured
I serialized 50 records into 9 formats (JSON, YAML, CSV, TSV, XML...) and counted tokens with tiktoken. For flat data, TSV ran 62% cheaper than pretty JSON.
· EN
Building a TypeScript MCP Client — @modelcontextprotocol/sdk v1.29
I built a TypeScript MCP client with @modelcontextprotocol/sdk v1.29.0: calling server tools and reading resources programmatically, without Claude Desktop.
· EN
Building AI Agents with Agno and Gemini — Hands-On Guide
I ran Agno v2.6.17 (formerly Phidata) with Gemini: Calculator, Wikipedia, structured output, and multi-agent teams, plus the real traps I hit along the way.
· EN
Ollama Structured Outputs with Pydantic — Type-Safe JSON
A hands-on guide to Ollama's JSON schema enforcement with Pydantic for type-safe local LLM responses. Measured: 6x faster with near-100% parse success.
· EN
Testing Korean RAG Embeddings with sentence-transformers
I ran all-MiniLM-L6-v2 locally to compare multilingual embeddings on Korean RAG. English-tuned models dropped accuracy by 67%, with real logs and the fix.
· EN
Why I Built InsightForge: AI Research to Validation Priorities
A founder-style build log on what InsightForge is, why I built it, and the hard parts of turning synthetic research panels into a responsible product.
· EN
Mastra.ai Practical Guide — Running a TypeScript AI Agent in 5 Minutes
I installed the Mastra.ai TypeScript agent framework, connected it to Google Gemini, and built a working weather agent, from setup to real tool calls.
· EN
Anthropic and OpenAI Filed for IPO in the Same Month
In June 2026 Anthropic and OpenAI both filed confidential S-1s with the SEC. What the IPO race does to API token pricing, and what developers should lock in.
· EN
Claude Fable 5 Release Analysis
Claude Fable 5 landed June 9, 2026: SWE-bench Pro 80.3%, $10/$50 per MTok. Worth more than Opus 4.8? API changes, safety routing, and cost structure, analyzed.
· EN
Claude Code June 2026: Safe Mode, Opus 4.8, Doubled Limits
Complete breakdown of Claude Code June 2026: Safe Mode isolation, /cd command, Opus 4.8 as default, /usage cost granularity, and doubled rate limits explained.
· EN
Drizzle ORM Complete Guide: Type-Safe TypeScript DB Layer
Type-safe SQLite and PostgreSQL in TypeScript with Drizzle ORM 0.45 and drizzle-kit — schema, migrations, transactions, and the async gotcha you need to know.
· EN
Node.js Built-in SQLite: A Practical Guide — No npm Install Required
Node.js 22.5.0 ships node:sqlite, a built-in SQLite module needing zero npm installs. DatabaseSync, transactions, and custom functions, tested hands-on.
· EN
LlamaIndex vs LangChain vs Haystack — RAG Framework Comparison 2026
LlamaIndex 0.14, LangChain 1.3, and Haystack 2.30 tested side by side: code complexity, the langchain-community sunset warning, and a clear decision guide.
· EN
Amazon Kiro Analysis — Can a Spec-Driven AI IDE Replace Claude Code?
A deep look at AWS's spec-driven AI IDE Kiro via official docs and community reviews: EARS requirements, Agent Hooks, Steering Files, and an honest Claude Code comparison.
· EN
Deno 2 vs Bun 1.3 — 2026 Node.js Alternative Comparison
Deno 2.8.2 and Bun 1.3.14 benchmarked head to head: startup time, HTTP throughput, npm compatibility, and security model, plus which one I actually use.
· EN
Hono.js + TypeScript Edge REST API on Cloudflare Workers
Build a type-safe edge REST API with Hono v4, Bun 1.3, and Zod v4: routing, input validation, CORS and logger middleware, plus Cloudflare Workers deployment.
· EN
Zod v4 + Claude API: Type-Safe LLM Response Parsing in TypeScript
I tested Zod v4 safeParse() and the updated schema API against Claude API responses to build type-safe LLM pipelines that catch malformed output early.
· EN
Testing AI Agents with Vitest 4
I verified practical patterns for mocking the Anthropic SDK messages.create() and streaming responses in Vitest 4.1.7, keeping agent tests fast and reliable.
· EN
Build an MCP Server in TypeScript — Official SDK Tutorial
Build a working TypeScript MCP server in 30 minutes with @modelcontextprotocol/sdk and Zod v4: tool registration, transport testing, and public API integration.
· EN
Gemini API Managed Agents Practical Guide
A hands-on walkthrough of Gemini Managed Agents from Google I/O 2026. Covers the sandbox architecture, multi-turn conversations, tool usage, and an honest comparison with Claude Managed Agents.