<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: fangpenlin</title><link>https://news.ycombinator.com/user?id=fangpenlin</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sun, 02 Aug 2026 03:17:39 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=fangpenlin" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[Software Engineering in the Agentic Era]]></title><description><![CDATA[
<p>Article URL: <a href="https://sidv.dev/blog/software-engineering-agentic-era/">https://sidv.dev/blog/software-engineering-agentic-era/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=47213495">https://news.ycombinator.com/item?id=47213495</a></p>
<p>Points: 4</p>
<p># Comments: 0</p>
]]></description><pubDate>Mon, 02 Mar 2026 03:25:21 +0000</pubDate><link>https://sidv.dev/blog/software-engineering-agentic-era/</link><dc:creator>fangpenlin</dc:creator><comments>https://news.ycombinator.com/item?id=47213495</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47213495</guid></item><item><title><![CDATA[New comment by fangpenlin in "A new California law says all operating systems need to have age verification"]]></title><description><![CDATA[
<p>There's an obvious theme with lawmakers in California—they pass laws to regulate things they have zero clue about, add them to their achievement page, cheer for themselves, and declare, "There! I've made the world a better place." There are just too many examples. For instance:<p>- Microstamping requirements for guns—printing a unique barcode on every bullet casing (Glock gen3 cannot be retired, thus, the auto-mode switch bug cannot be patched...)<p>- 3D printers should have a magical algorithm to recognize all gun parts in their tiny embedded systems<p>- Now, you need to verify your age... on your microwave?<p>At this rate, California should just go back to the Stone Age. Modern technology is simply not compatible with clueless politicians who are more eager to virtue-signal than to solve any actual problems or even borther to study the subject about the law they are going to pass. There will be more and more technology restrictions (or outright bans on use) in California because it's becoming impossible to operate anything here without getting sued or running afoul of some overreaching regulation.</p>
]]></description><pubDate>Fri, 27 Feb 2026 19:27:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=47184488</link><dc:creator>fangpenlin</dc:creator><comments>https://news.ycombinator.com/item?id=47184488</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47184488</guid></item><item><title><![CDATA[Manufacturing as Code Is the Future, and the Future Is Now]]></title><description><![CDATA[
<p>Article URL: <a href="https://blog.makerrepo.com/blog/2026/01/12/manufacturing-as-code-is-the-future/">https://blog.makerrepo.com/blog/2026/01/12/manufacturing-as-code-is-the-future/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=46946676">https://news.ycombinator.com/item?id=46946676</a></p>
<p>Points: 1</p>
<p># Comments: 0</p>
]]></description><pubDate>Mon, 09 Feb 2026 16:00:43 +0000</pubDate><link>https://blog.makerrepo.com/blog/2026/01/12/manufacturing-as-code-is-the-future/</link><dc:creator>fangpenlin</dc:creator><comments>https://news.ycombinator.com/item?id=46946676</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46946676</guid></item><item><title><![CDATA[Origami on Another Level with 3D Printing]]></title><description><![CDATA[
<p>Article URL: <a href="https://hackaday.com/2025/12/21/origami-on-another-level-with-3d-printing/">https://hackaday.com/2025/12/21/origami-on-another-level-with-3d-printing/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=46361527">https://news.ycombinator.com/item?id=46361527</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 23 Dec 2025 01:53:04 +0000</pubDate><link>https://hackaday.com/2025/12/21/origami-on-another-level-with-3d-printing/</link><dc:creator>fangpenlin</dc:creator><comments>https://news.ycombinator.com/item?id=46361527</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46361527</guid></item><item><title><![CDATA[Nix flakes explained: what they solve, why they matter, and the future]]></title><description><![CDATA[
<p>Article URL: <a href="https://determinate.systems/blog/nix-flakes-explained/">https://determinate.systems/blog/nix-flakes-explained/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=46164110">https://news.ycombinator.com/item?id=46164110</a></p>
<p>Points: 3</p>
<p># Comments: 0</p>
]]></description><pubDate>Fri, 05 Dec 2025 17:09:08 +0000</pubDate><link>https://determinate.systems/blog/nix-flakes-explained/</link><dc:creator>fangpenlin</dc:creator><comments>https://news.ycombinator.com/item?id=46164110</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46164110</guid></item><item><title><![CDATA[Open-source LLM powered plaintext based spreadsheet appp]]></title><description><![CDATA[
<p>Article URL: <a href="https://github.com/LaunchPlatform/beangrid">https://github.com/LaunchPlatform/beangrid</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=44697834">https://news.ycombinator.com/item?id=44697834</a></p>
<p>Points: 3</p>
<p># Comments: 0</p>
]]></description><pubDate>Sat, 26 Jul 2025 23:52:45 +0000</pubDate><link>https://github.com/LaunchPlatform/beangrid</link><dc:creator>fangpenlin</dc:creator><comments>https://news.ycombinator.com/item?id=44697834</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44697834</guid></item><item><title><![CDATA[I built an AI-gen video detection model and browser extension in a month]]></title><description><![CDATA[
<p>Article URL: <a href="https://fangpenlin.com/posts/2025/06/03/i-built-ai-gen-video-detection-model-and-browser-extension-in-a-month/">https://fangpenlin.com/posts/2025/06/03/i-built-ai-gen-video-detection-model-and-browser-extension-in-a-month/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=44175201">https://news.ycombinator.com/item?id=44175201</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 03 Jun 2025 21:56:01 +0000</pubDate><link>https://fangpenlin.com/posts/2025/06/03/i-built-ai-gen-video-detection-model-and-browser-extension-in-a-month/</link><dc:creator>fangpenlin</dc:creator><comments>https://news.ycombinator.com/item?id=44175201</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44175201</guid></item><item><title><![CDATA[HTTP Feeds – Asynchronous Interfaces Without Kafka or RabbitMQ]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.heise.de/hintergrund/HTTP-Feeds-Asynchrone-Schnittstellen-ohne-Kafka-oder-RabbitMQ-6245490.html">https://www.heise.de/hintergrund/HTTP-Feeds-Asynchrone-Schnittstellen-ohne-Kafka-oder-RabbitMQ-6245490.html</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=43841735">https://news.ycombinator.com/item?id=43841735</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Wed, 30 Apr 2025 06:05:50 +0000</pubDate><link>https://www.heise.de/hintergrund/HTTP-Feeds-Asynchrone-Schnittstellen-ohne-Kafka-oder-RabbitMQ-6245490.html</link><dc:creator>fangpenlin</dc:creator><comments>https://news.ycombinator.com/item?id=43841735</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43841735</guid></item><item><title><![CDATA[Show HN: Open-source LLM-powered invoices/receipts email data extraction tool]]></title><description><![CDATA[
<p>Article URL: <a href="https://beanhub.io/blog/2025/04/21/new-beanhub-inbox-feature/">https://beanhub.io/blog/2025/04/21/new-beanhub-inbox-feature/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=43757783">https://news.ycombinator.com/item?id=43757783</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 22 Apr 2025 00:03:59 +0000</pubDate><link>https://beanhub.io/blog/2025/04/21/new-beanhub-inbox-feature/</link><dc:creator>fangpenlin</dc:creator><comments>https://news.ycombinator.com/item?id=43757783</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43757783</guid></item><item><title><![CDATA[Nvidia on NixOS WSL – Ollama up 24/7 on your gaming PC]]></title><description><![CDATA[
<p>Article URL: <a href="https://yomaq.github.io/posts/nvidia-on-nixos-wsl-ollama-up-24-7-on-your-gaming-pc/">https://yomaq.github.io/posts/nvidia-on-nixos-wsl-ollama-up-24-7-on-your-gaming-pc/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=43649711">https://news.ycombinator.com/item?id=43649711</a></p>
<p>Points: 95</p>
<p># Comments: 49</p>
]]></description><pubDate>Fri, 11 Apr 2025 01:50:09 +0000</pubDate><link>https://yomaq.github.io/posts/nvidia-on-nixos-wsl-ollama-up-24-7-on-your-gaming-pc/</link><dc:creator>fangpenlin</dc:creator><comments>https://news.ycombinator.com/item?id=43649711</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43649711</guid></item><item><title><![CDATA[Setting Up Nix on macOS]]></title><description><![CDATA[
<p>Article URL: <a href="https://nixcademy.com/posts/nix-on-macos/">https://nixcademy.com/posts/nix-on-macos/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=43374110">https://news.ycombinator.com/item?id=43374110</a></p>
<p>Points: 4</p>
<p># Comments: 0</p>
]]></description><pubDate>Sat, 15 Mar 2025 17:58:28 +0000</pubDate><link>https://nixcademy.com/posts/nix-on-macos/</link><dc:creator>fangpenlin</dc:creator><comments>https://news.ycombinator.com/item?id=43374110</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43374110</guid></item><item><title><![CDATA[New comment by fangpenlin in "AMD YOLO"]]></title><description><![CDATA[
<p>I heard that Nvidia's graph cards are the best in the class in terms of power consumption vs TFLOP ration. I wonder what's the number of AMD vs Nvidia? I would like to see the number because power consumption is going to take a big portion of AI training. In comparsion, hardware might not be that expensive in the long run.</p>
]]></description><pubDate>Fri, 07 Mar 2025 21:21:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=43294845</link><dc:creator>fangpenlin</dc:creator><comments>https://news.ycombinator.com/item?id=43294845</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43294845</guid></item><item><title><![CDATA[New comment by fangpenlin in "My Beancount books are 95% automatic after 3 years (2024)"]]></title><description><![CDATA[
<p>For a usecase like this, a local running model would be ideal. I won't like to share my personal accounting books with LLM either.</p>
]]></description><pubDate>Wed, 05 Mar 2025 21:37:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=43272875</link><dc:creator>fangpenlin</dc:creator><comments>https://news.ycombinator.com/item?id=43272875</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43272875</guid></item><item><title><![CDATA[New comment by fangpenlin in "My Beancount books are 95% automatic after 3 years (2024)"]]></title><description><![CDATA[
<p>Some people, myself included, prefer text-based files as a user interface. Like, some Vim users won't leave their Vim session forever and would like to do everything in it. While SQLite is immortal software and will probably be there forever, using it means changing the UI/UX from text files to SQL queries or other CLI/UI operations. I think it's a preference for UI/UX style instead of a technical decision. For that preference of UI/UX, we can push on the technical end to solve some challenges.</p>
]]></description><pubDate>Wed, 05 Mar 2025 20:20:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=43271773</link><dc:creator>fangpenlin</dc:creator><comments>https://news.ycombinator.com/item?id=43271773</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43271773</guid></item><item><title><![CDATA[New comment by fangpenlin in "My Beancount books are 95% automatic after 3 years (2024)"]]></title><description><![CDATA[
<p>If there's anything like immortal software, SQLite is definitely on the list</p>
]]></description><pubDate>Wed, 05 Mar 2025 20:09:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=43271655</link><dc:creator>fangpenlin</dc:creator><comments>https://news.ycombinator.com/item?id=43271655</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43271655</guid></item><item><title><![CDATA[New comment by fangpenlin in "My Beancount books are 95% automatic after 3 years (2024)"]]></title><description><![CDATA[
<p>Hi, the author here.<p>If you are okay with Plaid[1], many of their bank connections are now using OAuth-style authentication instead of password sharing. I actually added a new feature called Direct Connect[2] a while back to allow any plaintext accounting book users to pull CSV directly via Plaid API through BeanHub. We don't train AI models with our customers' transactions, and if we want to, we will ask for explicit consent (not just ToS) and anonymize customers' data.<p>If you're okay with the above, the key to achieving a high automation level is the ability to pull CSV transaction files directly from the bank in a standard format. Maybe you can give it a try. We have 30 days free trial period.<p>I am not so familiar with the CMMC requirements, as you mentioned, but for us to access transactions from some banks, such as Chase, Plaid requires us to pass an auditing process about our security measurements. Is the CMMC compliance your company needs to meet to take a third-party software vendor into considerations?<p>[1]: <a href="https://plaid.com" rel="nofollow">https://plaid.com</a><p>[2]: <a href="https://beanhub.io/blog/2025/01/16/direct-connect-repository/" rel="nofollow">https://beanhub.io/blog/2025/01/16/direct-connect-repository...</a></p>
]]></description><pubDate>Wed, 05 Mar 2025 19:42:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=43271289</link><dc:creator>fangpenlin</dc:creator><comments>https://news.ycombinator.com/item?id=43271289</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43271289</guid></item><item><title><![CDATA[New comment by fangpenlin in "My Beancount books are 95% automatic after 3 years (2024)"]]></title><description><![CDATA[
<p>Hi, the author here.<p>I get where you're coming from. My books are also growing big right now, and indeed, they have become slower to process. Some projects in the community, such as Beanpost [1], are actually trying to solve the problem, as you said, by using an RMDB instead of plaintext.<p>But I still like text file format more for many reasons. The first would be the hot topic, which is about LLM friendliness. While I am still thinking about using AI to make the process even easier, with text-based accounting books, it's much easier to let AI process them and generate data for you.<p>Another reason is accessibility. Text-based accounting only requires an editor plus the CLI command line. Surely, you can build a friendly UI for SQLite-based books, but then so can text-based accounting books.<p>Yet another reason is, as you said, Git or VCS (Version control system) friendliness. With text-based, you can easily track all the changes from commit to commit for free and see what's changed. So, if I make a mistake in the book and I want to know when I made the mistake and how many years I need to go back and revise my reports, I can easily do that with Git.<p>Performance is a solvable technical challenge. We can break down the textbooks into smaller files and have a smart cache system to avoid parsing the same file repeatedly. Currently, I don't have the bandwidth to dig this rabbit hole, but I already have many ideas about how to improve performance when the file grows really big.<p>[1]: <a href="https://github.com/gerdemb/beanpost">https://github.com/gerdemb/beanpost</a></p>
]]></description><pubDate>Wed, 05 Mar 2025 19:26:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=43271079</link><dc:creator>fangpenlin</dc:creator><comments>https://news.ycombinator.com/item?id=43271079</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43271079</guid></item><item><title><![CDATA[New comment by fangpenlin in "My Beancount books are 95% automatic after 3 years (2024)"]]></title><description><![CDATA[
<p>Hi, the author here.<p>Many customers have asked me about AI offerings, and I am considering them. While this is doable with modern LLM technologies, I need to consider many issues.<p>The first is that nobody, myself included, likes their data being part of someone else's machine-learning training pipeline. That's why I promised my users that I wouldn't use their data for machine learning training without asking for explicit consent (and, of course, anonymization will be needed).<p>While I know everything involved in AI sounds cool, do we really need LLM for a task like this? Maybe a rule-based import engine could kill 95% of the repeating transactions? And that's why I built beanhub-import[1] in the first place. Then, here comes another question: Should I make LLM generate the rule for you or generate the final transactions directly?<p>Yet another question is, everybody/every company's book is different from one to another. Even if you can train a big model to deal with the most common approaches, the outcome may not be what you really need. So, I am thinking about possibly using your own Git history as a source of training data to teach machine learning models to generate transactions like you would do. That would be yet another interesting blog post, I guess if I actually built a prototype or really made it a feature for BeanHub. But for now, it's still an idea.<p>[1]: <a href="https://beanhub-import-docs.beanhub.io/" rel="nofollow">https://beanhub-import-docs.beanhub.io/</a></p>
]]></description><pubDate>Wed, 05 Mar 2025 19:10:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=43270858</link><dc:creator>fangpenlin</dc:creator><comments>https://news.ycombinator.com/item?id=43270858</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43270858</guid></item><item><title><![CDATA[New comment by fangpenlin in "My Beancount books are 95% automatic after 3 years (2024)"]]></title><description><![CDATA[
<p>Hey! Thanks for pointing out. I have already corrected it in my article :)</p>
]]></description><pubDate>Wed, 05 Mar 2025 18:56:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=43270685</link><dc:creator>fangpenlin</dc:creator><comments>https://news.ycombinator.com/item?id=43270685</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43270685</guid></item><item><title><![CDATA[New comment by fangpenlin in "My Beancount books are 95% automatic after 3 years (2024)"]]></title><description><![CDATA[
<p>Hi, the author here.<p>So BeanHub is built on top of Beancount and uses double-entry accounting. It's one of the benefits of double-entry accounting. Many accounting software are not good at dealing with multi-currencies or custom currency. With Beancount, you can define any commodity you want, create transactions, and convert them with different currencies easily. For example, you can define a commodity TSM and create transactions[1] like this:<p>2025-01-01 commodity TSM<p>2025-03-05 * "Purchase TSMC"<p><pre><code>  Assets:US:Bank:WellsFargo:Checking                        -2,000 USD @ 100 TSM
  
  Assets:US:Bank:Robinhood                                      20 TSM
</code></pre>
I think many people trade crypto, and traditional accounting software may not be that friendly to them. That's why I emphasized a bit to the crypto target audience. But you're right; I should make it clearer that it's not just for crypto.<p>[1]: <a href="https://beancount.github.io/docs/beancount_language_syntax.html#costs-and-prices" rel="nofollow">https://beancount.github.io/docs/beancount_language_syntax.h...</a></p>
]]></description><pubDate>Wed, 05 Mar 2025 18:49:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=43270601</link><dc:creator>fangpenlin</dc:creator><comments>https://news.ycombinator.com/item?id=43270601</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43270601</guid></item></channel></rss>