<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Visesh</title>
    <description>The latest articles on DEV Community by Visesh (@visesh).</description>
    <link>https://dev.to/visesh</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3881210%2F01b45c46-8bd5-420a-8645-016de6289474.png</url>
      <title>DEV Community: Visesh</title>
      <link>https://dev.to/visesh</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/visesh"/>
    <language>en</language>
    <item>
      <title>What AI Is Actually Doing to Your Critical Thinking</title>
      <dc:creator>Visesh</dc:creator>
      <pubDate>Wed, 22 Apr 2026 17:08:46 +0000</pubDate>
      <link>https://dev.to/visesh/what-ai-is-actually-doing-to-your-critical-thinking-42kh</link>
      <guid>https://dev.to/visesh/what-ai-is-actually-doing-to-your-critical-thinking-42kh</guid>
      <description>&lt;p&gt;Here's a feeling that's probably familiar. You drop some documents into an AI tool, get a draft back, and then spend twenty minutes reading it to figure out if you agree with what you just "wrote." No critical thinking required. Just vibes and approval.&lt;/p&gt;

&lt;p&gt;Advait Sarkar calls this being "a professional validator of a robot's opinions." He's a researcher at Microsoft Research Cambridge, and I think it's the most accurate description of modern knowledge work I've heard.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Pattern Has a Name
&lt;/h2&gt;

&lt;p&gt;Sarkar gave &lt;a href="https://youtu.be/3lPnN8omdPA" rel="noopener noreferrer"&gt;a TED talk about this&lt;/a&gt;, and he calls it "outsourced reason" - the workflow where AI mediates every step of a knowledge worker's day. Email arrives, summarize it. Need a response, generate one. Report due, drop in some docs and request a draft. Deck required, same deal. Vibe code the prototype - &lt;a href="https://dev.to/visesh/vibe-coding-vs-a-senior-dev-5-prompts-one-app-clone-452j"&gt;a pattern we explored recently&lt;/a&gt; watching a vibe coder and a senior iOS dev each build an app in five prompts each.&lt;/p&gt;

&lt;p&gt;Each step feels like a win. Output exists. Things moved faster. But the problem isn't the speed.&lt;/p&gt;

&lt;p&gt;We've become, in Sarkar's phrase, intellectual tourists in our own work. We visit ideas. We don't inhabit them. Our relationship to our own output is entirely mediated by a machine, and we've gotten so used to it that it doesn't feel strange anymore. Sarkar's framing has a sharper edge than it sounds: a tourist can leave. The problem is we've started living there.&lt;/p&gt;




&lt;h2&gt;
  
  
  What AI Does to Your Critical Thinking (The Research Is Uncomfortable)
&lt;/h2&gt;

&lt;p&gt;This isn't a vibe. There's actual research behind it, and the findings are harder to brush off than most people expect.&lt;/p&gt;

&lt;p&gt;Start with creativity. Groups of knowledge workers using AI assistants produce a smaller range of ideas than groups working manually. Not because AI is bad at generating ideas - it's fast and fluent. But when everyone's prompting the same systems with roughly the same framings, we get what Sarkar calls "a hive mind. Except the hive is really boring and keeps suggesting the same five ideas."&lt;/p&gt;

&lt;p&gt;Critical thinking drops too. Surveyed workers reported putting less effort into reasoning when working with AI, and the effect was strongest for people who had high confidence in AI and lower confidence in themselves. The more we trust the machine and doubt ourselves, the less we actually think.&lt;/p&gt;

&lt;p&gt;Memory suffers in both directions. When people rely on AI to write for them, they remember less of what they "wrote." When they read AI-generated summaries instead of source documents, they remember a lot less of the content. And then there's metacognition - the ability to think about how you're thinking - which quietly disappears when AI mediates every step of your work.&lt;/p&gt;

&lt;p&gt;Sarkar's phrase for where this lands: "We've become middle managers for our own thoughts."&lt;/p&gt;

&lt;p&gt;These effects compound. Fewer ideas, thought about less critically, remembered less clearly. And the mundane tasks that used to exercise this cognitive musculature - the routine email, the quick summary, the first draft - are exactly the ones we hand over first. It's like protecting the gym membership but skipping every session. The equipment is still there. The capacity slowly isn't.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fimage.pollinations.ai%2Fprompt%2Flone%2520knowledge%2520worker%2520at%2520cluttered%2520desk%2520surrounded%2520by%2520glowing%2520screens%2520in%2520dark%2520room%252C%2520overwhelmed%252C%2520cinematic%2520photorealistic%2520moody%2520lighting%3Fwidth%3D800%26height%3D450%26nologo%3Dtrue%26seed%3D83921" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fimage.pollinations.ai%2Fprompt%2Flone%2520knowledge%2520worker%2520at%2520cluttered%2520desk%2520surrounded%2520by%2520glowing%2520screens%2520in%2520dark%2520room%252C%2520overwhelmed%252C%2520cinematic%2520photorealistic%2520moody%2520lighting%3Fwidth%3D800%26height%3D450%26nologo%3Dtrue%26seed%3D83921" alt="lone knowledge worker at a cluttered desk surrounded by glowing screens in a dark room, overwhelmed, cinematic photorealistic moody lighting" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  The Distinction That Actually Matters
&lt;/h2&gt;

