DEV Community

Jangwook Kim profile picture

Jangwook Kim

404 bio not found

Joined Joined on  Personal website https://effloow.com
Zero Failures Tabbing Down, 16 Tabbing Up: The Sticky Header Problem

Zero Failures Tabbing Down, 16 Tabbing Up: The Sticky Header Problem

Comments
12 min read
Your Last Deploy Reset Every Cache Validator on the Site

Your Last Deploy Reset Every Cache Validator on the Site

Comments
14 min read
What a 26-page WCAG-EM sample missed across 1,342 built pages

What a 26-page WCAG-EM sample missed across 1,342 built pages

Comments
12 min read
I Authored Six of the Seven Places My Title Is Declared

I Authored Six of the Seven Places My Title Is Declared

Comments
12 min read
24,948 of My 46,382 Internal Links Pointed at a 301

24,948 of My 46,382 Internal Links Pointed at a 301

Comments
9 min read
I removed one archive page and 296 posts became unreachable

I removed one archive page and 296 posts became unreachable

Comments
10 min read
What a div grid quietly loses: measuring the a11y tree and text extraction on the same table

What a div grid quietly loses: measuring the a11y tree and text extraction on the same table

Comments
10 min read
OpenAI Spend Limits Return 429: Your Retry Logic Will Make It Worse

OpenAI Spend Limits Return 429: Your Retry Logic Will Make It Worse

Comments
11 min read
Why Prerendered LCP Reads 6.2s Without activationStart

Why Prerendered LCP Reads 6.2s Without activationStart

Comments
9 min read
Why I Re-Run My Injection Tests Every Time I Bump the Model

Why I Re-Run My Injection Tests Every Time I Bump the Model

Comments
11 min read
Your AI Gateway Blocked the Request. Did You Still Pay?

Your AI Gateway Blocked the Request. Did You Still Pay?

Comments
9 min read
WebMCP's Origin Trial: provideContext Is Already Gone

WebMCP's Origin Trial: provideContext Is Already Gone

Comments
8 min read
FAQ Rich Results Are Dead. Don't Delete the Q&A Markup

FAQ Rich Results Are Dead. Don't Delete the Q&A Markup

Comments
7 min read
WebSockets No Longer Block bfcache? Chrome 150 Still Said 'websocket'

WebSockets No Longer Block bfcache? Chrome 150 Still Said 'websocket'

Comments
9 min read
OpenAI Output Moderation: What the Scores Actually Catch

OpenAI Output Moderation: What the Scores Actually Catch

Comments
8 min read
aria-modal="true" Blocked Nothing: Modal Focus Escape, Measured

aria-modal="true" Blocked Nothing: Modal Focus Escape, Measured

Comments
7 min read
Restaurant JSON-LD: Nobody Catches opens: "eleven"

Restaurant JSON-LD: Nobody Catches opens: "eleven"

Comments
9 min read
One listener costs you the back button: six bfcache probes

One listener costs you the back button: six bfcache probes

Comments
9 min read
1,248 Feed Items, Four Languages, Zero Language Metadata

1,248 Feed Items, Four Languages, Zero Language Metadata

Comments
12 min read
GPT-5.6 Prompt Caching: The 24-Hour Cache Is Gone

GPT-5.6 Prompt Caching: The 24-Hour Cache Is Gone

Comments
10 min read
WCAG 2.2 Minimum Target Size: the AA Failure Hiding Behind a Green 92

WCAG 2.2 Minimum Target Size: the AA Failure Hiding Behind a Green 92

Comments
9 min read
The meta Line That Decides If AI Overviews Can Quote You

The meta Line That Decides If AI Overviews Can Quote You

Comments
8 min read
content-visibility Measured: One CSS Line, 15x Less Forced Layout

content-visibility Measured: One CSS Line, 15x Less Forced Layout

Comments
8 min read
When an AI Agent Bungles a Tool Call, Does It Fix Itself?

When an AI Agent Bungles a Tool Call, Does It Fix Itself?

Comments
8 min read
Measuring INP: one click cost 264ms, chunking it got 56ms

Measuring INP: one click cost 264ms, chunking it got 56ms

Comments
10 min read
Cutting CLS from 0.559 to 0.014, measured

Cutting CLS from 0.559 to 0.014, measured

Comments
8 min read
GPT-5.6 Programmatic Tool Calling: When It Cuts the Token Bill

GPT-5.6 Programmatic Tool Calling: When It Cuts the Token Bill

Comments
8 min read
A 117KB hero with a 1.2s LCP: the browser found it too late

A 117KB hero with a 1.2s LCP: the browser found it too late

Comments
8 min read
Catch Broken JSON-LD in CI Before It Ships

Catch Broken JSON-LD in CI Before It Ships

Comments
8 min read
Claude Programmatic Tool Calling: Measured Token Savings

Claude Programmatic Tool Calling: Measured Token Savings

Comments
9 min read
AI Consumer Research: Validation Priorities, Not Market Truth

AI Consumer Research: Validation Priorities, Not Market Truth

Comments
11 min read
Can an AI Agent Finish Orders When a Tool Fails?

Can an AI Agent Finish Orders When a Tool Fails?

Comments
8 min read
Goose by Block: A Free, Open-Source AI Agent Review 2026

