23 Jul 24
I’ve been playing around with an early version of Arroost, a node-based tool for live sampling.
In this essay, we’ll explore this coincidence and what that means for us as programmers. We’ll follow the path all the way to calculus.
an editor for spoken-word audio with automatic transcription
A collection of handy Bash One-Liners and terminal tricks for data processing and Linux system maintenance.
17 Jul 24
Our industry teaches a lot of people that there is nothing they cannot learn, and we have a critical mass of arrogant people in tech and on GitHub. It’s incredibly toxic and I never want to maintain a real repository this large on GitHub, paid or not.
16 Jul 24
A collection of videos about programming with picat.
11 Jul 24
Atkinson Hyperlegible font is named after Braille Institute founder, J. Robert Atkinson. What makes it different from traditional typography design is that it focuses on letterform distinction to increase character recognition, ultimately improving readability. We are making it free for anyone to use!
Actually backed by science?
08 Jul 24
The React model describes an application as a tree of “components”. Each component represents a subset of the complete UI element tree. For each component, there is a template function that takes some inputs and returns the new desired state of the UI. This function is called whenever an event occurs that might change the state of the UI. The template produces a data structure known as a “virtual DOM”. To realize this new state in the actual DOM, React diffs the previous tree with the new one and updates, creates, and deletes elements as necessary.With FRP, you describe your program as an acyclic graph of nodes that contain time-varying values. The actual value of any given node is determined by a function that maps the current values of some input nodes into an output value. The system is bootstrapped by handling a UI event and updating the appropriate root node, which kicks off a cascade of updates throughout the graph.
06 Jul 24
Ursula L Le Guin’s translation of the tao te ching.
02 Jul 24
Conway’s game of life in APL
28 Jun 24
How is game research constructed and enacted as a discipline, or anti-discipline, in contemporary culture and academia? In a field often heralded for and defined by interdisciplinarity, how is identity developed?
21 Jun 24
ast-grep(sg) is a fast and polyglot tool for code structural search, lint, rewriting at large scale. See also https://phrontistery.pages.dev/Tools/ast-grep
16 Jun 24
The ultimate goal of all computer science is the program. The performance of programs was once the noblest function of computer science, and computer science was indispensable to great programs. Today, programming and com- puter science exist in complacent isolation, and can only be rescued by the conscious co-operation and collaboration of all programmers.
A lovely little paper on post-modern programs
A quick and dirty ref. card for Clojure’s core logic
11 Jun 24
Recently I’ve discovered a very interesting language / realization of the Lambda Calculus. I was unable to find any other language like it, which I find quite surprising. In hindsight, the language seems obvious and natural. And the language keeps surprising me. I say “discovered” in the same sense that Paul Graham says that McCarthy “discovered Lisp”
06 Jun 24
wiki entry about how to modify the firefox bookmark bar – hide favicons, only show labels, etc.
05 Jun 24
From the abstract:
Konnakol is a South Indian, Carnatic musical practice involving the vocal recitation of algorithmic, geometric rhythmic patterns of non-lexical syllables. I reflect on the experience of learning konnakol rhythms, and of adapting the TidalCycles and Strudel live coding environments to better represent Konnakol-inspired rhythms, based on the concept of the metrical tactus. I share visualisations of examples, and the development of a hybrid practice that integrates vocal patterns with live coding. I conclude by considering the issue of cultural appropriation around this work.
Bill reflects on why both distributed systems and centralized ones are useful patterns to have in your toolbox when designing a thing.
04 Jun 24
An overview of the historical precedence for throwing foodstuffs at politicians
31 May 24
ALISON GOPNIK: A very common trope is to treat LLMs as if they were intelligent agents going out in the world and doing things. That’s just a category mistake. A much better way of thinking about them is as a technology that allows humans to access information from many other humans and use that information to make decisions. We have been doing this for as long as we’ve been human. Language itself you could think of as a means that allows this. So are writing and the internet. These are all ways that we get information from other people. Similarly, LLMs give us a very effective way of accessing information from other humans. Rather than go out, explore the world, and draw conclusions, as humans do, LLMs statistically summarize the information humans put onto the web.