HN user

tail_exchange

646 karma
Posts2
Comments227
View on HN
Ferrari Luce 2 months ago

Maybe I just have a bad taste for cars, but this looks awful. Uninspiring. Looks like a Tesla with a Ferrari logo.

Edit: I do love the analog buttons in the interior though. I despise those big screens with all the controls, and no tactile feedback.

I’m glad you recovered, Cliff! I got a signed Klein Bottle from you as one of the first things I did once I moved to North America about a decade ago. It’s sitting proudly on my bookshelf.

For greenfield projects, I agree. It gets the job done, but PHP would never be my choice for a new project. Bun seems like a much better choice in pretty much every criteria.

Go's Sweet 16 8 months ago

I was very skeptical of Go when I started learning it, but it quickly became my favourite language. I like how simple but powerful it is.

If I had a magic wand, the only things I would add is better nulability checks, add stack traces by default for errors, and exhaustive checks for sum types. Other than that, it does everything I want.

It's very ironic that the way they could have made money was the simple, but boring one: buying and holding bitcoin. Being a shitcoin day-trader is much more exciting though, and that's how they lost all their money.

Maybe that's also what will happen with AI investors when the bubble pops or deflates.

No. Like always, there will be visual accessibility features such as high contrast, reducing screen motion, dark mode, and reduced transparency. I never had to use them, but according to a family member who is blind, Apple is excellent in terms of accessibility.

The opposite for me. I'm so tired of the boring and uninspiring flat design, that Apple may have convinced me to get an iPhone next time I upgrade. I don't even notice Android updates anymore, the past 3 or 4 just look and feel the same.

I'm on the other camp. I'm so tired of the boring flat design, I'm actually considering switching to an iPhone.

Perhaps something like this?

    result := InvokeWithErrorLogger(
        func (err error) { // Error handler
            incrementMetric("foo")
            log.Error("bar")
        },
        addTwoNumbers, a, b,
    )

But the problem is that this approach is not better than just writing this, which doesn't need any new fancy addition to the language:
    result, err := addTwoNumbers(a, b)
    if err != nil {
        incrementMetric("foo")
        log.Error("bar")
        return fmt.Errorf("addTwoNumbers(%d, %d) = %v", a, b, err)
    }
Hence why all the proposals ended up dying with the lack of traction.

This doesn't actually makes the process simpler.

Error handling in Go is not just writing "if err != nil { return nil, err }" for every line. You are supposed to enrich the error to add more context to it. For example:

    result, err := addTwoNumbers(a, b)
    if err != nil {
      return fmt.Errorf("addTwoNumbers(%d, %d) = %v", a, b, err)
    }
This way you can enrich the error message and say what was passed to the function. If you try to abstract this logic with a "Handle" function, you'll just create a mess. You'll save yourself the time of writing an IF statement, but you'll need a bunch of arguments that will just make it harder to use.

Not to mention, those helper functions don't account for cases where you don't just want to bubble up an error. What if you want to do more things, like log, emit metrics, clean up resources, and so on? How do you deal with that with the "Handle()" function?

there is literally nothing you can do with errors in go except bubble them up, log them, or swallow them

You can also add additional context to the error before bubbling it up. But yes, that part of the point. Instead of bubbling them up, the programmer should instead reflect on whether it is better than just log and proceed, or completely swallow them. This is what error handling is about.

In the meantime, tariffs are raised on every country to gauge which side they are on

Why on earth would you be on the side of a country like this? Why we should be an ally of the US right now, if Trump can't even uphold agreements he signed himself 5 years ago? What guarantees do we have that, as soon as we decouple from China, the US won't treat us as a vassal because we gave up our only alternative? The only rational choice is to either be neutral or ally with China.

Apple Invites 1 year ago

Likely doesn't need to be said, but if you are organizing parties with emails, you're probably not the target user base of this feature.

For the younger folks who organize their parties by texting (iMessages, Whatsapp, Telefram, etc), this can be enticing.

I went from a skeptic to a huge fan of Go. I like how simple the language is, but powerful at the same time. It has a great balance between helping me do things the right way, but at the same time staying out of my way. Concurrency is particularly nice.

I feel like I don't really understand the point of the article. Half of it explains the problem, and the solution in the other half is extremely vague.

It seems to imply that root cause analysis was previously only taking into consideration individual components and only machine-to-machine interactions, and a better approach is to also take into consideration how systems interact with each other, as well as human operators.

Maybe that's true for Google, but I don't think this is the "a-ha" moment the author thinks it is. If you are just looking at how two components can fail while interacting, then obviously you are leaving out a huge part of the equation. I don't see why we would need another aconym jargon for this.

What free speech? The moderation changes explicitly say you cannot label Republicans as mentally-ill, for example, but you can label gay people as mentally ill. If you are cherry-picking who can say what, this is not free speech, so don't label it as so.

It's the other way around for me, and I don't understand why people like Python's system so much. Moving code around and changing scope in other languages is just a matter of adjusting the braces, but with Python I need carefully reindent all affected lines. It's error prone and annoying.

As the article says, animals are not automatons, despite our tendency to see them as so. Maybe they do it for similar reasons why we adopt pets? Biologically, it doesn't make sense to keep a modified wolf in my house competing for my resources either.

Amen. I want the option to leave gracefully and in peace, if a time comes where I cannot perform my basic needs by myself. I never chose when and how I would be brought into this world, so I think it's fair that I can choose when and how to leave.

Will I actually do it? That's irrelevant. I may decide to live and fight as much as possible, and that's fine, but I want the option.

Kind of hit-or-miss, apparently. It was extremely off with mine, and with my friends it was a 50/50 split.