5,648 karma · joined March 31, 2021
That phrase "complex enough" seems to be quite load bearing.
At which point does complexity reach the tipping point where a Java implementation becomes faster? From my experience, the more complex the application, the more enerprisey the Java code becomes, relying heavily on dynamic capabilities that make it slow even by Java standards.
I feel people have the right to bring any sort of issue into the projects they make. Nobody is forced to participate.
Might be useful to test your own implementation against.
Not really, reference counting can cause a single object deallocation to trigger an arbitrarily long chain of deallocations.
AI just serves as a substitute - an artificial conversational partner.
I feel like you consider yourself more virtuous for not using AI for discussion. Would you consider people who don't talk to colleagues at all, but do all the work themselves more virtuous in an analogous manner?
I start talking to it while doing menial tasks like cleaning or doing the laundry, and I discuss the architectual decisions and options until I come to some resemblance of a plan.
Good side of this approach is that I can't just "skim over" or "copy paste" things - either I understood them and can repeat them myself, or I can't. It takes more time than /grill-me and similar approaches, but it's the only approach that doesn't make me want to claw my brain out.
So by destroying Prometheus' liver, Zeus attempted to destroy his human emotions, including his pride and defiance against gods.
The Greeks chose liver because it symbolized the defiance Prometheus had against gods.
OpenAI got $10 billion from Microsoft after Sam Altman claimed AI could lead to extinction of humanity.
Anthropic got similar multi-billion dollar funding from Amazon and Google after warning AI could develop biological weapons.
xAI got similarly massive funding after Elon Musk predicted a terminator-style future.
If you don't accept this as "empirical evidence", then there's nothing to discuss.
If you discard all empirical claims categorically due to "inability to observe the counterfactual world", your own reasoning falls apart. Why would you assume people mean what they say?
> Diving their intention also still requires many assumptions about their intermediate beliefs that I find dubious
You're assuming CEOs of multi-billion dollar companies are honest. I find that dubious.
The implication (or as you said, "the links"), that talking about how dangerous their product is leads to more money, is true regardless of their intention. They create hype, they get money, that's not an assumption, that's an observation.
The question is only if their intention was to make money, or are they speaking from the heart. That's the assumption we choose.
IPC is the natural solution to that - run a process in its own address space and communicate with it via I/O. TCP is not most optimal, but it is uniquous. Same thing with JSON.
In LSP, most of the processing happens in the LSP server anyway - communication overhead between client and server is negligible in comparison to it.
Not quite, as if it was, the War on Drugs would succeed. Instead, it failed spectacularly.
People using Meta products are not making an arbitrary choice that happens to be evil. They are using Meta because other people are using Meta (network effect) or because it helps them calm down after a long day (addiction).
You can say they are "technically part of the problem", as in, their usage supports Meta existence in some micro way, but that doesn't warrant the harsh phrasing you've presented in the original comment.
Punishing addicts doesn't solve the social problem of addiction, in the same way that punishing homeless people doesn't solve the social problem of homelessness.
In the civilized society, we call that "recommendation".
Many parents would gasp at this sentence, but the same parents would likely complain to anyone who'd listen about how negatively their children are affecting their lives.
For every property of the system, implement a mock that simulates a system that works, and multiple variations with forseeable bugs (models are fairly good at predicting possible bugs). Then, write a unit tests that pass on the working simulation and fail on the buggy simulations.
This way model ensures reasonably well that the unit tests test what they're supposed to. Then, you use those tests as a verification to guide the model to implement the functionality.
This approach relies on the assumption that the model can design a reasonable architecture composed of independently-testable modules. In my experience, frontier models should be able to do that.
I, personally, enjoy Buf. It has solved many frustrations I've had with The Way it was previously done, manually installing protoc plugins, writing arcane flags into scripts nobody wants to touch, working around various quirks, like how protoc produces different output based on which directory you invoke it in, et cetera... I don't quite like the remote plugin model and rate limiting, but using local plugins is easy enough that it doesn't matter.
Buf has made my life easier, and I've actually been using `buf_ls` for a while now in NeoVim. I understand where the criticism of the title comes from, but I don't personally feel it in this particular case. In fact, I didn't even notice it.
I don't even mind the monetized properietary cloud thing, as long as Buf CLI and the related toolchain remains free software, serving the community. Hope you won't do the ol' switcharoo any time soon.
Sentient Switchblade: "Hi Beth! You've gotten taller! Shall we resume stabbing?"