&lt;p&gt;Sarkar's argument isn't "stop using AI." It's more precise than that: the problem is using AI as an assistant.&lt;/p&gt;

&lt;p&gt;An assistant optimizes for output. It takes intent and executes on it - fast, efficient, useful. But it leaves the person completely out of the process. A tool for thought operates differently. It challenges rather than obeys. It creates productive resistance. It keeps people metacognitively engaged rather than handing over a finished product and waiting for a rubber stamp.&lt;/p&gt;

&lt;p&gt;Sarkar's line here is blunt: "We've solved the problem of having to think. Unfortunately, thinking wasn't actually a problem." Or: "It's like we invented a cure for exercise and then wondered why we're out of breath all the time."&lt;/p&gt;

&lt;p&gt;The AI we've built is very good at removing friction. That's precisely the issue.&lt;/p&gt;




&lt;h2&gt;
  
  
  What "Tool for Thought" Looks Like in Practice
&lt;/h2&gt;

&lt;p&gt;Sarkar's team built a research prototype to explore what the alternative actually feels like. The demo centers on Clara, who needs to write a business proposal from an industry report she's never read.&lt;/p&gt;

&lt;p&gt;In a standard AI workflow: drop in the documents, request a draft, edit it. Fast. Alienating.&lt;/p&gt;

&lt;p&gt;In the prototype, it works differently. Clara reads the document herself - but "lenses" let her emphasize what's most relevant to her task. She highlights sections, builds notes, constructs an argument outline manually. As she works, the AI surfaces what the team calls provocations: critiques, counterarguments, alternative framings. Not autocomplete. Not suggestions to passively accept. Friction, deliberately placed.&lt;/p&gt;

&lt;p&gt;The draft gets generated from Clara's outline - her decisions, her structure, her judgment calls. The AI text is there, but it's rooted in real cognitive work she actually did. When a provocation appears that she disagrees with, she dismisses it confidently. That's the point: understanding your work well enough to reject a critique means the critique still did its job.&lt;/p&gt;

&lt;p&gt;One detail worth noticing: there's no chat box anywhere in the interface. Clara never has a conversation with AI. She works, and the system assists her silently, without pretending to be a colleague.&lt;/p&gt;

&lt;p&gt;The underlying design principles are simple enough to state: preserve material engagement (make people read and decide, not just review), offer productive resistance (AI should push back, not comply), and scaffold metacognition (prompt people to think about their own thinking). These aren't technically complex ideas. They're just the opposite of what most AI products are optimized for.&lt;/p&gt;

&lt;p&gt;Early research results from tools designed this way are promising. The creativity and critical thinking losses reverse. People work faster and think better. Sarkar calls it "a lunch that pays you to eat it," which is a bit much, but the underlying observation holds.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Question That Doesn't Resolve
&lt;/h2&gt;

&lt;p&gt;Sarkar closes with something worth sitting in. Every time we've invented a tool that extends cognitive capacity - writing, books, maps, the internet - we've asked some version of the same question: if this can do it for us, does it matter that we can't?&lt;/p&gt;

&lt;p&gt;Can maps navigate for us? Does it matter that we lose the ability to navigate ourselves?&lt;/p&gt;

&lt;p&gt;Can AI write for us? Does it matter that we lose the ability to think through a blank page?&lt;/p&gt;

&lt;p&gt;Sarkar thinks the answer is obvious. I think it's obvious too - but "obvious" is doing a lot of work there. Because every generation said the same thing about their version of the question. The tool won. Life went on. Maybe we're fine.&lt;/p&gt;

&lt;p&gt;Or maybe we're not fine, and the degradation is just slow enough that we haven't noticed. Cognitive musculature atrophies quietly. You don't feel it until there's a genuinely hard problem in front of you and something isn't there that used to be.&lt;/p&gt;

&lt;p&gt;What would you rather have: a tool that thinks for you, or a tool that makes you think?&lt;/p&gt;

&lt;p&gt;Most people answer the second one. Most people's behavior already answered the first.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>productivity</category>
      <category>programming</category>
      <category>career</category>
    </item>
    <item>
      <title>Vibe Coding vs a Senior Dev: 5 Prompts, One App Clone</title>
      <dc:creator>Visesh</dc:creator>
      <pubDate>Wed, 22 Apr 2026 16:56:54 +0000</pubDate>
      <link>https://dev.to/visesh/vibe-coding-vs-a-senior-dev-5-prompts-one-app-clone-452j</link>
      <guid>https://dev.to/visesh/vibe-coding-vs-a-senior-dev-5-prompts-one-app-clone-452j</guid>
      <description>&lt;p&gt;There's &lt;a href="https://youtu.be/NnYLzGMk8Tg" rel="noopener noreferrer"&gt;a video on YouTube&lt;/a&gt; where a vibe coder and a senior iOS developer - ten years of experience - both try to clone Granola, a $250M AI meeting notetaker, using only five prompts each. No manual code edits. Just AI tools, strict rules, and everyone watching.&lt;/p&gt;

&lt;p&gt;The vibe coder nearly won.&lt;/p&gt;

