<?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: OdaloV</title>
    <description>The latest articles on DEV Community by OdaloV (@odalov).</description>
    <link>https://dev.to/odalov</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%2F3720244%2Fdbb171f4-1cc5-4572-b672-6e7e7da7cd84.png</url>
      <title>DEV Community: OdaloV</title>
      <link>https://dev.to/odalov</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/odalov"/>
    <language>en</language>
    <item>
      <title>Digital Hoarding</title>
      <dc:creator>OdaloV</dc:creator>
      <pubDate>Sat, 11 Apr 2026 15:52:47 +0000</pubDate>
      <link>https://dev.to/odalov/digital-hoarding-3p5h</link>
      <guid>https://dev.to/odalov/digital-hoarding-3p5h</guid>
      <description>&lt;p&gt;&lt;em&gt;A personal journey through 4GB of laptop clutter and over 800 phone screenshots I'll never look at again&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The discovery
&lt;/h2&gt;

&lt;p&gt;During some late-night reading, I stumbled across a 2025 paper by Liu &amp;amp; Liu in &lt;em&gt;Frontiers in Psychology&lt;/em&gt; on something called &lt;strong&gt;digital hoarding&lt;/strong&gt;.&lt;br&gt;
I'd never heard the term before.&lt;br&gt;
But as I kept reading, I felt Called out.&lt;/p&gt;

&lt;p&gt;They defined it as: &lt;em&gt;"The compulsive accumulation of digital files to the point of distress and disorganization."&lt;/em&gt;&lt;br&gt;
And I thought to myself ,that's not only a research subject. that's my laptop,and probably my phone too.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;On my laptop:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;~/Downloads&lt;/code&gt; – 47 PDFs, 12 driver installers, 3 tutorials I never finished. Oldest: 2019&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;~/Desktop&lt;/code&gt; – Screenshots of error messages I Googled and fixed. Oldest: 2021&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;~/code/experiments&lt;/code&gt; – 23 half-built projects, 18 with broken dependencies. Oldest: 2020&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;~/Documents/old-work&lt;/code&gt; – Repos from two jobs ago. Two jobs ago! Oldest: 2018&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;On my phone:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Screenshots folder – 1,112 images. Error messages, tweets, "read later" articles, memes.&lt;/li&gt;
&lt;li&gt;Photos (duplicates) – The same picture saved 3-4 times.&lt;/li&gt;
&lt;li&gt;Old app caches – 2.1 GB from apps I haven't opened in months.&lt;/li&gt;
&lt;li&gt;Voice notes – 47 recordings. "Reminder to self" from 2022 to 2026.&lt;/li&gt;
&lt;li&gt;WhatsApp images – From groups I left in 2023.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I was a digital hoarder with a terminal and a smartphone addiction.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Liu &amp;amp; Liu taught me
&lt;/h2&gt;

&lt;p&gt;The paper described digital hoarding as a &lt;strong&gt;"double-edged sword."&lt;/strong&gt;&lt;br&gt;
On one edge: It feels responsible. "I might need this someday." "Better to save it than lose it."&lt;br&gt;
On the other edge: It's actively hurting me — on every device I own.&lt;br&gt;
They listed consequences that hit too close to home:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Cognitive load&lt;/strong&gt; – Every extra file is a tiny decision I don't make&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Decision fatigue&lt;/strong&gt; – Which of these 14 project folders is the real one?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Anxiety&lt;/strong&gt; – "What if I delete something important?"&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Battery drain&lt;/strong&gt; – Your phone constantly indexing thousands of unused files&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And the part that really got me: &lt;em&gt;"A protective behavior that eventually becomes a burden."&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The hidden cost never measured
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Before cleanup:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Storage used: 10 GB&lt;/li&gt;
&lt;li&gt;Boot time: 48 seconds&lt;/li&gt;
&lt;li&gt;Search time: 6-8 seconds&lt;/li&gt;
&lt;li&gt;Battery life: ~6 hours&lt;/li&gt;
&lt;li&gt;Backup time: 45 minutes&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;After deleting 500+ old files and 2,000+ screenshots:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Storage used: 8 GB (down 2 GB)&lt;/li&gt;
&lt;li&gt;Boot time: 31 seconds (down 35%)&lt;/li&gt;
&lt;li&gt;Search time: 1-2 seconds (down 75%)&lt;/li&gt;
&lt;li&gt;Battery life: ~8 hours (up 33%)&lt;/li&gt;
&lt;li&gt;Backup time: 12 minutes (down 73%)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;No hardware upgrade. No factory reset. Just… deleting things.&lt;/p&gt;




&lt;h2&gt;
  
  
  The developer-specific hoarding patterns
&lt;/h2&gt;

&lt;p&gt;Liu &amp;amp; Liu didn't study developers specifically. But I noticed patterns unique to our craft — and how they spill onto our phones.&lt;/p&gt;

&lt;h3&gt;
  
  
  1: The tutorial graveyard
&lt;/h3&gt;

