299 karma · joined December 9, 2022
I think this is hyperbole. Generally, you won't be mixing Class::Accessor and Mo* based dependencies unless you are dealing with a shitty, barely maintained legacy codebase.
There was a progression to things, mostly because of performance reasons why there is a bit of a proliferation. Moose (and the underlying Class::MOP) were about providing a meta-object protocol for Perl which didn't exist before it. As such, it was focused on being correct over fast. A whole community sprang up from stevan's art. Then sartak's Mouse came along and made some performance improvements with some compatibility caveats. Finally, mst's Moo stripped away the "reflection" aspects of Moose to really squeak out even more performance.
MooseX::Declare was always a (beautiful) research project. I spent some time in that space welding POE and MooseX::Declare together. But these weren't suitable for any kind of production code. If you see this live somewhere, you should definitely rip it out lol.
As for TIMTOWTDI, this is sorta why project Andy Lester's Phalanx came about (it was trying to bless a chunk of modules as a sort of smoke test for Ponie (perl5 implementation on the Parrot VM (which was the first step toward a Perl 6, now Raku)). It was trying to provide an opinionated set of high quality libs for SWE.
Unfortunately, working in Perl really requires a bunch of skill and discipline if you want a long-term maintainable project. This means really looking at your dependency tree and making difficult decisions on which libs to use specifically to avoid installing all of CPAN. npm's installing the world behavior was foretold by Perl.
lol, this is exactly what I did when I started because of the annoyance of bending down. Then I incorporated it into a fitness goal and did proper squats to pick them up. Now, I mostly will just pause and reset if I have a weird catch to avoid the next throw that would end up on the floor.
> My favorite version: juggle while standing in a swimming pool! Use an object that floats, like wiffle balls, and a missed catch just stays there floating right in front of you.
This is a great idea. Next time I go swimming I'll have to bring some balls that float.
For me the trick was to stop thinking about it and to just let go. Our built-in parabolic trajectory prediction is magical, just need to throw the balls consistently enough for that prediction to become automatic.
I just fuck around with three balls and it is mostly to help me keep sanity if I am working somewhere with shit CI that takes forever. I was aware that there was a proper pedagogy and nomenclature, but never bothered to learn it. Really surprised to see my "repertoire" is all of the Level 2 and some Level 3 listed on this site.
In music terms, playing tight means being exact. But I think in this context tight would be length of the song and how succinct it is. 70s rock could be power ballad-y with long solos. As for messy, in context, I'd argue it means the songs are less structured compared to 70s arena rock that are extremely formulaic (think of any AC/DC song and how it sounds just like every other AC/DC song).
Just what we need. More soulless, avarice soaked, societal parasites.
Humans are not some unique, special animal. We're a very invasive, ecology modifying organism. We already have rules on where humans can and cannot live, where resource extraction can happen and how much. It may be uncomfortable to consider, but yes, we absolutely should manage our own population so we don't fuck up our one, and only, spaceship that's flying through a universe that is very hostile for us.
Metastatic growth is simply unsustainable. Running our civilization like a capitalistic business ignoring externalities and borrowing against the future that needs constant growth to sustain isn't a great idea. That will crash.
You have to break it down into smaller steps and provide way more detail than you think you do in the context. I did an experiment in story generation where I had "authors" that would write only from the perspective of one of the characters that was also completely generated starting first from genre, name, character traits, etc. Then for a given scene, within a given plot and where in the story you are, randomly rotate between authors for each generation, appending it in memory, but not all of the story fits in context. And each generation is only a couple hundred tokens where you ask it to start/continue/end the story. The context contains all of this information in a simple key:value format. And essentially treat the LLM like a loom and spin the story out.
Usually what it produces isn't quite the best, but that's okay, because you can further refine the generation by using different system/user prompts explicitly for editing the content. I found that asking it to suggest one refinement and phrase it as a direct command, then feeding that command with the original generation, works. This meta-prompting tends to produce changes that subjectively improve the text according to whatever dimensions specified in the system prompt.
If you treat the composition as way more mechanical with tightly constrained generation, you get a much better, much more controlled result.
https://old.reddit.com/r/LocalLLaMA/comments/18av9aw/quick_s...
https://github.com/ggerganov/llama.cpp/discussions/2948
You can run ollama (and a web UI) pretty trivially via docker:
docker run -d --gpus=all -v /some/dir/for/ollama/data:/root/.ollama -p 11434:11434 --name ollama ollama/ollama:latest
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway --name ollama-webui ghcr.io/ollama-webui/ollama-webui:main
That particular webui will let you upload models (with configuration). Other wise, you can use the api directly (you'll need to POST a `blob` first):
https://github.com/ollama/ollama/blob/main/docs/api.md#creat...
https://ollama.ai/blog/openai-compatibility
So apparently, yeah.
The images of the PCB have silk screen explaining what happens when you plug it in.