Recent submissions

Comment · 16 days ago
Looking at yearly solar irradiation actually underplays the disadvantage we have in northern Europe in terms of PV. If all we had to do is built twice the capacity that would be one thing but our winters are quite dark, making PV energy generation almost negible around the winter solstice. Whatever generation capacity we can displace in the summer we still have to keep around to make up the shortfall in December. I love when I see solar panels here but rationally speaking Germany and the Netherlands should be among the late adopters.
Comment · 1 month ago
It's easy but it ain't simple. Because `f` can do arbitrary things to `x` you have to look at it just to know the general shape of the computation. Reduce gives you a lot of the flexibility of imperative programming but with that also a lot of the problems. Sometimes that's the right trade-off but it is good to be aware that it is a trade-off.
Comment · 1 month ago
For me it's about the speed of understanding what the code does. Because filter and map are very constrained in what they can do they quickly tell me a lot about the shape of the computation I'm working with. In contrast reduce is much more flexible and so I need to do a much more detailed analysis to just answer a basic question like "is the result a scalar or another collection?".
Comment · 3 months ago
Comment · 4 months ago
Comment · 8 months ago
Read the reply you got more carefully, especially the last sentence is key.
Comment · 10 months ago
I think Gothic II did this really well. While there are some clear borders a lot of the transitions between the three categories are gradual and organic. You're mostly safe in the secondary settlements but go too far into someone's backyard and you might suddenly find yourself fighting for your life. It also managed to make the place feel expansive without any place feeling like repetitive filler content.
Comment · 10 months ago
Centralized infrastructure is fragile and to the extent that the internet has become centralized unscheduled Internet shutdowns are bound to happen. The benefit of scheduled Internet shutdown is that people can prepare for it while at the same time gaining experience which helps with dealing with an unscheduled Internet shutdown.
Comment · 10 months ago
The reason you're not hearing any difference between the words in those pairs is because they are pronounced the same. At least according to Wiktionary and my own subjective judgement as a German native speaker.
Comment · 11 months ago
There has been open source before Linux and there will be open source after Linux. Yes Linux is a flagship project but the whole culture of open source is much broader than it.
Comment · 11 months ago
> prevent this scenario from ever happening again.

Every additional nine of not getting hacked takes effort. Getting to 100% takes infinite effort i.e. is impossible. Trying to achieve the impossible will make you spin on the spot chasing ever more obscure solutions.

As soon as you understand a potential solution enough to implement it you also understand that it cannot achieve the impossible. If you keep insisting on achieving the impossible you have to abandon this potential solution and pin your hope on something you don't understand yet. And so the cycle repeats.

It is good to hold people accountable but only demand the impossible from those you want to go crazy.

Comment · 11 months ago
While I'm always ready to throw away code when I realize that there is a better way to do things I found it quite difficult to write code with the intent to throw it away. However I often do write code with intent of modifying it once I have a better idea of what is needed. It might be because I'm comparatively better at refactoring than at starting from scratch.
Comment · 1 year ago
The paradox isn't that as a good becomes cheaper we're using more of it. The paradox is that as a good becomes cheaper we're spending more on it.
Comment · 1 year ago
While STM was a big selling point when Clojure in practice it's actually very rarely used. The persistent data structures are indeed the heart of Clojure.

While for many applications Clojure's performance is good enough it's not anywhere near what you can achieve with Rust. I once did a small game in Clojure trying to be very clever to eke out every last bit of performance and still didn't hit an acceptable frame rate. Made a very naive reimplementation in Rust that involved copying the entire state every frame and it run buttery smooth.

If there is a task for wish persistent data structures are the most performant solution it should be easy enough to implement and use them in rust too. Probably someone already did that.

Clojure is my default programming language but if I want performance (or static types) I reach for Rust.

Comment · 1 year ago
Maybe the result of NaN === NaN should be neither true nor false but NaB (not a bool).

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton