<?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: Dan-J-D</title>
    <description>The latest articles on DEV Community by Dan-J-D (@dan-j-d).</description>
    <link>https://dev.to/dan-j-d</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%2F3983896%2F8b928282-4e25-4428-934f-a0576a8876b1.png</url>
      <title>DEV Community: Dan-J-D</title>
      <link>https://dev.to/dan-j-d</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/dan-j-d"/>
    <language>en</language>
    <item>
      <title>The Only Productivity Hack That Actually Worked for Me</title>
      <dc:creator>Dan-J-D</dc:creator>
      <pubDate>Sun, 14 Jun 2026 12:47:34 +0000</pubDate>
      <link>https://dev.to/dan-j-d/the-only-productivity-hack-that-actually-worked-for-me-4b81</link>
      <guid>https://dev.to/dan-j-d/the-only-productivity-hack-that-actually-worked-for-me-4b81</guid>
      <description>&lt;h1&gt;
  
  
  The Only Productivity Hack That Actually Worked for Me
&lt;/h1&gt;

&lt;p&gt;I've tried every website blocker in existence. They all have the same flaw: one click and they're off. That settings toggle might as well not exist when the urge to procrastinate hits.&lt;/p&gt;

&lt;p&gt;I needed something I couldn't override. So I built the opposite.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Problem
&lt;/h2&gt;

&lt;p&gt;Every blocker follows the same pattern: it blocks, you unblock, you procrastinate. The issue isn't discipline — it's that your future self and your present self want different things. And that future self will happily undo anything you set up.&lt;/p&gt;

&lt;p&gt;What I needed was a system where both selves agreed on the rules upfront and then neither could break them.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Solution
&lt;/h2&gt;

&lt;p&gt;kblocker is a Linux kernel module that hooks into netfilter and drops TCP connections to whatever sites I configure. The key feature isn't the blocking — it's how you turn it off.&lt;/p&gt;

&lt;p&gt;When blocking is enabled, kblocker generates a 128-bit key. With PGP mode, it automatically encrypts that key to people I trust and then erases it from kernel memory. The raw key no longer exists anywhere on my system.&lt;/p&gt;

&lt;p&gt;To disable the blocker, one of those people has to decrypt it and send it back to me.&lt;/p&gt;

&lt;p&gt;I outsourced my willpower.&lt;/p&gt;

&lt;p&gt;When I want to focus, I run:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;kblockerctl &lt;span class="nb"&gt;enable &lt;/span&gt;120
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Two hours of blocked distractions. If I feel the urge to procrastinate, I can't — I'd have to text a friend, explain why, wait for them to decrypt it, and paste the result. By then the urge is gone.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Result
&lt;/h2&gt;

&lt;p&gt;I've gone from losing entire afternoons to YouTube to actually finishing things. The blocker has caught me mid-reflex to type youtube.com more times than I can count.&lt;/p&gt;

&lt;p&gt;It's free if anyone wants it: &lt;a href="https://github.com/Dan-J-D/kblocker" rel="noopener noreferrer"&gt;github.com/Dan-J-D/kblocker&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you keep breaking your own focus tools, this is for you.&lt;/p&gt;

</description>
      <category>linux</category>
      <category>productivity</category>
      <category>kernel</category>
      <category>opensource</category>
    </item>
  </channel>
</rss>
