<?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: Hana B</title>
    <description>The latest articles on DEV Community by Hana B (@imnothana).</description>
    <link>https://dev.to/imnothana</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%2F3860003%2Fa75f0799-dc2a-4aca-849e-24a6b35af716.jpeg</url>
      <title>DEV Community: Hana B</title>
      <link>https://dev.to/imnothana</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/imnothana"/>
    <language>en</language>
    <item>
      <title>My First Open Source Debugging Experience: A React i18n Bug</title>
      <dc:creator>Hana B</dc:creator>
      <pubDate>Fri, 03 Apr 2026 19:45:32 +0000</pubDate>
      <link>https://dev.to/imnothana/my-first-open-source-debugging-experience-a-react-i18n-bug-5di4</link>
      <guid>https://dev.to/imnothana/my-first-open-source-debugging-experience-a-react-i18n-bug-5di4</guid>
      <description>&lt;p&gt;Recently I worked on an AFFiNE bug about language switching.&lt;/p&gt;

&lt;h2&gt;
  
  
  The problem
&lt;/h2&gt;

&lt;p&gt;After changing the app language, most of the UI updated, but the left settings panel still stayed in the old language until the page was refreshed.&lt;/p&gt;

&lt;h2&gt;
  
  
  My process
&lt;/h2&gt;

&lt;p&gt;The hardest part at first was finding the right files in such a big codebase.&lt;/p&gt;

&lt;p&gt;After tracing the settings dialog and related hooks, I found that some memoized values were not updating with the language change.&lt;/p&gt;

&lt;p&gt;My first idea was to track the current language key so the component could re-render correctly.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I learned
&lt;/h2&gt;

&lt;p&gt;In the end, the maintainer replaced my first fix with a cleaner solution in the i18n wrapper layer.&lt;/p&gt;

&lt;p&gt;Even though my exact code was not the final version, this experience taught me that open source is not only about writing the final code, but also about helping find the right direction.&lt;/p&gt;

&lt;p&gt;I also learned a lot from seeing how the maintainer turned a local fix into a cleaner reusable solution.&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>react</category>
      <category>beginners</category>
    </item>
  </channel>
</rss>
