<?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: Pulla Indira Keerthana</title>
    <description>The latest articles on DEV Community by Pulla Indira Keerthana (@indirakeerthana).</description>
    <link>https://dev.to/indirakeerthana</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3986986%2F42308115-680f-46e9-8f98-6cdf5df16f56.jpg</url>
      <title>DEV Community: Pulla Indira Keerthana</title>
      <link>https://dev.to/indirakeerthana</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/indirakeerthana"/>
    <language>en</language>
    <item>
      <title>What If Your AI Agent Could Remember Why an Invoice Was Resolved?</title>
      <dc:creator>Pulla Indira Keerthana</dc:creator>
      <pubDate>Tue, 29 Sep 2026 13:31:40 +0000</pubDate>
      <link>https://dev.to/indirakeerthana/what-happened-when-i-tested-my-agent-on-messy-invoices-1bnh</link>
      <guid>https://dev.to/indirakeerthana/what-happened-when-i-tested-my-agent-on-messy-invoices-1bnh</guid>
      <description>&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%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvptzyb64gem73nlazc3y.png" 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%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvptzyb64gem73nlazc3y.png" alt=" " width="799" height="311"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frfazcpuy4zehx4fg6ogb.png" 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%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frfazcpuy4zehx4fg6ogb.png" alt=" " width="799" height="362"&gt;&lt;/a&gt;&lt;br&gt;
Accounts Payable systems are already good at telling you that an invoice doesn't match a purchase order.&lt;/p&gt;

&lt;p&gt;The harder question is:&lt;/p&gt;

&lt;p&gt;What actually happened, and have we seen this before?&lt;/p&gt;

&lt;p&gt;An invoice might be ₹55,000 while the purchase order says ₹50,000. A traditional matching system can flag the ₹5,000 difference.&lt;/p&gt;

&lt;p&gt;But someone still has to investigate.&lt;/p&gt;

&lt;p&gt;Was there an approved contract amendment? Was the delivery partial? Has this vendor had the same issue before? Did someone resolve a similar exception differently six months ago?&lt;/p&gt;

&lt;p&gt;That investigation is where a lot of human knowledge gets trapped.&lt;/p&gt;

&lt;p&gt;I built Vaulty — AI Exception Intelligence to explore a different approach:&lt;/p&gt;

&lt;p&gt;Memory guides the investigation. Current evidence decides the outcome.&lt;/p&gt;

&lt;p&gt;Vaulty is an agentic Accounts Payable exception investigation system that investigates invoice cases, recalls organizational experience using Hindsight, verifies that experience against current evidence, proposes a resolution, keeps payment release human-gated, and learns from the outcome.&lt;/p&gt;

&lt;p&gt;The problem isn't matching. It's investigation.&lt;/p&gt;

&lt;p&gt;Most AP workflows already have some form of invoice, purchase order, and receipt matching.&lt;/p&gt;

&lt;p&gt;The problem starts after a mismatch is detected.&lt;/p&gt;

&lt;p&gt;The investigator may need to connect:&lt;/p&gt;

&lt;p&gt;Invoice data&lt;br&gt;
Purchase orders&lt;br&gt;
Receipts&lt;br&gt;
Contracts&lt;br&gt;
Contract amendments&lt;br&gt;
Vendor history&lt;br&gt;
Previous exception resolutions&lt;br&gt;
Previous human decisions&lt;/p&gt;

&lt;p&gt;The information exists, but the reasoning behind previous decisions often disappears once the case is closed.&lt;/p&gt;

&lt;p&gt;So the next similar exception starts almost from scratch.&lt;/p&gt;

&lt;p&gt;Vaulty focuses specifically on that investigation layer.&lt;/p&gt;

&lt;p&gt;How Vaulty works&lt;/p&gt;

&lt;p&gt;The system is organized as a multi-agent workflow.&lt;/p&gt;

&lt;p&gt;There are five main agents:&lt;/p&gt;

&lt;p&gt;Triage Agent&lt;/p&gt;

&lt;p&gt;Triage determines whether the invoice actually needs investigation and identifies the type of issue that may be present.&lt;/p&gt;

&lt;p&gt;Investigator Agent&lt;/p&gt;

&lt;p&gt;The Investigator gathers relevant evidence and forms a hypothesis about what happened.&lt;/p&gt;

&lt;p&gt;It can work with purchase orders, receipts, contracts, vendor history, amendments, and previous resolutions.&lt;/p&gt;

