Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
Galanwe
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
43 ms
·
421.
▲
by
Galanwe
2y ago
> I know this could be considered blasphemous, but I constantly find myself using Make as a task runner It's not, don't apologize, reusing battle tested tech is the way. I have a quite close "template Makefile", thoug
422.
▲
by
Galanwe
2y ago
Haha thanks, cute project :-)
423.
▲
by
Galanwe
2y ago
Just curious, how did you manage to get that syntax? If it's tuples, then how did you get rid of the commas? If it's functions, how do you get rid of parens around scalars?
424.
▲
by
Galanwe
2y ago
To be fair, all examples on the home page look kind of trivial in bash as well, which is why - to me - they seem a bit silly. var hosts = [[&name=a &cmd='apt update'] [&name=b &cmd='pacm
425.
▲
by
Galanwe
2y ago
No, but innovation should be major, not cosmetic.
426.
▲
by
Galanwe
2y ago
So I should change my shell, have it deployed everywhere, and learn a new language so that I can change: for x in *.jpg; do gm convert $x ${x#.jpg}.png done to for x [*.jpg] { gm convert $x (str:trim suffix $x
427.
▲
by
Galanwe
2y ago
> Unfortunately if "that guy" is your customer then your real job is to make them happy. Usually the power relationship is not layout like that. Data providers rarely compete on technology, because their differentiating factor
428.
▲
by
Galanwe
2y ago
A big part of my job is to ingest data from hundreds of providers to process. A provider that will push data to my S3 bucket, as parquet files, is the best I can think of. I don't want no provider managed database to host, stupidly hug
429.
▲
by
Galanwe
2y ago
> You want to avoid serializing the objects since they will be copied anyway with fork(), but the parent needs a way to refer to a particular object when talking to the child, so it needs to pass some kind of ID. Yes, that is exactly and
430.
▲
by
Galanwe
2y ago
Yes, as mentioned, the workers get a copy of the interpreter states. Every modification made in a worker to these objects stay local to the worker. These tricks are for sending data to a worker, not receiving back data.
431.
▲
by
Galanwe
2y ago
The `multiprocessing` and `concurrent.futures` pools support a fork strategy on Linux (which is the default). What that means is that your worker processes run in an interpreter whose state is the same as the parent. Effectively you will th
432.
▲
by
Galanwe
2y ago
>> reference counting is not intrusive in CPython (meaning the reference counting structures are outside the PyObject, last I checked) > That's wrong. That was never the case. You are right, I was mistaken. The point stands th
433.
▲
by
Galanwe
2y ago
> The problem is, once you access such shared objects in Python, it is never readonly access but actually read-write, because it modifies the refcount. That is right, but is a mere drop in the sea. First, because reference counting is no
434.
▲
by
Galanwe
2y ago
I don't actually, but it can be explained in a few lines of code. Consider the following two simple functions: def ref(obj): return id(obj) def deref(addr): import ctypes return ctypes.cast(addr, ctyp
435.
▲
by
Galanwe
2y ago
Sharing objects is completely fine upon a forking multiprocessing pool. Each worker process ends up with a (lazy) copy of the parent address space, including the whole python interpreter state. When you think about it, you already rely on t
436.
▲
by
Galanwe
2y ago
There are some real world use cases for these. I do use some similar helpers to e.g. create pickable weakrefs for passing large objects to forking multiprocessing pools as arguments, or expose large objects in shared memories. It's not
437.
▲
by
Galanwe
2y ago
> I think pretty much all linear algebra libraries are still Fortran and are unlikely to ever be C That is more of an urban legend than reality in 2024. Fact is, although the original BLAS implementation was fortran, it has been at least
438.
▲
by
Galanwe
2y ago
> Which means they're rapidly coming to a position which will easily allow them to game the system (what used to be known as "cornering the market"). These are flows, not ownership. Also, taking Citadel as an example, a va
439.
▲
by
Galanwe
2y ago
> Are there easy sources for seeing what companies drive US equity market volume? No. Flow data is quite expensive, and most providers will only provide bucketed data unless you contribute with your own flows. OP obviously has no idea wh
440.
▲
by
Galanwe
2y ago
You don't make 10B returns on HFT alone. The characteristics of short prediction horizon strategies like in HFT give you an amazing sharpe, but you're predicting small returns. To scale returns you need to invest more, which means
441.
▲
by
Galanwe
2y ago
The intrusive ads made me leave immediately.
442.
▲
by
Galanwe
2y ago
I use PotonVPN since a while and it works like a charm. A note though, since some years now using a VPN is not really the panacea for streaming country restricted movies, as more and more the deciding factor is the originating country of yo
443.
▲
by
Galanwe
2y ago
Just to highlight some of the complexities of `sudo` to complement your helicopter view: - Sudo can use PAM, or any other means, depending on NSS (local, ldap, through PAM, etc) - Sudo can use a sudoers file, directory, or even LDAP fields
444.
▲
by
Galanwe
2y ago
I think the solution to this is both unique and trivial: you cannot trust something that is freely expandable,or did not require some amount of stake from the other party. That stake can be anything, time, work or money. If you want to trus
445.
▲
by
Galanwe
3y ago
Right, I have to say I misunderstood the article by thinking it was a client side proposal instead of a server one. Still, I think bandwidth and latency should not be confused as it is on this thread. From my experience, the Linux network s
446.
▲
by
Galanwe
3y ago
Right, I'm not trying to argue that std::variant is better than native language support. By definition, a language construct will always be easier to write and read. All I'm saying is that the current state of std::variant makes i
447.
▲
by
Galanwe
3y ago
I agree, the lack of pattern matching is a bummer. You should retry std::variant with the lambda overload trick though. It's kind of okay in terms of syntax. using MyDiscreminatedUnion = std::variant<MyType1, MyType2, MyType3&
448.
▲
by
Galanwe
3y ago
> I honestly can't see a modern, programmer-friendly language not having proper discriminated union types in 2024 Does that really need to be part of the language though, or as long as you can code it, or have it in the standard lib
449.
▲
by
Galanwe
3y ago
If we're talking server tech then why does the article claim that 10gbps is becoming retail commodity? 10,40 and 100gbps is already the baseline for servers since a decade, I have not seen a server with 1gbps NICs for anything else tha
450.
▲
by
Galanwe
3y ago
If you want to use kernel bypass on the server, not the client, then XDP is even more useless. Because on the server world, you have access to professional NICs that you cannot expect clients to have. It's been decades now that people
More ›