&lt;p&gt;We start a tutorial. Clone the repo. Follow along for 30 minutes. Get distracted. Never finish.&lt;br&gt;
But we keep the folder. &lt;em&gt;Just in case.&lt;/em&gt;&lt;br&gt;
&lt;strong&gt;My count:&lt;/strong&gt; 23 unfinished tutorial projects. 18 using packages that are now deprecated.&lt;/p&gt;

&lt;h3&gt;
  
  
  2: The error screenshot museum
&lt;/h3&gt;

&lt;p&gt;Something breaks. We screenshot the error on our laptop.  Then we Google it. Fix it. Feel proud.&lt;br&gt;
But we never delete some of the screenshots.&lt;br&gt;
&lt;strong&gt;My count:&lt;/strong&gt; 110 laptop screenshots + 1,110 phone screenshots. I will never look at 99% of them again.&lt;/p&gt;

&lt;h3&gt;
  
  
  3: I'll refactor this someday
&lt;/h3&gt;

&lt;p&gt;Old projects. Old code. Old mistakes. We keep them like trophies.&lt;br&gt;
&lt;strong&gt;My count:&lt;/strong&gt; 4GB of code I haven't touched in over two years.&lt;/p&gt;

&lt;h3&gt;
  
  
  4: The screenshot spiral
&lt;/h3&gt;

&lt;p&gt;See something interesting? Screenshot. Want to remember a tweet? Screenshot. Need to save a receipt? Screenshot.&lt;br&gt;
Then never organize them. Never look at them. Never delete them.&lt;br&gt;
&lt;strong&gt;My count:&lt;/strong&gt; 1,112 screenshots. I remember taking maybe 200 of them.&lt;/p&gt;

&lt;h3&gt;
  
  
  5: The "I'll clean this later" cache (phone)
&lt;/h3&gt;

&lt;p&gt;Apps cache images, videos, and files. We ignore it. It grows. We run out of storage. &lt;br&gt;
&lt;strong&gt;My count:&lt;/strong&gt; 2 GB of "System Data" — a black hole of forgotten files.&lt;/p&gt;




&lt;h4&gt;
  
  
  Liu &amp;amp; Liu ended their paper with a question:
&lt;/h4&gt;

&lt;p&gt;&lt;em&gt;"How do we design systems that support selective retention rather than indiscriminate accumulation?"&lt;/em&gt;&lt;br&gt;
I don't have an answer. But for me,I'll start small. One old file. One screenshot. One deleted folder at a time.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>productivity</category>
      <category>discuss</category>
    </item>
    <item>
      <title>Progressive Web Apps (PWAs): The Best of Both Worlds</title>
      <dc:creator>OdaloV</dc:creator>
      <pubDate>Sun, 01 Mar 2026 12:38:02 +0000</pubDate>
      <link>https://dev.to/odalov/progressive-web-apps-pwas-the-best-of-both-worlds-49gl</link>
      <guid>https://dev.to/odalov/progressive-web-apps-pwas-the-best-of-both-worlds-49gl</guid>
      <description>&lt;h2&gt;
  
  
  What is PWA?
&lt;/h2&gt;

&lt;p&gt;Progressive Web Apps are regular websites built with standard web technologies such as HTML, CSS and JavaScript, that progressively enhance to deliver an app-like experience. They work in any browser but can be installed on your device like a native app. Think of them as websites that put on an app costume.&lt;/p&gt;

&lt;h2&gt;
  
  
  Core Technologies
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;HTTPS - Secure connection required for all modern web capabilities.&lt;/li&gt;
&lt;li&gt;Web App Manifest - A JSON file defining your app's name, icons, colors, and launch behavior.&lt;/li&gt;
&lt;li&gt;Service Workers - Background scripts that enable offline functionality, caching, and push notifications.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Why PWAs Matter
&lt;/h2&gt;

&lt;h3&gt;
  
  
  For Users
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;    Install with one click - No app stores, no approvals, no fees.&lt;/li&gt;
&lt;li&gt;    Works offline - Access content even without internet.&lt;/li&gt;
&lt;li&gt;    Lightweight &lt;/li&gt;
&lt;li&gt;    Cross-platform - Same app works on any device with a browser.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  For Developers
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt; Single codebase - One app for all platforms instead of separate iOS/Android builds.&lt;/li&gt;
&lt;li&gt;    Lower costs - PWA development ranges from $15,000-$150,000 versus $50,000+ per native platform.&lt;/li&gt;
&lt;li&gt;    No app store gatekeepers - Deploy updates instantly without waiting for approval.&lt;/li&gt;
&lt;li&gt;    SEO-friendly - PWAs are indexable by search engines unlike native apps.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Real-World Example
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Microsoft:
&lt;/h3&gt;

&lt;p&gt;Microsoft took a data-driven approach to PWAs, automatically identifying 1.5 million progressive web apps for inclusion in the Windows Store. This discovery opened up a massive ecosystem of applications that could run natively on Windows without any additional development work.&lt;/p&gt;

&lt;p&gt;The impact was twofold:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;  Users gained access to millions of apps without waiting for developers to build Windows-specific versions&lt;/li&gt;
&lt;li&gt;    Developers saw their apps appear in the Windows Store automatically—no extra effort required&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Microsoft's embrace of PWAs validated that the technology wasn't just for small projects—it was a legitimate distribution channel for the world's largest operating system.&lt;/p&gt;