&lt;p&gt;Resolution Agent&lt;/p&gt;

&lt;p&gt;Vaulty doesn't stop at saying:&lt;/p&gt;

&lt;p&gt;"There is a discrepancy."&lt;/p&gt;

&lt;p&gt;It determines what should happen next.&lt;/p&gt;

&lt;p&gt;Depending on the evidence, that can mean clearing the case, requesting clarification, holding payment, or proposing another resolution.&lt;/p&gt;

&lt;p&gt;Orchestrator&lt;/p&gt;

&lt;p&gt;The Orchestrator controls the workflow and maintains the human gate around payment release.&lt;/p&gt;

&lt;p&gt;Reflection Agent&lt;/p&gt;

&lt;p&gt;After a human decision, Reflection turns the outcome into organizational learning that can be used in future investigations.&lt;/p&gt;

&lt;p&gt;The interesting part: Hindsight&lt;/p&gt;

&lt;p&gt;The most important part of Vaulty isn't that it has five agents.&lt;/p&gt;

&lt;p&gt;It's that the agents can learn from previous cases.&lt;/p&gt;

&lt;p&gt;Without memory, the workflow looks like:&lt;/p&gt;

&lt;p&gt;New case&lt;br&gt;
   ↓&lt;br&gt;
Investigate&lt;br&gt;
   ↓&lt;br&gt;
Resolve&lt;br&gt;
   ↓&lt;br&gt;
Done&lt;/p&gt;

&lt;p&gt;The next case starts from scratch.&lt;/p&gt;

&lt;p&gt;With Hindsight, the loop becomes:&lt;/p&gt;

&lt;p&gt;Previous case&lt;br&gt;
      ↓&lt;br&gt;
Human decision&lt;br&gt;
      ↓&lt;br&gt;
Reflection&lt;br&gt;
      ↓&lt;br&gt;
Hindsight&lt;br&gt;
      ↓&lt;br&gt;
New case&lt;br&gt;
      ↓&lt;br&gt;
Recall previous experience&lt;br&gt;
      ↓&lt;br&gt;
Compare with current evidence&lt;br&gt;
      ↓&lt;br&gt;
Adapt investigation&lt;br&gt;
      ↓&lt;br&gt;
Resolve&lt;br&gt;
      ↓&lt;br&gt;
Learn again&lt;/p&gt;

&lt;p&gt;Vaulty uses Hindsight as its organizational memory layer.&lt;/p&gt;

&lt;p&gt;Hindsight on GitHub&lt;/p&gt;

&lt;p&gt;Hindsight documentation&lt;/p&gt;

&lt;p&gt;Memory is not the truth&lt;/p&gt;

&lt;p&gt;This was one of the most important design decisions in Vaulty.&lt;/p&gt;

&lt;p&gt;We didn't want the agent to behave like:&lt;/p&gt;

&lt;p&gt;"I've seen this before, therefore I'll do the same thing again."&lt;/p&gt;

&lt;p&gt;That can be dangerous in financial workflows.&lt;/p&gt;

&lt;p&gt;Instead:&lt;/p&gt;

&lt;p&gt;Memory can guide the investigation, but current evidence decides the outcome.&lt;/p&gt;

&lt;p&gt;For example, imagine Vaulty remembers that a vendor previously had a price increase that was legitimate because an approved contract amendment existed.&lt;/p&gt;

&lt;p&gt;A new invoice from the same vendor arrives with another price increase.&lt;/p&gt;

&lt;p&gt;Vaulty can recall the previous experience.&lt;/p&gt;

&lt;p&gt;But it still checks today's evidence.&lt;/p&gt;

&lt;p&gt;If the current evidence supports the previous lesson:&lt;/p&gt;

&lt;p&gt;Memory: CONFIRMED&lt;/p&gt;

&lt;p&gt;If the current evidence contradicts it:&lt;/p&gt;

&lt;p&gt;Memory: CONTRADICTED BY CURRENT EVIDENCE&lt;/p&gt;

&lt;p&gt;The previous experience doesn't override the current purchase order or contract.&lt;/p&gt;

&lt;p&gt;That distinction is important because organizational memory should provide context, not become an unquestioned rule.&lt;/p&gt;

&lt;p&gt;A concrete example&lt;/p&gt;

&lt;p&gt;Consider a clean invoice.&lt;/p&gt;

&lt;p&gt;Vaulty checks the available evidence:&lt;/p&gt;

