

delta
https://github.com/dandavison/delta - link for the lazy.


delta
https://github.com/dandavison/delta - link for the lazy.


Not sure why you’re downvoted.
Operating systems often cache disk writes and flush them to underlying devices once in a while. Dismounting (or “ejecting” in Windows terms) forces the writes to be flushed.
See man 2 fsync.


Hilariously enough, just today I read a blog post about a service where the client interacts with the database directly - https://clickhouse.com/blog/building-a-paste-service-with-clickhouse. While it’s not your traditional OLTP database, it still kinda fits.


It is.
https://zed.dev/ - check out the video on the front page. Most of it (2:08 - 6:18, the whole video is 8:40) is shilling for an integrated LLM.
I assume, decoding it on the fly? It’s possible to encode a JPEG as a JPEG XL losslessly.
Webp currently the best image file format.
Out of the widely supported ones, it’s quite good, yeah. Overall, I’d say JPEG XL is the better one. Ironically, only Safari supports it out of the box. Firefox requires a Nightly version with tweaking in about:config. Chrome used to have a feature flag, but has since removed it.


ISPs putting you behind NAT is not cozy.
They charge extra for a feature called “static IP”. But the IP address not being static is not the issue, for me at least. You could host stuff with a dynamic IP back in 2000s/2010s. But no, now you get to share the same IPv4 address with a bunch of other households, unless you pay extra.


/64
That’s not an address, that’s a whole fucking subnet consisting of 2^64 different addresses. ☝️🤓


Oh wow, a security disaster. You know, you can temporarily escalate your privileges if you need to modify Program Files, right? It’s just one UAC prompt away.


I misremembered the whole thing. It was still related to cleaning up after a failure, but there was only one resource I had to deal with. That’s how it looks like:
sqlite3 *db;
int r;
r = sqlite3_open("./data.db", &db);
if (r) {
std::cerr << "Can't open the database: " << sqlite3_errmsg(db) << std::endl;
return r;
}
r = sqlite3_exec(db, "CREATE TABLE IF NOT EXISTS foo(...);", nullptr, nullptr, nullptr);
if (r != SQLITE_OK) {
std::cerr << "Can't create a table called foo: " << sqlite3_errmsg(db) << std::endl;
goto out;
}
// a few more sqlite3_exec calls;
// some sqlite3_prepare_v2 calls combined with sqlite3_bind_* and sqlite3_step calls
// for repeated queries.
out:
sqlite3_close(db);
return r;


I mean, in C too.
I used it when I wrote some throwaway C++ code working with SQLite. Since it had no RAII (and I had no intention of writing my own wrapper), I had to manually cleanup multiple resources somehow. If at least one resource failed to initialize, I had to deinitialize the ones that didn’t fail. It was either goto or a bunch of flags to track what is initialized. goto looked more elegant.


May I suggest avoiding recursive functions where possible? They are usually the ones overflowing your stack, duh.
rabid commies
You’ve chosen the worst possible instance, LMAO.
Fun fact: the “Enshittification” article on Wikipedia has Reddit among the examples.
First time I’m hearing of the CQS. Wow, just wow. Dystopian shit.
New account experience on Reddit in 2025:
Fuck Steve Huffman and fuck his enshittified site.


Arch Wiki has a rather decent article about wiping disks: https://wiki.archlinux.org/title/Securely_wipe_disk
Assuming your Pi runs a Linux distro, most of those tools should be already present on your system.
Yeah, but what if the counter gets decremented before the wish gets granted, huh?


And you can also configure it to auto-decline requests for geolocation & push notifications.
I’m so confused by the meme. What the hell is a “monolithic bug”? And what does DevOps have to do with software architecture?