news
Programming Leftovers
-
Panagiotis Vryonis ☛ We have to go back!
What if Farcaster went back to a hub-based architecture: simple, peer-to-peer, truly decentralized, where it’s easy to run a peer, easy to build self-hosted bots, and easy to build a client?
No bells and whistles. No Mini Apps. No assumption that every client must become a wallet, browser, app host, and social feed at the same time. Strip the network back down to the basics: identity, casts, replies, follows, reactions, and low data retention that makes home hosting feasible.
-
Abhinav Sarkar ☛ Nix for Haskell: Static Builds | abhinavsarkar.net
In the previous post, we learned how to get started with managing and building a Haskell project with Nix. In this post, we learn how to easily create statically-linked executables for Haskell projects with Nix.
-
Pierre Zemb ☛ Shipped vs. Operated, or How Many Bash Scripts Does It Take? | Pierre Zemb's Blog
Some systems live in both worlds depending on how you use them. PostgreSQL in standalone mode is usually shipped: it’s simple to run, predictable, and rarely causes surprises. But under certain conditions, like fighting vacuum performance at scale or running it in HA mode under sustained heavy load, it shifts into operated territory. The difference isn’t in the codebase, but in the demands your use case puts on it.
A quick way to tell which camp your system belongs to is the Bash Script Test: ask how many bash scripts or home-grown tools are required to survive an on-call shift. If the answer includes a collection of automation to clean up data, shuffle it between nodes, or probe the cluster’s health, you’re probably in operated territory. I’ve been there: running hbck and manually moving regions in HBase, shuffling partitions around in Kafka to balance load, or triggering repairs in Ceph after failed scrub errors. Many distributed systems quietly rely on these manual interventions, often run weekly, to stay healthy, and that’s an operational cost you can’t ignore.
-
Gary Benson: longintrepr.h
Did your
pip installfail withlongintrepr.h: No such file or directory? The file likely is on your system, but it sometime or another it was moved, from/usr/include/python3.xx/longintrepr.h -
Remi Collet ☛ Remi Collet: 🎲 PHP version 8.4.23RC1 and 8.5.8RC1
Release Candidate versions are available in the testing repository for Fedora and Enterprise Linux (RHEL / CentOS / Alma / Rocky and other clones) to allow more people to test them. They are available as Software Collections, for parallel installation, the perfect solution for such tests, and as base packages.
-
Qt ☛ Qt for Android Automotive 6.8.8 is released
The latest patch release for Android Automotive 6.8.8 was just released. This release is based on Qt LTS 6.8.8 with around 660 bug fixes, security updates, and other improvements done to Qt base. There are no additional Qt for Android Automotive features delivered.
-
R / R-Script
-
Rlang ☛ Snapshot Testing in R: Beyond Screenshots
Snapshot testing is not just for screenshots. Capture console output, logs, data frames, errors, and whole data structures. Practices that keep snapshot tests trustworthy instead of brittle.
-
Rlang ☛ DIVINE: a new R package for working with a real-world COVID-19 clinical cohort
Clinical data are rarely as clean, compact or convenient as the examples we often use when teaching statistics or R. Real hospital datasets are usually distributed across several tables, include missing values, contain repeated structures, and require careful documentation before they can be reused.
-
Rlang ☛ Likert Scale Questions: Your In-Depth Guide
A Likert scale (pronounced LICK-ert, not “LIKE-ert”) is a psychometric rating scale used in surveys and questionnaires to measure attitudes, opinions, and perceptions. Named after American social psychologist Rensis Likert, who developed it in 1932, it remains the most widely used approach to scaling responses in survey research today.
-
-
Python
-
Pimoroni ☛ Make MicroPython go brrr
No, not like that time we put a Pico 2 in liquid nitrogen.
We made a thing. The Tufty 2350. It’s 320x240 pixels of wearable, hackable badge built around the RP2350, with 8MB of PSRAM and 16MB of flash.
-
Pimoroni ☛ Make MicroPython go brrr
With so many pixels to push, Tufty needs to be fast. Unfortunately the last time we tried to make a Pico 2 go fast it involved liquid nitrogen, a lot of nerve, and a clock speed I am not allowed to recommend (I work from home, so I missed that particular bit of office mischief).
This time nobody's hands got cold. No extreme overclocking (we bumped Tufty to 200MHz though), no exotic cooling, no voiding of warranties. Just a compiler flag, a config option, and too much coffee.
-
-
Java/Golang
-
Redowan Delowar ☛ Accepted proposal: a goroutine leak profile in the Go standard library
A goroutine leaks when it blocks on a channel or lock that nothing will ever release, so it lingers for the life of the process. I’ve been using uber-go/goleak to catch them in tests.
One is an early return that strands a sender, which I covered in Early return and goroutine leak . It looks like this: [...]
-