&lt;p&gt;Invoice amount       ₹50,000&lt;br&gt;
Purchase order       ₹50,000&lt;br&gt;
Receipt               Matches&lt;br&gt;
Contract              Consistent&lt;/p&gt;

&lt;p&gt;There is no discrepancy.&lt;/p&gt;

&lt;p&gt;Instead of escalating the case unnecessarily, Vaulty can communicate:&lt;/p&gt;

&lt;p&gt;No issues found. The invoice matches the available purchase order and delivery evidence.&lt;/p&gt;

&lt;p&gt;And:&lt;/p&gt;

&lt;p&gt;Everything looks good. You can continue with the payment.&lt;/p&gt;

&lt;p&gt;The human still controls the final payment release.&lt;/p&gt;

&lt;p&gt;Now consider a price mismatch.&lt;/p&gt;

&lt;p&gt;Invoice amount       ₹55,000&lt;br&gt;
Purchase order       ₹50,000&lt;br&gt;
Difference            ₹5,000&lt;/p&gt;

&lt;p&gt;Vaulty doesn't immediately assume that the invoice is wrong.&lt;/p&gt;

&lt;p&gt;It investigates.&lt;/p&gt;

&lt;p&gt;It can look for an amendment, contract terms, receipts, vendor history, and relevant previous cases.&lt;/p&gt;

&lt;p&gt;The result is an evidence-backed recommendation rather than simply a discrepancy flag.&lt;/p&gt;

&lt;p&gt;Human decisions become learning&lt;/p&gt;

&lt;p&gt;Payment release is intentionally human-gated.&lt;/p&gt;

&lt;p&gt;Vaulty can investigate.&lt;/p&gt;

&lt;p&gt;Vaulty can recall.&lt;/p&gt;

&lt;p&gt;Vaulty can reason.&lt;/p&gt;

&lt;p&gt;Vaulty can propose a resolution.&lt;/p&gt;

&lt;p&gt;But the final payment release remains under human control.&lt;/p&gt;

&lt;p&gt;Once the human makes a decision, that outcome becomes part of the learning loop.&lt;/p&gt;

&lt;p&gt;The exact implementation is wrapped inside Vaulty's memory and agent layers, but the important behavior is the loop:&lt;/p&gt;

&lt;p&gt;investigate → decide → learn → remember → investigate better next time.&lt;/p&gt;

&lt;p&gt;What changed after adding memory?&lt;/p&gt;

&lt;p&gt;Before&lt;/p&gt;

&lt;p&gt;A recurring vendor exception would require an investigator to rediscover the context.&lt;/p&gt;

&lt;p&gt;Same vendor&lt;br&gt;
    ↓&lt;br&gt;
New exception&lt;br&gt;
    ↓&lt;br&gt;
Start investigation again&lt;br&gt;
    ↓&lt;br&gt;
Find previous information manually&lt;br&gt;
After&lt;/p&gt;

&lt;p&gt;Vaulty can retrieve relevant organizational experience:&lt;/p&gt;

&lt;p&gt;Same vendor&lt;br&gt;
    ↓&lt;br&gt;
New exception&lt;br&gt;
    ↓&lt;br&gt;
Recall previous experience&lt;br&gt;
    ↓&lt;br&gt;
Verify against current evidence&lt;br&gt;
    ↓&lt;br&gt;
Adapt the recommendation&lt;/p&gt;

&lt;p&gt;The improvement isn't simply that Vaulty stores more information.&lt;/p&gt;

&lt;p&gt;The improvement is that previous decisions can influence how the next investigation is performed.&lt;/p&gt;

&lt;p&gt;That's the behavior we wanted from agent memory.&lt;/p&gt;

&lt;p&gt;Building the application around a single source of truth&lt;/p&gt;

&lt;p&gt;The operational application uses a business repository as the source of truth for cases, invoices, purchase orders, receipts, contracts, amendments, and audit events.&lt;/p&gt;

&lt;p&gt;That matters because a human decision shouldn't only change the button on the screen.&lt;/p&gt;

&lt;p&gt;When someone approves or holds a case, Vaulty updates the persistent case state, records the audit event, updates the operational views, and feeds the outcome back into the learning loop.&lt;/p&gt;

&lt;p&gt;So the application has a state transition rather than a cosmetic UI change:&lt;/p&gt;

