Recent submissions

Comment · 1 year ago
I mean, people ARE doing it, and like I said it's mature enough to be the default way to build Rails apps. There's tradeoffs, no doubt, but this is absolutely a valid, productive way to write (certain types of) web apps.
Comment · 1 year ago
> Any web application with a UI _requires_ a frontend build for CSS/JS.

Except it really doesn't. Core web technologies have gotten so much better since the jQuery/pre-SASS days that you can absolutely get by without a build step.

- http/2 makes bundling a questionable choice

- polyfills are pretty much no longer a thing

- CSS now has most (all?) of the features that people used SASS for (variables, nesting, etc.)

- es6 modules work

This has been a big talking point in the Rails community lately — one of the big selling points of Rails 8 was the fact that you can, by default, ship a whole webapp without a build step, and that this is considered the "happy path".

Comment · 2 years ago
Anecdotally, the same seems to apply to the output format as well. I’ve seen much better performance when instructing the model to output something like this:

  name=john,age=23
  name=anna,age=26

Rather than this:

  {
    matches: [
      { name: "john", age: 23 },
      { name: "anna", age: 26 }
    ]
  }
Comment · 2 years ago
I think the industry got caught up in all the cool new stuff that SPAs enabled. There’s a category of web apps that you simply can’t build without putting most of the state on the client (Google Docs, Figma etc.) and that category happens to contain most exciting web-based products that have been built lately. Not using an SPA was (is?) basically an admission that your website is and always will be “boring”.

We’re starting to (re-)discover that you can build interesting, profitable products that are technically boring.

Comment · 2 years ago
Fun fact, this is actually illegal here in Sweden! That is, merchants aren't allowed to adjust prices based on payment method. Not sure what the reasoning is.
Comment · 2 years ago
I wrote my bachelor thesis on something tangential — basically, some researchers found that it was possible in some very specific circumstances to train a classifier to do author attribution (i.e. figure out who wrote the program) based just on the compiled binaries they produced. I don’t think the technique has been used for anything actually useful, but it’s cool to see that individual coding style survives the compilation process, so much so that you can tell one person’s compiled programs apart from another’s.
Comment · 2 years ago
This got me thinking of Ender’s Game, where they basically tricked a kid into committing xenocide by telling him he was playing a computer game.
Comment · 2 years ago
Beautifully designed website! I still don’t know how it’s supposed to work though, the whitepaper has zero implementation details in it.
Comment · 2 years ago
Look at professional bodybuilding to see how this ends. Being competitive means taking years (decades?) off of your life expectancy, and nobody wants to see their heroes die in their 50s.
Comment · 3 years ago
No OP but I think there’s three parts to really getting TCP/IP:

- Read the spec(s)

- Learn the OS APIs deeply

- Look at a bunch of real network data in e.g. Wireguard

Comment · 3 years ago
Yup, this is me too. Married with two kids, met when we were 17, went through uni together.

For me, having a small social circle is just a matter of preference. I don’t know why. I don’t feel uncomfortable in (most) social situations and I have a lot of acquaintances that I’m friendly with. Sometimes I’ll hang out. Most of the times I just don’t want to.

Most of the socialising I do nowadays has a “purpose”. Beers after work, play dates with other parents, tech meetups and so on. If it’s just a random hang out session, I’m sorry but I’d rather hang out with my wife and kids.

Comment · 3 years ago
Or just don’t use gmail. Email is way too important to me (and most people) to risk losing because an automated system thought I broke the TOS of an unrelated Google product. Even if you keep separate accounts, there’s nothing to stop them correlating those accounts and banning you anyway.

Don’t use gmail as your primary email provider.

Comment · 4 years ago
Here’s one: The fact that contexts are used extensively in the standard library but that there’s still no way to cancel a write to an io.Writer. The only way to “cancel” a write on a TCP socket is to set the socket’s “deadline” to some time in the past from another goroutine.
Comment · 4 years ago
Hmm it’s almost like we should let the people actually doing the job decide how best to do them, hmmmm
Comment · 4 years ago
Since nobody’s asked: How does GPS jamming work?

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton