Live data from Hacker News

Ask HN: What are the best-designed things you've ever used?

news.ycombinator.com

921–930 of 994 posts

Re: Ask HN: What are the best-designed things you've ever used?

#921
post #516

ZFS. Complete research companies unknowingly depend on the utmost reliability and flexibility ZFS has to offer. Started right with the first version included in FreeBSD in production use and never failed once while being the central storage connected to multiple HPC clusters with millions upon millions of rather small but also some vary large files. While offering five nines of uptime we even had to ability to send e…

The documentation is shit though, I spent a full hour digging through forum answers trying to increase my swap space. All this bpool zpool crap. And then my system /boot got full of some snapshot (wtf I never asked for this), apt-get failed to live up to its promise of magic, got more hell about a 20% preservation rule (again wtf). Was cutting and pasting some zpool zsysctl zc -a -f -foo -bar and then some sudo zfs d…

Well, it's an ROI judgement call at the end of the day. ZFS explicitly takes on significantly more irreducible complexity than ext4 so that it can cohesively tie together the features it offers into a complete system that is consistent for users to work with and for developers to maintain while introducing as few bugs as possible.

This reminds me that I wrote a little a while back about the occasionally nontrivial challenge of absorbing complex structures (https://news.ycombinator.com/item?id=25760518) when learning new concepts. I would personally absolutely love to be able to ingest complex ideas while not having to deal with the heightened semantic overhead, but I think that might be the human-learning equivalent of the P=NP problem. (The only solution seems to be finding neat elegant ways to represent things that happen to take advantage of subconscious shortcuts intrinsic to how we reason about the world, but there sadly seems to be no research being done on how to find and exploit those paths.)

ZFS itself seems to suffer from a bit of an above-average "newbies on soapboxes" problem sadly - a bit like the Rust community's "memory safety" crowd that don't completely understand what's going on, except in ZFS' case there are more than a few people who only know just enough to be dangerous, and are excellent at articulating themselves, loudly.

The collective consensus about ZFS is thus mostly comprised of many small pieces of arguably technically correct anecdata that miss just enough nuance that the overall perspective is shifted from reality by a nontrivial amount. My current favorite observable example of this is this downvoted (grey) comment by one of the ZFS developers clarifying that the system truly doesn't need a lot of RAM to run: https://news.ycombinator.com/item?id=11898292

Completely independently of this vocal-minority problem, ZFS' licensing situation inhibits the cohesive direction and leadership that would produce a fundamentally cohesive, holistic platform integration effort along with supporting documentation. There are hobbyists figuring things out as they go along on the one side, and commercial vendors providing SLA'd documentation as part of their enterprise support on the other, with a giant hole in the middle that in this case would probably be filled with a kernelspace documentation effort (which would be absolutely rock solid and excellent).

So if you can ignore all the vocal minorities and read between enough of the lines of the documentation you can find (is this valid for my OpenZFS version? is this FreeBSD-kernel specific? was this written by someone who knows what they're talking about? etc), you should be fine. You just have to accept the status quo and the tug of war that sadly tagged along with the excellent codebase.

Regarding the specific use case you described, I would point out a few details:

- AFAIK, ZFS pools (aka-but-not-exactly a partition) can't easily be resized; you generally have to recreate them

- When I was setting up my own ZFS configuration I repeatedly found warnings (without looking for them) in multiple setup guides and GitHub issue comments that swap on ZFS can cause deadlocks - hopefully you were using standard Linux swap partitions

- You aren't required to use the defaults of "bpool" and "rpool" (I chose my own pool and dataset names)

- Automatic snapshots on /boot sounds like a misconfiguration error (I never configured snapshots)

- Naturally I can only say that blindly copypasting commands that directly edit your filesystem is an excellent way to say goodbye to your data, with extra steps

My own experience was with configuring ZFS from scratch on Debian (following https://openzfs.github.io/openzfs-docs/Getting%20Started/Deb..., but mostly ignoring the Now We Setup 23489573647823 Separate Datasets Because We Can bits - I just have /debian (/), /data and /boot).

It sounds like you were fighting Ubuntu's autoconfigured setup, without understanding what defaults it picked or what things it did for you at install time. This is not at all ideal from a system-comprehension perspective.

So, it might be fair to shift some (maybe more than some) of the blame to Ubuntu for your negative experience, and not just associate ZFS on its own with that negativity.

I can highly recommend setting up Debian on a physical machine (that always helps me greatly, I find VMs too... intangible) and yelling at it until a) you understand everything you've done and b) ZFS works. In that order. Getting it working without needing to completely reinstall (ie breaking something, then fixing the breakage, without needing to wipe and starting again) would also be an excellent goal... perhaps on the 2nd or 3rd reinstall :P

I've also found it extremely useful to create a ~4GB or so partition at the end of my disk to store a "recovery" system; what I'll do is debootstrap Debian onto the recovery partition, boot that, install ZFS support, configure pools and datasets, debootstrap Debian onto the new dataset, get that working (might take a couple goes - I always miss a step, like configuring GRUB, or remembering to run `passwd`, or edit /etc/fstab, etc), and then I have a 4GB ext4 partition that knows how to mount ZFS if I need it.

This strategy actually came in handy bigtime a couple months back when I broke GRUB boot (unrelated issue) and was able to fallback-boot into the recovery partition to get everything working again: the recovery partition was able to mount / as needed so I could chroot into my main system and reinstall GRUB correctly.

Re: Ask HN: What are the best-designed things you've ever used?

#922

Epson EcoTank printer. We purchased ours in 2018 and haven't yet needed to refill the ink reservoirs (getting close though) and it comes with an extra refill set as well.

I'm happy you're enjoying yours.

I replaced a really old Brother laser printer (10 years old?), thinking surely a state-of-the-art, high-end inkjet would outshine it. The ink does seem to last forever, but the print quality is so much worse than laser (for text/vector graphics at least). And I always have to run the "clean print heads" before I can get a clean print, since I only use it every month or so.

Re: Ask HN: What are the best-designed things you've ever used?

#924

The Kinesis Advantage keyboard [1]. The height of the keys in each column are different because, well, the length of each of our fingers is different. It’s so naturally comfortable that it goes unnoticed and one’s fingers just fall into the right position. Placing one’s fingers offset left or right is so obviously uncomfortable that it’s basically impossible to have off-by-one typos. There is a lot of subtly well-des…

I use a custom keyboard with a similar columnar stagger. In addition it's small enough that I can reach every key without moving my hands, which means my accuracy is noticeably better. There's no chance I'm ever going back voluntarily. Typing all kinds of symbols all day just doesn't get more comfortable. This is why I'm always so annoyed by all the "qwerty vs. dvorak" arguments. It's pretty much the least problemati…

If I can ask, what sort of custom keyboard? A completely bespoke 3D printed sort of thing, or a combination of different parts?

Re: Ask HN: What are the best-designed things you've ever used?

#925

When I was a kid, the tub in the bathroom had two knobs to control the faucet and shower: one marked with a red H, one marked with a blue C. Easy to understand, consistent with the faucets in the kitchen and bathroom sinks, easy to control. There was the little thing to pull up and redirect the flow from the faucet to the showerhead. Every tub/shower fixture in the apartments I've lived in and all the hotels I've vis…

Di2/Etap is going to blow your mind.

searches

I dunno, I really want as little electronics on my bike as possible. Riding home with no shifting capacity because I let the derailleur run out of power sounds a lot shittier than keeping to back roads because my lights ran out.

Part of why I think the existing shifter setup is great design is because it’s purely mechanical. And it’s cheap enough to come standard on the cheap $300 bike I bang around town on, without any worries about it looking like something worth stealing.

Re: Ask HN: What are the best-designed things you've ever used?

#926

YouTube's video player (almost the entire rest of the site is beyond crap, don't get me wrong! I'm just talking about the watching experience) (assuming you have an ad-blocker, which you obviously should). Plenty of other video players have some of these features, but YouTube has almost everything. - click to pause - double-click to fullscreen - customisable captions - speed controls - sensible keyboard shortcuts for…

Huh. I have to begrudgingly agree that you're right. I have a few nitpicks and quibbles, but you're mostly right.

My counter-arguments which are mostly commentary:

- Speed doesn't go up to 3x+ (internal users can go up to 20x speed, see the source code)

- Focus issues mean left/right/up/down/home/end might change the volume, playback position or page scroll, and there is no indication of what will happen; I typically middle-click the video to focus it before using the keyboard, or sometimes try hitting 'k' twice to see if the video reacts

- There's no way to say "my connection is being stupid, please buffer this to the end"

- The speed detection often gets confused on my (objectively terrible) ADSL2+ and drops me down to 360p or 240p; I'm often manually switching back to 720p (the max my connection can reasonably sustain)

Everything else in your list though... I have to admit that yeah, those features do work :)

Position restoration would probably be my favorite.

YouTube Music, on the other hand... noope. https://news.ycombinator.com/item?id=24604172

Re: Ask HN: What are the best-designed things you've ever used?

#927

BitTorrent is amazing. It just works. Anyone anywhere can create a torrent of their files, dump the magnet link somewhere, and everyone else can reliably retrieve it. It is self-reinforcing; the more people using a torrent, the better the robustness, redundancy and download speeds. You can often get better speeds from downloading something via torrent than from a web server. It's an open protocol that is relatively e…

Wish browsers had built in support for it. Imagine if by default most downloads were through BitTorrent, and your browser would then seed the file for 1.5x the download size and time.

Brave Browser has it

Re: Ask HN: What are the best-designed things you've ever used?

#928

Garmin Fenix 5s Sapphire: notifications from my phone with custom replies, 6 day battery life, buttons. No touch screen (operate it "blind" and in the wet), waterproof, scratchproof. You do need to pay extra for the sapphire screen. Swiss Army knife (they're sooo well made) Under armour underwear: no seams, last ages, extremely comfortable. Darn tough socks: extremely comfortable, last forever, never smell. Altra Lon…

What's your experience with Tailscale? Have you compared it to alternatives (ZeroTier, Nebula, OpenVPN...)?

What I like about tailscale is that it's a no-brainer to set up and use. I have no technical difficulty seeting up a VPN, but I really don't want the hassle of "doing work" at home. But the main reason is that my wife doesn't want me to over-complicate things. I've found myself looking only at simple solutions that work for both of us.

Re: Ask HN: What are the best-designed things you've ever used?

#929

Earlier quoted context omitted.

Unless you want to make a fort at night, I really would not bring an axe along. Finding firewood for a campfire is usually not a problem. But a too heavy bike is. I did it bike camping a lot and my advice is, only bring what you absolutely need. Without extra burden, everything is much more enjoyable and you will have more energy to reach the nice spots.

I do a lot of slow bike camping in Japan where the campsite will often provide firewood, but it's too large for the small solo stove I have. I've tried a saw, but what I really want is thinner wood split from the larger pieces, not lateral cuts. The axes being talked about are only about 470g, which doesn't bother me too much shoved in a pannier.

Ok, this is a very different scenario then, where it makes sense for you ..

Re: Ask HN: What are the best-designed things you've ever used?

#930
post #781

Earlier quoted context omitted.

One major disadvantage of this approach is that if you are coming in with a bulky bag, or more (hauling carry-on luggage in an airport for instance), you have sharply limited space within to maneuver you and your stuff to a position where you can lift your skirts and do what you came here to do. Every time I go to a public bathroom with stall doors that open outward I am delighted.

You are forgetting about pregnants and bigger people. They usually have a hard time getting into the stalls.

Why don't someone design doors that can be both pushed and pulled, and locked

I guess this exists at some places

Plus a mechanism that prevents the doors from opening too fast outwards (so they won't hit anyone)

Post reply on HN