&lt;p&gt;AWAITING APPROVAL&lt;br&gt;
        │&lt;br&gt;
        ├── APPROVE ──→ RESOLVED&lt;br&gt;
        │&lt;br&gt;
        └── HOLD ─────→ ON HOLD&lt;/p&gt;

&lt;p&gt;The Case View, Home dashboard, Approvals queue, activity history, and other operational views can then reflect that state.&lt;/p&gt;

&lt;p&gt;Why we kept payment human-gated&lt;/p&gt;

&lt;p&gt;There is a tempting version of this project where an agent investigates an invoice and automatically releases the payment.&lt;/p&gt;

&lt;p&gt;We deliberately didn't build that.&lt;/p&gt;

&lt;p&gt;The agent can automate investigation and reasoning, but payment release remains a human decision.&lt;/p&gt;

&lt;p&gt;That gives Vaulty a clear boundary:&lt;/p&gt;

&lt;p&gt;AI investigates and recommends. Humans control financial commitment.&lt;/p&gt;

&lt;p&gt;This also gives the system a useful audit trail: what evidence was available, what the agent remembered, what it concluded, and what the human ultimately decided.&lt;/p&gt;

&lt;p&gt;What we deliberately didn't build&lt;/p&gt;

&lt;p&gt;Vaulty isn't an OCR platform.&lt;/p&gt;

&lt;p&gt;It isn't another three-way matching engine.&lt;/p&gt;

&lt;p&gt;It isn't a generic AP chatbot.&lt;/p&gt;

&lt;p&gt;It also doesn't depend on a simple hardcoded rule such as:&lt;/p&gt;

&lt;p&gt;if difference &amp;gt; ₹5,000:&lt;br&gt;
    flag_invoice()&lt;/p&gt;

&lt;p&gt;The focus was the investigation layer after the data is available.&lt;/p&gt;

&lt;p&gt;For the prototype, invoice ingestion uses structured simulation data rather than full production-grade PDF/image OCR.&lt;/p&gt;

&lt;p&gt;That was a deliberate scope decision.&lt;/p&gt;

&lt;p&gt;We wanted to spend the build on the harder question:&lt;/p&gt;

&lt;p&gt;Once an exception exists, can an agent investigate it, remember what the organization learned, and use that experience responsibly on the next case?&lt;/p&gt;

&lt;p&gt;What I learned building Vaulty&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Memory is only useful when it changes behavior&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;A memory panel by itself isn't enough.&lt;/p&gt;

&lt;p&gt;The interesting part is when recalled experience changes the investigation or recommendation.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Memory should never blindly override evidence&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Previous experience is valuable context.&lt;/p&gt;

&lt;p&gt;It isn't current truth.&lt;/p&gt;

&lt;p&gt;The current invoice, PO, receipt, contract, and other evidence must still be verified.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Human feedback is valuable data&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;An approval, hold, correction, or resolution isn't just the end of a workflow.&lt;/p&gt;

&lt;p&gt;It can become organizational knowledge for the next case.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Agents need clear responsibilities&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Breaking the workflow into Triage, Investigation, Resolution, Orchestration, and Reflection made it easier to reason about where memory should enter the process and where human control should remain.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The real value of an AI agent can be what it remembers tomorrow&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;A stateless agent can solve a case.&lt;/p&gt;

&lt;p&gt;A memory-enabled agent can potentially make the next case different because of what it learned from the last one.&lt;/p&gt;

&lt;p&gt;What's next?&lt;/p&gt;

&lt;p&gt;A production version of Vaulty could extend the same architecture with:&lt;/p&gt;

&lt;p&gt;Real invoice/PDF ingestion&lt;br&gt;
Enterprise ERP integrations&lt;br&gt;
Stronger audit infrastructure&lt;br&gt;
Production-grade access control&lt;br&gt;
More sophisticated vendor-level organizational memory&lt;br&gt;
More extensive evaluation of memory retrieval and investigation quality&lt;br&gt;
Hybrid deterministic validation combined with agentic investigation&lt;/p&gt;

&lt;p&gt;But the core idea remains the same:&lt;/p&gt;

&lt;p&gt;Investigate. Resolve. Remember.&lt;/p&gt;

&lt;p&gt;Vaulty started from a simple observation: businesses don't just accumulate transactions.&lt;/p&gt;

&lt;p&gt;They accumulate decisions.&lt;/p&gt;

&lt;p&gt;The interesting question is whether an AI system can turn those decisions into useful organizational memory — and then know when that memory should be trusted, when it should be questioned, and when today's evidence should win.&lt;/p&gt;

&lt;p&gt;That's what I built Vaulty to explore.&lt;/p&gt;

&lt;p&gt;Built with&lt;br&gt;
Python&lt;br&gt;
Streamlit&lt;br&gt;
Multi-agent architecture&lt;br&gt;
Groq / LLM reasoning&lt;br&gt;
Hindsight for agent memory&lt;br&gt;
Local business repository and persistent audit state&lt;br&gt;
Learn more&lt;/p&gt;

&lt;p&gt;Hindsight GitHub repository&lt;/p&gt;

&lt;p&gt;Hindsight documentation&lt;/p&gt;

&lt;p&gt;Vectorize — Agent Memory&lt;/p&gt;

&lt;p&gt;Project GitHub: &lt;a href="https://github.com/IndiraKeerthana/Vaulty-AI-Approval-Intelligencce" rel="noopener noreferrer"&gt;https://github.com/IndiraKeerthana/Vaulty-AI-Approval-Intelligencce&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fd9lv4r9epktcec2ztd0e.png" 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%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fd9lv4r9epktcec2ztd0e.png" alt=" " width="799" height="311"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>agents</category>
      <category>ai</category>
      <category>architecture</category>
      <category>llm</category>
    </item>
    <item>
      <title>Is it really important to start DSA early?</title>
      <dc:creator>Pulla Indira Keerthana</dc:creator>
      <pubDate>Fri, 03 Jul 2026 16:24:39 +0000</pubDate>
      <link>https://dev.to/indirakeerthana/is-it-important-to-start-dsa-early-4126</link>
      <guid>https://dev.to/indirakeerthana/is-it-important-to-start-dsa-early-4126</guid>
      <description>&lt;h2&gt;
  
  
  I Keep Restarting DSA. Am I the Only One?
&lt;/h2&gt;

&lt;p&gt;I'm a Computer Science undergraduate, and I have a confession to make: I've started learning Data Structures and Algorithms more times than I can count.&lt;/p&gt;

&lt;p&gt;Every time, the journey looks exactly the same. I begin with arrays, move on to strings, solve a handful of easy problems, get stuck, lose momentum, and eventually stop. A few weeks or months later, I convince myself that this time will be different. And somehow, I end up back at arrays and strings again.&lt;/p&gt;

&lt;p&gt;It's become a cycle that I genuinely don't know how to break.&lt;/p&gt;

&lt;p&gt;The frustrating part is that I don't actually dislike DSA. When I read a problem, I can usually understand what's being asked. Most of the time, I can even think of the right approach or explain the logic to someone else. But the moment I open the editor and start coding, everything seems to disappear. I miss edge cases, my implementation doesn't work the way I imagined, or I get stuck translating the idea in my head into actual code.&lt;/p&gt;

&lt;p&gt;After looking at the solution, I often find myself thinking, &lt;em&gt;"I knew the logic... so why couldn't I write it?"&lt;/em&gt; That's probably the most discouraging feeling I've experienced while learning programming.&lt;/p&gt;

&lt;p&gt;What makes it even harder is looking around at everyone else online.&lt;/p&gt;

&lt;p&gt;You open LinkedIn and see someone celebrating their 1,000th LeetCode problem. YouTube recommends videos promising to teach "Complete DSA in 30 Days." Reddit discussions revolve around Codeforces ratings, competitive programming, and how many questions you should solve before placements. Then you hear that some companies expect candidates to have competitive programming experience, and you start wondering if you've already fallen behind before you've even begun.&lt;/p&gt;

&lt;p&gt;Honestly, one thing I've never fully understood is why competitive programming is considered so important for some companies. I understand that it develops problem-solving skills and algorithmic thinking, but sometimes it feels entirely different. Maybe I'm missing something, and I'd genuinely like to understand that perspective better.&lt;/p&gt;

&lt;p&gt;Another challenge is the sheer number of resources available today. LeetCode, CodeChef, HackerEarth, Striver's A2Z Sheet, YouTube playlists, roadmaps, there are so many excellent resources that choosing one becomes overwhelming. Instead of feeling prepared, I often end up feeling stuck because I'm constantly wondering whether I'm following the "right" path.&lt;/p&gt;

&lt;p&gt;Over time, I've started to realize that my biggest obstacle probably isn't DSA itself. It's the pressure I put on myself. I expect to solve problems without hints. I expect to write perfect code the first time. I expect to make steady progress without struggling. When those expectations aren't met, I convince myself that maybe I'm just not good enough and simply rely on AI.&lt;/p&gt;