Goose by Block: A Free, Open-Source AI Agent Review 2026

Comments
13 min read
GitHub Copilot Agent Mode in JetBrains IDEs: 2026 Guide

GitHub Copilot Agent Mode in JetBrains IDEs: 2026 Guide

Comments
15 min read
What Automated Accessibility Checks Miss After the Green Light

What Automated Accessibility Checks Miss After the Green Light

Comments
11 min read
JSON-LD vs Microdata vs RDFa: Which Structured Data Syntax, and Why

JSON-LD vs Microdata vs RDFa: Which Structured Data Syntax, and Why

Comments
8 min read
A wrong accessible name breaks voice control and AI agents

A wrong accessible name breaks voice control and AI agents

Comments
9 min read
Web-Search Agents Waste Tokens: We Measured How Much

Web-Search Agents Waste Tokens: We Measured How Much

Comments
8 min read
AI Crawlers Don't Run Your JavaScript

AI Crawlers Don't Run Your JavaScript

Comments
8 min read
In sitemap.xml, lastmod Is the Only Field Google Actually Reads

In sitemap.xml, lastmod Is the Only Field Google Actually Reads

Comments
8 min read
OpenAI Models on Bedrock: A Responses API Readiness Check

OpenAI Models on Bedrock: A Responses API Readiness Check

Comments
9 min read
Why color-contrast Disappears When You Put axe-core in CI

Why color-contrast Disappears When You Put axe-core in CI

Comments
8 min read
I Ran a Technical SEO Audit for Five Days: the Gates Mattered More Than the Five Fixes

I Ran a Technical SEO Audit for Five Days: the Gates Mattered More Than the Five Fixes

Comments
8 min read
OpenAI Assistants API Shutdown: Port Your Bot Before Aug 26

OpenAI Assistants API Shutdown: Port Your Bot Before Aug 26

Comments
9 min read
Tie Your JSON-LD Into One @graph — Turn Scattered Structured Data Into an Entity Model Search and AI Can Read

Tie Your JSON-LD Into One @graph — Turn Scattered Structured Data Into an Entity Model Search and AI Can Read

Comments
9 min read
hreflang Has to Be Bidirectional — Auditing My Own 4-Language Blog Turned Up a Homepage Bug

hreflang Has to Be Bidirectional — Auditing My Own 4-Language Blog Turned Up a Homepage Bug

Comments 1
9 min read
OpenAI Moderation Scores: A Safety-Routing Gate PoC

OpenAI Moderation Scores: A Safety-Routing Gate PoC

Comments
10 min read
OpenAI Agents SDK Sandboxes: Provider Readiness Checklist

OpenAI Agents SDK Sandboxes: Provider Readiness Checklist

Comments
9 min read
OpenAI's 24h Prompt Cache: We Measured the Real Discount

OpenAI's 24h Prompt Cache: We Measured the Real Discount

Comments
9 min read
Controlling AI Crawlers with robots.txt — Block Training, Allow Citation (2026)

Controlling AI Crawlers with robots.txt — Block Training, Allow Citation (2026)

Comments
9 min read
Accessibility 55 to 100: Fixing Real WCAG Failures with Lighthouse

Accessibility 55 to 100: Fixing Real WCAG Failures with Lighthouse

Comments
7 min read
LocalBusiness Structured Data: JS Injection Works, but Server-Side Is Safer

LocalBusiness Structured Data: JS Injection Works, but Server-Side Is Safer

Comments
4 min read
I Pointed 8 Agents at One Local LLM — Measuring Ollama Concurrency Throughput

I Pointed 8 Agents at One Local LLM — Measuring Ollama Concurrency Throughput

Comments
7 min read
Does a Local Reasoning Model Earn Its Keep? Measuring thinking ON/OFF on gemma4:12b

Does a Local Reasoning Model Earn Its Keep? Measuring thinking ON/OFF on gemma4:12b

Comments
8 min read
Why My Local Agent Forgot Its System Prompt — Measuring Ollama num_ctx Silent Truncation

Why My Local Agent Forgot Its System Prompt — Measuring Ollama num_ctx Silent Truncation

Comments
8 min read
Why a local LLM''s first reply sometimes takes 10 seconds — I measured the cold start (load_duration)

Why a local LLM''s first reply sometimes takes 10 seconds — I measured the cold start (load_duration)

Comments
8 min read
Why a Local LLM Slows Down as the Conversation Grows — I Split Prefill From Generation

Why a Local LLM Slows Down as the Conversation Grows — I Split Prefill From Generation

Comments
9 min read
Same Article, 1.4x the Tokens in Korean: Measuring the Non-English Token Tax Across 285 of My Posts

Same Article, 1.4x the Tokens in Korean: Measuring the Non-English Token Tax Across 285 of My Posts

Comments
8 min read
Does a Local LLM Ever Repeat Itself? Measuring Output Reproducibility with Temperature and Seed

Does a Local LLM Ever Repeat Itself? Measuring Output Reproducibility with Temperature and Seed

Comments
9 min read
Stop Feeding Raw JSON to Your LLM — I Measured Token Cost Across 9 Data Formats

Stop Feeding Raw JSON to Your LLM — I Measured Token Cost Across 9 Data Formats

Comments
6 min read
loading...