惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Y
Y Combinator Blog
V
Visual Studio Blog
博客园 - 聂微东
月光博客
月光博客
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
爱范儿
爱范儿
WordPress大学
WordPress大学
人人都是产品经理
人人都是产品经理
宝玉的分享
宝玉的分享
Apple Machine Learning Research
Apple Machine Learning Research
V
V2EX
博客园_首页
小众软件
小众软件
罗磊的独立博客
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Martin Fowler
Martin Fowler
C
Check Point Blog
雷峰网
雷峰网
李成银的技术随笔
Stack Overflow Blog
Stack Overflow Blog
阮一峰的网络日志
阮一峰的网络日志
大猫的无限游戏
大猫的无限游戏
MongoDB | Blog
MongoDB | Blog
云风的 BLOG
云风的 BLOG
P
Proofpoint News Feed
F
Fortinet All Blogs
J
Java Code Geeks
Stack Overflow Blog
Stack Overflow Blog
Jina AI
Jina AI
IT之家
IT之家
The Cloudflare Blog
Engineering at Meta
Engineering at Meta
GbyAI
GbyAI
The GitHub Blog
The GitHub Blog
博客园 - 叶小钗
T
The Blog of Author Tim Ferriss
博客园 - 【当耐特】
Microsoft Azure Blog
Microsoft Azure Blog
腾讯CDC
Hugging Face - Blog
Hugging Face - Blog
D
Docker
MyScale Blog
MyScale Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
D
DataBreaches.Net
量子位
N
Netflix TechBlog - Medium
Microsoft Security Blog
Microsoft Security Blog
S
SegmentFault 最新的问题
博客园 - 司徒正美
有赞技术团队
有赞技术团队

DEV Community

