<?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: Farah Kim</title>
    <description>The latest articles on DEV Community by Farah Kim (@farahkim).</description>
    <link>https://dev.to/farahkim</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%2F2147278%2Fa419fc5b-5f49-4d8c-93af-b86a37390cf9.jpeg</url>
      <title>DEV Community: Farah Kim</title>
      <link>https://dev.to/farahkim</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/farahkim"/>
    <language>en</language>
    <item>
      <title>The Dark Side of Building AI Agents with Poor Data Quality</title>
      <dc:creator>Farah Kim</dc:creator>
      <pubDate>Tue, 25 Mar 2025 16:55:06 +0000</pubDate>
      <link>https://dev.to/farahkim/the-dark-side-of-building-ai-agents-on-poor-data-quality-l18</link>
      <guid>https://dev.to/farahkim/the-dark-side-of-building-ai-agents-on-poor-data-quality-l18</guid>
      <description>&lt;p&gt;AI agents are the rage these days. Everyone's racing to build these agents that can supposedly automate tasks we humans are too lazy to do. &lt;/p&gt;

&lt;p&gt;Great, except that these agents are being built entirely on the foundations of flawed data. &lt;/p&gt;

&lt;p&gt;Most dev teams are excluded from conversations around data quality, until it's too late. An AI agent is fundamentally a pattern-recognition machine, gobbling up every piece of data you feed it. Feed it garbage data, and it will throw out garbage outcomes with terrifying efficiency. &lt;/p&gt;

&lt;p&gt;Those nonsensical responses, flawed predictions, and apps that fail right after production are sometimes not coding glitches - they are a direct reflection of compromised data. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why it Matters to Think about Data When Building AI Agents?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Let's cut through the hype for a second. Your AI agent isn't "thinking" - it's calculating probabilities based on the patterns it's been fed. When those patterns come from inconsistent, incomplete, or just plain wrong data, you're essentially building a Ferrari with sugar in its gas tank.&lt;/p&gt;

&lt;p&gt;I've seen teams spend months optimizing algorithms and fine-tuning models while completely ignoring the elephant in the room: their training data is fundamentally flawed. They'll chase performance improvements through clever code tweaks, when simply cleaning their data could deliver 10x the improvement.&lt;/p&gt;

&lt;p&gt;The math is simple: &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Bad Data In = Bad Predictions Out&lt;/strong&gt;. No amount of algorithmic magic can overcome this fundamental truth.&lt;/p&gt;

&lt;p&gt;When building AI agents that operate across multiple data sources, prioritizing data quality becomes essential. &lt;/p&gt;

&lt;p&gt;Here's a real-world example: &lt;/p&gt;

&lt;p&gt;A financial services company built an agent to automate client portfolio recommendations. The system kept suggesting inappropriate investments because customer data in their CRM didn't properly match transaction data in their financial system. The same customer appeared as &lt;strong&gt;"J. Smith"&lt;/strong&gt; in one system and &lt;strong&gt;"John A. Smith"&lt;/strong&gt; in another. A problem like this can simply be solved using a no-code &lt;a href="https://winpure.com/data-matching-software/" rel="noopener noreferrer"&gt;data matching tool &lt;/a&gt;, which could have prevented this $2 million mistake.&lt;/p&gt;

&lt;p&gt;At the heart of all AI agent building lies the critical need for consistent, reliable, high-quality data. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Prioritizing Data Quality from Day One&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;So how do we fix this? &lt;/p&gt;

&lt;p&gt;Here are some practical steps for developers building AI agents:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Start with data assessment, not model selection&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;Before you write a single line of code, audit your data sources. Understand their limitations, inconsistencies, and gaps. Don't just believe someone else is supposed to do this for you. If you're working on training an AI agent, you are responsible for ensuring the data is reliable and usable. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Implement robust data clean &amp;amp; match processes&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You don't need much to clean and consolidate your data. There are now dozens of on-premises tools that you can use to clean, dedupe, and consolidate data within minutes. These tools don't need millions of dollars in investments and do not require extensive resources - but of course - if you have a data team, it's worth while to have a conversation with them about data management processes before attempting to clean the data yourself. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Create data quality feedback loops&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Build monitoring systems that flag when your agent encounters data anomalies. Use these insights to continuously improve your data pipeline.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Include domain experts in data preparation&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;The people who work with the data daily often know its quirks better than anyone. Their insights are invaluable for identifying potential matching issues.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Test with deliberately flawed data&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;Stress-test your agents with messy data scenarios to understand their breaking points and failure modes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Competitive Advantage of Clean Data&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;Teams that master data quality don't just avoid failures - they gain a significant competitive advantage. While competitors struggle with erratic agent performance and mysterious edge cases, developers prioritizing data matching and quality deliver consistently reliable results.&lt;/p&gt;