&lt;p&gt;But maybe that's not true.&lt;/p&gt;

&lt;p&gt;Maybe understanding a solution and implementing it are two completely different skills. Maybe writing buggy code is part of learning how to write good code. Maybe revisiting arrays for the tenth time doesn't mean I've failed—it just means I'm still building a foundation.&lt;/p&gt;

&lt;p&gt;I'm writing this because I have a feeling I'm not the only one who's experienced this.&lt;/p&gt;

&lt;p&gt;If you've ever restarted DSA multiple times, understood the logic but struggled to implement it, or felt overwhelmed by the endless advice and resources online, I'd love to hear your story.&lt;/p&gt;

&lt;p&gt;More importantly, if you managed to break out of that cycle, what changed?&lt;/p&gt;

&lt;p&gt;I'm not looking for shortcuts anymore. I just want to stop restarting and keep moving forward, one problem at a time.&lt;/p&gt;

</description>
      <category>dsa</category>
      <category>programming</category>
      <category>beginners</category>
      <category>competativeprogramming</category>
    </item>
    <item>
      <title>What Really Happens at Your First Hackathon?</title>
      <dc:creator>Pulla Indira Keerthana</dc:creator>
      <pubDate>Thu, 25 Jun 2026 10:06:08 +0000</pubDate>
      <link>https://dev.to/indirakeerthana/what-really-happens-at-your-first-hackathon-1lh5</link>
      <guid>https://dev.to/indirakeerthana/what-really-happens-at-your-first-hackathon-1lh5</guid>
      <description>&lt;h2&gt;
  
  
  My First Hackathon Was Nothing Like I Expected
&lt;/h2&gt;

&lt;p&gt;It was just one month into my college journey when an announcement came through about the internal selections for &lt;strong&gt;Hack4SDG&lt;/strong&gt;, a hackathon that was going to take place at IIT Hyderabad.&lt;/p&gt;

&lt;p&gt;At first, I almost skipped registering.&lt;/p&gt;

&lt;p&gt;I didn't think I was ready. None of us really knew what a hackathon was like. But my friends and I paused for a moment and thought, &lt;em&gt;"Why not? Let's just give it a try."&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;That one decision started everything.&lt;/p&gt;

&lt;p&gt;We picked a problem statement, brainstormed ideas for a few days, came up with a possible solution, and prepared a presentation for the internal ideathon organized by our college.&lt;/p&gt;

&lt;h3&gt;
  
  
  The First Time I Spoke in Front of Everyone
&lt;/h3&gt;

&lt;p&gt;I had never spoken in front of an audience before.&lt;br&gt;
Seeing all the teams waiting for their turn made me even more nervous. Most of them were seniors, and they seemed far more experienced than us.&lt;br&gt;
I couldn't focus.&lt;br&gt;
My mind kept telling me that everyone knew more than I did.&lt;br&gt;
Then suddenly I thought...&lt;/p&gt;

&lt;p&gt;&lt;em&gt;"I'm just explaining a solution that my team and I worked hard on."&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;As the team leader, I spoke last. I explained why it was important for people to understand the carbon footprints they leave behind and why awareness alone isn't enough unless we take action.&lt;/p&gt;

&lt;p&gt;I wasn't confident because I was good at public speaking.&lt;br&gt;
I was confident because I had done the research.&lt;br&gt;
Once I started talking, everything else disappeared.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Unexpected Excel Sheet
&lt;/h3&gt;

&lt;p&gt;After the presentations, we honestly didn't expect much.&lt;br&gt;
There were so many experienced seniors with amazing ideas that we assumed they would be selected.&lt;br&gt;
While I was on my way home, I received an Excel sheet listing the selected teams. Our team's name was there. That's it.&lt;/p&gt;

&lt;p&gt;We were going to IIT Hyderabad.&lt;br&gt;
My friends and I couldn't believe it.&lt;/p&gt;

&lt;h3&gt;
  
  
  Reality Hit
&lt;/h3&gt;

&lt;p&gt;The excitement lasted only until we realized something.&lt;/p&gt;

&lt;p&gt;We had never participated in a hackathon before. We didn't know any tech stack well enough. We didn't know how people built complete solutions in just 24 hours. We had no experience.&lt;br&gt;
But then again...&lt;/p&gt;

