Using the [XTerm] bell as modern notification (Antoine Baupré):
As you requested, I say hi. I've been following you from the Planet Debian RSS from like forever, and I've always enjoyed your aggregated posts, specially those regarding your kids and their love of trains. I miss those posts, they were very charming and well written.
On a more prosaic matter, I also was for years a happy user of you offlineimap application.
I totally agree with you, it's their descensus ad inferos what make the show fascinating, as they start being good people and end up being cold monsters because of the circunstancies. The case for Ruth is specially heartbreaking because he is how she is due to poverty and family issues, she tries but never succeeds.
Como estoy totalmente fuera de las redes se me pasó enterarme de que mi relato Un árbol con vistas fue finalista del premio Domingo Santos de Relato 2022.
El convocante del certamen, AEFCFT/Pórtico, publicará un libro electrónico gratuito incluyendo mi relato junto al ganador y los otros tres finalistas. En cuanto me entere de cómo y desde dónde descargarlo, pondré el enlace por aquí.
TIL that you can have a full-path
soname in a dynamic library, so that binaries linked to it can find it even if it's in a non-standard place:
gcc -shared -o libcrazy.so -Wl,-soname,/an/esoteric/place/to/store/libcrazy.so crazy.cThis way, you don't need kludges regarding the use of
gcc -o main -L. -lcrazy main.c
LD_LIBRARY_PATHnor anything else.
I suggest that, instead of keeping the "thread" format as a chain of brief messages (which were used in Twitter to avoid one of its severe limitations), you move all your valuable information to a more suitable format, like a web page or a blog entry or somewhat similar.
Then you can publish here links to your creations for us to enjoy.
If you want to create an executable program in memory and execute it without going through the filesystem, this is how you do it (Linux only):
int fd = memfd_create("foo", MFD_CLOEXEC);https://unix.stackexchange.com/questions/230472/can-i-exec-an-entirely-new-process-without-an-executable-file
// write your image to fd however you want
fexecve(fd, argv, envp);
If you develop in C, you'll probably end up using memory leak detection tools like
libleak or the
scan-build tool from the LLVM compiler. There is a less known tool inside the GCC compiler itself: the
If you use a standard make setup, you can recompile your project doing
make CFLAGS="-fsanitize=address -fno-omit-frame-pointer"After exiting your program, a summary of memory leak errors (including the line of the source code were it happened) will be printed out.
Fast character case conversion (or how to really compress sparse arrays):
Converting strings and characters between lower and upper cases is a very common need.https://github.com/apankrat/notes/tree/master/fast-case-conversion
In particular, case conversion is often used to implement case-insensitive comparision, an operation that is often present on the program's fast paths as a part of data container lookups and content manipulation.
So it is usually desirable to make case conversions as fast as possible.
In this post we are going to look at one of the options - very fast case conversion using compressed lookup tables and also at some options for compressing these even further.
Stop writing Twitter threads! (Pierre Equoy):
So please, please, if you plan on writing something longer than a bad joke or a snarky comment, do not use Twitter. Your ideas, your findings, your knowledge deserve better. Put your thoughts on your own website or blog, and share it with the World using whatever social network you see fit.These apply much more so to the Fediverse, where you don't have the stupid character limitation.
Insightful thought, but... doesn't this apply to mostly all artistic disciplines, e.g. books? You always pay before being able to know if you like it or not.
I was about to say it happens on music records at well, but the economic model has changed on this as you don't buy those things anymore.
Estropeo el clickbait: usar el lavavajillas consume menos agua y menos energía para calentarla que lavar a mano.
Además, hay otra cosa que (creo que) el artículo no menciona: usar el lavavajillas es más higiénico porque las temperaturas que se alcanzan dentro también achicharran a buena parte de los bichos.
Time is an illusion, Unix time doubly so... (Jan Schaumann):
"At the time we didn't have tapes and we had a couple of file-systems running and we kept changing the origin of time," he said. "So finally we said, 'Let's pick one thing that's not going to overflow for a while.' 1970 seemed to be as good as any. "https://www.netmeister.org/blog/epoch.html
-- Dennis Ritchie
Perceptual hashing (Matt Rickard):
Hashing algorithms map data to an arbitrary fixed-size value. Most hashing algorithms actively try to avoid collisions – e.g., minimizing the probability of two different keys having the same hash. Perceptual hashes do the opposite – they maximize collisions by creating some dimension of data locality – similar keys have similar hashes.https://matt-rickard.com/perceptual-hashing
OpenBSD 7.2 has been released:
Congratulations to everyone involved.
My OpenBSD home server and my OpenBSD laptop have been upgraded with no problem. Maybe even faster than in previous releases.
ps program now implements the
-f (forest) argument, which is not really that important, but makes my muscle memory happy because I'm accustomed to decades of Linux typing
pkg_add -u command is now blazing fast.
This is a fantastic piece of work by a fantastic group of people. If you use it, it would be nice to contribute:
How to check if any word is zero (Wojciech Muła):
20 years ago, if you ate dinner under the unblinking eye of a CCTV, it was because you were housed in a supermax prison. Today, it's because you were unwise enough to pay hundreds or thousands of dollars for "home automation" from Google, Apple, Amazon or another "luxury surveillance" vendor.https://pluralistic.net/2022/10/07/sensory-deprivation/#sensorship
My opinion is that it should return a 5xx as a way to tell the client they did not do anything wrong. If the client is a user-operated web browser there is not much to do about it, but if the client is a library it tells the programmer that the error is not their fault (i.e. packets are not malformed nor data missing and so).
Good question, anyhow.
ꙮ҄ꙮ҄ꙮ҄ Night is a beast made of eyes Ꙭ ꙮꙮ҄ꙮ҄
The multiocular O is a rare form of the Cyrillic letter О. How rare?https://languagehat.com/multiocular-o/
Rare enough to occur in a single phrase, in a single text written in an extinct language, Old Church Slavonic.
The text is a copy of the Book of Psalms, written around 1429 and kept in Russia
It's not new at all (2005, things may have changed very much), but this document about the architecture of QEMU from its author Fabrice Bellard is fascinating:
Using a Framework will harm the maintenance of your software:
Poor man's profiler, or profiling a running program with a cheap combination of gdb, awk and scripting:
Sampling tools like oprofile or dtrace's profile provider don't really provide methods to see what [multithreaded] programs are blocking on - only where they spend CPU time. Though there exist advanced techniques (such as systemtap and dtrace call level probes), it is overkill to build upon that [...]http://poormansprofiler.org/
[...] one needs to improvise, like.. use debuggers - they can walk threads and provide stacks.