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

推荐订阅源

The Cloudflare Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
人人都是产品经理
人人都是产品经理
C
Check Point Blog
有赞技术团队
有赞技术团队
H
Help Net Security
V
Vulnerabilities – Threatpost
N
News | PayPal Newsroom
Hacker News - Newest:
Hacker News - Newest: "LLM"
L
LINUX DO - 最新话题
Apple Machine Learning Research
Apple Machine Learning Research
博客园 - 【当耐特】
爱范儿
爱范儿
I
InfoQ
V
Visual Studio Blog
O
OpenAI News
Google DeepMind News
Google DeepMind News
S
Security Affairs
T
Troy Hunt's Blog
P
Palo Alto Networks Blog
Spread Privacy
Spread Privacy
Engineering at Meta
Engineering at Meta
雷峰网
雷峰网
N
Netflix TechBlog - Medium
Latest news
Latest news
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Webroot Blog
Webroot Blog
S
Schneier on Security
MongoDB | Blog
MongoDB | Blog
T
Tor Project blog
V2EX - 技术
V2EX - 技术
Security Latest
Security Latest
Cloudbric
Cloudbric
The GitHub Blog
The GitHub Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
B
Blog RSS Feed
C
CERT Recently Published Vulnerability Notes
T
The Exploit Database - CXSecurity.com
P
Privacy International News Feed
S
Securelist
C
Cisco Blogs
博客园_首页
TaoSecurity Blog
TaoSecurity Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Security Archives - TechRepublic
Security Archives - TechRepublic
P
Proofpoint News Feed
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
T
Threat Research - Cisco Blogs
阮一峰的网络日志
阮一峰的网络日志
S
Secure Thoughts

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant Common SOC 2 Failures (Real World) Stop Vibe-Checking Your AI App: A Practical Guide to Evals How to Use SonarQube and SonarScanner Locally to Level Up Your Code Quality Your Next To-Do App Is Dead — I Replaced Mine with an OpenClaw AI Sign a Nostr event in 60 lines of Python using coincurve — no nostr-sdk, no nbxplorer, no rust toolchain ITGC Audit Explained Like You’re in Big 4 Patch Tuesday abril 2026: Microsoft parcha 163 vulnerabilidades y un zero-day en SharePoint Stop scraping everything: a better way to track competitor price changes Listing on MCPize + the Official MCP Registry while routing payments OUTSIDE the marketplace — how I kept 100% of my x402 revenue Building an AI-Powered Risk Intelligence System Using Serverless Architecture Why We Ripped Function Overloading Out of Our AI Toolchain Testing AI-Generated Code: How to Actually Know If It Works SaaS Churn Is Killing Your Business. Here Is What to Do About It (Without a Support Team) The Speed of AI Is No Longer Linear - And Self-Improving Models Are Why How to Implement RBAC for MCP Tools: A Practical Guide for Engineering Teams From Standard Quote to Persuasive Proposal: AI Automation for Arborists I built a CLI that scaffolds complete multi-tenant SaaS apps Axios CVE-2025–62718: The Silent SSRF Bug That Could Be Hiding in Your Node.js App Right Now The dashboard that ended our friendship Data Pipelines Explained Simply (and How to Build Them with Python) The Hidden Cost of AI Systems Nobody Talks About. undefined vs undeclared, and how typeof behaves Switching from file-based jobs to NATS/Kafka in Rust without changing code io_uring Adventures: Rust Servers That Love Syscalls Why Agentic AI is Killing the Traditional Database The POUR principles of web accessibility for developers and designers Quantum Neural Network 3D — A Deep Dive into Interactive WebGL Visualization How To Install Caveman In Codex On macOS And Windows Automation Pipeline Reliability: Why Your Workflow Breaks When Nobody Is Watching I Built an 'Open World' AI Coding Agent — It Works From ANY Folder From Freelancing to Product: A Tech Service Company's SaaS Transformation China's AI Giants: Adding Tencent Hunyuan & ByteDance Doubao to AI University (74 Providers) On the Vibe Coders and Their Lies clerk: Auto-Summarize Your Claude Code Sessions AI Weekly — 2026/04/10–04/17 | The Model Lockdown Is Here, but the Toolchain Is the Real Battleground AI 週報 — 2026/04/10–2026/04/17 模型封鎖潮來了,但工具鏈才是真戰場 Maybe this is how Open-Source apps are born... 🚀 Fine-Tune LLMs with LoRA and QLoRA: 2026 Guide tRPC v11 + Next.js App Router: End-to-End Type Safety Without the Boilerplate ShadCN UI in 2026: Why I Stopped Installing Component Libraries and Started Owning My Components SaaS Billing in React Server Components: Stripe + Supabase Without a Single `useEffect` Join our DEV Weekend Challenge — $1,000 in Prizes Across TEN winners! Submissions Due April 20 at 6:59 AM UTC. Implementing FSRS Spaced Repetition in Flutter + Supabase — Adding Memory Science to an AI Learning App "I Texted My Localhost From the Train — Claude Code Fixed the Bug Before I Got Home" I Built a Sales Prep AI and It Went Deeper Than Expected Design to Code #2: One JSON, Eleven Outputs Solving the 100M-Row Problem: A Summary Table Pattern for High-Volume Push Notification Logs Flutter Web With Wasm: What Actually Changes For Developers I Built 50 Royalty-Free Soundtracks for My Side Project in a Weekend Using AI Music Generation The Vibe Coding Security Checklist: 7 Things to Check Before You Ship Stop Letting Googlebot Guess Fix Your React App's SEO Right Desconstruindo o Streaming do LinkedIn: Como Criar um Engine de Extração de Vídeo de Alta Performance com HLS e FFmpeg (EDA Part-1) EDA (Exploratory Data Analysis) Explained With Real Life — Why Looking at Your Data Is the Most Important Step in Machine Learning Brand Relationship Management at Scale: Our 4-Touch Outreach System for 200+ Brands Why String.fromEnvironment() Might Return an Empty String in Dart JGuardrails 1.0.0 — Hardening Java LLM Apps Against Jailbreaks, Toxicity, and Prompt Injection Plan and Schedule a Full Week of Threads Content From One Claude Conversation Coding Cat Oran Ep3, Five Tables Changed Everything Updated: BFF Pattern I'm done watching freelancers get buried by 200 proposals. So I'm building the alternative. This is my first post BFS Algorithm in Java Step by Step Tutorial with Examples Tracking LLM Pricing Monthly: An Open Dataset for 22 AI Models How We Measure Content ROI on a Comparison Site: Revenue Attribution Without Perfect Data Introducing Nova AI Ops: The AI-Native Operating System for SRE Teams I built a free desktop video downloader for Windows — Grabbit How Talkie OCR Helps Vision-Impaired & Dyslexic Users Read the World Around Them VRCFaceTracking安装和iPhone面捕配置教程,有bug Even CrowdStrike Can't See Your Agents The Automation Gold Rush: What n8n Workflows and Claude Are Opening Up for Developers Right Now
AI won’t replace you, but bad AI habits will
<devtips/> · 2026-06-15 · via DEV Community

