<?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: Gerry Hu</title>
    <description>The latest articles on DEV Community by Gerry Hu (@gerryhu).</description>
    <link>https://dev.to/gerryhu</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%2F3898532%2F5ac21f8c-fb58-453b-a1c5-27050b1e8795.jpg</url>
      <title>DEV Community: Gerry Hu</title>
      <link>https://dev.to/gerryhu</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/gerryhu"/>
    <language>en</language>
    <item>
      <title>Why Your Google Search Console Average Position is Mathematically Flawed (And How to Fix It)</title>
      <dc:creator>Gerry Hu</dc:creator>
      <pubDate>Sun, 27 Sep 2026 05:15:37 +0000</pubDate>
      <link>https://dev.to/gerryhu/why-your-google-search-console-average-position-is-mathematically-flawed-and-how-to-fix-it-2g1e</link>
      <guid>https://dev.to/gerryhu/why-your-google-search-console-average-position-is-mathematically-flawed-and-how-to-fix-it-2g1e</guid>
      <description>&lt;p&gt;If you export your performance data from Google Search Console and run a simple average formula on your ranking position, your SEO metrics are almost certainly misleading you.&lt;/p&gt;

&lt;p&gt;Here is why it happens, how to calculate your true organic rank, and a free calculator you can use to check it.&lt;/p&gt;

&lt;p&gt;The Problem: Why Simple Average Position Fails&lt;/p&gt;

&lt;p&gt;Imagine your article ranks for just two search queries:&lt;/p&gt;

&lt;p&gt;Primary Keyword: Position 2.0 (50,000 impressions)&lt;br&gt;
Random Long-Tail Query: Position 92.0 (2 impressions)&lt;br&gt;
If you calculate a simple average: (2.0 + 92.0) / 2 = 47.0&lt;/p&gt;

&lt;p&gt;Your report says your average position is 47.0 (Page 5). It looks like your page is failing.&lt;/p&gt;

&lt;p&gt;In reality, 99.99% of actual human searchers see your website in the top 3 spots! The single 2-impression query completely skewed the math.&lt;/p&gt;

&lt;p&gt;The Fix: Impression-Weighted Average Position&lt;/p&gt;

&lt;p&gt;To see what real searchers actually see, each ranking position must be multiplied by its impression volume:&lt;/p&gt;

&lt;p&gt;Formula: Weighted Average Position = Sum of (Position × Impressions) / Total Impressions&lt;/p&gt;

&lt;p&gt;Applying this to the example: ((2.0 × 50,000) + (92.0 × 2)) / 50,002 = 2.003&lt;/p&gt;

&lt;p&gt;Your true effective rank is 2.0, not 47.0.&lt;/p&gt;

&lt;p&gt;Ready-to-Use Formulas for Your Workflow&lt;/p&gt;

&lt;p&gt;Google Sheets &amp;amp; Excel If Column B has Positions and Column C has Impressions, paste this formula:&lt;br&gt;
=SUMPRODUCT(B2:B, C2:C) / SUM(C2:C)&lt;/p&gt;

&lt;p&gt;To automatically ignore queries with fewer than 5 impressions:&lt;/p&gt;

&lt;p&gt;=SUMPRODUCT(FILTER(B2:B, C2:C&amp;gt;=5), FILTER(C2:C, C2:C&amp;gt;=5)) / SUM(FILTER(C2:C, C2:C&amp;gt;=5))&lt;/p&gt;

&lt;p&gt;Looker Studio (Google Data Studio) Create a new calculated field:&lt;br&gt;
SUM(Average Position * Impressions) / SUM(Impressions)&lt;/p&gt;

&lt;p&gt;BigQuery SQL (Search Console Bulk Export)&lt;br&gt;
SELECT url, SUM(sum_position * impressions) / SUM(impressions) AS weighted_avg_pos FROM your_project.searchconsole.searchdata_url_impression GROUP BY url;&lt;/p&gt;

&lt;p&gt;Free Interactive Calculator &amp;amp; Sheet&lt;/p&gt;

&lt;p&gt;I built a free interactive tool where you can test calculations directly in your browser without signing up:&lt;/p&gt;

&lt;p&gt;Try the Free Calculator: &lt;a href="https://serppatch.com/tools/weighted-average-position" rel="noopener noreferrer"&gt;https://serppatch.com/tools/weighted-average-position&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Free Google Sheets Template: &lt;a href="https://serppatch.com/templates/google-sheets-gsc-weighted-average-calculator" rel="noopener noreferrer"&gt;https://serppatch.com/templates/google-sheets-gsc-weighted-average-calculator&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;How do you currently track position changes across your website? Do you use weighted averages, or rely on Google's default dashboard? Let me know in the comments!&lt;/p&gt;

