Readit News logoReadit News
xerxes901 commented on Do the simplest thing that could possibly work   seangoedecke.com/the-simp... · Posted by u/dondraper36
xerxes901 · 4 days ago
I personally know and have (tangentially) worked with the guy and none of what you’ve said is true.

> Look at his CV. Tiny (but impactful) features ///building on existing infrastructure which has already provably scaled to millions and likely has never seen beneath what is a rest api and a react front end///

Off the top of my head he wrote the socket monitoring infrastructure for Zendesk’s unicorn workers, for example.

xerxes901 commented on New Tool: lsds – List All Linux Block Devices and Settings in One Place   tanelpoder.com/posts/lsds... · Posted by u/mfiguiere
dlt713705 · 4 months ago
You are absolutely right, the /etc/pooper file was never loaded.

The code has been updated and now you can change the pooped char on the fly with something like :

`echo "<WHATEVER UTF-8 CHAR>" | sudo tee /sys/module/pooper/parameters/char_utf8`

/etc/pooper file and module unload/reload are no more needed :)

xerxes901 · 4 months ago
Thanks for clarifying, and implementing this essential feature!
xerxes901 commented on New Tool: lsds – List All Linux Block Devices and Settings in One Place   tanelpoder.com/posts/lsds... · Posted by u/mfiguiere
dlt713705 · 4 months ago
Awesome! That actually inspired me to code this: https://codeberg.org/mco-system/pooper
xerxes901 · 4 months ago
Question: what actually reads /etc/pooper to configure the character? I can’t work out how that file’s contents ends up as module parameters and I’d love to know!
xerxes901 commented on Scientists: Protein IL-17 fights infection, acts on the brain, inducing anxiety   medicalxpress.com/news/20... · Posted by u/wglb
derefr · 5 months ago
> I do not know why doctors are so hesitant to link the immune system and mood disorders.

People who call themselves doctors — e.g. neurologists — generally aren't hesitant to do this. But psychiatrists — and even moreso, therapists — generally are. And psychiatrists+therapists lead the conversation on mood disorders, since that's who everyone is talking to about their mood disorders.

IMHO it's just the hammer-and-nail thing. To a cardiologist, every medical problem is seen through a potentially cardiovascular lens; to an oncologist, every problem is a question of what type of cancer could cause it.

Psychiatrists are technically medical doctors, but they spend their entire careers (after a few short years of school) focusing on psych cases; where these patients' problems either are purely psychological (e.g. conditioned-response, traumatic-response, coping/defensive, attachment-related, etc.), or at best "we don't know" the degree to which they're psychological vs organic. (If we can recognize a problem as purely organic from the outset, that problem doesn't end up in the hands of a psychiatrist!) And either way, they usually see good results in clinical practice from treating the patient's mind, rather than addressing organic signs/symptoms directly. Even when they prescribe medication, they're measuring their success on a mental basis (using questionnaire-based instruments used to gauge mental changes) rather than observing changes in e.g. measurable behavioral signs. The problems they're faced with, and the successes they have via these models, reinforce in psychiatrists a mind-centered mental model / worldview for psychiatric disease. (A model which is "the right one" to use in many psychological diseases! But not for many others.)

And therapists aren't even medical doctors. They never learn much-at-all in school about potential organic causes of psychological (or medical) problems. They focus purely on this lens of "the mind", ignoring the lens of "the brain as an organ" entirely. This means that in clinical practice, when confronted with a problem that has both mental and organic aspects, a therapist will tend to ignore the organic aspects; and when confronted with a problem where the organic aspects are too large to ignore, the therapist will simply refer to a psychiatrist (or neurologist, maybe) — with no follow-up, and thereby, no way to end up learning what the patient's problem actually was and thereby evolving the neurological side of their understanding.

xerxes901 · 5 months ago
I don’t know what you’re basing this on. Good psychiatrists absolutely “call themselves doctors” and definitely seek to exclude or treat organic causes of psychiatric symptoms. All the psychiatrists I know absolutely understand there’s a link between the immune system and mood disorders and will involve immunology/rheumatology for these things.

Your ideas about how psychiatry is practiced might have been correct in the 1950’s but they’re a world away from how it’s done in the 2020s.

xerxes901 commented on EA Origin is shutting down   pcworld.com/article/25839... · Posted by u/NKosmatos
xerxes901 · 7 months ago
> In order to proceed, you’ll need a PC with a 64-bit CPU — and that might mean you have to buy a new PC if you don’t want to lose your EA games.

Uh, can’t imagine too many people reading this are playing Origin-era EA games on a Pentium 4