&lt;p&gt;I say "nearly" carefully, because the honest answer at the end of the video is that nobody definitively won. They left it to the comments. And that ambiguity is actually the most interesting thing about the whole challenge.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Setup
&lt;/h2&gt;

&lt;p&gt;Riley (vibe coder) and Vishall (senior iOS dev) were building an app with these features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Voice recording and audio transcription&lt;/li&gt;
&lt;li&gt;Calendar sync - record a meeting, it shows up at the right time slot&lt;/li&gt;
&lt;li&gt;AI-generated summaries after transcription&lt;/li&gt;
&lt;li&gt;Folders for organizing recordings&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Snake-draft style, ten total prompts split between them. No touching the code directly. Only the AI gets to write.&lt;/p&gt;

&lt;p&gt;Vishall used Claude Code in terminal alongside Xcode, building in native Swift. Riley used Vibe Code, a tool built specifically for AI-first mobile development on top of Expo. Both used Claude Opus 4.1.&lt;/p&gt;

&lt;p&gt;The tools were different. The experience levels were very different. The outputs were not that different.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Each Person Understood That the Other Didn't
&lt;/h2&gt;

&lt;p&gt;Vishall knew what he was looking at when Claude Code scaffolded out an architecture with EventKit, AVAudioRecorder, and the Apple Speech framework. He knew why it chose those frameworks. He caught, almost immediately, that Apple's native speech-to-text is worse than OpenAI Whisper - and flagged it on camera, planning to fix it later.&lt;/p&gt;

&lt;p&gt;Riley didn't know EventKit from Event Horizon. But Riley knew something else: prompt strategy.&lt;/p&gt;

&lt;p&gt;From the very first prompt, Riley structured the ask to cover core features (voice, transcription, AI summary, folders) while explicitly deferring calendar: "in the future we'll add calendar - build with that in mind, but not now." Vishall's first prompt tried to get calendar sync working from day one. Claude Code wrote a build error on the first run.&lt;/p&gt;

&lt;p&gt;Prompt 2, for both of them, was a bug fix. So each effectively had three functional feature prompts, not five.&lt;/p&gt;

&lt;p&gt;This is a pattern in every serious AI coding session: errors eat your budget. The senior dev's knowledge helps partly because it lets you recognize when you've painted yourself into a corner, and partly because it helps you write prompts that don't create corners in the first place. But if you're vibe coding and you defer the hard parts strategically, you can sidestep those corners entirely.&lt;/p&gt;

&lt;p&gt;Or maybe you just get lucky. Hard to say.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Apple Speech Moment
&lt;/h2&gt;

&lt;p&gt;This one is worth sitting with.&lt;/p&gt;

&lt;p&gt;When Vishall entered his first prompt, Claude Code chose Apple's native Speech framework for transcription - not OpenAI Whisper. Vishall knew this was probably worse quality. He said so. He let it ride, because he was already one error and two prompts deep, and switching felt like wasted budget.&lt;/p&gt;

&lt;p&gt;Riley, using Vibe Code on Expo, had Whisper from the start. The AI just picked it.&lt;/p&gt;

&lt;p&gt;There's something interesting there about how tools choose defaults. Claude Code, running in a native Swift context, reached for the most idiomatic Apple option. Vibe Code, built around cross-platform Expo, pulled in OpenAI's API instead. Neither was wrong exactly. But one was objectively better for transcription quality, and it happened entirely by accident - based on which tool you opened.&lt;/p&gt;

&lt;p&gt;The quality showed it. Riley recorded himself for a couple minutes during filming. The transcript came back clean. Vishall's Apple Speech output was, in his own words, "significantly worse."&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fimage.pollinations.ai%2Fprompt%2Ftwo%2520developers%2520in%2520a%2520side%2520by%2520side%2520coding%2520challenge%252C%2520moody%2520studio%2520lighting%252C%2520dual%2520monitors%2520glowing%252C%2520cinematic%2520photorealistic%3Fwidth%3D800%26height%3D450%26nologo%3Dtrue%26seed%3D42751" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fimage.pollinations.ai%2Fprompt%2Ftwo%2520developers%2520in%2520a%2520side%2520by%2520side%2520coding%2520challenge%252C%2520moody%2520studio%2520lighting%252C%2520dual%2520monitors%2520glowing%252C%2520cinematic%2520photorealistic%3Fwidth%3D800%26height%3D450%26nologo%3Dtrue%26seed%3D42751" alt="two developers in a side-by-side coding challenge, moody studio lighting, dual monitors glowing, cinematic photorealistic" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Where the Experience Still Showed
&lt;/h2&gt;

&lt;p&gt;Vishall knew when the derived data cache was the problem. He knew how to add an API key in Xcode's scheme environment variables - not obvious if you've never touched Xcode. He understood, without being told, that EventKit is Apple's native calendar framework and why it matters for iOS.&lt;/p&gt;

&lt;p&gt;When Riley's calendar prompt ran, render errors and sync issues ate a full prompt to untangle. Vishall got calendar working with less friction - not because Claude Code is smarter than Vibe Code, but because Vishall could interpret errors faster and prompt more precisely.&lt;/p&gt;