A blunt playbook for devs who don’t want to turn into autocomplete zombies.

The first time an AI wrote code for me, I felt like I had unlocked cheat codes for real life. I typed a half-baked function name, hit enter, and suddenly I had a block of code that looked legit. It was magical. The second time, though? It suggested something so catastrophic basically the programming equivalent of pulling the fire alarm that I realized: this thing is less “mentor” and more “overconfident intern who thinks they know pointers but actually just broke prod.”

That’s where most of us are right now. AI is everywhere: in our IDEs, our docs, even sneaking into PR reviews. Some days it feels like rocket fuel; other days it feels like an autocomplete with a drinking problem.

The tricky part isn’t whether AI is “good” or “bad.” The tricky part is how we, as developers, use it without becoming lazy, dependent, or worse complacent. Because here’s the uncomfortable truth: AI won’t replace you, but bad AI habits absolutely will.

TLDR: This article is a survival guide for developers in the AI era. We’ll break down why AI feels both magical and mid, the five switches that make AI actually useful, when to trust and when to verify, how to use AI as a research assistant (not a code monkey), the dangers of autocomplete brain, and a playbook for building a healthy workflow.

Why AI feels both magical and mid

Every dev I know has had that moment with AI. The first time it autocompleted a function and nailed it, you probably thought: “Wow… this thing just saved me half an hour.” It’s the same dopamine hit as discovering ctrl+r in bash or realizing you can pipe grep into less. Pure wizardry.

But the honeymoon ends quickly. The same tool that wrote a clean utility function also happily hallucinates imports that don’t exist, invents APIs, and will confidently explain things that are flat-out wrong. It’s like pair programming with someone who sounds senior but has never actually shipped code.