&lt;p&gt;I recently consulted with a healthcare startup whose AI agent outperformed competitors with much larger development teams. Their secret? They hadn't built a more complex algorithm. They had simply invested heavily in data quality, particularly in matching patient records across disparate systems.&lt;/p&gt;

&lt;p&gt;Their sophisticated data-matching tools ensured every entity in their ecosystem was consistently represented, creating a foundation of trust that allowed their relatively simple models to work as it should. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Path Forward&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;As we build increasingly autonomous AI agents, the stakes for data quality only get higher. An agent making thousands of decisions per second based on flawed data can create problems at a scale and speed we've never seen before.&lt;/p&gt;

&lt;p&gt;The solution isn't to slow down innovation, but to shift our focus. Let's stop treating data quality as an afterthought and start seeing it as the foundation of everything we build. Implement proper data matching processes. &lt;/p&gt;

&lt;p&gt;Invest in tools that ensure consistency across your data ecosystem. Build with the understanding that no algorithm, no matter how clever, can overcome fundamentally flawed data.&lt;/p&gt;

&lt;p&gt;The next generation of AI agents won't be distinguished by who has the most complex model architecture. The winners will be the teams who understood that in the world of AI, data quality isn't just important - &lt;em&gt;it's quite literally the foundation&lt;/em&gt;.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>database</category>
      <category>sql</category>
    </item>
    <item>
      <title>Still Using SQL, Python, &amp; Excel for Data Deduplication? Here's Why You Need Better Tools.</title>
      <dc:creator>Farah Kim</dc:creator>
      <pubDate>Thu, 17 Oct 2024 11:06:41 +0000</pubDate>
      <link>https://dev.to/farahkim/still-using-sql-python-excel-for-data-deduplication-heres-why-you-need-better-tools-3k1a</link>
      <guid>https://dev.to/farahkim/still-using-sql-python-excel-for-data-deduplication-heres-why-you-need-better-tools-3k1a</guid>
      <description>&lt;p&gt;I'm a member of several data and dev communities, and I'm blown away by the struggles of data scientists and developers trying to resolve massive data duplication challenges. They either lack leadership support to invest in automated tools or have been limited to Excel, Python, or SQL. While these are undeniably powerful tools, they can be overly complex and time-consuming for solving data deduplication issues at scale. &lt;/p&gt;

&lt;p&gt;As a result, developers and data analysts are caught in an endless loop of iterations and fixes, often spending hours on fixing a single line of code to treat a duplication problem. &lt;/p&gt;

&lt;p&gt;And mind you - I'm not talking about the regular duplicates. We all know it's super easy to detect exact duplicates like *&lt;em&gt;Mary Jane &amp;amp; Mary Jane *&lt;/em&gt; but how do you fix duplicates like these 👇&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv13jluk121101utql4k2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv13jluk121101utql4k2.png" alt="multiple names of a record" width="800" height="512"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;One person with three different variations of a name, stored across three different systems within the same organization. Mary Jane has varied phone numbers, emails, and social handles. When it's time to consolidate organizational data for reports or analytics, you, the developer will have a time of your life trying to sort this mess! &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fousn8g35ufsth1wjy3bl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fousn8g35ufsth1wjy3bl.png" alt="digital manifestation of an entity" width="800" height="1109"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This was just one example. &lt;/p&gt;

&lt;p&gt;What would you do if it were tens of thousands of rows across multiple data sets? &lt;/p&gt;

&lt;p&gt;How would you reasonably solve a table like the one below at scale? &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3poebfhs77465g8k44l0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3poebfhs77465g8k44l0.png" alt="multiple duplicates" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Clearly, custom codes and scripts will not do the job with efficiency and accuracy - and definitely - not at the speed your organization would require. &lt;/p&gt;

&lt;p&gt;That's when you would need to take a step back and start analyzing if a &lt;a href="https://winpure.com/data-deduplication-software/" rel="noopener noreferrer"&gt;no-code deduplication software&lt;/a&gt; can help you do a better job. &lt;/p&gt;