&lt;p&gt;Actually, that's probably the cleanest description of what experience buys you in an AI coding world: it compresses the diagnosis loop. The AI writes the code. Your job is to read what went wrong, understand it, and craft the next prompt without wasting it.&lt;/p&gt;

&lt;p&gt;Or maybe the job is to avoid wrong turns entirely, like Riley did by deferring calendar. Both approaches worked. They just reflect different mental models.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Apps at the End
&lt;/h2&gt;

&lt;p&gt;Vishall's app - "Serial," riffing on the Granola clone theme - ended up clean and professional. Solid calendar integration with a today-view and a peek at the coming week. Multiple recordings per meeting. Folders that saved correctly after one dedicated fix prompt. The kind of thing you'd open in a business meeting without second-guessing yourself.&lt;/p&gt;

&lt;p&gt;Riley's - "Oatmeal" - had a gradient animation on the recording screen that was genuinely more fun. Colorful. The kind of thing you'd demo at a hackathon and someone says "oh, this is actually nice." Calendar integration had some edge-case render errors, but the core loop worked.&lt;/p&gt;

&lt;p&gt;Neither app was close to Granola's actual product. Both apps were remarkable for five prompts.&lt;/p&gt;

&lt;p&gt;The honest read: Vishall got more features working reliably. Riley's felt more like something a consumer might enjoy. The video ended with a vote. The comments will decide.&lt;/p&gt;




&lt;h2&gt;
  
  
  What the Vibe Coding Debate Gets Wrong
&lt;/h2&gt;

&lt;p&gt;Here's what the vibe coding conversation usually misses: this wasn't really a test of vibe coding versus traditional development. It was a test of two different prompt strategies, using two different AI tools, in two different frameworks.&lt;/p&gt;

&lt;p&gt;Vishall's edge wasn't his iOS knowledge per se. It was that his iOS knowledge made him a better prompter for this specific domain. He could describe errors precisely. He knew which framework names to drop. He could tell when something was good enough to ship and when it needed a fix.&lt;/p&gt;

&lt;p&gt;That's not a transferable advantage. Put Vishall in a React Native project, or a backend Rust codebase, and his iOS expertise doesn't follow him. The AI does roughly the same job regardless of who's typing.&lt;/p&gt;

&lt;p&gt;So maybe the real question isn't whether vibe coders can beat experienced developers. Maybe it's: what does experience actually mean when the machine writes the code?&lt;/p&gt;

&lt;p&gt;Neither Vishall nor Riley had a clean answer at the end of the video. The comments section probably won't settle it either.&lt;/p&gt;

