<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: lmb</title><link>https://news.ycombinator.com/user?id=lmb</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Thu, 30 Apr 2026 23:25:51 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=lmb" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by lmb in "Ask HN: Who wants to be hired? (August 2025)"]]></title><description><![CDATA[
<p><p><pre><code>    Location: London, UK /  Munich, Germany
    Remote: No, hybrid only
    Willing to relocate: Maybe
    Technologies: Go, C, eBPF, Linux
    Résumé/CV: on request
    Email: jobs@lmb.io
</code></pre>
Systems engineer with ten years of experience building performance critical software. The past couple of years I’ve been maintaining the most popular Go library for working with eBPF (used by DataDog, Microsoft, etc.) and have contributed to the Linux network stack, the Go standard library and other high profile open source projects. Before that I built Quicksilver (global distributed db) and Unimog (anycast L4 load balancer) at Cloudflare. In my spare time I’ve dabbled in embedded operating systems, virtual machine monitors and emulators.<p>I’m self taught, learn by doing and enjoy going deep on a specific subject. After working as a fully remote open source maintainer I’m looking for a small team that values collaborating in person, in a strategic role owning a domain or problem space, with a view to leading a team.<p>I’m curious about problems that require exceptional performance and / or reliability in areas like power infrastructure, renewable energy, operating AI models at scale, non-LLM AI, hardware.</p>
]]></description><pubDate>Tue, 05 Aug 2025 14:53:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=44798787</link><dc:creator>lmb</dc:creator><comments>https://news.ycombinator.com/item?id=44798787</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44798787</guid></item><item><title><![CDATA[New comment by lmb in "A Discussion on Printk()"]]></title><description><![CDATA[
<p>Counter point from Gleixner which is worth reading for us in the peanut gallery: <a href="https://lwn.net/ml/linux-kernel/87r11qp63n.ffs@tglx/" rel="nofollow">https://lwn.net/ml/linux-kernel/87r11qp63n.ffs@tglx/</a></p>
]]></description><pubDate>Sat, 08 Oct 2022 20:03:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=33135536</link><dc:creator>lmb</dc:creator><comments>https://news.ycombinator.com/item?id=33135536</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33135536</guid></item><item><title><![CDATA[New comment by lmb in "Ask HN: What are some of the best documentaries you've seen?"]]></title><description><![CDATA[
<p>Missing Allen (2001) by my late father Christian Bauer<p><a href="https://www.youtube.com/watch?v=kOXSI_vcqK8" rel="nofollow">https://www.youtube.com/watch?v=kOXSI_vcqK8</a><p>Around the turn of the century, my dad's good friend and longtime collaborator Allen Ross vanishes from one day to the next, just after they have finished shooting a film about the Mississippi. Years later, my dad returns to the US to find out what happened to his friend.<p>It's his most personal film for sure, and I remember him going off to the US for weeks and faxing us letters to keep in touch. It's also the one that had him most scared, he took out life insurance before he left because of the people he was looking into.</p>
]]></description><pubDate>Mon, 12 Sep 2022 04:49:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=32806208</link><dc:creator>lmb</dc:creator><comments>https://news.ycombinator.com/item?id=32806208</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=32806208</guid></item><item><title><![CDATA[New comment by lmb in "Count-Min Sketch (2019)"]]></title><description><![CDATA[
<p>We ended up with fasthash64 and lookup3 by looking for a fast hash that is easy to port to the restricted subset of C supported by eBPF with minimal changes. <a href="https://github.com/rurban/smhasher" rel="nofollow">https://github.com/rurban/smhasher</a> is a great resource for that.<p>I would probably choose different, more robust hash functions if I was targeting regular C.</p>
]]></description><pubDate>Sun, 11 Sep 2022 08:36:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=32797879</link><dc:creator>lmb</dc:creator><comments>https://news.ycombinator.com/item?id=32797879</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=32797879</guid></item><item><title><![CDATA[New comment by lmb in "Count-Min Sketch (2019)"]]></title><description><![CDATA[
<p>I think we tried siphash at some point, unfortunately it's significantly slower than the two hash functions we ended up using.</p>
]]></description><pubDate>Sun, 11 Sep 2022 08:30:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=32797841</link><dc:creator>lmb</dc:creator><comments>https://news.ycombinator.com/item?id=32797841</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=32797841</guid></item><item><title><![CDATA[New comment by lmb in "Count-Min Sketch (2019)"]]></title><description><![CDATA[
<p>Count min sketches are really neat. A colleague at my old company used them to implement DDoS mitigations in eBPF and wrote it up: <a href="https://blog.cloudflare.com/building-rakelimit/" rel="nofollow">https://blog.cloudflare.com/building-rakelimit/</a><p>The code is also open source, and I've improved on it a bit: <a href="https://github.com/lmb/socklimit" rel="nofollow">https://github.com/lmb/socklimit</a> Not production ready but a cool idea and implementation.</p>
]]></description><pubDate>Sat, 10 Sep 2022 17:00:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=32792412</link><dc:creator>lmb</dc:creator><comments>https://news.ycombinator.com/item?id=32792412</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=32792412</guid></item><item><title><![CDATA[New comment by lmb in "How to stop running out of ephemeral ports and love long-lived connections"]]></title><description><![CDATA[
<p>We don't use kernel bypass anymore, it's all XDP: <a href="https://blog.cloudflare.com/l4drop-xdp-ebpf-based-ddos-mitigations/" rel="nofollow">https://blog.cloudflare.com/l4drop-xdp-ebpf-based-ddos-mitig...</a></p>
]]></description><pubDate>Fri, 04 Feb 2022 11:46:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=30205590</link><dc:creator>lmb</dc:creator><comments>https://news.ycombinator.com/item?id=30205590</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30205590</guid></item><item><title><![CDATA[New comment by lmb in "Resource efficient Thread Pools with Zig"]]></title><description><![CDATA[
<p>What does tail latency for the Zig pool look like? It seems like any Task that ends up in one of the overflow queues will stay there until at some ring buffer is emptied.<p>Put another way, during a period of more push than pop some tasks may see a very long delay before being worked on?</p>
]]></description><pubDate>Tue, 14 Sep 2021 07:39:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=28521529</link><dc:creator>lmb</dc:creator><comments>https://news.ycombinator.com/item?id=28521529</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=28521529</guid></item><item><title><![CDATA[New comment by lmb in "P4: Open-Source Programming Language for Protocol-Independent Packet Processing"]]></title><description><![CDATA[
<p>What does tooling / debugging for p4 look like? How do you inspect what happens inside a p4 dataplane?<p>Context: I work on a L4 load balancer written in ebpf / XDP. Debugging that is still too hard even thought it's all software and open source.</p>
]]></description><pubDate>Thu, 24 Jun 2021 11:18:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=27616077</link><dc:creator>lmb</dc:creator><comments>https://news.ycombinator.com/item?id=27616077</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=27616077</guid></item><item><title><![CDATA[New comment by lmb in "Usenix LISA2021 BPF Internals (eBPF)"]]></title><description><![CDATA[
<p>There is a fair bit of co-evolution of the Linux BPF verifier and the BPF llvm backend. This means that the verifier is biased to do well on bytecode that is commonly emitted by clang. I can imagine that other programming languages will run into the verifier rejecting their output if it differs to much from common clang output. (There is redbpf which compiles rust to BPF AFAIK, but it still uses llvm. There is also a gcc BPF backend, but I don't have experience with that.) The good news is that Linux upstream is receptive to bug reports!</p>
]]></description><pubDate>Tue, 15 Jun 2021 12:48:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=27514524</link><dc:creator>lmb</dc:creator><comments>https://news.ycombinator.com/item?id=27514524</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=27514524</guid></item><item><title><![CDATA[New comment by lmb in "iOS 14 and Facebook Pixel causing increase in PSL inclusion requests"]]></title><description><![CDATA[
<p>Seems like the right move from a volunteer run project, what will the future will hold though? Artificial scarcity is always a problem.<p>On another note, for just 20k$ I can offer you exclusive use of the xxgfzrf.dinglebop.me Public Suffix so that you can keep tracking your users. Please reach out to sales@example.com if you are interested.</p>
]]></description><pubDate>Wed, 07 Apr 2021 17:25:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=26727941</link><dc:creator>lmb</dc:creator><comments>https://news.ycombinator.com/item?id=26727941</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=26727941</guid></item><item><title><![CDATA[New comment by lmb in "Modules, Monoliths, and Microservices"]]></title><description><![CDATA[
<p>You're arguing that the majority of people use the term differently than you and are therefore wrong. Sounds like the definition of technobabble to me.</p>
]]></description><pubDate>Wed, 24 Feb 2021 12:27:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=26249172</link><dc:creator>lmb</dc:creator><comments>https://news.ycombinator.com/item?id=26249172</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=26249172</guid></item><item><title><![CDATA[New comment by lmb in "78 days, and still no broadband (Sky/Openreach, UK)"]]></title><description><![CDATA[
<p>Total shot in the dark: I had a similar problem, it turned out the power supply for the router was faulty.</p>
]]></description><pubDate>Thu, 22 Oct 2020 13:11:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=24857610</link><dc:creator>lmb</dc:creator><comments>https://news.ycombinator.com/item?id=24857610</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24857610</guid></item><item><title><![CDATA[Naïve Art]]></title><description><![CDATA[
<p>Article URL: <a href="https://en.wikipedia.org/wiki/Na%C3%AFve_art">https://en.wikipedia.org/wiki/Na%C3%AFve_art</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=23700642">https://news.ycombinator.com/item?id=23700642</a></p>
<p>Points: 4</p>
<p># Comments: 0</p>
]]></description><pubDate>Wed, 01 Jul 2020 12:33:46 +0000</pubDate><link>https://en.wikipedia.org/wiki/Na%C3%AFve_art</link><dc:creator>lmb</dc:creator><comments>https://news.ycombinator.com/item?id=23700642</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=23700642</guid></item><item><title><![CDATA[New comment by lmb in "BPF at Facebook and beyond"]]></title><description><![CDATA[
<p>Can you define ready? The functionality of the library is solid, it's based on code we're using in production. We've not committed to a stable API however.<p>(I'm one of the maintainers of said library.)</p>
]]></description><pubDate>Fri, 11 Oct 2019 07:09:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=21222208</link><dc:creator>lmb</dc:creator><comments>https://news.ycombinator.com/item?id=21222208</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=21222208</guid></item><item><title><![CDATA[New comment by lmb in "A fast alternative to the modulo reduction (2016)"]]></title><description><![CDATA[
<p>In some of the code snippets, the following is used:<p><pre><code>  threshold = -bound % bound
</code></pre>
I don't understand how that isn't always zero. What am I missing?</p>
]]></description><pubDate>Sun, 06 Oct 2019 20:59:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=21175089</link><dc:creator>lmb</dc:creator><comments>https://news.ycombinator.com/item?id=21175089</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=21175089</guid></item><item><title><![CDATA[New comment by lmb in "Extending the Linux Kernel with Built-In Kernel Headers"]]></title><description><![CDATA[
<p>The problem is that different kernel configurations end up changing the layout of important data structures. Basically, you need to change the offsets that the eBPF uses.<p>There is another proposal that uses BTF to do the fixup at load (not compile) time, but that ends up having it's own complications.</p>
]]></description><pubDate>Wed, 24 Jul 2019 17:49:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=20517716</link><dc:creator>lmb</dc:creator><comments>https://news.ycombinator.com/item?id=20517716</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=20517716</guid></item><item><title><![CDATA[New comment by lmb in "Deutsche Bank Says Software to Detect Money Laundering Had a Bug"]]></title><description><![CDATA[
<p>It doesn't give any specifics. "2 of 121 parameters were configured incorrectly". Maybe host and port? ;)</p>
]]></description><pubDate>Wed, 22 May 2019 17:29:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=19983393</link><dc:creator>lmb</dc:creator><comments>https://news.ycombinator.com/item?id=19983393</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=19983393</guid></item><item><title><![CDATA[New comment by lmb in "Tell HN: Archive.is inaccessible via Cloudflare DNS (1.1.1.1)"]]></title><description><![CDATA[
<p>What do you mean with this? Refuse ANY is now a proposed RFC <a href="https://datatracker.ietf.org/doc/rfc8482/" rel="nofollow">https://datatracker.ietf.org/doc/rfc8482/</a> How is that a band aid?</p>
]]></description><pubDate>Sun, 05 May 2019 08:02:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=19831728</link><dc:creator>lmb</dc:creator><comments>https://news.ycombinator.com/item?id=19831728</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=19831728</guid></item><item><title><![CDATA[New comment by lmb in "PostgreSQL used fsync incorrectly for 20 years"]]></title><description><![CDATA[
<p>We've been using LMDB at Cloudflare to store small-ish configuration data, it has been rock solid.<p>Thank you and the rest of the contributors for such a great library.</p>
]]></description><pubDate>Sun, 10 Feb 2019 13:38:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=19127707</link><dc:creator>lmb</dc:creator><comments>https://news.ycombinator.com/item?id=19127707</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=19127707</guid></item></channel></rss>