&lt;p&gt;But before we talk more about no-code, we need to address a challenge: &lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Devs and data analysts are reluctant to try no-code tools for fear of being perceived as lacking in skills **&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Yep, that's a key challenge my team and I always hear about when talking with customers. Most data analysts feel they shouldn't be using no-code tools or even AI-powered data match tools as somehow it would render them....(no better way to say this)....useless. &lt;/p&gt;

&lt;p&gt;But that is far from being the case. &lt;/p&gt;

&lt;p&gt;No-code tools don’t diminish your expertise or analysis skills. Even with no-code tools, manual review and fine-tuning are essential. Developers are responsible for setting up data pipelines, ensuring accuracy, and handling edge cases that automation tools might miss. This oversight ensures that no-code tools function optimally within complex workflows.&lt;/p&gt;

&lt;p&gt;Then how does no-code help? &lt;/p&gt;

&lt;p&gt;By eliminating the manual work involved in cleaning and deduplicating data. Instead of spending hours tweaking a Python fuzzy library to match data, a no-code tool will let you do the same in seconds, often with 10X more accurate results! &lt;/p&gt;

&lt;p&gt;Let's talk about this more. &lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;How does no-code tools improve accuracy and speed for deduplication processes? **&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Most no-code data deduplication tools incorporate &lt;a href="https://winpure.com/fuzzy-matching-guide/" rel="noopener noreferrer"&gt;fuzzy match algorithms&lt;/a&gt; and proprietary algorithms to match data on the basis of string similarity (some also have phonetic matches). This means they use popular algorithms like &lt;a href="https://en.wikipedia.org/wiki/Levenshtein_distance" rel="noopener noreferrer"&gt;Levenshtein Distance&lt;/a&gt; to measure the number of changes needed to turn one string into another, or &lt;a href="https://www.learndatasci.com/glossary/jaccard-similarity/" rel="noopener noreferrer"&gt;Jaccard Similarity&lt;/a&gt; to compare sets of words within strings. &lt;/p&gt;

&lt;p&gt;Some tools also leverage algorithms like Soundex or Metaphone for phonetic matches, allowing them to find similarities in names or words that are spelled differently but sound alike. This combination of methods enables these tools to accurately match and deduplicate records even when the data contains inconsistencies.&lt;/p&gt;

&lt;p&gt;These algorithms form the software's engine. On the front end, an easy-to-use GUI interface allows the user to simply drag and drop data sets for cleaning and matching. &lt;/p&gt;

&lt;p&gt;No hassles with coding, no testing or tweaking required. And you get far more accurate results as compared to custom coding. If mistakes happen during pre-processing, you can also always revert back to the original state. &lt;/p&gt;

&lt;p&gt;But other than accuracy and speed, here are three more crucial benefits to using a no-code deduplication tool. &lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;1). You're improving operational efficiency by nearly 60%!&lt;/strong&gt;**
&lt;/h2&gt;

&lt;p&gt;Sounds crazy? Not quite. I've worked directly with customers who say a no-code deduplication tool drastically improved their efficiency. When repetitive and manual tasks like data deduplication are automated, developers get more time to focus on more strategic work, such as system architecture, performance optimization, and building custom features. Instead of being bogged down by manual processes, they can contribute to the business's long-term technical vision.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;2). You improve scalability without additional coding **&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;As mentioned above, Excel and SQL work great when you have manageable datasets. But when you have nearly a million records or more, you cannot rely on these legacy tools to get the job done on time because they become cumbersome and resource-intensive. With no-code tools, developers can easily scale their data deduplication processes to handle larger datasets without writing additional code or constantly updating scripts. &lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;3). No maintenance overhead or constant management needed **&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Traditional custom-built solutions require ongoing maintenance and support, especially when processes change or systems are updated. No-code tools often handle this through their user-friendly interfaces and automated updates, reducing the maintenance burden on developers. This allows them to avoid spending valuable time troubleshooting or updating scripts and instead focus on innovation and scaling the product.&lt;/p&gt;

&lt;p&gt;So to boil it down.... &lt;/p&gt;

&lt;p&gt;Stop fearing no-code tools. Use them as an accelerator for your current processes and be more strategic with your development skills. You did spend years learning programming to have to spend hours fixing Mary Jane's hundreds of duplicate IDs!  &lt;/p&gt;

</description>
      <category>algorithms</category>
      <category>ai</category>
      <category>dataengineering</category>
    </item>
  </channel>
</rss>