&lt;h2&gt;
  
  
  When to Choose PWA
&lt;/h2&gt;

&lt;h3&gt;
  
  
  PWAs are ideal for :
&lt;/h3&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;E-commerce - Higher conversions, better mobile experience.

Content-driven apps - News, blogs, media.

Businesses with limited budget - One app for all platforms.

Emerging markets - Works on slow connections.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;The web is evolving, and PWAs are leading the charge toward a future where the line between websites and apps disappears entirely.&lt;/p&gt;

</description>
      <category>pwa</category>
      <category>javascript</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Agentic-AI :Simple tools to autonomous partners</title>
      <dc:creator>OdaloV</dc:creator>
      <pubDate>Mon, 02 Feb 2026 09:26:32 +0000</pubDate>
      <link>https://dev.to/odalov/agentic-ai-simple-tools-to-autonomous-partners-f99</link>
      <guid>https://dev.to/odalov/agentic-ai-simple-tools-to-autonomous-partners-f99</guid>
      <description>&lt;p&gt;If you have been following AI development,then  you've seen the shift, from ChatGPT answering questions to Devin writing entire codebases. From simple chatbots to systems that plan, execute, and adapt.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Makes an AI Agentic?
&lt;/h2&gt;

&lt;p&gt;Agentic AI is about ,agency,the capacity to act independently toward goals. While a traditional AI model generates text based on patterns, an AI agent:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Sets and pursues goals&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Breaks problems into steps&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Uses tools to interact with the world&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Learns from feedback&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Adapts its approach when stuck&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;It's like moving from a &lt;strong&gt;calculator&lt;/strong&gt;;executes commands, to a &lt;strong&gt;mathematician&lt;/strong&gt;;solves problems using tools and reasoning.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Fundamental Loop: Perception → Reasoning → Action
&lt;/h2&gt;

&lt;p&gt;The simplest theoretical model of an AI agent is the &lt;strong&gt;Perception-Reasoning-Action cycle&lt;/strong&gt;:&lt;br&gt;
&lt;strong&gt;In practice with LLMs, this becomes the ReAct pattern&lt;/strong&gt; (Reason + Act):&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    python

    # How an AI agent thinks and acts
    def agent_loop(objective, tools, memory):
    while not objective.achieved():
    # 1. PERCEPTION: Look around
    observation = perceive_environment()

    # 2. REASONING: Think about next step
    thought = llm_reason(objective, observation, memory)

    # 3. ACTION: Do something with tools
    action = choose_action(thought, tools)
    result = execute_action(action)

    # 4. UPDATE: Learn and continue
    memory.update(thought, action, result)

return "Task completed"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Breaking It Down with Fast Food &lt;/p&gt;

&lt;p&gt;Let's say you're craving KFC and tell an AI agent: "Get me KFC for dinner"&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Old-School AI (Traditional Chatbot)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Would give you instructions:&lt;/p&gt;

&lt;p&gt;Go to the KFC website or use Glovo&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Agentic AI (Autonomous Assistant)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Actually does it for you. Here's how it thinks:&lt;/p&gt;

&lt;p&gt;Agent's Thought Process:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;PERCEIVES:&lt;/p&gt;

&lt;p&gt;Checks your current location&lt;/p&gt;

&lt;p&gt;Remembers you ordered KFC last Tuesday&lt;/p&gt;

&lt;p&gt;Notes you usually ask for extra ketchup&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;REASONS :&lt;/p&gt;

&lt;p&gt;They want KFC. Let me check where they are&lt;/p&gt;

&lt;p&gt;Found 3 KFCs nearby. Which one has the shortest wait time?&lt;/p&gt;

&lt;p&gt;They like the Zinger Burger based on last order.&lt;/p&gt;

&lt;p&gt;Should check for any discounts or offers&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;ACTS :&lt;/p&gt;

&lt;p&gt;Searches for nearby KFC locations&lt;/p&gt;

&lt;p&gt;Checks opening hours and current wait times&lt;/p&gt;

&lt;p&gt;Compares prices and specials&lt;/p&gt;

&lt;p&gt;Places the order via API&lt;/p&gt;

&lt;p&gt;Tracks the delivery in real-time&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;UPDATES :&lt;/p&gt;

&lt;p&gt;Noted: they want extra ketchup. Remember for next time.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The bottom line: The agent doesn't just talk about KFC ,it gets you the actual chicken.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why This Matters&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Agentic AI represents a fundamental shift:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You give goals, not step-by-step instructions&lt;/p&gt;

&lt;p&gt;AI handles complex multi-step processes&lt;/p&gt;

&lt;p&gt;Systems improve through experience&lt;/p&gt;

&lt;p&gt;One agent replaces what used to take multiple tools&lt;/p&gt;

</description>
      <category>ai</category>
      <category>automation</category>
      <category>agents</category>
      <category>python</category>
    </item>
  </channel>
</rss>