AI cheating in technical interviews is invisible to interviewers — here's how we detect it Lean4 Might Be the Missing Piece in AI: Why Theorem Provers Are Suddenly Everywhere The Zero-Drift API Series: Stop Trusting a Green Build You Can't Explain How I Deployed My First Project on AWS (And Didn't Break Everything) How I Built a Real-Time Quiz Platform with Next.js, WebSockets, and Learning Science When Your VPS Blocks Outbound SMTP: What Actually Helps Los agentes de código necesitan memoria durable, no solo contexto Cognitive Architectures of AGI: 7 Patterns That Transform LLMs from Oracles into Thinkers I Built a Chat App That Deletes Itself (Because I Was Bored at 2am) Uncovering the Power of Linux's History Command How to Add a Contact Form to Your Ghost Blog Accept Payments in Minutes with Afriex Checkout Sessions Hermes Agent Gets Smarter Every Day. So Does the Bill. How I get Next.js sites to load almost instantly — a practical checklist Treasure Hunt Engine: Why One Bad Prometheus Rule Sank the Whole Veltrix Event Test a DNS Leak in 2 Minutes: Complete Methodology + Per-OS Fixes (2026) Lessons from building a Chrome extension Rivet: A library i made in 2 days I Built a Speech-to-Text Tool Because Sometimes Typing Just Gets in the Way How I'm Building a Multi-Agent Crew for AI Coding Supervision (Cipher Update) Your AI Agent Needs a Manager, Not a Superhero I Built CausalLens — A Free, Open-Source Causal Impact Calculator for Time Series (5 Methods, Zero Setup) How to write good commit messages and pull requests — a team guide Cipher: The Jarvis with a Hermes Core How to build a second brain with Obsidian and Claude Code (step by step) Claude completed my MPI assignment. Then it couldn't run it. So I built the missing piece. This 100% How Our Document Ingestion Pipeline Turns Files into LLM-Ready Markdown Agentic AI Model Risk Management: Aligning with Regulatory Expectations CTV Fraud Has an IPv6 Business Problem The great AI enshittification The Veltrix Treasure Hunt Engine: Why Our First Rewrite Cost Us 3.2 Million Requests Per Second I Made My AI Models Argue, Then Let Hermes Be the Judge Road To KiwiEngine #4: The Racecar Driver Analogy Run Aider on Ollama, Bedrock, or Any LLM Provider — One Gateway, Every Model BAIXAR VÍDEO DO YOUTUBE Releasing HeliosProxy, The programmable Postgres data-plane Hello, DEV Community! 👋 Three Bitcoin Primitives That Don't Exist Anywhere Else (PoW Beacon, DLC Oracle, Fair-Launch Rune) Append-only doesn't mean what you'd hope Notes from the Mistral AI Now Summit Are Claude skills safe in 2026? What the Snyk ToxicSkills audit actually found How to not Lose $500M via API Bills: Run Private AI for 100 Engineers Under $1 Million The Unlikely Journey from Bricks to Bytes Three TODOs, three weeks, one weekend: finishing pq v0.14 Server-Side WebRTC Noise Reduction with Pion, FFmpeg, and RNN Models Autonomous AI Agents in Cryptocurrency Portfolio Management IDOR BugBounty Labs: 5 Realistic Challenges to Master Insecure Direct Object Reference IDOR Lab: The Bug Bounty Training Platform That Doesn't Hold Your Hand ZentriqGuard — Hermes Agent-Powered Zero-Trust Access Auditor Why Artistic QR Codes Silently Fail (And How I'm Trying to Fix It) How I Built and Monetized a Currency Exchange Rate API with FastAPI, Deployed it on Render, and Published it on RapidAPI. The 7 Best Reddit Scrapers in 2026 (Free & Paid, Tested) An AI runs my company. A solo dev vibe-coded $15K in a week — we made $[X]. A cold autopsy. I am new here Stop Pasting Your Code Into ChatGPT For Debugging—Run LLMs Locally Instead 5 Free JSON Tools Every Developer Should Bookmark Building reqlog: a Go CLI for tracing request flows across logs (files, Docker, SSH) Environment Variables in Node.js — What They Are, How dotenv Works, and Why Getting This Wrong Can Ruin You I Built a Zero-Dependency Discord.js Package That Creates Temporary Voice Channels Automatically Goodbye CSV Nightmares: Automating Magento Order Line Item Exports in Google Sheets Nexthena — A Local-First Whiteboard App Built on Excalidraw How we built an platform to solve the "finding a photographer" problem 5 Failure Modes I Found in My Financial RAG (And the One That Actually Mattered) From Logic to Numbers: A Beginner’s Guide to Programming Through Mathematical Thinking Oracle Fusion Report Scheduling with Skip Conditions AtCoder Beginner Contest 460 参加記録と解答例 (A D問題) Your AI Agent Just Crashed at Step 9 of 12. Here's How to Make That Not Matter. Grokking the System Design Interview: Why the Original Course Still Wins Outbox Pattern Solves Publishing. Inbox Pattern Solves Processing. Why autism hasn't disappeared — a hypothesis Por que eu parei de usar Cloudinary e construí minha própria API de imagens How to Test if Your Proxy is Leaking DNS: 2026 Setup Guide AWS VPC Networking — Public Subnet, Private Subnet ve 3-Tier Mimari MediaNote: a note-taking app inside VS code I built a sovereign self-healing AI development system from scratch using Hyperdimensional Computing — no LLMs, no cloud, no APIs WordPress vs. Next.js: benchmark real pe Core Web Vitals (și de ce plugin-urile de cache nu rezolvă problema) ai, deepseek, machinelearning I Gave My Dead Raspberry Pi to an AI Agent. It Fixed Everything Over SSH. How I Built a Google Shopping Scraper with Python & Playwright I Turned Hermes Agent into a Verifiable Agent Operating System The 5 Systematic Failure Modes of AI Research Reports (and How to Catch Them) Stop Saying 'Great!'—Build a Real AI Interview Coach with Claude Code Simple SQL Tool What is DevOps? A Plain English Guide for Beginners Why ChatGPT sucks at generating Types (and how I fixed it) Modelling a codebase as a requirements ontology in Neo4j, keeping AI coding agents oriented AI Is Doing the Work of Junior Developers — And Nobody Is Talking About What Happens in 7 Years Opinion: Peter Steinberger & Lex Fridman Interview How I Built FlowChat SDK: A Real-Time Customer Support Widget Using Spring Boot, React, MongoDB, and WebSockets Stage 0.5 — Programming Fundamentals Agent Harness Explained: Build Production-Ready AI Agents with Microsoft Agent Framework How to stop Cursor AI forgetting your .NET architecture (the $9 fix) Power Management Strategies for Battery-Powered Edge AI Devices I Finally Found a Wallet That Lets My AI Agent Pay Its Own Bills What a Frontend Developer Roadmap Actually Contains? BoxAgnts Introduction (6) — Agent Multi-Turn Conversation and Tool/Skill Invocation Idempotency Keys in Spring Boot: Make POST Safe Against Retries I Broke 3 AI Agents on Purpose. Here's Which One Recovered Best. Why ChatGPT Fails as an Interview Tutor (And How I Built a Better One with Claude Code)
I built a Chrome extension because I couldn't stop opening Twitter between Pomodoro sessions
Promise Uzoechi · 2026-05-31 · via DEV Community

Let me be honest about something embarrassing.

I've read Deep Work. I've read Atomic Habits. I had a colour-coded Notion workspace that would make a productivity influencer cry with joy. I used three different Pomodoro apps across three years. I had a site blocker installed.

I was still wasting about two hours a day.

It took me an embarrassingly long time to figure out where the leak was.


The moment I finally saw it

One afternoon I was watching my own screen — actually watching myself work, not in a productivity-hack way, just because I was curious — and I noticed something. Every time I finished a Pomodoro session and went to start the next task, I'd open a new Chrome tab.

And in the half-second before I typed anything, my hand just... went to Twitter. Or Reddit. Or sometimes I'd start typing a URL and somehow end up on a completely different one.

The new tab page was the leak.

Not the sites themselves. Not my willpower. The empty, invitation-shaped blank canvas that Chrome opens every time you hit Cmd+T was giving my brain a window to hijack the transition.

My site blocker wasn't catching it because I technically wasn't browsing to a distraction site yet. I was just "in between" tasks. The blocker sees a navigation. The decision to navigate happens before that.


So I built a fix

I'm a developer. This is what we do instead of therapy.

I built a Chrome extension called Ashdeck that replaces the new tab page entirely. When you open a new tab, instead of a blank canvas, you see:

The idea is simple: remove the moment of emptiness. Give the transition a destination.

The result surprised me. The issue wasn't willpower. It was the blank state. Once the new tab showed me exactly what I was supposed to be doing next, the decision to go to Twitter stopped being automatic. I had to actively override something, not passively drift.


What I learned building this

A few things that weren't obvious going in:

1. The blocker and timer have to live in the same place

I tried building them separately first. The blocker alone felt punishing — like a rule without context. The timer alone was easy to ignore because you could just open a new tab and browse freely between sessions.

Together they create a feedback loop. The timer tells you you're in a session; the blocked tab enforces it without you having to remember.

2. The new tab page is the most underrated real estate in the browser

Every productivity extension wants to be a sidebar widget or a popup. But you open a new tab dozens of times a day. It's the single highest-frequency touchpoint in your entire computing session, and almost everyone is using it for a pretty photo and a quote.

3. Users split into exactly two camps

  • "I would never replace my new tab page" (visceral, immediate rejection)
  • "I've been looking for this exact thing for three years" (immediate install, immediately tell their friends)

I haven't found a middle ground yet, which I think means the positioning is actually pretty tight.


Where it's at now

Ashdeck has been live for about eight months. It's a free Chrome extension. I added an AI notepad recently because I kept wanting to brain-dump thoughts mid-session without switching apps.

The thing I'm still not happy with: the site blocking mechanism.

I built it in a way that works for most use cases but has some edge cases around incognito mode and certain redirect patterns. If you try it and run into weirdness, please tell me honestly.

If any of this resonates, you can try it at ashdeck.com. If it doesn't solve your problem, I'd genuinely like to know why, because that's useful too.


Over to you

What's the most unexpected place you've found productivity leaks in your workflow? or your current focus setup?