xerxes901 commented on Next Generation Out of Band Garbage Collection   railsatscale.com/2024-10-... · Posted by u/ksec
henning · 10 months ago
They built a large codebase on a language that doesn't let you control memory, because that makes you "more productive". So just having Rails allocate a per-request arena that is asynchronously freed which would force the programmer not to have any objects that outlive the request, or just pre-allocating memory for a fixed amount of request handling per server instance, or whatever allocation behavior you want to do that is generally possible in C/C++/Zig/Rust/Odin/etc, requires hacking on the language itself. Which means your changes have to go through the Ruby team first. Any additional changes would also need to go through them, which increases the cost of change. Then there is a permanent layer of indirection between your GC callbacks and the semantics of what those callbacks do. Instead of just writing out the custom allocators you want, because that's impossible. How depressing.
xerxes901 · 10 months ago
> Which means your changes have to go through the Ruby team first. Any additional changes would also need to go through them …

I do want to pick on this specifically - people can and should be patching open source projects they depend on and deploying them to production (exactly as described in the article). Something being in the language vs in “user” code should be no barrier to improving it.

xerxes901 commented on Against /tmp   dotat.at/@/2024-10-22-tmp... · Posted by u/todsacerdoti
aidenn0 · 10 months ago
Is there an easy way to duplicate a specific process' namespace? My biggest issue with all these new features is that privatize state is how much harder it is to reproduce a state.

Back when it was just environment variables, I could pipe /proc/PID/environ to xargs and get basically the same state. Given that things like unix domain sockets may end up in $TMPDIR, I can be left unable to do certain things.

xerxes901 · 10 months ago
/proc/PID/root is a view of that process’s mount namespace.

Also you can use nsenter(8) to run a command (or even a shell) under another process’s mount, pid, network, etc namespace.

xerxes901 commented on Show HN: Io_uring for Ruby   github.com/digital-fabric... · Posted by u/ciconia
jhyaaasdfw · a year ago
Would Ruby benefit if we put epoll(7) or io_uring(7) on IO boundaries and then do something like Go or BEAM where we preempt at a certain number of function calls or time? One challenge I see with this approach is calling into C libraries although I don't know how common that is in Ruby ecosystem.
xerxes901 · a year ago
This is in fact exactly what Ruby’s Fibers and the async fiber-scheduler gem do
xerxes901 commented on YJIT is the most memory-efficient Ruby JIT   railsatscale.com/2023-11-... · Posted by u/panic
JohnBooty · 2 years ago
Wow, that's interesting and it seems a little crazy? From the docs:

    When JIT code size (RubyVM::YJIT.runtime_stats[:code_region_size]) 
    reaches this value, YJIT triggers "code GC" that frees all JIT 
    code and starts recompiling everything. Compiling code takes 
    some time, so scheduling code GC too frequently slows down your 
    application. Increasing --yjit-exec-mem-size may speed up your 
    application if RubyVM::YJIT.runtime_stats[:code_gc_count] is 
    not 0 or 1.
https://github.com/ruby/ruby/blob/master/doc/yjit/yjit.md#co...

It just dumps all the JIT-compiled code? I'd expect to see some kind of heuristic or algorithm there... LFU or something.

The internals of a JIT are essentially black magic to me, and I know the people working on YJIT are super talented, so I am sure there is a good reason why they just dump everything instead of the least-frequently used stuff. Maybe the overhead of trying frecency outweighs the gains, maybe they just haven't implemented it yet, or maybe it's just a rarely-reached condition.

(I hope a YJIT team member sees this, I'm super curious now)

xerxes901 · 2 years ago
I don't work on YJIT but I _think_ i know the (or maybe an) answer to this. The code for a JIT'd ruby method isn't contiguous in one location in memory. When a ruby method is first compiled, a straightline path through the method is emitted , and branches are emitted as stub code. When the stub is hit, the incremental compilation of that branch then happens. I believe this is called "lazy basic block versioning".

When the stub is hit the code that gets generated is somewhere _else_ in executable memory, not contiguous with the original bit of the method. Because these "lazy basic blocks" are actually quite small, the bookkeeping involved in "where is the code for this ruby method" would actually be an appreciable fraction of the code size itself. Plus you then have to do more bookkeeping to make sure the method you want to GC isn't referred to by the generated code in another method.

Since low memory usage is an important YJIT goal, I guess this tradeoff isn't worth it.

Maybe someone who knows this better will come along and correct me :)

xerxes901 commented on Sudo-rs' first security audit   ferrous-systems.com/blog/... · Posted by u/Argorak
cedws · 2 years ago
I just ran tokei in the sudo-rs repository and there's over 28,000 lines of code not including whitespace. The Rust rewrite is a good step forward but we should really be asking ourselves if we need all this complexity in something so critical.

OpenBSD's doas is 108 lines of C. sudo and doas are not equivalent in functionality, but it shows how simple things can really be.

https://github.com/openbsd/src/blob/master/distrib/special/d...

xerxes901 · 2 years ago
This doesn’t really change your conclusion, but I think that’s the wrong file. This is the real doas afaict: https://github.com/openbsd/src/blob/master/usr.bin/doas/doas...

Still just a tidy 1072 lines in that folder though.

I spent 5 minutes staring at your file trying to understand how on earth it does the things in the man page, but of course it doesn’t.

u/xerxes901

KarmaCake day319August 27, 2017View Original