<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: functional_dev</title><link>https://news.ycombinator.com/user?id=functional_dev</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sun, 08 Nov 2026 17:09:56 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=functional_dev" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by functional_dev in "What Zig felt like, coming from Rust"]]></title><description><![CDATA[
<p>Learned today why there is no "zig metadata" command.
A dependency can be marked lazy, so whether you even need it depends on the build flags you pass.<p>So ZLS has to actually run your "build.zig" to see the modules<p>That is why it breaks when Zig changes the build system.<p><a href="https://vectree.io/c/zigs-build-system-protocol-module-graphs-buildzigzon-and-cargo-metadata" rel="nofollow">https://vectree.io/c/zigs-build-system-protocol-module-graph...</a></p>
]]></description><pubDate>Sun, 20 Sep 2026 20:16:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=49779636</link><dc:creator>functional_dev</dc:creator><comments>https://news.ycombinator.com/item?id=49779636</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49779636</guid></item><item><title><![CDATA[New comment by functional_dev in "RSA-896"]]></title><description><![CDATA[
<p>RSA-768 was already factored in 2009.. cheap now. What surprised me is that RSA keys are much weaker than their size looks. You need 2048 bits to get normal safety, and 768 is far below that.<p><a href="https://vectree.io/c/how-rsa-key-sizes-map-to-real-security-512-to-4096-bits" rel="nofollow">https://vectree.io/c/how-rsa-key-sizes-map-to-real-security-...</a></p>
]]></description><pubDate>Sun, 20 Sep 2026 11:03:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=49774581</link><dc:creator>functional_dev</dc:creator><comments>https://news.ycombinator.com/item?id=49774581</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49774581</guid></item><item><title><![CDATA[New comment by functional_dev in "Ask HN: Who wants to be hired? (August 2026)"]]></title><description><![CDATA[
<p>Location: Riga, Latvia (EU)<p>Remote: Yes, remote only<p>Willing to relocate: No<p>Technologies: Rust, TypeScript/Node, React, Go, Elixir, OCaml, Postgres, Kubernetes, NATS, gRPC, LLM/agent systems (RAG, tool calling, vector search)<p>Résumé/CV: <a href="https://martinserts.com" rel="nofollow">https://martinserts.com</a><p>Email: martins.erts+hn@gmail.com<p>20+ years backend and full-stack. Rust and TypeScript in production, plus a long functional-programming background.<p>Also three AI products built solo, end to end, in Elixir, Go and OCaml, each on infrastructure I set up and still run. One has been live and unattended for months.<p>Open to contract (B2B) or permanent.</p>
]]></description><pubDate>Tue, 04 Aug 2026 16:46:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=49171426</link><dc:creator>functional_dev</dc:creator><comments>https://news.ycombinator.com/item?id=49171426</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49171426</guid></item><item><title><![CDATA[New comment by functional_dev in "We scaled PgBouncer to 4x throughput"]]></title><description><![CDATA[
<p>is there a reason to still pick PgBouncer over these newer ones? Or is PgBouncer mostly the default because everybody runs it</p>
]]></description><pubDate>Sun, 12 Jul 2026 18:04:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=48883094</link><dc:creator>functional_dev</dc:creator><comments>https://news.ycombinator.com/item?id=48883094</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48883094</guid></item><item><title><![CDATA[New comment by functional_dev in "Protobuf-py: Protobuf for Python, without compromises"]]></title><description><![CDATA[
<p>I did not know this before... Google protobuf is not one thing, it is three! Same import, but:<p>* old C++ extension<p>* upb<p>* pure Python<p>upb parses FAST, but then every access is still C->Python and it slows it down. So for many reads the slow python one can win?<p>This one helped me to dig deeper - <a href="https://vectree.io/c/how-python-protobuf-runtimes-work-pure-python-vs-upb-vs-the-c-backend" rel="nofollow">https://vectree.io/c/how-python-protobuf-runtimes-work-pure-...</a></p>
]]></description><pubDate>Sun, 12 Jul 2026 17:50:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=48882979</link><dc:creator>functional_dev</dc:creator><comments>https://news.ycombinator.com/item?id=48882979</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48882979</guid></item><item><title><![CDATA[New comment by functional_dev in "Unlimited OCR: One-shot long-horizon parsing"]]></title><description><![CDATA[
<p>I did not know this until today... vision models don't hunt for the white space between letters like old OCR does. They just chop the whole image into a fixed grid of equal squares (patches) and treat each square like a word in a sentence.<p>This will help if you want to dig deeper - <a href="https://vectree.io/c/how-ocr-works-traditional-pipelines-vs-vision-language-models" rel="nofollow">https://vectree.io/c/how-ocr-works-traditional-pipelines-vs-...</a></p>
]]></description><pubDate>Tue, 23 Jun 2026 15:47:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=48646906</link><dc:creator>functional_dev</dc:creator><comments>https://news.ycombinator.com/item?id=48646906</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48646906</guid></item><item><title><![CDATA[New comment by functional_dev in "In praise of memcached"]]></title><description><![CDATA[
<p>I always used memcached without knowing how it stores things.. never knew about the slab thing.<p>It is more sophisticated than grab memory per item.<p>This helped be to understand it better - <a href="https://vectree.io/c/memcached-internals-slab-allocation-lru-eviction-and-consistent-hashing" rel="nofollow">https://vectree.io/c/memcached-internals-slab-allocation-lru...</a></p>
]]></description><pubDate>Tue, 23 Jun 2026 15:23:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=48646531</link><dc:creator>functional_dev</dc:creator><comments>https://news.ycombinator.com/item?id=48646531</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48646531</guid></item><item><title><![CDATA[New comment by functional_dev in "I still prefer MCP over skills"]]></title><description><![CDATA[
<p>actually local MCP just spawns a subprocess and talks via stdin/stdout.. same as CLI tool. 
Extra layer is only for remote case.<p>This might help if interested - <a href="https://vectree.io/c/implementation-details-of-stdio-and-sse-transport-streams-in-cross-process-communication" rel="nofollow">https://vectree.io/c/implementation-details-of-stdio-and-sse...</a></p>
]]></description><pubDate>Fri, 10 Apr 2026 14:27:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=47718696</link><dc:creator>functional_dev</dc:creator><comments>https://news.ycombinator.com/item?id=47718696</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47718696</guid></item><item><title><![CDATA[New comment by functional_dev in "We've raised $17M to build what comes after Git"]]></title><description><![CDATA[
<p>You are right, PRs are not in git. <i>format-patch</i> and <i>request-pull</i> are originals designed for mailings lists.
Github just put UI on top.<p>Interesting that DAG model means any branch from anywhere can be merged... the forge is just coordination.<p>Explored here if curious - <a href="https://vectree.io/c/git-graph-theory-logic" rel="nofollow">https://vectree.io/c/git-graph-theory-logic</a></p>
]]></description><pubDate>Fri, 10 Apr 2026 14:15:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=47718521</link><dc:creator>functional_dev</dc:creator><comments>https://news.ycombinator.com/item?id=47718521</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47718521</guid></item><item><title><![CDATA[New comment by functional_dev in "A new trick brings stability to quantum operations"]]></title><description><![CDATA[
<p>The ETH article title is actually fine - "a new trick brings stability."<p>The hype is in the HN title.</p>
]]></description><pubDate>Fri, 10 Apr 2026 13:46:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=47718098</link><dc:creator>functional_dev</dc:creator><comments>https://news.ycombinator.com/item?id=47718098</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47718098</guid></item><item><title><![CDATA[New comment by functional_dev in "Who is Satoshi Nakamoto? My quest to unmask Bitcoin's creator"]]></title><description><![CDATA[
<p>true, but reading this made me learn something new.<p>Turns out <i>HashCash</i> (system Bitcoin borrowed), was originally built to fight email spam in 1977 - <a href="https://vectree.io/c/hashcash-the-proof-of-work-system-cited-in-the-bitcoin-whitepaper" rel="nofollow">https://vectree.io/c/hashcash-the-proof-of-work-system-cited...</a></p>
]]></description><pubDate>Thu, 09 Apr 2026 10:02:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=47701498</link><dc:creator>functional_dev</dc:creator><comments>https://news.ycombinator.com/item?id=47701498</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47701498</guid></item><item><title><![CDATA[New comment by functional_dev in "ML promises to be profoundly weird"]]></title><description><![CDATA[
<p>I like the garden analogy.<p>Writing online used to bring you readers. Now it trains model, which answers the same questions without sending anyone to your site.</p>
]]></description><pubDate>Thu, 09 Apr 2026 09:39:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=47701350</link><dc:creator>functional_dev</dc:creator><comments>https://news.ycombinator.com/item?id=47701350</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47701350</guid></item><item><title><![CDATA[New comment by functional_dev in "Ask HN: Any interesting niche hobbies?"]]></title><description><![CDATA[
<p>really cool, data pipeline alone sounds like fun challenge</p>
]]></description><pubDate>Wed, 08 Apr 2026 18:24:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=47694233</link><dc:creator>functional_dev</dc:creator><comments>https://news.ycombinator.com/item?id=47694233</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47694233</guid></item><item><title><![CDATA[New comment by functional_dev in "ML promises to be profoundly weird"]]></title><description><![CDATA[
<p>better tooling and integration</p>
]]></description><pubDate>Wed, 08 Apr 2026 18:22:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=47694219</link><dc:creator>functional_dev</dc:creator><comments>https://news.ycombinator.com/item?id=47694219</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47694219</guid></item><item><title><![CDATA[New comment by functional_dev in "Peptides: where to begin?"]]></title><description><![CDATA[
<p>Did you try increasing protein intake during the cut?</p>
]]></description><pubDate>Wed, 08 Apr 2026 17:04:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=47693050</link><dc:creator>functional_dev</dc:creator><comments>https://news.ycombinator.com/item?id=47693050</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47693050</guid></item><item><title><![CDATA[New comment by functional_dev in "Git commands I run before reading any code"]]></title><description><![CDATA[
<p>I found it interesting, that Git itself has built in similarity notion... when it packs objects, it groups files by path+size, runs delta cmpression to find which are close.<p>Very different from just counting commits - <a href="https://vectree.io/c/delta-compression-heuristics-and-packfile-binary-format-in-git" rel="nofollow">https://vectree.io/c/delta-compression-heuristics-and-packfi...</a></p>
]]></description><pubDate>Wed, 08 Apr 2026 16:55:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=47692898</link><dc:creator>functional_dev</dc:creator><comments>https://news.ycombinator.com/item?id=47692898</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47692898</guid></item><item><title><![CDATA[New comment by functional_dev in "Bitcoin and quantum computing"]]></title><description><![CDATA[
<p>Do you have a link to the paper showing the 20x improvement?</p>
]]></description><pubDate>Wed, 08 Apr 2026 16:32:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=47692511</link><dc:creator>functional_dev</dc:creator><comments>https://news.ycombinator.com/item?id=47692511</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47692511</guid></item><item><title><![CDATA[New comment by functional_dev in "Running out of disk space in production"]]></title><description><![CDATA[
<p>Such a simple trick, but effective!</p>
]]></description><pubDate>Wed, 08 Apr 2026 16:23:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=47692375</link><dc:creator>functional_dev</dc:creator><comments>https://news.ycombinator.com/item?id=47692375</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47692375</guid></item><item><title><![CDATA[New comment by functional_dev in "Union types in C# 15"]]></title><description><![CDATA[
<p>Right, the default boxes into heap, but unions are different. Some languages pack them as a flat struct (tag + payload, no allocation).<p>Here is visual layout if anyone is interested - <a href="https://vectree.io/c/memory-layout-tagging-and-payload-overlapping-of-union-types" rel="nofollow">https://vectree.io/c/memory-layout-tagging-and-payload-overl...</a></p>
]]></description><pubDate>Wed, 08 Apr 2026 16:13:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=47692236</link><dc:creator>functional_dev</dc:creator><comments>https://news.ycombinator.com/item?id=47692236</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47692236</guid></item><item><title><![CDATA[New comment by functional_dev in "IPv6 is the only way forward"]]></title><description><![CDATA[
<p>Backwards compatibility point is interesting.<p>Found this visual breakdown of IPv4 -> IPv6 transition.<p>Dual stack and tunneling sections show how much complexity came from not having a clean migration path - <a href="https://vectree.io/c/ipv4-vs-ipv6-address-architecture-nat-and-the-transition-problem" rel="nofollow">https://vectree.io/c/ipv4-vs-ipv6-address-architecture-nat-a...</a></p>
]]></description><pubDate>Wed, 08 Apr 2026 15:53:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=47691924</link><dc:creator>functional_dev</dc:creator><comments>https://news.ycombinator.com/item?id=47691924</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47691924</guid></item></channel></rss>