compiler-specific posts:
every software is like. your mission-critical app requires you to use the scrimble protocol to squeeb some snorble files for sprongle expressions. do you use:
libsnorble-2-dev, a C library that the author only distributes as source code and therefore must be compiled from source using CMake
Squeeb.js, which sort of has most of the features you want, but requires about a gigabyte of Node dependencies and has only been in development for eight months and has 4.7k open issues on Github
Squeeh.js, a typosquatting trojan that uses your GPU to mine crypto if you install it by mistake
Sprongloxide, a Rust crate beloved by its fanatical userbase, which has been in version 0.9.* for about four years, and is actually just a thin wrapper for libsnorble-2-dev
GNU Scrimble, a GPLv3-licensed command-line tool maintained by the Free Software Foundation, which has over a hundred different flags, and also comes with an integrated Lisp interpreter for scripting, and also a TUI-based Pong implementation as an "easter egg", and also supports CSV, XML, JSON, PDF, XLSX, and even HTML files, but does not actually come with support for squeebing snorble files for ideological reasons. it does have a boomeresque drawing of a grinning meerkat as its logo, though
Microsoft Scrimble Framework Core, a .NET library that has all the features you need and more, but costs $399 anually and comes with a proprietary licensing agreement that grants Microsoft the right to tattoo advertisements on the inside of your eyelids
snorblite, a full-featured Perl module which is entirely developed and maintained by a single guy who is completely insane and constantly makes blog posts about how much he hates the ATF and the "woke mind-virus", but everyone uses it because it has all the features you need and is distributed under the MIT license
libsnorble-2-dev, a C library that the author only distributes as source code and therefore must be compiled from source using CMake
Of the available options, this is easily the best, since I can use my own compilation flags to tune the library for my specific target architecture/CPU which can possibly change as the deployment profile for the business case evolves. Assuming it's OSS, I can also fork and adjust the library itself for said "mission-critical" use case.
Yup. If source is not available I’m not using it if I have any choice in the matter. Binary distribution is nice, but I’d rather have source.
Plus I’m sure some kind soul has created a build pipeline that autogenerates binaries from the source. I can always either use that or clone and customize it. It’s a natural separation—as a dev I’d like my responsibility to end at “I merged working code to trunk”.
And here I would argue that the Rust library is strictly better, specifically because it will come with an automated or precompiled build of the C library. Compiling C is such a pain.
Also, on Gentoo Linux, there will be an ebuild that integrates all of the cmake options into the rest of the packaging system and manage the dependencies
Any similar system for Kubuntu 24.04 LTS noobs/normies like me? I don't know what "ebuild" is, but it sounds cool (of course, I could look it up, but I thought I'd just ask).
I'm not a dev-ops dude, but for work, I develop parametric CAD solutions and generative DNNs for CAD. Lots of linear algebra and Pytorch on the GNU-Linux side; lots of Grasshopper for Rhino8 on the Win11 side. Hence, I use Docker to separate my experimental build environments from my production ones.
I've been kinda maintaining my shit "by hand", so to speak, for years now, and I think I'm ready for some automation in that regard.
you folks are still scrimbling? hacker news says you can get much better results if you dronkle instead. in fact, you don't even have to worry about your implementation, just use the kneeb.io api for all of your dronkling (and scrimbling i guess via their legacy api deprecated last month). they just got seed funding and they reinvested that into their infrastructure. this is a no brainer!
I feel like it's missing the perfect light weight version that appears to do everything you want. Except it's written in java, has not been updated for 4 years, and for some strange reason only works with oracle java.
Yeah, writing your own squeeblerizer sucks, but there's no better option. GNU Scrimble can be used off-the-shelf as a passthrough, so the only real tasks are implementing Squeeb's algorithm and a sprongler; then, your entire pipeline is merely something like:
Edit: Whoops! Forgot to mention, GNU Scrimble also has Snorble support out-of-the-box, and Scrimble clients have content auto-negotiation, so your_squeeb can just take JSON on stdin. GNU Scrimble is really nice for this sort of thing, just...big.
And if you want to sprongle directly into a database or etc. then you can write your_sprongler to taste. Full disclosure: I have a fairly fast implementation of Squeeb's algorithm in rpypkgs. However, I'd really recommend writing your own; it's like twenty lines of code you can copy from Wikipedia and it'll give you a good basis for extending it with your own desired changes later.
You can read snorblite's code if you need to figure out a specific sprongling technique, but it's way easier to just go look up the original SprongCode from SprongReg. Use a search engine to get around the university's paywall. This gets you the SprongCode UUID and you don't have to read code written by a batshit fascist.
In the spirit of the joke, it would be a Nugget that does absolutely everything you need and then some, used to be free, and since version 4.5 has changed license and now requires a 399$ annual fee per dev, which of course your employer positively refuse to invest in when there are so many other options available for free!
I'd probably do libsnorble and then snorblite, mainly just because I prefer C, don't mind source distribution and the rest sound cursed for one reason or another.