<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Hey, it&#39;s Bernie!</title>
    <link>https://berniepng.com/</link>
    <description>Building at the intersection of AI, data, and real-world impact. Singapore.</description>
    <pubDate>Mon, 01 Jun 2026 16:43:45 +0000</pubDate>
    <item>
      <title>Nobody Sees the Grind</title>
      <link>https://berniepng.com/nobody-sees-the-grind</link>
      <description>&lt;![CDATA[Nobody claps for the 11pm sessions.&#xA;&#xA;Nobody asks about the tabs you have open, the ideas you&#39;re stress-testing, the version you scrapped last Tuesday. They don&#39;t see any of it. And honestly? They&#39;re not looking.&#xA;&#xA;What people see is outcomes. The watch. The title. The post that blew up. The moment you finally have something to point at. That&#39;s when the congratulations come in. That&#39;s when suddenly, everyone gets it.&#xA;&#xA;But right now, in the middle — before the proof, before the product, before anything is real enough to show — you&#39;re mostly invisible.&#xA;&#xA;And that invisibility is brutal.&#xA;&#xA;Not because people are cruel. But because the grind doesn&#39;t translate. Try explaining what you&#39;re building to someone who isn&#39;t inside it and watch their eyes. They&#39;re kind about it. They nod. And then they change the subject. It&#39;s not their fault. There&#39;s just nothing to hold onto yet.&#xA;&#xA;That&#39;s the chicken and egg nobody warns you about. You need belief to keep going. But belief usually comes after results. So in the meantime, you carry it mostly alone.&#xA;&#xA;Even the people closest to you — family, a partner, a sibling — can&#39;t always give you the one thing you actually need. Not money, not advice. Just: I see you. I got you. Keep going.&#xA;&#xA;That gap is real. I&#39;m in it right now.&#xA;&#xA;And if you&#39;re in it too — figuring out what value you want to bring, what your next chapter looks like, what you&#39;re even supposed to be building in this strange new world — I just want to say: I see you.&#xA;&#xA;Not the finished version of you. The current one. Grinding without receipts.&#xA;That version deserves more acknowledgement than it gets.&#xA;&#xA;So here it is. Grind on.&#xA;&#xA;Are you in the grind right now? What&#39;s the hardest part — the doubt, the isolation, or the not-yet-knowing?]]&gt;</description>
      <content:encoded><![CDATA[<p>Nobody claps for the 11pm sessions.</p>

<p>Nobody asks about the tabs you have open, the ideas you&#39;re stress-testing, the version you scrapped last Tuesday. They don&#39;t see any of it. And honestly? They&#39;re not looking.</p>

<p>What people see is outcomes. The watch. The title. The post that blew up. The moment you finally have something to point at. That&#39;s when the congratulations come in. That&#39;s when suddenly, everyone gets it.</p>

<p>But right now, in the middle — before the proof, before the product, before anything is real enough to show — you&#39;re mostly invisible.</p>

<p>And that invisibility is brutal.</p>

<p>Not because people are cruel. But because the grind doesn&#39;t translate. Try explaining what you&#39;re building to someone who isn&#39;t inside it and watch their eyes. They&#39;re kind about it. They nod. And then they change the subject. It&#39;s not their fault. There&#39;s just nothing to hold onto yet.</p>

<p>That&#39;s the chicken and egg nobody warns you about. You need belief to keep going. But belief usually comes after results. So in the meantime, you carry it mostly alone.</p>

<p>Even the people closest to you — family, a partner, a sibling — can&#39;t always give you the one thing you actually need. Not money, not advice. Just: I see you. I got you. Keep going.</p>

<p>That gap is real. I&#39;m in it right now.</p>

<p>And if you&#39;re in it too — figuring out what value you want to bring, what your next chapter looks like, what you&#39;re even supposed to be building in this strange new world — I just want to say: I see you.</p>

<p>Not the finished version of you. The current one. Grinding without receipts.
That version deserves more acknowledgement than it gets.</p>

<p>So here it is. Grind on.</p>

<p>Are you in the grind right now? What&#39;s the hardest part — the doubt, the isolation, or the not-yet-knowing?</p>
]]></content:encoded>
      <guid>https://berniepng.com/nobody-sees-the-grind</guid>
      <pubDate>Wed, 27 May 2026 14:35:38 +0000</pubDate>
    </item>
    <item>
      <title>Your AI Wrote That Code. Did It Also Leave the Door Open?</title>
      <link>https://berniepng.com/your-ai-wrote-that-code</link>
      <description>&lt;![CDATA[I had an uncomfortable realisation recently while auditing my own projects.&#xA;&#xA;I&#39;ve been building fast. Web apps, data dashboards. Using AI tools to accelerate everything. And somewhere in the middle of all that momentum, I stopped reading the code as carefully as I used to. Not because I stopped caring. Because the output looked fine. It ran. It shipped.&#xA;&#xA;That&#39;s exactly the problem.&#xA;&#xA;img src=&#34;https://cdn.bernie.studio/74bcdd95b9a8/medium.webp&#34; /&#xA;&#xA;What&#39;s Actually Happening Right Now&#xA;&#xA;This isn&#39;t a theoretical risk. The data from Q1 2026 is genuinely alarming.&#xA;&#xA;Researchers at Georgia Tech have been tracking CVEs directly caused by AI-generated code. In January 2026 there were 6. By February, 15. By March, 35. That&#39;s not a blip. That&#39;s a curve.&#xA;&#xA;Between 40 and 62% of AI-generated code contains security vulnerabilities, depending on the study. In Q1 2026, 91.5% of vibe-coded apps had at least one AI hallucination-related flaw. And the Lovable platform — valued at $6.6 billion with eight million users — spent the past two months dealing with incidents that collectively exposed source code, database credentials, AI chat histories, and personal data of thousands of users.&#xA;&#xA;The supply chain situation is just as bad. In March 2026, the LiteLLM package on PyPI was compromised, potentially exposing 500,000 credentials including API keys for Meta, OpenAI, and Anthropic. In April, a Bitwarden CLI package on npm was hijacked with a payload specifically designed to harvest credentials from AI coding tools including Claude Code, Cursor, Codex CLI, and Aider.&#xA;&#xA;And here&#39;s the part that got my attention: stolen data was uploaded to private Hugging Face datasets, meaning malicious traffic blended seamlessly with everyday AI research activity and easily evaded scrutiny.&#xA;&#xA;The tools we trust are becoming the attack surface.&#xA;&#xA;A Quick Audit You Can Run Today&#xA;&#xA;If you&#39;ve been building with AI tools and haven&#39;t checked your projects, here&#39;s where to start. This is not exhaustive. It&#39;s the minimum.&#xA;&#xA;Step 1 — Scan for secrets accidentally committed to git&#xA;&#xA;brew install gitleaks&#xA;gitleaks detect --source=. -v&#xA;&#xA;If you&#39;ve ever pasted an API key into a file and committed it, even briefly, this will find it.&#xA;&#xA;Step 2 — Audit your Python dependencies&#xA;&#xA;pip install pip-audit --break-system-packages&#xA;pip-audit&#xA;&#xA;Step 3 — Audit your Node dependencies&#xA;&#xA;npm audit --audit-level=moderate&#xA;&#xA;Step 4 — Check for dangerous patterns in your own code&#xA;&#xA;grep -rn &#34;exec\|eval\|base64.decode\|os.system&#34; . \&#xA;  --include=&#34;.py&#34; --include=&#34;.js&#34; \&#xA;  --exclude-dir=node_modules&#xA;&#xA;Step 5 — Verify no .env files are tracked in git&#xA;&#xA;git ls-files | grep -E &#34;\.env|\.key|\.pem|secret|credential&#34;&#xA;&#xA;That&#39;s it for a first pass. It takes less than ten minutes and most people have never done it.&#xA;&#xA;Habits That Actually Help&#xA;&#xA;These aren&#39;t one-time fixes. They&#39;re the baseline I&#39;m now holding myself to.&#xA;&#xA;Read the code AI generates before running it. Not every line. But every file that touches auth, credentials, or external APIs. AI hallucinates permissions. It adds network calls you didn&#39;t ask for. It misconfigures database access. The output looks clean because it&#39;s well-formatted, not because it&#39;s safe.&#xA;&#xA;Never commit a secret. Ever. Use .env files. Add them to .gitignore before you write a single line. Use a secrets manager like Doppler or AWS Secrets Manager for anything production-facing. GitHub&#39;s secret scanning can catch it after the fact, but once a key has been committed and pushed, assume it&#39;s compromised.&#xA;&#xA;Run npm audit and pip-audit regularly. Attackers are now publishing malicious versions of legitimate packages in coordinated campaigns, affecting well-known projects across both npm and PyPI in the same wave. Weekly is not paranoid. It&#39;s appropriate.&#xA;&#xA;Pin your dependencies. Loose version ranges like ^1.2.0 mean you can get a different package next week than you tested with. A malicious @bitwarden/cli version was published that impersonated the legitimate CLI, executed a credential-stealing payload, and self-propagated by backdooring every npm package the victim could publish. Pinning doesn&#39;t fully prevent this, but it reduces your exposure window.&#xA;&#xA;Check what&#39;s actually installed before you install it. For Homebrew: brew cat package shows you the formula. For PyPI and npm, look at the maintainer account — how old is it? How many other packages? A 3-day-old account with one package that does something useful is a red flag.&#xA;&#xA;Rotate credentials on a schedule. GCP service accounts, AWS keys, API tokens. If you can&#39;t remember when you last rotated them, rotate them now. This is boring work. It&#39;s also the work that matters most.&#xA;&#xA;Be careful with third-party Homebrew taps and AI model sources. Attackers are actively abusing AI platforms like Hugging Face for malware delivery, exploiting trust in AI ecosystems to embed malicious functionality that can trigger further actions through AI-driven workflows. The trust we extend to these platforms is the attack vector.&#xA;&#xA;The Honest Caveat&#xA;&#xA;I&#39;m not a security professional. I&#39;m a builder who got serious about this after looking at the 2026 numbers and recognising my own habits in the risk profile.&#xA;&#xA;The vibe coding reckoning isn&#39;t coming. It&#39;s here. And it&#39;s targeting exactly the kind of developer who builds fast, ships often, and trusts the AI output because it works.&#xA;&#xA;Working and safe are not the same thing.&#xA;&#xA;I&#39;m still tightening my own setup. I&#39;m running these audits across my active projects this week. If you&#39;ve been building with AI tools and haven&#39;t done a security pass yet, this is a reasonable place to start.&#xA;&#xA;---&#xA;&#xA;What&#39;s the security check you&#39;ve been meaning to do but keep putting off? I&#39;m genuinely curious what the gap is for most builders.]]&gt;</description>
      <content:encoded><![CDATA[<p>I had an uncomfortable realisation recently while auditing my own projects.</p>

<p>I&#39;ve been building fast. Web apps, data dashboards. Using AI tools to accelerate everything. And somewhere in the middle of all that momentum, I stopped reading the code as carefully as I used to. Not because I stopped caring. Because the output <em>looked</em> fine. It ran. It shipped.</p>

<p>That&#39;s exactly the problem.</p>

<p><img src="https://cdn.bernie.studio/74bcdd95b9a8/medium.webp"/></p>

<h2 id="what-s-actually-happening-right-now" id="what-s-actually-happening-right-now">What&#39;s Actually Happening Right Now</h2>

<p>This isn&#39;t a theoretical risk. The data from Q1 2026 is genuinely alarming.</p>

<p>Researchers at Georgia Tech have been tracking CVEs directly caused by AI-generated code. In January 2026 there were 6. By February, 15. By March, 35. That&#39;s not a blip. That&#39;s a curve.</p>

<p>Between 40 and 62% of AI-generated code contains security vulnerabilities, depending on the study. In Q1 2026, 91.5% of vibe-coded apps had at least one AI hallucination-related flaw. And the Lovable platform — valued at $6.6 billion with eight million users — spent the past two months dealing with incidents that collectively exposed source code, database credentials, AI chat histories, and personal data of thousands of users.</p>

<p>The supply chain situation is just as bad. In March 2026, the LiteLLM package on PyPI was compromised, potentially exposing 500,000 credentials including API keys for Meta, OpenAI, and Anthropic. In April, a Bitwarden CLI package on npm was hijacked with a payload specifically designed to harvest credentials from AI coding tools including Claude Code, Cursor, Codex CLI, and Aider.</p>

<p>And here&#39;s the part that got my attention: stolen data was uploaded to private Hugging Face datasets, meaning malicious traffic blended seamlessly with everyday AI research activity and easily evaded scrutiny.</p>

<p>The tools we trust are becoming the attack surface.</p>

<h2 id="a-quick-audit-you-can-run-today" id="a-quick-audit-you-can-run-today">A Quick Audit You Can Run Today</h2>

<p>If you&#39;ve been building with AI tools and haven&#39;t checked your projects, here&#39;s where to start. This is not exhaustive. It&#39;s the minimum.</p>

<p><strong>Step 1 — Scan for secrets accidentally committed to git</strong></p>

<pre><code class="language-bash">brew install gitleaks
gitleaks detect --source=. -v
</code></pre>

<p>If you&#39;ve ever pasted an API key into a file and committed it, even briefly, this will find it.</p>

<p><strong>Step 2 — Audit your Python dependencies</strong></p>

<pre><code class="language-bash">pip install pip-audit --break-system-packages
pip-audit
</code></pre>

<p><strong>Step 3 — Audit your Node dependencies</strong></p>

<pre><code class="language-bash">npm audit --audit-level=moderate
</code></pre>

<p><strong>Step 4 — Check for dangerous patterns in your own code</strong></p>

<pre><code class="language-bash">grep -rn &#34;exec\|eval\|base64.decode\|os.system&#34; . \
  --include=&#34;*.py&#34; --include=&#34;*.js&#34; \
  --exclude-dir=node_modules
</code></pre>

<p><strong>Step 5 — Verify no .env files are tracked in git</strong></p>

<pre><code class="language-bash">git ls-files | grep -E &#34;\.env|\.key|\.pem|secret|credential&#34;
</code></pre>

<p>That&#39;s it for a first pass. It takes less than ten minutes and most people have never done it.</p>

<h2 id="habits-that-actually-help" id="habits-that-actually-help">Habits That Actually Help</h2>

<p>These aren&#39;t one-time fixes. They&#39;re the baseline I&#39;m now holding myself to.</p>
<ol><li><p><strong>Read the code AI generates before running it.</strong> Not every line. But every file that touches auth, credentials, or external APIs. AI hallucinates permissions. It adds network calls you didn&#39;t ask for. It misconfigures database access. The output looks clean because it&#39;s well-formatted, not because it&#39;s safe.</p></li>

<li><p><strong>Never commit a secret. Ever.</strong> Use <code>.env</code> files. Add them to <code>.gitignore</code> before you write a single line. Use a secrets manager like Doppler or AWS Secrets Manager for anything production-facing. GitHub&#39;s secret scanning can catch it after the fact, but once a key has been committed and pushed, assume it&#39;s compromised.</p></li>

<li><p><strong>Run <code>npm audit</code> and <code>pip-audit</code> regularly.</strong> Attackers are now publishing malicious versions of legitimate packages in coordinated campaigns, affecting well-known projects across both npm and PyPI in the same wave. Weekly is not paranoid. It&#39;s appropriate.</p></li>

<li><p><strong>Pin your dependencies.</strong> Loose version ranges like <code>^1.2.0</code> mean you can get a different package next week than you tested with. A malicious @bitwarden/cli version was published that impersonated the legitimate CLI, executed a credential-stealing payload, and self-propagated by backdooring every npm package the victim could publish. Pinning doesn&#39;t fully prevent this, but it reduces your exposure window.</p></li>

<li><p><strong>Check what&#39;s actually installed before you install it.</strong> For Homebrew: <code>brew cat &lt;package&gt;</code> shows you the formula. For PyPI and npm, look at the maintainer account — how old is it? How many other packages? A 3-day-old account with one package that does something useful is a red flag.</p></li>

<li><p><strong>Rotate credentials on a schedule.</strong> GCP service accounts, AWS keys, API tokens. If you can&#39;t remember when you last rotated them, rotate them now. This is boring work. It&#39;s also the work that matters most.</p></li>

<li><p><strong>Be careful with third-party Homebrew taps and AI model sources.</strong> Attackers are actively abusing AI platforms like Hugging Face for malware delivery, exploiting trust in AI ecosystems to embed malicious functionality that can trigger further actions through AI-driven workflows. The trust we extend to these platforms is the attack vector.</p></li></ol>

<h2 id="the-honest-caveat" id="the-honest-caveat">The Honest Caveat</h2>

<p>I&#39;m not a security professional. I&#39;m a builder who got serious about this after looking at the 2026 numbers and recognising my own habits in the risk profile.</p>

<p>The vibe coding reckoning isn&#39;t coming. It&#39;s here. And it&#39;s targeting exactly the kind of developer who builds fast, ships often, and trusts the AI output because it works.</p>

<p>Working and safe are not the same thing.</p>

<p>I&#39;m still tightening my own setup. I&#39;m running these audits across my active projects this week. If you&#39;ve been building with AI tools and haven&#39;t done a security pass yet, this is a reasonable place to start.</p>

<hr>

<p><em>What&#39;s the security check you&#39;ve been meaning to do but keep putting off? I&#39;m genuinely curious what the gap is for most builders.</em></p>
]]></content:encoded>
      <guid>https://berniepng.com/your-ai-wrote-that-code</guid>
      <pubDate>Mon, 25 May 2026 07:14:54 +0000</pubDate>
    </item>
    <item>
      <title>Notion Just Gone Geek</title>
      <link>https://berniepng.com/notion-just-gone-geek</link>
      <description>&lt;![CDATA[I woke up yesterday to Notion announcing their Developer Platform.&#xA;&#xA;My first reaction, honestly? Mild panic. &#34;Workers&#34;, &#34;External Agents API&#34;, &#34;hosted runtime&#34;. I&#39;ve been using Notion since 2020 and suddenly the release notes felt like they were written for someone else.&#xA;&#xA;Then I realised that this is actually the most important Notion update for non-technical business owners. &#xA;&#xA;What actually changed?&#xA;&#xA;Notion has always been great at storing and organising your information. What it couldn&#39;t do was act on that information automatically - at least not without expensive integrations or a developer on call.&#xA;&#xA;That changes now.&#xA;&#xA;Your Notion workspace can now run code (using Workers). Not you. Notion. You describe what you want to happen - a client submits a form, an entry gets created, a Slack message gets sent, a follow-up task appears - and Notion executes it, on its own infrastructure, without you needing to maintain anything.&#xA;&#xA;You can bring external AI agents into Notion. Claude, Codex, or agents you build yourself. Notion becomes the single place where your team and your AI tools work together, on the same data. You know by who I&#39;m going to bring along ... :)&#xA;&#xA;The boundary between &#34;tool&#34; and &#34;team member&#34; just got blurrier. In a good way.&#xA;&#xA;Most small business owners I talk to aren&#39;t drowning in a lack of tools. They&#39;re drowning in tools that don&#39;t talk to each other, and admin work that never ends.&#xA;&#xA;A client inquiry comes in. Someone has to move it to the CRM. Someone has to create the follow-up task. Someone has to send the acknowledgement. Someone has to update the status when it moves.&#xA;&#xA;That someone is usually you (and my past self!)&#xA;&#xA;What Notion just built is the infrastructure to make that loop automatic. Not &#34;automatic if you have a developer&#34;. Actually automatic, for people who run businesses, not code them.&#xA;&#xA;I&#39;m still learning this. I don&#39;t have a finished build to show you yet.&#xA;&#xA;But I&#39;m building one - a simple yet powerful business operating system for solopreneurs and small teams.&#xA;&#xA;Notion used to be a place you organised your thinking. It&#39;s becoming a place that acts on your thinking.&#xA;&#xA;That&#39;s a meaningful shift. And for anyone running a business where time is the real bottleneck, it&#39;s worth paying attention to.&#xA;&#xA;If you&#39;ve been on the fence about building your operations in Notion - this is probably the moment to look again.&#xA;&#xA;I&#39;m curious - what&#39;s the one repetitive task in your business you&#39;d automate first if you could?&#xA;&#xA;#NotionAI #Notion #NotionDeveloper]]&gt;</description>
      <content:encoded><![CDATA[<p>I woke up yesterday to Notion announcing their Developer Platform.</p>

<p>My first reaction, honestly? Mild panic. “Workers”, “External Agents API”, “hosted runtime”. I&#39;ve been using Notion since 2020 and suddenly the release notes felt like they were written for someone else.</p>

<p>Then I realised that this is actually the most important Notion update for non-technical business owners.</p>

<p>What actually changed?</p>

<p>Notion has always been great at storing and organising your information. What it couldn&#39;t do was act on that information automatically – at least not without expensive integrations or a developer on call.</p>

<p>That changes now.</p>
<ol><li><p>Your Notion workspace can now run code (using Workers). Not you. Notion. You describe what you want to happen – a client submits a form, an entry gets created, a Slack message gets sent, a follow-up task appears – and Notion executes it, on its own infrastructure, without you needing to maintain anything.</p></li>

<li><p>You can bring external AI agents into Notion. Claude, Codex, or agents you build yourself. Notion becomes the single place where your team and your AI tools work together, on the same data. You know by who I&#39;m going to bring along ... :)</p></li>

<li><p>The boundary between “tool” and “team member” just got blurrier. In a good way.</p></li></ol>

<p>Most small business owners I talk to aren&#39;t drowning in a lack of tools. They&#39;re drowning in tools that don&#39;t talk to each other, and admin work that never ends.</p>

<p>A client inquiry comes in. Someone has to move it to the CRM. Someone has to create the follow-up task. Someone has to send the acknowledgement. Someone has to update the status when it moves.</p>

<p>That someone is usually you (and my past self!)</p>

<p>What Notion just built is the infrastructure to make that loop automatic. Not “automatic if you have a developer”. Actually automatic, for people who run businesses, not code them.</p>

<p>I&#39;m still learning this. I don&#39;t have a finished build to show you yet.</p>

<p>But I&#39;m building one – a simple yet powerful business operating system for solopreneurs and small teams.</p>

<p>Notion used to be a place you organised your thinking. It&#39;s becoming a place that acts on your thinking.</p>

<p>That&#39;s a meaningful shift. And for anyone running a business where time is the real bottleneck, it&#39;s worth paying attention to.</p>

<p>If you&#39;ve been on the fence about building your operations in Notion – this is probably the moment to look again.</p>

<p>I&#39;m curious – what&#39;s the one repetitive task in your business you&#39;d automate first if you could?</p>

<p><a href="https://berniepng.com/tag:NotionAI" class="hashtag"><span>#</span><span class="p-category">NotionAI</span></a> <a href="https://berniepng.com/tag:Notion" class="hashtag"><span>#</span><span class="p-category">Notion</span></a> <a href="https://berniepng.com/tag:NotionDeveloper" class="hashtag"><span>#</span><span class="p-category">NotionDeveloper</span></a></p>
]]></content:encoded>
      <guid>https://berniepng.com/notion-just-gone-geek</guid>
      <pubDate>Fri, 15 May 2026 09:57:13 +0000</pubDate>
    </item>
    <item>
      <title>May the force be with all of us</title>
      <link>https://berniepng.com/may-the-force-be-with-all-of-us</link>
      <description>&lt;![CDATA[On this day, 10 years ago, IBM decided to put quantum computing into the cloud, and 10 years later, today, I discovered quantum computing on a personal level while doing research on my AI journey.&#xA;&#xA;I&#39;ve decided to make it my north star to join in the climate fight by focusing on the magical process of photosynthesis, back to the beginning of it all, without it, we would all perish. I will join the search to figure out how we can upcycle carbon dioxide and be able to decode photosynthesis so that we can learn from nature to help our world and maybe eventually explore other worlds, with our plants.&#xA;&#xA;As of today I do not have the capability nor the financial resources to do much, but I will make use of any current research, claude, and some basic prototyping to understand more as a citizen scientist so that I can contribute meaningfully in the future.&#xA;&#xA;My first step is documented in my github repo. If you are also in this quest, please contact me. I have much to learn. a href=&#34;https://github.com/berniepng/decoding-photosynthesis&#34; target=&#34;blank&#34;GitHub: Decoding Photosynthesis/a&#xA;&#xA;Read a href=&#34;https://www.ibm.com/quantum/blog/decade-of-quantum&#34; target=&#34;blank&#34;&#34;A decade of quantum in the cloud&#34;/a on the IBM blog.&#xA;&#xA;DecodingPhotosynthesis]]&gt;</description>
      <content:encoded><![CDATA[<p>On this day, 10 years ago, IBM decided to put quantum computing into the cloud, and 10 years later, today, I discovered quantum computing on a personal level while doing research on my AI journey.</p>

<p>I&#39;ve decided to make it my north star to join in the climate fight by focusing on the magical process of photosynthesis, back to the beginning of it all, without it, we would all perish. I will join the search to figure out how we can upcycle carbon dioxide and be able to decode photosynthesis so that we can learn from nature to help our world and maybe eventually explore other worlds, with our plants.</p>

<p>As of today I do not have the capability nor the financial resources to do much, but I will make use of any current research, claude, and some basic prototyping to understand more as a citizen scientist so that I can contribute meaningfully in the future.</p>

<p>My first step is documented in my github repo. If you are also in this quest, please contact me. I have much to learn. <a href="https://github.com/berniepng/decoding-photosynthesis" target="_blank">GitHub: Decoding Photosynthesis</a></p>

<p>Read <a href="https://www.ibm.com/quantum/blog/decade-of-quantum" target="_blank">“A decade of quantum in the cloud”</a> on the IBM blog.</p>

<p><a href="https://berniepng.com/tag:DecodingPhotosynthesis" class="hashtag"><span>#</span><span class="p-category">DecodingPhotosynthesis</span></a></p>
]]></content:encoded>
      <guid>https://berniepng.com/may-the-force-be-with-all-of-us</guid>
      <pubDate>Mon, 04 May 2026 08:58:27 +0000</pubDate>
    </item>
    <item>
      <title>I Used Claude to Build a Tool So I&#39;d Stop Using Claude</title>
      <link>https://berniepng.com/i-used-claude-to-build-a-tool-so-id-stop-using-claude</link>
      <description>&lt;![CDATA[I had a small but clarifying moment this week.&#xA;&#xA;I was about to type &#34;can you rename all these files by replacing the spaces with underscores&#34; into Claude — and I caught myself. That&#39;s a terrible use of a frontier model. It&#39;s like calling a senior consultant to move boxes. The capability is there, but the cost-to-task ratio makes no sense.&#xA;&#xA;So I did something different. I asked Claude to help me build a tool that I&#39;d never have to ask Claude again.&#xA;&#xA;The Problem With Asking Claude to Rename Files&#xA;Every time you send a message to Claude, you&#39;re spending tokens. For simple, repetitive file operations — renaming, reorganising, cleaning up — that&#39;s wasteful. Claude&#39;s real value is in reasoning, writing, and building things. Not shuffling filenames.&#xA;&#xA;What I wanted was a local tool I could run from anywhere, that understood plain English, and that didn&#39;t phone home to any cloud service every time I needed to clean up a folder.&#xA;&#xA;What I Built&#xA;img src=&#34;https://cdn.bernie.studio/tpqXcx0Nz-/original.webp&#34; width=&#34;600&#34; /&#xA;The tool is called Ollama File Renamer. Here&#39;s how it works:&#xA;&#xA;You type a plain English instruction — &#34;replace all spaces and dashes with underscores&#34; or &#34;add today&#39;s date before the extension&#34;&#xA;&#xA;It sends that instruction plus your file list to a local LLM running on Ollama&#xA;You get a preview table showing exactly what will change. You confirm, and it executes.&#xA;&#xA;No cloud. No API costs. No data leaving your machine. And critically — no Claude involved at runtime.&#xA;&#xA;I used Claude to write the code once. Now Ollama and a local model handle every rename job after that. That&#39;s the right division of labour.&#xA;&#xA;The Key Idea: Build Once, Run Locally Forever&#xA;This is something I&#39;m thinking about more deliberately. Claude — or any frontier model — is genuinely useful for the building phase. Reasoning through architecture, writing clean code, debugging edge cases, drafting documentation. That&#39;s where the reasoning capability earns its cost.&#xA;But for execution of repetitive tasks? Local models on Ollama are fast, private, and free to run as many times as you want. The right move is to use the expensive model to create the tool, then hand off the actual work to something local.&#xA;&#xA;It&#39;s a small mindset shift, but it changes how you think about AI in your workflow. You stop treating Claude like a command line and start treating it like an architect.&#xA;&#xA;It&#39;s Not Perfect Yet&#xA;&#xA;The tool has a known quirk: if you ask it to add &#34;today&#39;s date,&#34; smaller models sometimes return a literal placeholder like YYYY-MM-DD instead of the actual date. I&#39;m working on a fix that injects the real date into the prompt before it reaches the model — so it gets a concrete instruction, not an ambiguous one.&#xA;&#xA;  The code and full setup instructions are on GitHub: a href=&#34;https://github.com/berniepng/ollama-file-renamer&#34; target=&#34;blank&#34;Ollama File Renamer/a&#xA;&#xA;You&#39;ll need Ollama installed and any model pulled locally. One line in the config to point it at whichever model you&#39;re running. That&#39;s it.&#xA;&#xA;What Model Should You Use?&#xA;I&#39;ve been running it on gemma4:e2b. It&#39;s fast and handles straightforward rename instructions well. For more complex or ambiguous instructions, a larger model like gemma3:27b or qwen2.5:14b will give you more reliable structured output.&#xA;&#xA;I&#39;m curious — how are you currently deciding which tasks go to a frontier model versus a local one? I&#39;m still building out my own mental model for where the line sits.]]&gt;</description>
      <content:encoded><![CDATA[<p>I had a small but clarifying moment this week.</p>

<p>I was about to type <em>“can you rename all these files by replacing the spaces with underscores”</em> into Claude — and I caught myself. That&#39;s a terrible use of a frontier model. It&#39;s like calling a senior consultant to move boxes. The capability is there, but the cost-to-task ratio makes no sense.</p>

<p>So I did something different. I asked Claude to help me build a tool that I&#39;d never have to ask Claude again.</p>

<p><strong>The Problem With Asking Claude to Rename Files</strong>
Every time you send a message to Claude, you&#39;re spending tokens. For simple, repetitive file operations — renaming, reorganising, cleaning up — that&#39;s wasteful. Claude&#39;s real value is in reasoning, writing, and building things. Not shuffling filenames.</p>

<p>What I wanted was a local tool I could run from anywhere, that understood plain English, and that didn&#39;t phone home to any cloud service every time I needed to clean up a folder.</p>

<p><strong>What I Built</strong>
<img src="https://cdn.bernie.studio/tpqXcx0Nz-/original.webp" width="600"/>
The tool is called Ollama File Renamer. Here&#39;s how it works:</p>

<p>You type a plain English instruction — “replace all spaces and dashes with underscores” or “add today&#39;s date before the extension”</p>

<p>It sends that instruction plus your file list to a local LLM running on Ollama
You get a preview table showing exactly what will change. You confirm, and it executes.</p>

<p>No cloud. No API costs. No data leaving your machine. And critically — no Claude involved at runtime.</p>

<p>I used Claude to write the code once. Now Ollama and a local model handle every rename job after that. That&#39;s the right division of labour.</p>

<p><strong>The Key Idea: Build Once, Run Locally Forever</strong>
This is something I&#39;m thinking about more deliberately. Claude — or any frontier model — is genuinely useful for the building phase. Reasoning through architecture, writing clean code, debugging edge cases, drafting documentation. That&#39;s where the reasoning capability earns its cost.
But for execution of repetitive tasks? Local models on Ollama are fast, private, and free to run as many times as you want. The right move is to use the expensive model to create the tool, then hand off the actual work to something local.</p>

<p>It&#39;s a small mindset shift, but it changes how you think about AI in your workflow. You stop treating Claude like a command line and start treating it like an architect.</p>

<p>It&#39;s Not Perfect Yet</p>

<p>The tool has a known quirk: if you ask it to add “today&#39;s date,” smaller models sometimes return a literal placeholder like _YYYY-MM-DD instead of the actual date. I&#39;m working on a fix that injects the real date into the prompt before it reaches the model — so it gets a concrete instruction, not an ambiguous one.</p>

<blockquote><p>The code and full setup instructions are on GitHub: <a href="https://github.com/berniepng/ollama-file-renamer" target="_blank">Ollama File Renamer</a></p></blockquote>

<p>You&#39;ll need Ollama installed and any model pulled locally. One line in the config to point it at whichever model you&#39;re running. That&#39;s it.</p>

<p><strong>What Model Should You Use?</strong>
I&#39;ve been running it on gemma4:e2b. It&#39;s fast and handles straightforward rename instructions well. For more complex or ambiguous instructions, a larger model like gemma3:27b or qwen2.5:14b will give you more reliable structured output.</p>

<p>I&#39;m curious — how are you currently deciding which tasks go to a frontier model versus a local one? I&#39;m still building out my own mental model for where the line sits.</p>
]]></content:encoded>
      <guid>https://berniepng.com/i-used-claude-to-build-a-tool-so-id-stop-using-claude</guid>
      <pubDate>Fri, 01 May 2026 16:14:12 +0000</pubDate>
    </item>
    <item>
      <title>Tiering my LLMs so I stop burning money thinking out loud</title>
      <link>https://berniepng.com/tiering-my-llms-so-i-stop-burning-money-thinking-out-loud</link>
      <description>&lt;![CDATA[I had an uncomfortable moment recently. I looked at how I was using AI and realised I was doing what I used to hate about email, treating every situation the same way, defaulting to the same tool, and wondering why things felt inefficient. I was using Claude for everything. Quick lookups. Document summaries. Tasks I already knew the answer to. It&#39;s like hiring a senior consultant to photocopy things. So I built a simple tiering system. Three models. Each one has a specific job. And my token spend, and more importantly, my thinking, got a lot cleaner.&#xA;&#xA;Tier 1: Claude for thinking&#xA;This is where the real work happens.&#xA;When I wanted to build a personal finance system, I didn&#39;t ask Claude to build it. I asked Claude to help me think through what I actually needed, the folder structure, the monthly operating skills, a sensible way to keep my balance sheet updated. Claude helped me design the blueprint.&#xA;That blueprint becomes the instruction set for everything downstream. So this is where I invest time getting it right.&#xA;&#xA;Tier 2: Gemini for research and comparison&#xA;Once I have a direction, I don&#39;t need deep reasoning anymore. I need fast, reliable information. Gemini handles my desk research. Comparing tools. Pulling facts. Understanding what something actually does before I commit to it. Its context window is large, it&#39;s cheaper for this kind of work, and frankly it&#39;s better suited to it than Claude is. Right tool, right job.&#xA;&#xA;Tier 3: Gemma running locally, for free&#xA;This is the part I&#39;m most excited about, and the part most people skip entirely. I run Gemma 4 (e2b) locally via Ollama. On its own, a small local model isn&#39;t impressive. But I&#39;ve been building modelfiles from what I&#39;ve worked out with Claude, distilling the reasoning, the structure, the decisions into a reusable skill that Gemma can execute. No API. No cloud. No ongoing cost. The effort is front-loaded. Once the logic is right, Gemma just runs it. Indefinitely. I&#39;m still building this out, the library is small, the system isn&#39;t fully automated yet. But even half-built, it&#39;s already changed how I approach the question of where AI effort should actually go.&#xA;&#xA;I&#39;m not saying everyone needs three models. But if you&#39;re defaulting to one for everything, you&#39;re either overpaying, underusing what&#39;s available, or both.&#xA;&#xA;I&#39;m curious: if you&#39;re using more than one AI right now, what&#39;s your actual decision rule for which task goes where? Do you even have one?&#xA;&#xA;#AIWorkflow #LocalLLM #Ollama #AILiteracy #BuildingInPublic]]&gt;</description>
      <content:encoded><![CDATA[<p>I had an uncomfortable moment recently. I looked at how I was using AI and realised I was doing what I used to hate about email, treating every situation the same way, defaulting to the same tool, and wondering why things felt inefficient. I was using Claude for everything. Quick lookups. Document summaries. Tasks I already knew the answer to. It&#39;s like hiring a senior consultant to photocopy things. So I built a simple tiering system. Three models. Each one has a specific job. And my token spend, and more importantly, my thinking, got a lot cleaner.</p>

<p><strong>Tier 1: Claude for thinking</strong>
This is where the real work happens.
When I wanted to build a personal finance system, I didn&#39;t ask Claude to build it. I asked Claude to help me think through what I actually needed, the folder structure, the monthly operating skills, a sensible way to keep my balance sheet updated. Claude helped me design the blueprint.
That blueprint becomes the instruction set for everything downstream. So this is where I invest time getting it right.</p>

<p><strong>Tier 2: Gemini for research and comparison</strong>
Once I have a direction, I don&#39;t need deep reasoning anymore. I need fast, reliable information. Gemini handles my desk research. Comparing tools. Pulling facts. Understanding what something actually does before I commit to it. Its context window is large, it&#39;s cheaper for this kind of work, and frankly it&#39;s better suited to it than Claude is. Right tool, right job.</p>

<p><strong>Tier 3: Gemma running locally, for free</strong>
This is the part I&#39;m most excited about, and the part most people skip entirely. I run Gemma 4 (e2b) locally via Ollama. On its own, a small local model isn&#39;t impressive. But I&#39;ve been building modelfiles from what I&#39;ve worked out with Claude, distilling the reasoning, the structure, the decisions into a reusable skill that Gemma can execute. No API. No cloud. No ongoing cost. The effort is front-loaded. Once the logic is right, Gemma just runs it. Indefinitely. I&#39;m still building this out, the library is small, the system isn&#39;t fully automated yet. But even half-built, it&#39;s already changed how I approach the question of where AI effort should actually go.</p>

<p>I&#39;m not saying everyone needs three models. But if you&#39;re defaulting to one for everything, you&#39;re either overpaying, underusing what&#39;s available, or both.</p>

<p>I&#39;m curious: if you&#39;re using more than one AI right now, what&#39;s your actual decision rule for which task goes where? Do you even have one?</p>

<p><a href="https://berniepng.com/tag:AIWorkflow" class="hashtag"><span>#</span><span class="p-category">AIWorkflow</span></a> <a href="https://berniepng.com/tag:LocalLLM" class="hashtag"><span>#</span><span class="p-category">LocalLLM</span></a> <a href="https://berniepng.com/tag:Ollama" class="hashtag"><span>#</span><span class="p-category">Ollama</span></a> <a href="https://berniepng.com/tag:AILiteracy" class="hashtag"><span>#</span><span class="p-category">AILiteracy</span></a> <a href="https://berniepng.com/tag:BuildingInPublic" class="hashtag"><span>#</span><span class="p-category">BuildingInPublic</span></a></p>
]]></content:encoded>
      <guid>https://berniepng.com/tiering-my-llms-so-i-stop-burning-money-thinking-out-loud</guid>
      <pubDate>Fri, 01 May 2026 12:22:45 +0000</pubDate>
    </item>
    <item>
      <title>I Re-created My Favourite Childhood Game</title>
      <link>https://berniepng.com/i-re-created-my-favourite-childhood-game</link>
      <description>&lt;![CDATA[Do a Google search on &#34;Casio calculator game&#34; and you will be brought to pages that describe a particular model of Casio calculator sold in the 1980s called MG-880. &#xA;&#xA;I spent my days just button mashing this thing and it was addictive as it was simple - you just have to match the numbers that are approaching and press another button to &#34;shoot&#34;. When you make a sum of 10, an &#34;n&#34; appears and when you shoot that it clears the field.&#xA;&#xA;So I entered a prompt into Google&#39;s AI Studio just as a way to test the process of building an app on this platform. I had some difficulties. It took less than an hour to get an MVP working, but guess what, it took more than a day to troubleshoot why the leaderboard doesn&#39;t work. And I don&#39;t think I need to use firestore to handle this. We&#39;ll see.&#xA;&#xA;But, if you just want to try it out, I&#39;ve shared it here - don&#39;t get too attached to the leaderboard yet, it is unpredictable. Give me some time to fix it in the next few days. &#xA;&#xA;  a href=&#34;https://tickerstrike.powerofsmol.com&#34; target=&#34;_blank&#34;Try out Ticker Strike!/a&#xA;&#xA;img src=&#34;https://cdn.bernie.studio/ef1c6xHTYC/medium.webp&#34; /&#xA;&#xA;Have a great weekend.]]&gt;</description>
      <content:encoded><![CDATA[<p>Do a Google search on “Casio calculator game” and you will be brought to pages that describe a particular model of Casio calculator sold in the 1980s called MG-880.</p>

<p>I spent my days just button mashing this thing and it was addictive as it was simple – you just have to match the numbers that are approaching and press another button to “shoot”. When you make a sum of 10, an “n” appears and when you shoot that it clears the field.</p>

<p>So I entered a prompt into Google&#39;s AI Studio just as a way to test the process of building an app on this platform. I had some difficulties. It took less than an hour to get an MVP working, but guess what, it took more than a day to troubleshoot why the leaderboard doesn&#39;t work. And I don&#39;t think I need to use firestore to handle this. We&#39;ll see.</p>

<p>But, if you just want to try it out, I&#39;ve shared it here – don&#39;t get too attached to the leaderboard yet, it is unpredictable. Give me some time to fix it in the next few days.</p>

<blockquote><p><a href="https://tickerstrike.powerofsmol.com" target="_blank">Try out Ticker Strike!</a></p></blockquote>

<p><img src="https://cdn.bernie.studio/ef1c6xHTYC/medium.webp"/></p>

<p>Have a great weekend.</p>
]]></content:encoded>
      <guid>https://berniepng.com/i-re-created-my-favourite-childhood-game</guid>
      <pubDate>Thu, 23 Apr 2026 10:38:11 +0000</pubDate>
    </item>
    <item>
      <title>I Got Rejected by AI Singapore</title>
      <link>https://berniepng.com/i-got-rejected-by-ai-singapore</link>
      <description>&lt;![CDATA[Maybe this is what a sprint feels like - you give your everything, days, nights and free time all towards one specific goal - jab, jab, jab. You run your best 100m, but ... you didn&#39;t get first. Didn&#39;t get picked. You were not enough.&#xA;&#xA;That&#39;s how I&#39;m feeling right now. Rejection sucks, it unleashes a giant cloud of &#34;what went wrong?&#34;, &#34;I thought it was good&#34;, &#34;What did I miss?&#34;, &#34;Am I really that bad?&#34;, &#34;Was I too full of myself?&#34; thoughts that impairs visions on day 1, but it eventually subsides as a the days go by.&#xA;&#xA;It&#39;s been three days since I got rejected from AI Singapore for their a href=&#34;https://aiap.sg/apprenticeship/&#34; target=&#34;blank&#34;Apprenticeship Programme/a. When I attended the briefing about two months back it felt like something achievable - they were looking to build AI talent in Singapore and you didn&#39;t need to be of computer science background nor of any particular age to get selected. I really thought that it was a way for me to build my portfolio and credibility in this competitive sector, and have always had a dream of helping Singapore build her AI competency in a global landscape. I was suddenly brought back to my twenties, when after graduating NUS with a degree in Real Estate, I dreamt about helping shape Singapore&#39;s urban landscape by joining the URA. I was rejected then. &#xA;&#xA;Although life presented me with many nice surprises and opportunities after, now 20 plus years later, that &#34;dream unfulfilled&#34; still resides in the back of my mind. I thought that now this time I could try again, this time with AI instead of Real Estate. But maybe life keeps pointing me somewhere better.&#xA;&#xA;Today is Wednesday, April 15, 2026, 11:35am. I&#39;ll just grieve over my self-doubt for a few more minutes, then start thinking about different options. I&#39;m deathly focused on committing the next chapter of my life to figuring AI (machine learning, large language models) out, because I believe this is truly the next wave in tech, just like how the age of Internet and digital marketing transformed businesses in the 2000s.&#xA;&#xA;My purpose is not to be housed in a datacentre (like I envisioned), but to get out there to help businesses understand this new transformation. This will be my new focus.&#xA;&#xA;Let&#39;s continue building.&#xA;&#xA;#Rejection #Apprenticeship #AISingapore #AIAP #CareerPivot&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>Maybe this is what a sprint feels like – you give your everything, days, nights and free time all towards one specific goal – jab, jab, jab. You run your best 100m, but ... you didn&#39;t get first. Didn&#39;t get picked. You were not enough.</p>

<p>That&#39;s how I&#39;m feeling right now. Rejection sucks, it unleashes a giant cloud of “what went wrong?”, “I thought it was good”, “What did I miss?”, “Am I really that bad?”, “Was I too full of myself?” thoughts that impairs visions on day 1, but it eventually subsides as a the days go by.</p>

<p>It&#39;s been three days since I got rejected from AI Singapore for their <a href="https://aiap.sg/apprenticeship/" target="blank">Apprenticeship Programme</a>. When I attended the briefing about two months back it felt like something achievable – they were looking to build AI talent in Singapore and you didn&#39;t need to be of computer science background nor of any particular age to get selected. I really thought that it was a way for me to build my portfolio and credibility in this competitive sector, and have always had a dream of helping Singapore build her AI competency in a global landscape. I was suddenly brought back to my twenties, when after graduating NUS with a degree in Real Estate, I dreamt about helping shape Singapore&#39;s urban landscape by joining the URA. I was rejected then.</p>

<p>Although life presented me with many nice surprises and opportunities after, now 20 plus years later, that “dream unfulfilled” still resides in the back of my mind. I thought that now this time I could try again, this time with AI instead of Real Estate. But maybe life keeps pointing me somewhere better.</p>

<p>Today is Wednesday, April 15, 2026, 11:35am. I&#39;ll just grieve over my self-doubt for a few more minutes, then start thinking about different options. I&#39;m deathly focused on committing the next chapter of my life to figuring AI (machine learning, large language models) out, because I believe this is truly the next wave in tech, just like how the age of Internet and digital marketing transformed businesses in the 2000s.</p>

<p>My purpose is not to be housed in a datacentre (like I envisioned), but to get out there to help businesses understand this new transformation. This will be my new focus.</p>

<p>Let&#39;s continue building.</p>

<p><a href="https://berniepng.com/tag:Rejection" class="hashtag"><span>#</span><span class="p-category">Rejection</span></a> <a href="https://berniepng.com/tag:Apprenticeship" class="hashtag"><span>#</span><span class="p-category">Apprenticeship</span></a> <a href="https://berniepng.com/tag:AISingapore" class="hashtag"><span>#</span><span class="p-category">AISingapore</span></a> <a href="https://berniepng.com/tag:AIAP" class="hashtag"><span>#</span><span class="p-category">AIAP</span></a> <a href="https://berniepng.com/tag:CareerPivot" class="hashtag"><span>#</span><span class="p-category">CareerPivot</span></a></p>
]]></content:encoded>
      <guid>https://berniepng.com/i-got-rejected-by-ai-singapore</guid>
      <pubDate>Wed, 15 Apr 2026 03:42:33 +0000</pubDate>
    </item>
    <item>
      <title>Built My Very Own Every Song Database</title>
      <link>https://berniepng.com/built-my-very-own-every-song-database</link>
      <description>&lt;![CDATA[Last night I went for a live viewing of the BTS concert. This morning I woke up thinking &#xA;&#xA;  &#34;I want to listen to all the BTS songs out there&#34;. &#xA;&#xA;So I went to Spotify to curate the albums. Then I thought:&#xA;&#xA;  &#34;wouldn&#39;t it be great if I can download a full list of songs that BTS ever created&#34;. &#xA;&#xA;So I asked Claude to build me an app that could do just that, called &#34;EverySong&#34;. The code is simple, Claude will search the internet for a list of songs based on a particular music artist, and then create a CSV file. The code will create a filterable list where you can search by release date, album name, singer and read a little description about the song. It took me an afternoon. It was nice to switch from machine learning to music. I had fun.&#xA;&#xA;img src=&#34;https://cdn.bernie.studio/pseV94hGBT/medium.webp&#34; /&#xA;&#xA;The repo is on GitHub if you&#39;d like to take a look at the tech stack.&#xA;https://github.com/berniepng/everysong&#xA;&#xA;The website is here&#xA;https://demo.bernie.studio/everysong&#xA;&#xA;What artist would you like to curate?&#xA;&#xA;#bts #claude #petshopboys #music]]&gt;</description>
      <content:encoded><![CDATA[<p>Last night I went for a live viewing of the BTS concert. This morning I woke up thinking</p>

<blockquote><p>“I want to listen to all the BTS songs out there”.</p></blockquote>

<p>So I went to Spotify to curate the albums. Then I thought:</p>

<blockquote><p>“wouldn&#39;t it be great if I can download a full list of songs that BTS ever created”.</p></blockquote>

<p>So I asked Claude to build me an app that could do just that, called <strong>“EverySong”</strong>. The code is simple, Claude will search the internet for a list of songs based on a particular music artist, and then create a CSV file. The code will create a filterable list where you can search by release date, album name, singer and read a little description about the song. It took me an afternoon. It was nice to switch from machine learning to music. I had fun.</p>

<p><img src="https://cdn.bernie.studio/pseV94hGBT/medium.webp"/></p>

<p>The repo is on GitHub if you&#39;d like to take a look at the tech stack.
– <a href="https://github.com/berniepng/everysong">https://github.com/berniepng/everysong</a></p>

<p>The website is here
– <a href="https://demo.bernie.studio/everysong">https://demo.bernie.studio/everysong</a></p>

<p>What artist would you like to curate?</p>

<p><a href="https://berniepng.com/tag:bts" class="hashtag"><span>#</span><span class="p-category">bts</span></a> <a href="https://berniepng.com/tag:claude" class="hashtag"><span>#</span><span class="p-category">claude</span></a> <a href="https://berniepng.com/tag:petshopboys" class="hashtag"><span>#</span><span class="p-category">petshopboys</span></a> <a href="https://berniepng.com/tag:music" class="hashtag"><span>#</span><span class="p-category">music</span></a></p>
]]></content:encoded>
      <guid>https://berniepng.com/built-my-very-own-every-song-database</guid>
      <pubDate>Sun, 12 Apr 2026 13:09:13 +0000</pubDate>
    </item>
    <item>
      <title>I asked Claude to build me a Personal Finance System</title>
      <link>https://berniepng.com/i-asked-claude-to-build-me-a-personal-finance-system</link>
      <description>&lt;![CDATA[If you walk into a room called &#34;Bernie&#39;s Life&#34;, there would be piles of mess scattered all over, and one of the bigger piles would most surely be &#34;Financial Literacy and Management&#34;, aka, I suck at holding on to money. So I asked Claude to help me with it.&#xA;&#xA;First I uploaded screenshots of just the credit card transactions from 2025. At this point, it is important to note that you shouldn&#39;t upload any sensitive personal information to LLMs, so be sure to delete where necessary.&#xA;&#xA;The first task at hand was to examine all my spends and tell me the hard truths. Turns out a large percentage of my overall spends went to shopping (queue the PSB song ...) and a chunk went to subscriptions. He kept asking me &#34;are you sure you are watching Netflix?&#34; lol.&#xA;&#xA;He started drawing bar charts, pie charts, time series charts. Ok you get the picture. Now I understand where my drifts and creeps are.&#xA;&#xA;I also asked him to set up a folder structure on Obsidian for me, which I found it very useful. I created folders like &#34;Tax&#34;, &#34;Debt&#34;, &#34;Tracking&#34;, etc which will give me a great starting point to document and track all my expenses and revenue.&#xA;&#xA;If you are interested in the prompt I used, I&#39;ll share it here. Have you done something similar? Let me know. &#xA;&#xA;&#34;You are a seasoned personal financial planner and life coach. Please advise me on how I should start doing better financial planning for:&#xA;&#xA;tax reporting&#xA;budgeting &#xA;gig Scheduling, comparing the hourly rates and making wise decisions and commitments based on goals rather than monetary gains&#xA;analyse credit card spends to identify areas for optimisation and control&#xA;establish a savings and investment plan to grow money&#xA;debt management&#xA;&#xA;Guide me through creating  a plan that form a foundation for the next 10 years.&#xA;&#xA;I&#39;m living in Singapore, so everything should be relevant to the country. &#xA;&#xA;Get the tax information from&#xA;https://www.iras.gov.sg/taxes/individual-income-tax/self-employed-and-partnerships&#34;&#xA;&#xA;#AI #Claude #PersonalFinance]]&gt;</description>
      <content:encoded><![CDATA[<p>If you walk into a room called “Bernie&#39;s Life”, there would be piles of mess scattered all over, and one of the bigger piles would most surely be “Financial Literacy and Management”, aka, I suck at holding on to money. So I asked Claude to help me with it.</p>

<p>First I uploaded screenshots of just the credit card transactions from 2025. At this point, it is important to note that you shouldn&#39;t upload any sensitive personal information to LLMs, so be sure to delete where necessary.</p>

<p>The first task at hand was to examine all my spends and tell me the hard truths. Turns out a large percentage of my overall spends went to shopping (queue the PSB song ...) and a chunk went to subscriptions. He kept asking me “are you sure you are watching Netflix?” lol.</p>

<p>He started drawing bar charts, pie charts, time series charts. Ok you get the picture. Now I understand where my drifts and creeps are.</p>

<p>I also asked him to set up a folder structure on Obsidian for me, which I found it very useful. I created folders like “Tax”, “Debt”, “Tracking”, etc which will give me a great starting point to document and track all my expenses and revenue.</p>

<p>If you are interested in the prompt I used, I&#39;ll share it here. Have you done something similar? Let me know.</p>

<pre><code>&#34;You are a seasoned personal financial planner and life coach. Please advise me on how I should start doing better financial planning for:

1. tax reporting
2. budgeting 
3. gig Scheduling, comparing the hourly rates and making wise decisions and commitments based on goals rather than monetary gains
4. analyse credit card spends to identify areas for optimisation and control
5. establish a savings and investment plan to grow money
6. debt management

Guide me through creating  a plan that form a foundation for the next 10 years.

I&#39;m living in Singapore, so everything should be relevant to the country. 

Get the tax information from
https://www.iras.gov.sg/taxes/individual-income-tax/self-employed-and-partnerships&#34;
</code></pre>

<p><a href="https://berniepng.com/tag:AI" class="hashtag"><span>#</span><span class="p-category">AI</span></a> <a href="https://berniepng.com/tag:Claude" class="hashtag"><span>#</span><span class="p-category">Claude</span></a> <a href="https://berniepng.com/tag:PersonalFinance" class="hashtag"><span>#</span><span class="p-category">PersonalFinance</span></a></p>
]]></content:encoded>
      <guid>https://berniepng.com/i-asked-claude-to-build-me-a-personal-finance-system</guid>
      <pubDate>Fri, 10 Apr 2026 14:21:17 +0000</pubDate>
    </item>
  </channel>
</rss>