The magic-mid paradox comes from two truths living side by side:

  • AI is fast and confident. It fills the silence instantly, which feels great when you’re stuck.
  • AI is also wrong, a lot. Not always in spectacular ways sometimes it just misses edge cases or forgets how a library actually works.

The result? You get addicted to the speed, but burned by the trust. One minute you’re flying, the next you’re undoing a migration because AI forgot about a foreign key constraint.

Developers on Stack Overflow noticed this quickly so much so that AI-generated answers were banned because they were too often wrong but written with scary confidence. Hacker News threads echo the same:

“Feels powerful, but I can’t trust it.”

And that’s the real catch. AI isn’t here to replace you. It’s here to test whether you still think like an engineer, or whether you’re willing to trust an autocomplete with swagger.

The five switches framework

Using AI effectively isn’t about “prompt engineering wizardry.” It’s about flipping the right switches at the right time. After months of testing (and plenty of bad code reviews), I’ve boiled it down to five controls that separate “autocomplete brain” from “actually useful teammate.”

1. Reasoning mode

AI defaults to spitting out the most common answer. That’s fine for boilerplate, but when you’re debugging or designing, you need it to think step by step.

Before (default):

# Prompt
Write a regex that validates emails.
# Output
^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+.[A-Za-z]{2,}$

Looks okay… until you realize it fails on example@localhost.

After (reasoning):

# Prompt
Think step by step and list edge cases before writing a regex for emails.
# Output
Edge cases: localhost, subdomains, quoted strings...
Regex: (full RFC5322-compliant pattern)

Still gnarly, but now it’s at least considering reality instead of hallucinating confidence.

2. Verbosity control

Sometimes you want “explain like I’m five.” Sometimes you need “write the RFC.” Most devs forget you can actually control this.

  • Low verbosity: quick code snippet, zero fluff.
  • High verbosity: detailed breakdown with trade-offs.

It’s like switching between ls and ls -la. Same tool, different levels of detail.

3. Tooling

Don’t let AI just “guess.” Route it to tools when possible: docs, REPLs, diagrams. If your setup allows retrieval (docs fetching) or code execution, use it. AI without tools is like a dev without man pages dangerous.

4. Self-reflection prompts

The easiest hack: ask AI to critique itself.

  • “What could be wrong with your answer?”
  • “List three failure cases.”

Nine times out of ten, it catches something you missed. It’s the rubber duck debugging effect, but automated.

5. Rubrics / meta-prompts

Structure beats vibes. Instead of “write me a design doc,” try:

“Follow this rubric: Problem → Constraints → Options → Risks → Recommendation.”

Before: bland wall of text.
After: structured doc you could actually drop into a repo.

The point

These five switches aren’t about tricking the model. They’re about managing it like you would a junior teammate: sometimes you need short answers, sometimes deep reasoning, sometimes structured artifacts. If you don’t flip the right switch, don’t be surprised when it gives you garbage-tier output.

When to trust, when to verify

AI is like that one coworker who’s great at banging out boilerplate but absolutely should not be let near production. The trick is knowing when you can trust it versus when you need to verify every single line.

Trust-worthy zones:

  • Generating CRUD scaffolding.
  • Writing repetitive test stubs.
  • Summarizing docs you’ll double-check anyway.

High-risk zones:

  • Database migrations.
  • Authentication logic.
  • Anything touching production infra.

Think of it like code reviews: you don’t sweat a for-loop refactor, but you triple-check schema changes. AI should be held to the same standard.

Here’s a quick story: I once asked an AI to generate unit tests. Looked fine. All tests passed. Victory, right? Wrong. It had silently tested the wrong function. Everything was green because the assertions were nonsense. That’s when I realized: green doesn’t mean correct, it just means consistent.

Even Stack Overflow caught onto this AI answers looked legit but were often wrong, so they banned them. If one of the largest dev Q&A platforms can’t trust it unsupervised, why should you?

Bottom line: use AI where it accelerates, but verify like your job depends on it because it does.

AI as research assistant, not code monkey

The best way I’ve found to use AI isn’t as a code generator at all it’s as a research buddy. Treating it like a junior dev who can draft architecture diagrams, outline RFCs, or brainstorm test cases is way more effective than asking it to brute-force production code.

Example: I once asked AI to design an OAuth flow. What I got back was boilerplate diagrams and generic “best practices.” Useless. Then I flipped the script: instead of asking it to design, I gave it my design and told it to critique. Suddenly I got a list of risks, edge cases, and even alternative libraries to consider. That’s value.

Another underrated trick: use it to draft headings or structures. For a design doc,

