<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: vbernat</title><link>https://news.ycombinator.com/user?id=vbernat</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 08 Apr 2026 00:17:48 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=vbernat" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by vbernat in "Why Switzerland has 25 Gbit internet and America doesn't"]]></title><description><![CDATA[
<p>Did you check on <a href="https://cartefibre.arcep.fr/" rel="nofollow">https://cartefibre.arcep.fr/</a>? If your address is there, you will know the status of your address and notably the infrastructure operator, which has the obligation to cover your zone before 2030. If your address is not there (and the zone is empty, otherwise, this is up to your municipality to fix the missing address), it means there is no infrastructure operator yet. This is up to your local government to make a deal with an infrastructure operator to cover this zone.<p>As for the numbers, as it is open data, there are some sites like <a href="https://infofibre.fr/" rel="nofollow">https://infofibre.fr/</a> where this is easier to see where we are. You can see that even rural regions have more than 90% of household coverage.<p>As for definitions, there are two cases for availability: immediate availability (infrastructure operator present up and you have at least one commercial operator after 3 months) or delayed availibility (the infrastructure operator has 6 months to make the address available after being asked by a commercial operator).</p>
]]></description><pubDate>Mon, 06 Apr 2026 10:45:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=47659195</link><dc:creator>vbernat</dc:creator><comments>https://news.ycombinator.com/item?id=47659195</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47659195</guid></item><item><title><![CDATA[New comment by vbernat in "Why Switzerland has 25 Gbit internet and America doesn't"]]></title><description><![CDATA[
<p>In reality, this does not happen that way. If a path already exists, you can pay to use the same duct (unless it's full) to install your own fibers. At least, it works this way in France.</p>
]]></description><pubDate>Mon, 06 Apr 2026 07:05:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=47657779</link><dc:creator>vbernat</dc:creator><comments>https://news.ycombinator.com/item?id=47657779</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47657779</guid></item><item><title><![CDATA[New comment by vbernat in "Why Switzerland has 25 Gbit internet and America doesn't"]]></title><description><![CDATA[
<p>France has 90% FTTH coverage in 2025, with 60% of households over 1 Gbps. One of the incumbents, Free (my employer), deployed P2P fibers in very dense areas but is switching to P2MP for economic reasons (and because this was not a competitive advantage). It's unclear to me if Switzerland plans to achieve this coverage with P2P. What looks great in Switzerland is not that each household has four dedicated fibers to the CO, but that Swisscom has responsibility for these fibers. In France, we have competition between operators for both services and infrastructure. In very dense areas, each building can have its own infrastructure operator (with an obligation to share); in less dense areas, this is by district (with an obligation to share); and in rural areas, this is a subsidized network (with an obligation to share). The downside is that there are "mutualisation points" where each ISP can go to plug or unplug subscribers, and they become a mess (<a href="https://img.lemde.fr/2020/06/04/300/0/900/600/1440/960/60/0/2005399_BSRUJTqyG5Uu__r6rHTrzVSF.jpg" rel="nofollow">https://img.lemde.fr/2020/06/04/300/0/900/600/1440/960/60/0/...</a>).<p>BTW, I am also disturbed by AI-generated images. The ones with the three workers laying cables look highly unrealistic and made me pause for a couple of minutes, wondering if they lay cables that way in Germany. The ones about how households are connected to CO look like you get multiple 720-fiber cables to the same household.</p>
]]></description><pubDate>Mon, 06 Apr 2026 05:47:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=47657386</link><dc:creator>vbernat</dc:creator><comments>https://news.ycombinator.com/item?id=47657386</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47657386</guid></item><item><title><![CDATA[New comment by vbernat in "Stop picking my Go version for me"]]></title><description><![CDATA[
<p>What the article does not say is that if you don't have a recent enough version, by default, Go automatically downloads a more recent toolchain. So, for most users, this is transparent.<p>However, this behavior can be disabled (for example, when building for a Linux distribution).</p>
]]></description><pubDate>Sun, 29 Mar 2026 05:19:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=47560587</link><dc:creator>vbernat</dc:creator><comments>https://news.ycombinator.com/item?id=47560587</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47560587</guid></item><item><title><![CDATA[New comment by vbernat in "Calculate "1/(40rods/ hogshead) → L/100km" from your Zsh prompt"]]></title><description><![CDATA[
<p>I'm the author. This demonstrates how Zsh's flexibility allows you to trigger a calculator, such as Numbat or Qalculate, using the '=' alias, without running into quoting issues.</p>
]]></description><pubDate>Sat, 28 Mar 2026 13:53:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=47554626</link><dc:creator>vbernat</dc:creator><comments>https://news.ycombinator.com/item?id=47554626</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47554626</guid></item><item><title><![CDATA[Calculate "1/(40rods/ hogshead) → L/100km" from your Zsh prompt]]></title><description><![CDATA[
<p>Article URL: <a href="https://vincent.bernat.ch/en/blog/2026-zsh-calculator">https://vincent.bernat.ch/en/blog/2026-zsh-calculator</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=47554586">https://news.ycombinator.com/item?id=47554586</a></p>
<p>Points: 1</p>
<p># Comments: 1</p>
]]></description><pubDate>Sat, 28 Mar 2026 13:49:42 +0000</pubDate><link>https://vincent.bernat.ch/en/blog/2026-zsh-calculator</link><dc:creator>vbernat</dc:creator><comments>https://news.ycombinator.com/item?id=47554586</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47554586</guid></item><item><title><![CDATA[New comment by vbernat in "OpenCode – Open source AI coding agent"]]></title><description><![CDATA[
<p>From the code, this does not seem to be true anymore. It falls back to the current model if no small model is identified with the current provider. <a href="https://github.com/anomalyco/opencode/blob/9b805e1cc4ba4a98419ca13d9d487c4550af8ddf/packages/opencode/src/provider/provider.ts#L1385" rel="nofollow">https://github.com/anomalyco/opencode/blob/9b805e1cc4ba4a984...</a></p>
]]></description><pubDate>Sat, 21 Mar 2026 08:53:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=47465285</link><dc:creator>vbernat</dc:creator><comments>https://news.ycombinator.com/item?id=47465285</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47465285</guid></item><item><title><![CDATA[New comment by vbernat in "Show HN: µJS, a 5KB alternative to Htmx and Turbo with zero dependencies"]]></title><description><![CDATA[
<p>The idea is that all the rendering is done server-side. So, the user always get a full page.</p>
]]></description><pubDate>Sun, 08 Mar 2026 04:15:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=47294339</link><dc:creator>vbernat</dc:creator><comments>https://news.ycombinator.com/item?id=47294339</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47294339</guid></item><item><title><![CDATA[New comment by vbernat in "Ask HN: Share your personal website"]]></title><description><![CDATA[
<p><a href="https://vincent.bernat.ch" rel="nofollow">https://vincent.bernat.ch</a></p>
]]></description><pubDate>Wed, 14 Jan 2026 19:56:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=46622019</link><dc:creator>vbernat</dc:creator><comments>https://news.ycombinator.com/item?id=46622019</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46622019</guid></item><item><title><![CDATA[New comment by vbernat in "We can't have nice things because of AI scrapers"]]></title><description><![CDATA[
<p>No, this is done by paying app developers to bundle some random SDK. Search for Bright Data.</p>
]]></description><pubDate>Wed, 14 Jan 2026 04:29:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=46612346</link><dc:creator>vbernat</dc:creator><comments>https://news.ycombinator.com/item?id=46612346</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46612346</guid></item><item><title><![CDATA[New comment by vbernat in "My Home Fibre Network Disintegrated"]]></title><description><![CDATA[
<p>From the photos, it does not look like the fibers themselves are damaged. You should check the error rate on both sides. If it is 0, the not optimal values of your speedtest are not related to your fiber. If it is not 0, the more likely issues are in order: connectors to clean (buy a cleaning pen), bend radius somewhere, faulty optics, then the fiber. You can also pay a professional to run an OTDR on your fiber. It would show where the fiber is degraded.</p>
]]></description><pubDate>Sun, 11 Jan 2026 07:35:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=46573459</link><dc:creator>vbernat</dc:creator><comments>https://news.ycombinator.com/item?id=46573459</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46573459</guid></item><item><title><![CDATA[New comment by vbernat in "Show HN: A Claude Code plugin that catch destructive Git and filesystem commands"]]></title><description><![CDATA[
<p>I am using something like this on Linux:<p><pre><code>    bwrap --ro-bind /{,} --dev /dev --proc /proc --tmpfs /run --tmpfs /tmp --tmpfs /var/tmp --tmpfs ${HOME} --ro-bind ${HOME}/.nix-profile{,} --unshare-all --die-with-parent --tmpfs ${XDG_RUNTIME_DIR} --ro-bind /run/systemd/resolve/stub-resolv.conf{,} --share-net --bind ${HOME}/.config/claude-code{,} --overlay-src ${HOME}/.cache/go --tmp-overlay ${HOME}/.cache/go --bind ${PWD}{,} --ro-bind ${PWD}/.git{,} -- env SHELL=/bin/bash CLAUDE_CONFIG_DIR=${HOME}/.config/claude-code =claude</code></pre></p>
]]></description><pubDate>Tue, 30 Dec 2025 07:20:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=46430463</link><dc:creator>vbernat</dc:creator><comments>https://news.ycombinator.com/item?id=46430463</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46430463</guid></item><item><title><![CDATA[New comment by vbernat in "Show HN: Shittp – Volatile Dotfiles over SSH"]]></title><description><![CDATA[
<p>This now looks very complex.</p>
]]></description><pubDate>Sun, 21 Dec 2025 21:12:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=46348522</link><dc:creator>vbernat</dc:creator><comments>https://news.ycombinator.com/item?id=46348522</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46348522</guid></item><item><title><![CDATA[New comment by vbernat in "Show HN: Shittp – Volatile Dotfiles over SSH"]]></title><description><![CDATA[
<p>This would enable a lot of attacks.</p>
]]></description><pubDate>Sun, 21 Dec 2025 14:27:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=46345062</link><dc:creator>vbernat</dc:creator><comments>https://news.ycombinator.com/item?id=46345062</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46345062</guid></item><item><title><![CDATA[New comment by vbernat in "The future of Terraform CDK"]]></title><description><![CDATA[
<p>It's odd to always say "Hashicorp, an IBM company". Looks like they want to assign blame.<p>I did try Pulumi a while back, but the compatibility with Terraform modules was not great, so I've switched to CDKTF, which can handle unmodified modules. Dunno if I'll switch back to Pulumi or just use OpenTofu directly.</p>
]]></description><pubDate>Wed, 10 Dec 2025 19:20:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=46222266</link><dc:creator>vbernat</dc:creator><comments>https://news.ycombinator.com/item?id=46222266</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46222266</guid></item><item><title><![CDATA[New comment by vbernat in "BGP handling bug causes widespread internet routing instability"]]></title><description><![CDATA[
<p>If the attribute says "encapsulate this", dropping just the attribute will create a blackhole as you will attract traffic that should be encapsulated and packets following this route will be dropped it if not.</p>
]]></description><pubDate>Wed, 28 May 2025 05:43:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=44113058</link><dc:creator>vbernat</dc:creator><comments>https://news.ycombinator.com/item?id=44113058</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44113058</guid></item><item><title><![CDATA[New comment by vbernat in "Offline PKI using 3 Yubikeys and an ARM single board computer"]]></title><description><![CDATA[
<p>Just added it.</p>
]]></description><pubDate>Wed, 19 Mar 2025 07:53:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=43409239</link><dc:creator>vbernat</dc:creator><comments>https://news.ycombinator.com/item?id=43409239</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43409239</guid></item><item><title><![CDATA[New comment by vbernat in "Offline PKI using 3 Yubikeys and an ARM single board computer"]]></title><description><![CDATA[
<p>Author here. I agree this is an important feature for a CA. I'll try to add it.</p>
]]></description><pubDate>Tue, 18 Mar 2025 06:21:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=43396291</link><dc:creator>vbernat</dc:creator><comments>https://news.ycombinator.com/item?id=43396291</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43396291</guid></item><item><title><![CDATA[New comment by vbernat in "I helped fix sleep-wake hangs on Linux with AMD GPUs"]]></title><description><![CDATA[
<p>Another lightweight option is tio.</p>
]]></description><pubDate>Tue, 18 Feb 2025 06:36:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=43086710</link><dc:creator>vbernat</dc:creator><comments>https://news.ycombinator.com/item?id=43086710</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43086710</guid></item><item><title><![CDATA[New comment by vbernat in "How to GIF (2025 Edition)"]]></title><description><![CDATA[
<p>The article is surprisingly inconclusive. From my understanding, the easiest way is to use the <video> tag with mp4.</p>
]]></description><pubDate>Sat, 08 Feb 2025 19:59:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=42985721</link><dc:creator>vbernat</dc:creator><comments>https://news.ycombinator.com/item?id=42985721</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42985721</guid></item></channel></rss>