&lt;p&gt;Everyone has to start somewhere.This was our starting point.&lt;/p&gt;

&lt;h3&gt;
  
  
  Walking Into IIT Hyderabad
&lt;/h3&gt;

&lt;p&gt;The day we entered IIT Hyderabad felt magical.&lt;/p&gt;

&lt;p&gt;Hundreds of students from different colleges had gathered with the same goal—to build something meaningful, learn new things, and meet like-minded people.&lt;/p&gt;

&lt;p&gt;The hackathon had three evaluation rounds, one every eight hours.&lt;/p&gt;

&lt;p&gt;We understood the problem statement, planned our work, and even used AI chatbots to help us move faster whenever we got stuck.&lt;/p&gt;

&lt;p&gt;Everything seemed to be going well. Until the first evaluation.&lt;/p&gt;

&lt;h3&gt;
  
  
  Our First Reality Check
&lt;/h3&gt;

&lt;p&gt;We demonstrated what we had built so far. Then we looked around.&lt;br&gt;
Teams with experienced seniors had already developed polished solutions. Some had working hardware. Others already had almost complete applications. We were nowhere close.&lt;/p&gt;

&lt;p&gt;For a few moments, it felt discouraging. But after talking as a team, we decided to stop comparing ourselves. This wasn't our competition. It was our first experience.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Best Part of the Hackathon
&lt;/h3&gt;

&lt;p&gt;Later that night, after dinner, we returned to the lab determined to make the most of the remaining hours.&lt;/p&gt;

&lt;p&gt;That's when we met a group of seniors from another university who were building an IoT-based solution.&lt;/p&gt;

&lt;p&gt;Instead of staying focused only on our own laptops, we walked over and started talking to them.&lt;/p&gt;

&lt;p&gt;They explained their project.&lt;br&gt;
They shared stories about their first hackathon.&lt;br&gt;
They laughed about all the mistakes they had made.&lt;/p&gt;

&lt;p&gt;Suddenly...&lt;/p&gt;

&lt;p&gt;It felt relatable.&lt;/p&gt;

&lt;p&gt;That's when I realized that hackathons aren't only about coding.&lt;br&gt;
They're about conversations.&lt;br&gt;
They're about meeting people who are just as curious as you are.&lt;/p&gt;

&lt;p&gt;Some are beginners.&lt;br&gt;
Some are experts.&lt;/p&gt;

&lt;p&gt;But everyone started somewhere.&lt;/p&gt;

&lt;h3&gt;
  
  
  Winning Was Never the Best Part
&lt;/h3&gt;

&lt;p&gt;By the end of the hackathon, we knew we weren't going to win.&lt;/p&gt;

&lt;p&gt;And surprisingly...&lt;/p&gt;

&lt;p&gt;We were okay with that.&lt;br&gt;
We had learned more in 24 hours than we expected.&lt;br&gt;
We had made friends.&lt;br&gt;
We had built connections.&lt;br&gt;
We had experienced our first real hackathon.&lt;/p&gt;

&lt;p&gt;When the winners were announced, one of them was the IoT team we had spoken to the previous night. Instead of feeling disappointed, we were genuinely happy for them. We celebrated their win because, by then, it didn't feel like we were competing anymore.&lt;/p&gt;

&lt;p&gt;It felt like we were all part of the same journey.&lt;/p&gt;

&lt;h3&gt;
  
  
  Looking Back
&lt;/h3&gt;

&lt;p&gt;My first hackathon went nothing like I had imagined.&lt;/p&gt;

&lt;p&gt;We didn't win. We weren't the most experienced team. Our solution wasn't perfect.&lt;/p&gt;

&lt;p&gt;But I left IIT Hyderabad with something much more valuable than a certificate.&lt;/p&gt;

&lt;p&gt;Confidence.&lt;/p&gt;

&lt;p&gt;If you're thinking about participating in your first hackathon but keep telling yourself that you're not good enough, remember this:&lt;/p&gt;

&lt;p&gt;You don't have to be the best person in the room. You just have to be willing to walk into it.&lt;/p&gt;

&lt;p&gt;Whether you win or not, you'll come back with stories, friendships, lessons, and memories that stay with you long after the hackathon ends.&lt;/p&gt;

