HackerTrans
TopNewTrendsCommentsPastAskShowJobs

DoubleFree

no profile record

Submissions

The Small Data Showdown '25: Is It Time to Ditch Spark Yet?

milescole.dev
2 points·by DoubleFree·10 months ago·0 comments

Year of Independence

zeux.io
3 points·by DoubleFree·2 years ago·0 comments

Polars in Aggregate: Faster I/O, inequality joins, and much more

pola.rs
3 points·by DoubleFree·2 years ago·0 comments

Sampling in Floating Point (1/3): The Unit Interval (2022)

pharr.org
1 points·by DoubleFree·3 years ago·0 comments

comments

DoubleFree
·2 years ago·discuss
The postgres query optimizer will try to minimize the number of pages read from disk (and the number of intermediate pages written to disk). Benchmarking the query optimizer by making the shared buffers large enough to hold all the data therefore seems wrong, as you're then measuring the speed of the query optimizer and the join processor, instead of the quality of the generated query plans. It would not surprise me if the generated plans for these versions are actually all the same and this is only measuring execution speed.
DoubleFree
·3 years ago·discuss
A government's primary purpose is to act on behalf of its constituents, and if these daytrippers are substantially detrimental to Amsterdam's livability, they should be discouraged from going there.

Or, to put it in more financial terms, the cost of compensating for the negative effects of these tourists might be much higher than the tax revenue they bring in.
DoubleFree
·3 years ago·discuss
Fly postgres is not managed postgres, it's cli sugar over a normal fly app, which the [docs](https://fly.io/docs/postgres/) make quite clear. Their docs also make clear that if you run postgres in a single-instance configuration, if the hardware it's running on has problems, you database will go down.

I believe the underlying reason that precludes failing over to a different host machine, is that fly volumes are slices of host-attached nvme drives. If the host goes down, these can't be migrated. I _think_ instances without attached volumes will fail-over to a different host.

Of course, that's not ideal, and maybe their CLI should also warn about this loudly when creating the cluster.
DoubleFree
·3 years ago·discuss
I would substantially nuance most of what you say. I really like vim and use it almost exclusively, but it is not necessarily the "only" way, or even necessarily the "best" way to do things. If the vim grammar clicks for you, great, by all means use it. There are people for whom it doesn't click, and that's fine too. I do encourage everyone to try it for a bit.

I also would not say learning vim makes you a better programmer or a better writer. It makes inputting and changing text easier and faster, but that's not what programming or writing is about.

I agree that the vim grammar is nice, but the bigger thing that differentiates editing text in vim versus other editors is its modality. And it is the modality that allows it to have a grammar in the first place. And that grammar does break down in places, just look at every keybind starting with g.

So yes, try vim, because it is pretty great. But if it doesn't work for you, move on to something that does.
DoubleFree
·3 years ago·discuss
Space is not quantized, so yes, the electron has infinite possible locations. There are, however, places the electron cannot be, depending on its energy. See, the electron's energy is quantized, meaning it can only have a predetermined set of values (see atoms' electron shells). The energy determines the wave function and the wave function squared is the probability distribution for the electron's location. This wave function has roots, indicating where the electron cannot be.
DoubleFree
·3 years ago·discuss
I personally really like using Rust, but I don't think it's necessarily better than go. There are some areas where Rust will definitely be better or more ergonomic, such as bare-metal or low level systems programming tasks, but many other areas where Go's design works better and Rust will only hold you back (looking at you, borrow checker).

That said, I would still recommend learning Rust, because it will teach you about lifetimes and aliasing, even if you don't want to learn about them. When building for the web, I think Go's easier dynamic dispatch and GC will save you some headaches though.
DoubleFree
·3 years ago·discuss
Let's do a little calculation. For an upper bound, let's say you press your full weight onto it and the coffee grounds' resistance is not the limiting factor. That's maybe 90kg, times the acceleration of gravity, for about 900 newtons. That force is applied to a pi*(30mm)^2 or ~3^-3 m^2 area. That gives us a pressure of 900/3e-3 = 3e5 Pa or 3 bars.
DoubleFree
·4 years ago·discuss
The problem of dangerous interactions between drivers and cyclists is much smaller here in the Netherlands, mainly due to two reasons.

The first reason is the infrastructure, both visible and invisible. Separated bicycle lanes are commonplace and in the few places where they intersect with car traffic, care is taken to make crossing safe and comfortable. This visible infrastructure is complemented by the concept of "Hoofdnetten", where the default routes to some place for different modes of transportation coincide for the least amount of time/space. For example, going somewhere by bike might take you through a residential neighborhood with barely any traffic, which is also slowed by speed bumps and narrowed streets, whereas buses will use a bus lane taking a slightly longer route, and car traffic has to go all the way around.

The second reason is that here, everyone is a cyclist. Going for groceries? Five minute bike ride, much easier and quicker than going by car. Kids cycle to school alone from a young age. Going out for drinks? Bike. Because everyone is a cyclist and there are cyclists everywhere, cyclists are equal participants in traffic and are treated with care and respect.
DoubleFree
·4 years ago·discuss
It depends. For operations or aggregates on a single field, it improves cache locality, whereas if operations act on all, or most, fields of the struct, it hurts cache locality. The exact same tradeoff differentiates OLTP (transactional/row stored) databases and OLAP (analytics/column stored) databases.