news
Programming Leftovers
-
Thomas Jensen ☛ Simplicity is king | Cavelab
What he actually said, according to Quote Investigator:
It can scarcely be denied that the supreme goal of all theory is to make the irreducible basic elements as simple and as few as possible without having to surrender the adequate representation of a single datum of experience.
But I digress… It’s not lost on me that I sometimes end up making things more complex than they have to be. Often without it adding any value. Like entropy — slowly increasing the state of disorder.
-
Blain Smith ☛ NATS Pub/Sub in Hare
I have been writing more and more Hare over the past year and finding places where the ecosystem still has gaps worth filling. One of those gaps is messaging. NATS is my go-to for lightweight pub/sub and I have used it in production across a handful of projects, so building a native Hare client felt like a natural next step.
hare-nats is the result of that effort. It implements the core NATS client protocol with support for publishing, subscribing, and multiple authentication methods. It is built on top of hare-ev for async I/O and hare-json for encoding and decoding the INFO and CONNECT protocol messages.
-
Artyom Bologov ☛ When Escalator Breaks, It Turns Stairs
So just this other day. I had a revelation on failure modes in software and the real world. And I think we don’t pay enough attention to fallback systems when designing software. And hardware. And infrastructure. And social systems. Anything really.
-
Alperen Keles ☛ What is random generation?
I wanted to write this as a sequel to "What is a property?" where I would talk about how Property-Based Testing libraries generate random structures, don't worry, I'll still do that! But I realized that without talking about randomness in computers, the writing would be incomplete. So the first part of this article will go into a core problem that we consider "solved" in PBT, which is designing good random number generators, with the latter part talking about implementing complex random data generators on top of such RNGs.
-
Andrew Quinn ☛ I still like JenkinsAndrew Quinn's TILs
But I like Jenkins a great deal. Probably due to it being open source, and having an embedded sandboxed implementation of something kind of 2:1-ways between Java and Python,1 I am aware of no CI/CD system out there that truly gets you as much flexibility as Jenkins does.
-
Jeff Kaufman ☛ AI is Breaking Two Vulnerability Cultures
I don't know how to resolve this, but personally very short embargoes seem like a good approach, and they'd need to get even shorter over time. Luckily AI can speed up defenders as well as attackers here, allowing embargoes that would previously have been uselessly short.
-
Perl / Raku
-
Arne Sommer ☛ Spaces at Large with Raku
This is my response to The Weekly Challenge #372.
-
DEV Community ☛ Beautiful Perl feature: low-precedence boolean operators 'and', 'or'
This post is part of the beautiful Perl features series. See the introduction post for general explanations about the series.
Today's feature is quite unique in programming languages: the fact that Perl has two different syntaxes for expressing the same boolean operations. Read on to understand why this is clever and beautiful.
-
-
Python
-
Philip Zucker ☛ Family Orienting Python Frozenset Dependent Type Theory
In a previous post https://www.philipzucker.com/frozenset_dtt/ , I tried to write python code on frozensets that in some way demonstrates the set semantics of dependent types. This post implements a slight but important change I wanted to do based on my new appreciation of the centrality of the concept of “family”, a set valued function https://en.wikipedia.org/wiki/Family_of_sets . Everything should be a family (a dict with set values). The counterintuitive part is that seemingly pointless () keys clean things up.
-
-
R / R-Script
-
Rlang ☛ How to Build an Expected Goals (xG) Model in R with worldfootballR
Expected goals has become one of the most important concepts in modern football analytics. Instead of judging a team only by goals scored, xG helps us estimate the quality of the chances created. In this tutorial, we will build a practical expected goals model in R using football data, feature engineering, logistic regression, model evaluation, and visualization.
This is a hands-on guide for analysts who want to move beyond simple football statistics and start building reproducible soccer analytics workflows in R.
-
Rlang ☛ One interface, (Almost) Every Classifier (and Regressor): unifiedml v0.3.0
In the new version of unifiedml available on CRAN, you can benchmark different models using k-fold cross-validation (section 1 of this blog post), and there’s a unified interface for predicting model probabilities (section 2 of this blog post).
-
-
Java/Golang
-
Redowan Delowar ☛ A tour of txtar
I ran into txtar today while poking around cmd/go’s testdata directory and got curious about why every test file looked like it had a tiny diff embedded in it. Turns out it’s a trivial archive format Russ Cox introduced in 2018 , and once I noticed it I started seeing it everywhere in Go tooling.
-
-
Standards/Consortia
-
Laura Kramolis: Computers Are Terrible
A slightly more collected version of originally 18 Signal messages. This is a simplification. I am evidently no expert in Unicode specifically or text encoding in general.
I, for a long time, believed that while many modern standards are a mess of legacy compatibility built on legacy compatibility, Unicode was an exception. That the only compromise it made was ASCII-compatibility, but even that wasn’t such a big one given that its character set is the most common one in computing even to this day. I was wrong.
-