&lt;p&gt;And for me, that was the real prize.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>hackathon</category>
      <category>programming</category>
      <category>beginners</category>
    </item>
    <item>
      <title>How Learning Git &amp; GitHub Gave Direction to My Developer Journey</title>
      <dc:creator>Pulla Indira Keerthana</dc:creator>
      <pubDate>Wed, 24 Jun 2026 17:51:45 +0000</pubDate>
      <link>https://dev.to/indirakeerthana/how-learning-git-github-gave-direction-to-my-developer-journey-32m1</link>
      <guid>https://dev.to/indirakeerthana/how-learning-git-github-gave-direction-to-my-developer-journey-32m1</guid>
      <description>&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%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F2iesnq06zwud4r0s7ndk.png" 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%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F2iesnq06zwud4r0s7ndk.png" alt="Git and GitHub cheat sheet for beginners covering setup, staging, commits, reset, and stash commands" width="760" height="1320"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fn0ded1q4a6ico2qksy26.png" 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%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fn0ded1q4a6ico2qksy26.png" alt="Git and GitHub cheat sheet for beginners covering push, pull, branching, rebasing, and open source workflows" width="760" height="1073"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;The Git Cheat Sheet That Saved My First Year of College&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;When I joined college as a first-year student, I had no idea which direction I should take.&lt;/p&gt;

&lt;p&gt;Should I focus on projects?&lt;/p&gt;

&lt;p&gt;Should I start learning DSA?&lt;/p&gt;

&lt;p&gt;Should I learn multiple programming languages?&lt;/p&gt;

&lt;p&gt;Should I pick a tech stack first?&lt;/p&gt;

&lt;p&gt;Everyone around me seemed to have a different answer. Some told me to build projects immediately, while others insisted that DSA was the only thing that mattered. A few suggested learning every new technology I came across.&lt;/p&gt;

&lt;p&gt;The result? Confusion.&lt;/p&gt;

&lt;p&gt;Looking back, I realize that this dilemma cost me a significant part of my first year. I spent more time wondering where to start than actually starting.&lt;/p&gt;

&lt;p&gt;That's when I understood something important:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;I didn't need to follow someone else's journey. I needed to create my own.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Before learning web development, DSA, or any framework, I decided to learn one thing that would stay useful throughout my entire journey:&lt;/p&gt;

&lt;h2&gt;
  
  
  Git &amp;amp; GitHub
&lt;/h2&gt;

&lt;p&gt;Learning Git and GitHub turned out to be one of the best decisions I made as a beginner.&lt;/p&gt;

&lt;p&gt;It helped me:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Track my projects&lt;/li&gt;
&lt;li&gt;Manage hackathon submissions&lt;/li&gt;
&lt;li&gt;Monitor my learning progress&lt;/li&gt;
&lt;li&gt;Understand how real-world development works&lt;/li&gt;
&lt;li&gt;Collaborate with others more effectively&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;However, learning Git wasn't easy.&lt;/p&gt;

&lt;p&gt;I constantly forgot which command to use in different situations. Every time I opened the terminal, I found myself searching for commands again and again.&lt;/p&gt;

&lt;p&gt;So I created something simple for myself—a &lt;strong&gt;Git Cheat Sheet&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Not a huge document filled with advanced commands.&lt;/p&gt;

&lt;p&gt;Just the essential commands that a beginner needs while working on small projects and learning the Git workflow.&lt;/p&gt;

&lt;p&gt;As I continued using it, I became more comfortable with Git, repositories, commits, branches, and project structures. Eventually, when I started teaching Git and GitHub to my friends, I shared the same cheat sheet with them.&lt;/p&gt;

&lt;p&gt;To my surprise, they found it incredibly helpful.&lt;/p&gt;

&lt;p&gt;That's when I realized another important lesson:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Learning becomes much easier when you have a clear starting point.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Most resources focus on the destination. They tell you what you should become, what technologies you should learn, and what achievements you should aim for.&lt;/p&gt;

&lt;p&gt;But beginners often struggle with something much simpler:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;"Where do I start?"&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Once you know your starting point, you can build your own path, choose your own destination, and learn at your own pace.&lt;/p&gt;

&lt;p&gt;This Git Cheat Sheet helped me and many of my friends understand Git without feeling overwhelmed.&lt;/p&gt;

&lt;p&gt;I hope it helps you too.&lt;/p&gt;

&lt;p&gt;Happy coding! 🚀&lt;/p&gt;

</description>
      <category>git</category>
      <category>github</category>
      <category>beginners</category>
      <category>career</category>
    </item>
  </channel>
</rss>
