HN user

vbernat

1,919 karma

Personal blog: https://vincent.bernat.ch/en/blog

Posts22
Comments449
View on HN
telcokwaks.com 5d ago

SatNOGS: A Ground Station for Under €100

vbernat
2pts0
vincent.bernat.ch 1mo ago

Building a Soviet Nail Factory: how KPIs killed efficiency

vbernat
3pts0
vincent.bernat.ch 2mo ago

CSS and vertical rhythm for text, images, and tables

vbernat
1pts0
vincent.bernat.ch 3mo ago

Calculate "1/(40rods/ hogshead) → L/100km" from your Zsh prompt

vbernat
1pts1
flameeyes.blog 4y ago

My Manager Made Me Cry at My Desk (and Other Stories)

vbernat
71pts35
shadow.tech 5y ago

A new beginning in sight for Shadow

vbernat
1pts0
vincent.bernat.im 8y ago

A more privacy-friendly blog

vbernat
146pts50
vincent.bernat.im 8y ago

Integration of a Go service with systemd: socket activation

vbernat
1pts0
jpetazzo.github.io 8y ago

Test drive of AppSwitch, the “network stack from the future”

vbernat
2pts0
wtarreau.blogspot.com 8y ago

Progressive Locks: fast, upgradable read/write locks

vbernat
121pts3
vincent.bernat.im 8y ago

OPL2LPT: an AdLib sound card for the parallel port

vbernat
4pts0
kroah.com 8y ago

Linux Kernel Release Model

vbernat
2pts0
lists.debian.org 9y ago

Intel Skylake/Kaby Lake processors: broken hyper-threading

vbernat
1108pts269
vincent.bernat.im 9y ago

IPv4 route lookup on Linux

vbernat
2pts0
codearsonist.com 9y ago

Reading for Programmers

vbernat
4pts0
vincent.bernat.im 9y ago

VXLAN: BGP EVPN with Cumulus Quagga

vbernat
2pts0
www.haproxy.com 9y ago

Truly Seamless Reloads with HAProxy

vbernat
3pts0
review.coreboot.org 9y ago

Lenovo ThinkPad X1 Carbon Now Supported by Coreboot

vbernat
3pts0
vincent.bernat.im 9y ago

Proper isolation of a Linux bridge

vbernat
2pts0
vincent.bernat.im 9y ago

Integration of a Go service with systemd

vbernat
1pts0
vincent.bernat.im 11y ago

Live patching QEMU for VENOM mitigation

vbernat
1pts0
vincent.bernat.im 14y ago

Tuning Linux IPv4 route cache

vbernat
2pts0

I have switched from FVWM to awesome because of Lua. Many years later, I have switched to i3 because it's not using a programming language for configuration. It's fine to have a configuration language if you have time to maintain, but your configuration can become quite complex and difficult to evolve. And it is also far more subject to breakage when upgrading.

I think I've found balance by using a Python daemon as a "companion" for my i3 configuration. It listens and react to event. It enhances the configuration, so when it's broken, it's not a big deal. And the interface exposed by i3 is smaller, so less risk of breakage. https://vincent.bernat.ch/en/blog/2021-i3-window-manager#i3-...

I have also restored the very first articles I wrote in the 90s when I was young <https://vincent.bernat.ch/en/blog/2026-old-web-articles>. At the time, they were not "great," but now I think they have some limited historical values. For example, one of them is about how the national phone operator was billing minutes. The information was easy to find in the past but is pretty scarce now.

I didn't use the wayback machine because it didn't archive everything I needed and because I still had the files on my hard drive, but if I didn't, I would have been happy to recover them.

Biking is not meant to replace everything. More people biking means more room for people that cannot bike. Bike-heavy cities like Amsterdam show that most of your "facts" are incorrect (bikes can be used to transport goods, are usable when it rains, are used by a large part of the population). That's a trope common when bike displaces cars, but studies show the reverse (for example in Madrid: https://www.sciencedirect.com/science/article/abs/pii/S02642...). Also, biking is good for health despite the risks (for example https://www.bmj.com/content/343/bmj.d4521).

It already does. With IPv6, you don't go through some CGNAT box, that could misbehave or just break (and since the biggest chunk of content is available through IPv6, this may not be a priority). Also, a shared IPv4 can be banned by various sites if one of the owner misbehaves. This issue is not present with IPv6.

More on this: https://vincent.bernat.ch/en/blog/2024-why-ipv6

6rd will soon get away to get native IPv6 instead. Also, 6rd is what allowed France to lead IPv6 deployment.

Leaving Mozilla 1 month ago

Options have a maintenance cost. Pulseaudio is the current Linux audio stack, like plain ALSA was before when it replaced OSS.

I don't understand why Cloudflare got unrestricted access while Daniel Stenberg got Mythos run by a third party on cURL and only got a report. Well, I understand, but I may be wrong.

I find this fascinating. I also like to customize my desktop experience with my own code, but it's more assembling stuff with some additional code as glue.

A word of warning: a reliable lock tool for X11 is difficult. You should look at XSecureLock, which uses a multiprocess approach to avoid leaving the desktop unprotected in case of crash. It also implements a number of countermeasure to ensure the desktop stays locked and the locker stays in the front of the display. It's small too, so easy to audit (but written in C).

Did you check on https://cartefibre.arcep.fr/? 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.

As for the numbers, as it is open data, there are some sites like https://infofibre.fr/ where this is easier to see where we are. You can see that even rural regions have more than 90% of household coverage.

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).

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 (https://img.lemde.fr/2020/06/04/300/0/900/600/1440/960/60/0/...).

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.

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.

However, this behavior can be disabled (for example, when building for a Linux distribution).

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.

I am using something like this on Linux:

    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

It's odd to always say "Hashicorp, an IBM company". Looks like they want to assign blame.

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.