HNHacker News
TopNewBestAskShowJobs

TheFlyingFish

281 karma · joined May 31, 2019

submissionscomments
TheFlyingFish··on The New Internet
Wasn't sshuttle created by the now CEO of Tailscale?
TheFlyingFish··on Cosmopolitan Third Edition
I don't know, I think pinch-to-zoom + pan is a pretty decent way of dealing with pages that have more complex layouts than basic document, but were designed using e.g. tables for layout. Given that most non-trivial pages would have been laid out that way back when mobile browsers were first coming out, it seems like a reasonable tradeoff to me.

That is to say, it's definitely a hack but I wouldn't call it useless, at least originally. These days it's a lot less useful since the number of pages that do benefit from this treatment has decreased dramatically. But at this point the die has been cast.

TheFlyingFish··on How fast are Linux pipes anyway? (2022)
(assuming that we're talking about the AWS serverless functions) Like everything else, it's situational.

Upsides of lambdas are ease of deployment (no need to worry about servers, that's kind of the whole point of serverless), virtually infinite horizontal scaling, and a very generous free tier.

Downsides are relatively slow cold starts, difficulty of exposing to the outside world (eg via HTTP route), and lack of state management.

Personally I like using Lambda as glue between different parts of the AWS ecosystem, or to handle events, dispatch notifications etc.

However I would definitely not use Lambda for anything remotely resembling a stateful web app, for instance. The slow cold starts and inherent statelessness are going to make that difficult. Also API Gateway is a huge pain to work with, or was last time I looked at it.

TheFlyingFish··on Python 3.12
You may be interested in Mojo: https://modular.com/Mojo

Kind of a crazy project but the "just go ahead and import any Python module and we'll embed the VM in your binary" approach is interesting, at least.

TheFlyingFish··on Text editing on mobile: the invisible problem
I have trouble imagining that more than 2-3 fingers can be realistically used for input at once. For one, you normally have to use one hand to hold the phone, which uses up 3-4 fingers. And to enable frequent multi-touch gestures you'd have to hover your hand awkwardly over the phone, which is fine for the occasional pinch-to-zoom but not if you have to do it all the time.
TheFlyingFish··on Java 21 makes me like Java again
Sadly this isn't just the case for scientific Python. E.g. some widely-used web library (I forget which) recently switched to using a Rust implementation of TLS, and suddenly you needed a working Rust tool chain available to install it. This caused a lot of grief.

I love Python, and I've been experimenting with Rust and enjoying it so far, but this situation could have been better handled, I think.

I agree 100% about scientific Python though. It's a whole new level of horrible when it comes to dependency management.

TheFlyingFish··on Nginx Unit – Universal web app server
This is just my personal opinion, but I think YAML is more intuitive but has a lot more footguns and gotchas, while TOML is more consistent but less obvious (ironically, given the name.)

This may contribute to YAML's popularity in CI systems, because CI systems often need to be adjusted by someone who isn't super familiar with the syntax, and YAML is easier to intuit than TOML.

TheFlyingFish··on I'm betting on HTML
When I use the datalist element with a text input, Chrome shows an arrow on the right and the list drops down when you focus the input. Firefox, however, shows neither until you start typing, at which point it suggests just those items that match your input. So there's no way to see the full list of options.

I think Chrome's behavior is correct here, but the larger point is that precisely because these are native elements, when they don't work there's nothing you can do. So your only option is to reimplement them from scratch.

TheFlyingFish··on Passkeys will come at a cost
Wouldn't this include passwords? People lose those all the time.

The proof will be in the pudding, but I suspect that widespread adoption of passkeys will make account lockout less common, rather than more, for the vast majority of people.

TheFlyingFish··on Hunting for Nginx alias traversals in the wild
Caddy has been my default choice recently: https://caddyserver.com

Among other things, it features automatic TLS via ACME and dead-simple configuration for my most common use cases: namely, serving a directory of static files and reverse-proxying to an app server.

It is written in Go, but I certainly wouldn't describe it as "cobbled together."

I'm also a fan of Traefik but it's strictly a reverse proxy, there's not even built-in support for serving static files. But it's great if you have e.g. a bunch of containers on a single host and you want to front them all with a single load balancer.

TheFlyingFish··on We raised a bunch of money
Oh man, early Slack was great. Back in ~2015 or so I submitted a ticket about something trivial (why I could no longer hide the menubar or something, I forget), but just for fun I did it all in stilted archaic language like you'd see in the 1600s or something. "Behold, in days of yore when the Users of the Land sought refuge from the tiresome typing that had so bedeviled their lives hitherto..." etc. Anyway, their CS team responded in kind. Hands-down the most fun I've ever had with a support ticket.
TheFlyingFish··on Comic Mono
Interesting, my dyslexic sister absolutely swears by Dyslexie (a similar font) and has set her Kindle to use it all the time.

I wonder if there are different sub-variants of dyslexia that work on different principles?

TheFlyingFish··on Sketch of a Post-ORM
The obvious thought that occurs to me is UI - how are users going to access this hypothetical application? If it's via the web, then you'll need a whole setup for generating HTML, and doing that in SQL sounds extremely painful. If it's a native app, then you've got to interact with the OS somehow to do things like draw to the screen, and I've never even heard of trying to do that from SQL.

More broadly, this just seems like it would sharply limit how you could extend the application in the future. What if at some point you want to query a web API for some additional data with which to enrich what you're returning from your database? (Not an unusual situation, in my experience.) You'd be stuck trying to make web requests from SQL, which again seems needlessly painful.

Note that I'm not against the basic idea of "do as much data-munging in SQL as possible" - in my experience that's a great way to ensure that your application stays fast and efficient. It' just all the ancillary things surrounding the data-munging for which I don't think SQL is the best fit.

TheFlyingFish··on Sketch of a Post-ORM
As in, write your entire application in SQL? That sounds like a nightmare of epic proportions. Every time I've tried to use SQL for anything more general-purpose (like string manipulation, say) I've wanted to gouge my eyes out by the end.
TheFlyingFish··on So what’s next (personal news from developer of popular CoreJS polyfill)
Seems unlikely to work given (if I understood correctly) the main direct consumer is Babel, another OSS project that is known to have had trouble with funding in the past. If he starts asking for license fees, Babel eill just be forced to make do with the latest OSS version, fork it or whatever, and the rest of the world will never know.
TheFlyingFish··on RustDesk – Remote desktop software, written in Rust
I can second that. Parsec is the best remote-access software I've used, bar none. The lack of Linux hosting is an unfortunate downside.
TheFlyingFish··on RustDesk – Remote desktop software, written in Rust
Nim is garbage-collected, actually. It has an option to disable garbage-collection (though I thought there was talk of removing that at some point) but then it just leaks memory, it doesn't have a comprehensive system for GC-less memory management like Rust does.
TheFlyingFish··on Ask HN: What's the best lecture series you've seen?
Couldn't agree more. His series on networking is also fantastic. Hugely leveled-up my understanding of how computers talk to each other. It's almost Euclidean how he builds it up, with each segment applying the principles from the previous one.

He's a fantastically gifted teacher and has a very deep understanding of the material, which is just a killer combination.

TheFlyingFish··on The Yaml document from hell
To me, the #1 reason to use YAML rather than anything else is if you need to embed complex multi-line strings in your document. This is a practical necessity in CI systems: you always end up with at least a little bit of shell scripting to glue things together, and embedding shell scripts into anything other than YAML is an absolute nightmare.

Yes, there are too many options for expressing multi-line strings (In the vast majority of cases, I really don't care whether it has a trailing newline or not). Yes, there are weird rules that don't make sense, like how in "folding" mode a newline followed by two spaces more than the current indentation level doesn't get folded. But it's still the best option for CI, which is why Github actually ditched HCL in favor of YAML after a while: https://news.ycombinator.com/item?id=20647691

TheFlyingFish··on Ask HN: What sub $200 product improved your 2022
I do a very similar version, minus the pepperoncini. One thing that I've found can really take it up a notch is to add just a touch of soy/worcestershire sauce, maybe about 1/4 to 1/2 teaspoon of each. IMO it adds a nice savory background flavor.
TheFlyingFish··on Theory-building and why employee churn is lethal to software companies
I'm guessing this is "Do-nothing scripting: The key to gradual automation" https://news.ycombinator.com/item?id=29083367

Although the example uses Python, rather than shell.

TheFlyingFish··on Non-binary DDR5 memory could be a game-changer for businesses everywhere
Ah yes, the "advertiser's gigabyte". Sort of like a "baker's dozen" but in reverse.
TheFlyingFish··on “Nobody cares about your blog”
The image for Noemi appears to have been removed now: all I see is a generic abstract pattern. Looks like a PowerPoint slide background or something.
TheFlyingFish··on The situation at LastPass may be worse than they are letting on
Is this possible with Yubikeys? I'd be very interested if so. "Two identical Yubikeys" is something I've wanted for a long time.
TheFlyingFish··on Tailnet Lock
Yeah, they get a lot of flak for that from HN. Doesn't bother me personally, but I can see why it would be a dealbreaker for some people. On the other hand, I sympathize with their decision to just not have to worry about storing passwords, account recovery, and all the associated headaches, because I hate those headaches too.

My guess is they will eventually add a sign-up-with-email option, but it's pretty far from the top of their priority list.

TheFlyingFish··on Tailnet Lock
Not GP, and I can only answer for myself, but:

Personally, I use it to connect my home devices as if they were always together on the same LAN, even when they're not. E.g. Raspberry Pi, home NAS, "home" server that's actually in a different physical location, etc. All accessible anywhere at any time, even (say) from my laptop in a moving vehicle, without connections dropping even when my IP changes. It really is like magic.

At work, we use it so that remote employees can access locally-hosted applications, office NAS, etc. ACLs make it easy to employ the principle of least privilege, so that having a route into the office LAN doesn't immediately mean any and every device is compromised.

TheFlyingFish··on Tailnet Lock
Depends on whether you're talking about stuff that you actually want to be "exposed to the public" (i.e. can receive traffic from any IP) or just "accessible from outside the LAN."

If the former, Tailscale isn't really a good fit since it only permits access to authenticated devices.

If the latter, Tailscale is perfect. It's a VPN in the original sense of the world, "private" being the operative term - your devices can communicate as if they were all on the same LAN, without worrying about their traffic being eavesdropped.

As for the pricing, I'm fairly confident that Tailscale won't mind if you're sharing a free plan (so single-user) across e.g. your laptop and your wife's, even though there are technically two "users" there. They've made it pretty clear that the divide they care about is "personal use free, company use paid."

TheFlyingFish··on Tailnet Lock
Obviously "every single day" is hyperbole, but I agree with you that a much higher proportion of Tailscale blog posts end up on the front page than most corporate blogs.

Finally I think it comes down to this: Tailscale is full of the same kind of people who tend to hang out on Hackernews. HN loves Tailscale because Tailscale is HN's ingroup.

Fly.io is in a similar situation, and similarly sees a higher-than-average fraction of their blog posts getting traction on HN.

For an interesting counterexample, look at warp.dev. They have a lot of the same markers - tackling an interesting problem that affects many HNers daily (the limitations of the terminal), building things from the ground up in Rust, and writing highly technical blog posts about it - but at the same time, it's clear that as an organization, they don't quite get it. They can't understand, for instance, why putting telemetry in their terminal emulator is absolute suicide as far as HN is concerned, or why "moving the terminal to the cloud" is a phrase that will never make HN happy. Unlike Tailscale and Fly, they are not "of the race that knows Joseph", as it were.

That's not to say that there aren't individuals at Warp who are members of the HN ingroup. But at the organizational level, Warp just isn't quite it.

TheFlyingFish··on Infosys leaked FullAdminAccess AWS keys on PyPI for over a year
That's not nice, that's just smart. Delete production, and someone will notice right away. Leave production as it is, and they might not notice until the bill comes due.
TheFlyingFish··on I fought the PayPal and I won
I regularly read Singal-Minded and it still took me until "I am a lawyer" before I scrolled back up and checked the author name.
← PreviousPage 2 of 4Next →