AI can spit out:

Problem → Constraints → Options → Risks → Recommendation.

Then you fill in the engineering meat. It’s like having a personal tech writer who never complains.

There’s a reason tools like GitHub RFC templates exist: structure matters. AI is great at scaffolding, but you need to provide the judgment and the trade-offs.

So stop asking AI to be your code monkey. Start asking it to be your overcaffeinated research assistant. It’ll still hallucinate, but at least the stakes are lower.

The danger of autocomplete brain

Here’s the uncomfortable truth: the biggest risk with AI isn’t bad code it’s bad habits. If you lean on it too much, you start losing the ability to think through problems yourself. Call it autocomplete brain.

It’s the same loop we all fell into with Stack Overflow back in the day. Copy, paste, ship. You get the dopamine hit of “solving” something without actually understanding it. Multiply that by 10 when AI serves you answers instantly and confidently.

I’ve caught myself in this trap. I once spent nearly an hour debugging with AI, chasing one nonsense suggestion after another. Only when I finally opened the logs myself did I see the obvious error. I wasn’t solving problems anymore I was outsourcing my thinking to an overconfident autocomplete.

This is where burnout creeps in. You’re coding all day, but you’re not learning. You’re not building intuition. And when something truly breaks the kind of bug that requires actual systems thinking you’re suddenly lost.

If you’ve ever felt like you’re coding but not growing, check your habits. Autocomplete brain doesn’t show up overnight, but it’ll hollow out your skills if you let it.

Healthy AI/dev workflow (the playbook)

AI isn’t the enemy. Bad workflow is. The devs who thrive with AI aren’t the ones who let it write everything they’re the ones who treat it like a turbocharged assistant, then layer human judgment on top.

Here’s the playbook I’ve landed on after many facepalms:

Draft with AI
Let it generate the boring stuff: scaffolding, test stubs, outlines. Don’t expect perfection just raw clay.

Verify with docs, logs, tests
Before touching prod, check its output against the actual docs or run it in a sandbox. Logs don’t lie.

Refine with rubrics
Ask AI to restructure or critique. Example: “Follow Problem → Constraints → Options → Risks → Recommendation.” Now you get something useful instead of a wall of text.

Human final judgment
If you wouldn’t merge code from a junior without review, don’t merge AI’s output without review. Same rule.

Decision matrix

This matrix isn’t gospel it’s a sanity check. The point is to stop treating AI like an oracle and start treating it like a tool you configure. If you add even this much structure to your workflow, you’ll avoid 90% of the garbage-tier outputs that lead to wasted hours.

What’s next: router models & smarter tools

AI isn’t standing still. The next wave of tools won’t just be “one big model does everything.” They’ll be router models systems that quietly decide which sub-model or tool should handle your request. Think of it like a senior engineer who knows when to grab the database person, the security person, or the intern for boilerplate.

OpenAI already hinted at this in their system card: when you ask something complex, it can route parts of the query to specialized solvers. That’s why one moment it’s good at summarizing research, and the next it’s drafting halfway-decent code. Behind the curtain, it might not be the same model doing both.

This is exciting, but also risky. Some researchers have praised GPT-5’s problem-solving chops, noting that it produced surprisingly strong results on hard math problems. Others pointed out the obvious: the results were “impressive, but within reach for an expert.” In other words, cool demo but don’t throw out your textbooks yet.

The real future probably isn’t one mega-model ruling everything. It’s orchestration: devs deciding when to lean on reasoning, when to force rubrics, when to route queries. Tools will get smarter, but the responsibility to use them wisely will stay on us.

Conclusion

AI isn’t here to steal your job. But it can absolutely steal your edge if you let it. The devs who survive the AI wave won’t be the ones who let autocomplete write their apps they’ll be the ones who know when to draft, when to verify, and when to flat-out ignore the shiny suggestion.

Here’s the uncomfortable part: if you stop thinking critically, you’re basically just a human captcha. AI doesn’t need more prompt typers; it needs engineers who can orchestrate workflows, verify outputs, and push it beyond surface-level answers. That’s the skill set that will separate “AI user” from “AI abuser.”

I’ve seen both sides in my own projects: the moments where AI made me feel unstoppable, and the moments where I realized I’d trusted a hallucination and wasted hours. The difference was never the tool it was how I used it.

So here’s my take: AI won’t replace you. But bad AI habits will. What’s your worst AI fail story? Drop it in the comments I guarantee you’re not the only one who trusted autocomplete a little too much.

Helpful resources