&lt;p&gt;But watching two people ship working apps in five prompts - one with a decade of iOS experience, one with none - makes the question feel a lot more urgent than it did a year ago.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>programming</category>
      <category>webdev</category>
      <category>career</category>
    </item>
    <item>
      <title>Why 80% of Programmers Are Unhappy (It's Not the Money)</title>
      <dc:creator>Visesh</dc:creator>
      <pubDate>Wed, 15 Apr 2026 21:21:25 +0000</pubDate>
      <link>https://dev.to/visesh/why-80-of-programmers-are-unhappy-its-not-the-money-jb3</link>
      <guid>https://dev.to/visesh/why-80-of-programmers-are-unhappy-its-not-the-money-jb3</guid>
      <description>&lt;p&gt;80% of professional developers aren't happy at work.&lt;/p&gt;

&lt;p&gt;That's from the 2024 Stack Overflow survey - 65,000 responses from working programmers worldwide. One in three actively hates the job. Nearly half are just plowing through: not miserable enough to quit, not engaged enough to care. And only 20% are genuinely happy - a number the survey described, with some dark humor, as "those with delusions of happiness."&lt;/p&gt;

&lt;p&gt;I found this genuinely shocking. Programming is one of those fields people actually choose. The pay is competitive, the work is mentally interesting, remote options are real. Demand isn't going away. And still - four out of five people aren't happy? That failure rate would raise alarms in any industry. In tech, where we build the things everyone else uses, it says something.&lt;/p&gt;

&lt;p&gt;The obvious explanations don't hold up. Let's look at what's actually happening.&lt;/p&gt;




&lt;h2&gt;
  
  
  Programmer Job Satisfaction Doesn't Scale With Salary
&lt;/h2&gt;

&lt;p&gt;The assumption is: developers are well paid, therefore happy. Except "well paid" is doing a lot of heavy lifting in that sentence.&lt;/p&gt;

&lt;p&gt;PHP powers roughly a third of the internet. WordPress alone runs 43% of all websites. The footprint is staggering. And yet PHP developers sit near the bottom of the Stack Overflow salary rankings - median around $49k, down from the year before. The "learn to code and get a Lambo" story is real for exactly one category of person: entrepreneurs who also happen to code. For the developer maintaining a legacy Magento store for a mid-market retailer, it's a different picture.&lt;/p&gt;

&lt;p&gt;The pattern in the data is actually pretty logical. Specialized, lower-level languages - Rust, Erlang, Go - pay better because fewer people know them and the stakes are higher. Supply and demand. Not magic, not meritocracy, just scarcity.&lt;/p&gt;

&lt;p&gt;Then there's geography. A $120k salary in San Francisco is comfortable middle class, not wealth. The Stack Overflow data showed higher depression rates in the U.S. than Southeast Asia, despite the salary gap. Once you're past a basic level of financial security, more money stops moving the needle on happiness in any meaningful way. Developers are running this experiment at scale and getting the same results as everyone else.&lt;/p&gt;

&lt;p&gt;If you're chasing programmer job satisfaction through salary optimization, you're pulling the wrong lever.&lt;/p&gt;




&lt;h2&gt;
  
  
  Technical Debt Is the Real Energy Drain
&lt;/h2&gt;

&lt;p&gt;Ask any experienced developer what makes the job feel bad and you'll reach technical debt within 30 seconds. Not because it's the most dramatic problem, but because it's the most constant one.&lt;/p&gt;

&lt;p&gt;Technical debt is the accumulated cost of shortcuts. Code written fast instead of right. Features stacked on features until no one's sure what's load-bearing anymore. Run &lt;code&gt;git blame&lt;/code&gt; on a broken function and the commit message pulls up the name of someone who left the company three years ago. That's the job. That's a Tuesday.&lt;/p&gt;

&lt;p&gt;The problem compounds over time. Every new feature on a messy codebase takes longer than the last - more time understanding the existing tangle, more caution about what might break in a completely unrelated place. Velocity slows. Timelines slip. Leadership asks why the team is slower when there are more people than last year.&lt;/p&gt;

&lt;p&gt;Nobody is the villain here - the incentives are. When every sprint is measured by tickets closed and features shipped, nobody gets credit for the refactor that makes the next six months 30% faster. Clean code takes longer in the short term, and there's always another deadline. So the debt compounds. The developers who care the most get demoralized the fastest, because they can see exactly what needs to happen and the system won't slow down long enough to let them fix it.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Pressure Cascade (Which Ends at Your Keyboard)
&lt;/h2&gt;

&lt;p&gt;Here's the structural piece most developer wellness conversations skip entirely.&lt;/p&gt;

&lt;p&gt;Software engineers sit at the end of a very long pressure chain. Investors need returns, so CEOs need revenue, so VPs need product shipped, so engineering managers need roadmaps hit, so tech leads need sprints closed - and all of that eventually arrives as unrealistic timelines and last-minute requirement changes. Nobody at any level is necessarily being unreasonable. They're all responding to real pressure from above. But pressure has to terminate somewhere, and it terminates at the developer.&lt;/p&gt;

&lt;p&gt;The result is predictable: code gets written fast, shortcuts get taken, technical debt accumulates, velocity slows, pressure increases. It's a loop, and the loop doesn't have a natural exit.&lt;/p&gt;

&lt;p&gt;High turnover is the pressure valve. The reliable way to get a real salary increase is switching jobs, not staying and performing well. So developers leave - for the raise, for the new culture, for the hope that the next company has figured this out. Sometimes it has. Often it's just a different version of the same loop with better cold brew on tap.&lt;/p&gt;

&lt;p&gt;One thing nobody mentions when talking about all this: the physical cost. Sitting for 8+ hours daily is genuinely bad for your health - cardiovascular risk, metabolic effects, and (relevant here) depression. Exercise is one of the best interventions for depression that exists. It's free. Most developers who know this still don't do it consistently enough. Worth naming.&lt;/p&gt;




&lt;h2&gt;
  
  
  What the 20% Are Actually Doing
&lt;/h2&gt;

&lt;p&gt;Here's what most articles in this space get wrong: they treat the problem as an HR issue with HR solutions. Better benefits, mental health days, mandatory offsites. These aren't worthless, but they're treating symptoms while the conditions stay the same.&lt;/p&gt;

&lt;p&gt;The developers who seem genuinely satisfied tend to share a few things, and none of them show up in a benefits package.&lt;/p&gt;

&lt;p&gt;They have real autonomy over &lt;em&gt;how&lt;/em&gt; they work. Not just which tickets to pick up - but the standing to push back on bad technical decisions, to make the case for the refactor, to say "this timeline doesn't work" without it being career-limiting.&lt;/p&gt;

&lt;p&gt;They can see the impact of what they build. Not necessarily a world-changing product - just a feedback loop. "I built this, and that happened as a result." That connection matters more than the work being glamorous.&lt;/p&gt;

&lt;p&gt;They've found some version of craft within the constraints. A clean function inside a messy file. A test that catches a production bug before it ships. Small, but real. That's not cope - it's the thing that keeps skilled people from burning out entirely.&lt;/p&gt;




&lt;p&gt;The 20% aren't naive. They know about the debt, the pressure, the meetings. They're not more talented or more resilient by nature. They've landed in a configuration - team, project, level of autonomy - that gives them enough of what they need. That's partly luck, and partly active management: asking better questions in interviews, being honest about what you need to do good work, leaving situations that are corroding you before the corrosion becomes permanent.&lt;/p&gt;

&lt;p&gt;The 80% figure isn't a verdict on the profession. It's a baseline. Baselines can be worked with.&lt;/p&gt;

&lt;p&gt;If you could change one thing about how you work - not your salary, not your stack, not your company's valuation - what would it be? And what, specifically, is stopping you from actually pushing for that change?&lt;/p&gt;

</description>
      <category>career</category>
      <category>webdev</category>
      <category>programming</category>
      <category>mentalhealth</category>
    </item>
    <item>
      <title>Why 80% of Programmers Are Unhappy (It's Not the Money)</title>
      <dc:creator>Visesh</dc:creator>
      <pubDate>Wed, 15 Apr 2026 21:07:27 +0000</pubDate>
      <link>https://dev.to/visesh/why-80-of-programmers-are-unhappy-its-not-the-money-23mg</link>
      <guid>https://dev.to/visesh/why-80-of-programmers-are-unhappy-its-not-the-money-23mg</guid>
      <description>&lt;h1&gt;
  
  
  webdev #career #programming #mentalhealth #developerlife
&lt;/h1&gt;

&lt;h1&gt;
  
  
  Why 80% of Programmers Are Unhappy (It's Not the Money)
&lt;/h1&gt;

&lt;p&gt;Nap pods. Catered lunches. Remote work. Stock options. Four-day work weeks at some places. Unlimited PTO that you never actually take because taking it feels like admitting something. And still - according to the 2024 Stack Overflow survey of over 65,000 professional developers - 80% aren't happy at work. One in three actively hates their job. Nearly half are just coasting: not miserable enough to quit, not engaged enough to care.&lt;/p&gt;

&lt;p&gt;That's a stunning failure rate for an industry that bends over backwards to attract talent.&lt;/p&gt;

&lt;p&gt;I remember reading this data and staring at it for a solid minute. I've been writing code since I was a teenager, and I genuinely can't imagine doing anything else. The idea that most of the people in my field are grinding through their days felt like finding out most musicians secretly hate music. So I went digging. And the reasons aren't what you'd expect.&lt;/p&gt;

&lt;p&gt;Turns out the problem isn't the perks, or the lack of them. It's something more structural - and a lot harder to fix with a snack drawer.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Developer Job Satisfaction Myth Starts With Salary
&lt;/h2&gt;

&lt;p&gt;Let's start with the most obvious assumption and get it out of the way: developers are well paid, therefore they should be happy. Except "well paid" is doing a lot of work in that sentence.&lt;/p&gt;

&lt;p&gt;The Stack Overflow data put PHP near the bottom of the salary rankings, with a median around $49k - and that figure dropped from the year before. PHP, by the way, powers roughly a third of the internet. WordPress alone runs 43% of all websites. The scale of PHP's footprint is genuinely difficult to overstate. And yet the developers working in it are making less than many nurses, and the number is trending down.&lt;/p&gt;

&lt;p&gt;The mental image of programmers all pulling in $300k at a FAANG company and buying Teslas is a specific slice of a much wider industry. That slice exists - but it's the exception, not the baseline. For every senior engineer at Google, there are dozens of developers maintaining legacy systems, building internal tools, and supporting apps that will never be on a stage at a keynote.&lt;/p&gt;

&lt;p&gt;There's also the purchasing power problem. A $120k salary in San Francisco is a comfortable middle-class existence, not wealth. The same $120k in Lisbon, Medellin, or Chiang Mai is a completely different life. The survey noted that depression rates were measurably higher in the U.S. than in Southeast Asia, despite higher nominal salaries. Money and happiness aren't on the same axis. Once you're past a threshold of basic financial security, more money produces diminishing returns on wellbeing - and developers are running that experiment at scale.&lt;/p&gt;

&lt;p&gt;The programmers who did get rich from code weren't just developers. They were entrepreneurs who also happened to code. Every PHP millionaire - Zuckerberg, Pieter Levels - built a company. The code was the tool, not the income source. The career path of "write code, get wealthy" is real, but it runs through founding something, not through leveling up your pull request skills.&lt;/p&gt;

&lt;p&gt;Here's what that means practically: if developer job satisfaction is your goal and you're chasing it through salary optimization, you're pulling the wrong lever.&lt;/p&gt;

&lt;h2&gt;
  
  
  Technical Debt Is a Slow Drain on the Soul
&lt;/h2&gt;

&lt;p&gt;Ask any experienced developer what makes their job miserable and you'll get to technical debt within about 30 seconds. Not because it's the flashiest problem, but because it's the most constant one.&lt;/p&gt;

&lt;p&gt;Technical debt is the accumulated cost of shortcuts. Code written fast instead of right. Features layered on top of features until no one is quite sure what's holding everything up. The comment that says &lt;code&gt;// TODO: fix this properly&lt;/code&gt; that's been sitting in the codebase for four years, written by someone whose LinkedIn now says "Founder &amp;amp; CEO." When you run &lt;code&gt;git blame&lt;/code&gt; on a failing line and the commit message pulls up the digital ghost of a developer who left the company during the Obama administration, you feel it viscerally.&lt;/p&gt;

&lt;p&gt;The insidious part is how it compounds. Each new feature added to a messy codebase requires more effort than the last - more time deciphering the existing chaos, more caution about what might break in unexpected ways, more defensive tests around behavior that shouldn't need testing. Velocity slows. Timelines slip. Leadership asks why the team is slower than it was two years ago when there were fewer people. Nobody has a clean answer that fits in a Slack message without a 45-minute context dump attached.&lt;/p&gt;

&lt;p&gt;And the reason technical debt accumulates isn't malice or incompetence. It's incentives. When every sprint is measured by tickets closed and features shipped, nobody gets credit for the refactor that made the next six months 30% faster. The cleanup work is invisible on a roadmap. So it doesn't happen, sprint after sprint, until the thing that was going to take a week to build now takes three weeks because everything is tangled and no one fully understands how the auth system connects to the billing system connects to that one service that was supposed to be temporary in 2021.&lt;/p&gt;

&lt;p&gt;The developers who care the most get demoralized the fastest. You can see what needs to happen. You have a clear picture of how the codebase should be structured. But the machine won't slow down long enough to let you fix it. You're a chef forced to cook every meal in a kitchen that hasn't been cleaned in three years, with mismatched pots, a broken oven, and a manager who keeps asking why the food isn't coming out faster.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Pressure Cascade Nobody Talks About
&lt;/h2&gt;

&lt;p&gt;Here's the structural piece that most "how to improve developer happiness" articles skip right past.&lt;/p&gt;

&lt;p&gt;Software engineers sit at the end of a very long pressure chain. Some entity wants earnings growth, so a CEO has to show revenue, so a VP of Engineering has to ship product, so an Engineering Manager has to hit the roadmap, so a Tech Lead has to close out the sprint, so a developer has to write code - now, fast, today, by Thursday. Each person in that chain is responding to real, genuine pressure from above. Nobody is the villain, exactly. But the pressure has to go somewhere, and it terminates at the developer's keyboard in the form of unrealistic timelines and shifting requirements and that thing where the spec changes on Wednesday and the deadline is still Friday.&lt;/p&gt;

&lt;p&gt;The result is predictable: code gets written under pressure, shortcuts get taken, technical debt accumulates, and we're back to the previous section. It's a loop. The pressure produces the mess, the mess slows everything down, the slowness produces more pressure.&lt;/p&gt;

&lt;p&gt;High turnover is the pressure valve for this system. The reliable strategy for a meaningful salary increase is switching jobs, not performing well in place. So developers leave - for the raise, for the new culture, for the hope that maybe the next place has figured it out. Sometimes it has. More often it's a different version of the same structural problems with nicer office chairs. The underlying economics don't change much because the incentive structures don't change.&lt;/p&gt;

&lt;p&gt;And when things go wrong - when a feature ships late or a production system goes down at midnight - developers absorb the consequences while the context that created the failure (the rushed timeline, the changing requirements, the team that was two engineers short for six months) gets quietly forgotten in the post-mortem.&lt;/p&gt;

&lt;h2&gt;
  
  
  Meetings Are Killing Developer Job Satisfaction
&lt;/h2&gt;

&lt;p&gt;There's a concept in psychology called flow - the state of complete absorption in a task that's appropriately challenging. Athletes call it being in the zone. It's where your best work happens. And research consistently puts the onramp at around 20-30 minutes of uninterrupted, focused work.&lt;/p&gt;

&lt;p&gt;Meetings are the natural enemy of flow.&lt;/p&gt;

&lt;p&gt;Not because meetings are inherently useless. Sometimes they're necessary, occasionally even energizing. But a two-hour coding block interrupted by a 30-minute standup isn't a two-hour session with a break. It's two separate sessions, neither of which reaches the depth where difficult problems get solved. You're warming up twice. You're never going full speed.&lt;/p&gt;

&lt;p&gt;Multiply that across a typical week at a mid-size tech company. Standup. Sprint planning. Backlog grooming. A design review that could have been a Notion doc. A sync about the sync. A pre-meeting to align on what to say in the actual meeting. Suddenly you're blocking out 2-3 hour windows for "deep work" like it's a luxury you have to schedule, and you're canceling them when something "urgent" comes up - which is every other day.&lt;/p&gt;

&lt;p&gt;The Stack Overflow data captured this exactly. Bureaucracy and feeling like your work doesn't matter ranked among the top complaints. Developers who can't get into flow start to feel like they're never doing good work - because they often aren't. Not from lack of capability, but because the environment keeps pulling them out of depth before they get there.&lt;/p&gt;

&lt;p&gt;Viktor Frankl, the psychiatrist and Holocaust survivor, showed that humans can find meaning and endure almost anything, as long as that suffering has purpose. What kills you isn't the hardship. It's the meaninglessness. A developer solving a genuinely hard problem in a well-designed system can feel that sense of purpose. A developer in their fourth video call of the day, trying to remember why they went into tech, has a much harder time accessing it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Layoffs and the Thing Nobody Says About Age
&lt;/h2&gt;

&lt;p&gt;The COVID boom pulled several years of tech hiring forward. Companies scaled headcount fast, products proliferated, "software engineer" became one of the most stable and desirable careers you could have. The cultural signal was clear: learn to code, get paid well, be recession-proof.&lt;/p&gt;

&lt;p&gt;Then came the corrections. 2022. 2023. 2024. Rounds of layoffs across companies that had seemed untouchable - Google, Meta, Amazon, Salesforce, Spotify. Teams that had been called essential were cut in afternoon calendar invites. The social contract ("perform well, keep your job") turned out to have fine print nobody had read carefully.&lt;/p&gt;

&lt;p&gt;The psychological fallout was significant. For developers who entered during the boom, this was the first time the career felt genuinely precarious. And the experience of being laid off - or of watching colleagues get laid off - doesn't just affect your bank account. It affects how you think about the work. It makes it harder to invest emotionally. It makes it harder to care about the codebase when you know the codebase might not care about you in 18 months.&lt;/p&gt;

&lt;p&gt;Age discrimination in tech is also real, underdiscussed, and worth naming directly. The developer community talks openly about feeling obsolete by the mid-thirties. Of watching hiring managers default to junior candidates who'll work longer hours for less money and won't push back on bad technical decisions with 12 years of experience behind the objection. This isn't universal, but it's common enough to be a pattern, and it shapes how developers think about the career arc long before they hit 35.&lt;/p&gt;

&lt;p&gt;There's also the physical dimension that gets weirdly ignored in these conversations. Sitting for eight-plus hours a day is empirically bad for you. The research is unambiguous: sedentary desk work increases risk for cardiovascular disease, metabolic disorders, and depression. Exercise is one of the most effective interventions for depression that exists, and it's free, and most developers who know this - who can quote the studies - still don't do it consistently enough. That's a separate conversation, but it's a material contributor to the 80% number.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the 20% Are Actually Doing Differently
&lt;/h2&gt;

&lt;p&gt;Here's what most articles in this space get wrong: they treat developer happiness as an HR problem with an HR solution. Better benefits. More flexibility. Mandatory mental health days. Snack drawers. Free therapy subscriptions. These aren't nothing, but they're addressing symptoms while the underlying conditions stay in place.&lt;/p&gt;

&lt;p&gt;The developers who seem genuinely happy - and I've met enough of them to notice a pattern - tend to share a few things that have nothing to do with their salary band or their company's catering budget.&lt;/p&gt;

&lt;p&gt;They have meaningful autonomy over how they work. Not necessarily what they work on - that's often constrained by the business - but how. They can push back on bad technical decisions. They can advocate for the refactor. They're not just execution machines translating tickets into commits.&lt;/p&gt;

&lt;p&gt;They can see the impact of their work. Not necessarily world-changing products, but something where there's a feedback loop between the code they write and an outcome they can point at. "I built this, and it did that" is more sustaining over the long run than "I closed 47 tickets last quarter."&lt;/p&gt;

&lt;p&gt;They've found some version of craft within the constraints. Even in a messy codebase, even under deadline pressure, there's usually space to take pride in the small thing done well. The clean function inside the ugly file. The test that catches a production bug before it ships. The API that's a pleasure to use because someone cared about the ergonomics. This is a coping mechanism, but it's a real one, and it compounds.&lt;/p&gt;

&lt;p&gt;The trap most developers fall into - and it's directly related to developer job satisfaction numbers - is working harder to feel better about the job. Taking on more to prove value. Treating systemic problems as personal performance problems. That pattern tends to make things worse, not better. If it sounds familiar, &lt;a href="//the-developer-burnout-trap-why-working-harder-makes-it-worse.md"&gt;The Developer Burnout Trap: Why Working Harder Makes It Worse&lt;/a&gt; is worth reading before you burn another weekend on a side project that's supposed to fix your relationship with your day job.&lt;/p&gt;

&lt;p&gt;And for what it's worth: the developers using AI coding tools to paper over bad codebases rather than actually address the underlying debt are doing themselves no favors either. Shipping faster through a broken system is usually just building the next layer of the problem. &lt;a href="//why-most-developers-are-using-ai-coding-tools-wrong.md"&gt;Why Most Developers Are Using AI Coding Tools Wrong&lt;/a&gt; gets into why the "move fast with AI" playbook often backfires in exactly the context where the codebase is already struggling.&lt;/p&gt;

&lt;h2&gt;
  
  
  The 80% Isn't Destiny
&lt;/h2&gt;

&lt;p&gt;The survey framed happy developers as "those with delusions of happiness" - a darkly funny line that landed. But I'm not sure it's accurate.&lt;/p&gt;

&lt;p&gt;The 20% aren't naive about the job's frustrations. They know about the debt, the pressure cascade, the meeting drag. They're not more talented or more stoic in some innate way. They've usually landed in a configuration - team, project, autonomy level, mission - that gives them enough of what they need to keep the engine running. That configuration is partly luck and partly active management. Luck because some companies and teams genuinely are better than others, and finding them takes trial and error. Active management because you can optimize for it: asking better questions in interviews, being honest about what you need to do good work, leaving situations that are corroding you before the corrosion is irreversible.&lt;/p&gt;

&lt;p&gt;Frankl wrote that "out of suffering have emerged the strongest souls; the most massive characters are seared with scars." That's not an instruction to accept bad conditions. It's a reminder that meaning can be found within constraints, and that the constraints themselves don't determine the outcome.&lt;/p&gt;

&lt;p&gt;The 80% figure is a baseline, not a verdict. But getting off that baseline requires understanding the real problem first - and the real problem isn't that developers need better nap pods.&lt;/p&gt;

&lt;p&gt;If you could change one thing about how you work - not your salary, not your tech stack, not your company's valuation - what would it be? And more importantly: what's actually stopping you from pushing for that change?&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>career</category>
      <category>programming</category>
      <category>mentalhealth</category>
    </item>
  </channel>
</rss>