</description>
      <category>seo</category>
      <category>webdev</category>
      <category>analytics</category>
      <category>google</category>
    </item>
    <item>
      <title>I spent 2 months building a tool to solve the biggest headache in US HR: FMLA compliance (Here is what I learned)</title>
      <dc:creator>Gerry Hu</dc:creator>
      <pubDate>Sat, 20 Jun 2026 16:04:28 +0000</pubDate>
      <link>https://dev.to/gerryhu/i-spent-2-months-building-a-tool-to-solve-the-biggest-headache-in-us-hr-fmla-compliance-here-is-1pn7</link>
      <guid>https://dev.to/gerryhu/i-spent-2-months-building-a-tool-to-solve-the-biggest-headache-in-us-hr-fmla-compliance-here-is-1pn7</guid>
      <description>&lt;p&gt;Hey Dev.to community,&lt;/p&gt;

&lt;p&gt;For the past two months, I’ve been locked in my room, staring at a giant spreadsheet of U.S. labor laws, wondering why on earth I decided to build something in the HR space. &lt;/p&gt;

&lt;p&gt;It all started when I was browsing Reddit. I noticed a recurring theme on U.S. small business and HR subreddits: people were losing their minds over &lt;strong&gt;FMLA (Family and Medical Leave Act) and ADA compliance&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;For many U.S. small businesses, there is no "HR department." It’s usually just one person (what I call a &lt;strong&gt;Solo HR&lt;/strong&gt;) trying to calculate rolling 12-month leave periods, coordinate short-term disability, and draft complex legal notices on a tight deadline. One minor calculation mistake on a spreadsheet, and the company gets sued.&lt;/p&gt;

&lt;p&gt;I thought: &lt;em&gt;"Hey, I'm a developer. I can automate this."&lt;/em&gt; &lt;/p&gt;

&lt;p&gt;Oh boy, I was so wrong about it being "simple." &lt;/p&gt;

&lt;h4&gt;
  
  
  The Nightmare of Coding State-by-State Laws
&lt;/h4&gt;

&lt;p&gt;The biggest technical pain point I ran into wasn't the database structure or the AI agent integrations. It was the logic.&lt;/p&gt;

&lt;p&gt;U.S. labor law is a moving target. Federal FMLA is one thing, but then you have state-specific laws (like California's PFL, New York's DBL, Washington, Colorado, etc.). Each state has its own eligibility rules, leave durations, and look-back methods. To make things worse, they update these laws constantly. &lt;/p&gt;

&lt;p&gt;Initially, I tried hardcoding the rules, but that quickly turned into a nested &lt;code&gt;if/else&lt;/code&gt; nightmare. I had to completely rewrite the engine to use a dynamic rule-matching schema that separates the state logic from the core calculation. &lt;/p&gt;

&lt;p&gt;It took me a full two months of coding and legal fact-checking, but we finally launched the beta version of &lt;strong&gt;&lt;a href="https://aisolohr.com" rel="noopener noreferrer"&gt;AI SoloHR&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;h4&gt;
  
  
  What We Built (And We Need Your Feedback!)
&lt;/h4&gt;

&lt;p&gt;To help those overwhelmed HR admins, we ended up building a set of free, open tools that handle the heavy lifting:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://aisolohr.com/tools/fmla-leave-calculator" rel="noopener noreferrer"&gt;FMLA Leave &amp;amp; Hours Calculator&lt;/a&gt;&lt;/strong&gt;: Handles federal eligibility calculations, rolling calendar periods, and intermittent leave tracks. &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://aisolohr.com/tools/ada-timeline-calculator" rel="noopener noreferrer"&gt;ADA Accommodation &amp;amp; Process Timeline Calculator&lt;/a&gt;&lt;/strong&gt;: Helps small businesses visualize the good-faith interactive process timeline to avoid wrongful termination risks.&lt;/li&gt;
&lt;li&gt;A general &lt;strong&gt;&lt;a href="https://aisolohr.com/tools" rel="noopener noreferrer"&gt;Compliance Toolkit&lt;/a&gt;&lt;/strong&gt; for document drafting.&lt;/li&gt;
&lt;/ol&gt;

&lt;h4&gt;
  
  
  We're looking for Beta Users!
&lt;/h4&gt;

&lt;p&gt;We just launched and are actively looking for our first batch of &lt;strong&gt;seed users&lt;/strong&gt;. If you run a small business, manage HR, or just want to break my calculators to see if my state-by-state logic holds up, please check us out and drop your feedback in the comments!&lt;/p&gt;

&lt;p&gt;What features should we add next? Let me know!&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>showdev</category>
      <category>sideprojects</category>
      <category>startup</category>
    </item>
  </channel>
</rss>
