<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>flounder.dev</title><description>blog about this and that</description><link>https://flounder.dev/</link><language>en-us</language><item><title>AI Skill for Debugging Flaky Tests</title><link>https://flounder.dev/posts/creative-skill-building/</link><guid isPermaLink="true">https://flounder.dev/posts/creative-skill-building/</guid><description>Can AI deterministically find the root cause of a flaky test with the help of a skill?</description><pubDate>Mon, 16 Mar 2026 00:00:00 GMT</pubDate></item><item><title>Your Programs Are Not Single-Threaded</title><link>https://flounder.dev/posts/your-programs-are-not-single-threaded/</link><guid isPermaLink="true">https://flounder.dev/posts/your-programs-are-not-single-threaded/</guid><description>A Spring Boot app produced duplicate invoice numbers. We track down the bug with the debugger and walk through the fix</description><pubDate>Wed, 14 Jan 2026 00:00:00 GMT</pubDate></item><item><title>Duplicate Finder for Text: Algorithm</title><link>https://flounder.dev/posts/duplicate-finder-implementation/</link><guid isPermaLink="true">https://flounder.dev/posts/duplicate-finder-implementation/</guid><description>A walkthrough of the trigram-based algorithm for finding duplicate and similar text fragments</description><pubDate>Fri, 12 Dec 2025 00:00:00 GMT</pubDate></item><item><title>Sources, Bytecode, Debugging</title><link>https://flounder.dev/posts/sources-bytecode-debugging/</link><guid isPermaLink="true">https://flounder.dev/posts/sources-bytecode-debugging/</guid><description>Let&apos;s discuss how Java source code, class files, and debuggers are connected</description><pubDate>Thu, 22 May 2025 00:00:00 GMT</pubDate></item><item><title>LLMs + Structured Output as a Translation Service</title><link>https://flounder.dev/posts/structured-output-for-translation/</link><guid isPermaLink="true">https://flounder.dev/posts/structured-output-for-translation/</guid><description>Using an LLM for project localization instead of a dedicated translation service. Comparing code and results.</description><pubDate>Tue, 18 Mar 2025 00:00:00 GMT</pubDate></item><item><title>Junie Codes (AsciiDoc Support)</title><link>https://flounder.dev/posts/trying-out-junie/</link><guid isPermaLink="true">https://flounder.dev/posts/trying-out-junie/</guid><description>Adding features to the duplicate finder with Junie, a new coding agent by JetBrains</description><pubDate>Fri, 31 Jan 2025 00:00:00 GMT</pubDate></item><item><title>RAG + Semantic Markup</title><link>https://flounder.dev/posts/rag-semantic-markup/</link><guid isPermaLink="true">https://flounder.dev/posts/rag-semantic-markup/</guid><description>Build documentation-powered features using retrieval-augmented generation and semantic markup</description><pubDate>Mon, 16 Dec 2024 00:00:00 GMT</pubDate></item><item><title>Duplicate Finder for Text: Requirements</title><link>https://flounder.dev/posts/duplicate-finder-requirements/</link><guid isPermaLink="true">https://flounder.dev/posts/duplicate-finder-requirements/</guid><description>Define specifications and the interface for the duplicate finder</description><pubDate>Wed, 20 Nov 2024 00:00:00 GMT</pubDate></item><item><title>Efficient Debugging Exceptions</title><link>https://flounder.dev/posts/efficient-debugging-exceptions/</link><guid isPermaLink="true">https://flounder.dev/posts/efficient-debugging-exceptions/</guid><description>Find the cause of a Java exception and correct the error while the program is still running</description><pubDate>Sun, 11 Aug 2024 00:00:00 GMT</pubDate></item><item><title>Self-profiling IntelliJ IDEA</title><link>https://flounder.dev/posts/profile-idea-with-idea/</link><guid isPermaLink="true">https://flounder.dev/posts/profile-idea-with-idea/</guid><description>Analyze IntelliJ IDEA&apos;s curious performance bottleneck using its own profiler</description><pubDate>Wed, 17 Jul 2024 00:00:00 GMT</pubDate></item><item><title>Cobbling Together God Mode with the Debugger</title><link>https://flounder.dev/posts/debugger-god-mode/</link><guid isPermaLink="true">https://flounder.dev/posts/debugger-god-mode/</guid><description>Inspect the memory of a running Java program and change its behavior without accessing the source code</description><pubDate>Thu, 02 May 2024 00:00:00 GMT</pubDate></item><item><title>Troubleshoot Slow Debugger</title><link>https://flounder.dev/posts/troubleshoot-slow-debugging/</link><guid isPermaLink="true">https://flounder.dev/posts/troubleshoot-slow-debugging/</guid><description>At times the debugger may cause your Java application to slow down. Here&apos;s why this happens and how to address the problem</description><pubDate>Mon, 22 Apr 2024 00:00:00 GMT</pubDate></item><item><title>Tricky Double</title><link>https://flounder.dev/posts/tricky-double/</link><guid isPermaLink="true">https://flounder.dev/posts/tricky-double/</guid><description>A periodic reminder that arithmetic operations with the double-precision floats may cause surprising outcomes</description><pubDate>Tue, 16 Apr 2024 00:00:00 GMT</pubDate></item><item><title>Debug Without Breakpoints</title><link>https://flounder.dev/posts/debug-without-breakpoints/</link><guid isPermaLink="true">https://flounder.dev/posts/debug-without-breakpoints/</guid><description>A typical debugging session starts with setting breakpoints. But is it really the only way to suspend a program?</description><pubDate>Fri, 05 Apr 2024 00:00:00 GMT</pubDate></item><item><title>Duplicate Finder for Text</title><link>https://flounder.dev/posts/duplicate-finder-intro/</link><guid isPermaLink="true">https://flounder.dev/posts/duplicate-finder-intro/</guid><description>Ongoing project to minimize duplicates and promote reuse in docs and other massive text repositories</description><pubDate>Mon, 11 Mar 2024 00:00:00 GMT</pubDate></item><item><title>Localize Applications With AI</title><link>https://flounder.dev/posts/localize-apps-with-ai/</link><guid isPermaLink="true">https://flounder.dev/posts/localize-apps-with-ai/</guid><description>Let&apos;s put AI to some work and see if it can localize an entire webapp, using Spring Petclinic as an example</description><pubDate>Mon, 11 Mar 2024 00:00:00 GMT</pubDate></item><item><title>Better &apos;printf&apos; Debugging</title><link>https://flounder.dev/posts/logpoints-tricks/</link><guid isPermaLink="true">https://flounder.dev/posts/logpoints-tricks/</guid><description>A couple of useful tricks for debugging with print statements</description><pubDate>Mon, 31 Oct 2022 00:00:00 GMT</pubDate></item><item><title>Get Started With Allocation Profiling</title><link>https://flounder.dev/posts/allocation-profiling/</link><guid isPermaLink="true">https://flounder.dev/posts/allocation-profiling/</guid><description>Investigating memory leaks is not a typical use case for allocation profiling. Still, combined with other tools, the profiler can point us in the right direction</description><pubDate>Mon, 31 Jan 2022 00:00:00 GMT</pubDate></item><item><title>Debug Unresponsive Apps</title><link>https://flounder.dev/posts/debug-unresponsive-apps/</link><guid isPermaLink="true">https://flounder.dev/posts/debug-unresponsive-apps/</guid><description>Debugging UI freezes is easier when you use the right tools and techniques. Let&apos;s consider a couple of them using a hands-on example</description><pubDate>Fri, 01 Oct 2021 00:00:00 GMT</pubDate></item><item><title>What&apos;s Wrong With createDirectories() –  Guide to CPU Profiling</title><link>https://flounder.dev/posts/get-started-with-profiling/</link><guid isPermaLink="true">https://flounder.dev/posts/get-started-with-profiling/</guid><description>A practical example of profiling and optimizing CPU-intensive tasks in a Java application</description><pubDate>Sat, 29 May 2021 00:00:00 GMT</pubDate></item></channel></rss>