







How to make better software with systems-thinking
Prompts are unsafe, and that means language models are not fit f…
How to make better software with systems-thinking
Systems programming the model
This paper examines the status of the language model object in generative AI, arguing that what we call a ‘model’ is inseparable from the systems deploying it. I first theorize how these objects emerge from systems-level interactions between trained artifacts, prompting mechanisms, and sampling methods, drawing on the philosophy of digital objects as well as software studies to show how models gain their objective character. Such interactions converge on programming, not prompting, language models, and I illustrate how critical code studies can therefore track these dynamics. In an overview of language model programming approaches, I discuss how prompt and program converge, demonstrating how this confluence tends toward the production of new feedback loops wherein models become models of and for themselves. Understanding these feedback loops is essential in view of recent efforts to infrastructuralize AI, in which multiple models cascade into compound systems that abstract toward a unified model of models. Thus the need, I argue, for a systems-level view that can address this new order of abstraction and complexity by identifying where and how the model emerges from the system.

How to safely think in systems.
While there are a decent number of folks out there modeling systems, there’s a much larger group of folks who think of themselves as systems thinkers but utilize techniques like modeling rather casually (a polite way of saying that they don’t use them). Even with modeling tools available, I’ve often taken the shortcut of intuitive modeling, which over time has given me quite the education in making well-intentioned reasoning errors.

Seeing Like a Programmer (LambdaConf 2024) — Sympolymathesy, by Chris Krycho
How do we make good software, and indeed, what makes software good: both as software, and in terms of its place in the world?

Building software on top of Large Language Models
I presented a three hour workshop at PyCon US yesterday titled Building software on top of Large Language Models. The goal of the workshop was to give participants everything they …

The Systems Thinker
The Systems Thinker works to catalyze effective change by expanding the use of systems approaches. All articles are available free of charge in an effort to expose as wide of audience as possible. Browse, share with others, save your favorites and tell others about this valuable resource!
Convivial design heuristics for software systems
The theme of this workshop is the proliferation of ideas about calling into question the cultural roots of our current programming languages, and the search for alternative paradigms with other cultural bases.
What comes next with open models
Markets, capabilities, cope, and bewilderment in the industrialization of language models.

Notes on how to use LLMs in your product.
Pretty much every company I know is looking for a way to benefit from Large Language Models. Even if their executives don’t see much applicability, their investors likely do, so they’re staring at the blank page nervously trying to come up with an idea. It’s straightforward to make an argument for LLMs improving internal efficiency somehow, but it’s much harder to describe a believable way that LLMs will make your product more useful to your customers.

Maintaining the love for coding in the time of AI
By Alex Band Over the last year, we have seen the profound effects Large Language Models (LLMs) have on our open-source software work at NLnet Labs. These can be grouped into two main areas: community contributions and security reports. Before we dive into this topic, let me first give
The Illusion of Thinking: Understanding the Strengths and Limitations of Reasoning Models via the Lens of Problem Complexity
Recent generations of frontier language models have introduced Large Reasoning Models (LRMs) that generate detailed thinking processes…

Introducing Mu language model and how it enabled the agent in Windows Settings
We are excited to introduce our newest on-device small language model, Mu. This model addresses scenarios that require inferring complex input-output relationships and has been designed to operate efficiently, delivering high performance while runnin

Programming Language Design in the Era of LLMs: A Return to Mediocrity?
The most exciting part of Programming Languages (PL) research for me has always been in Programming Language Design.
Test-Driven Approaches to Software Engineering with Large Language...
Tests increasingly participate in the decisions made by large language models and software engineering agents. They specify intended behavior, guide program construction and repair, select...

Boring is good – Scott Jenson
The initial, feverish enthusiasm for large language models (LLMs) is beginning to cool, and for good reason. It’s time to trade the out-of-control hype for a more pragmatic, even “boring,” approach. A recent MIT report shows that 95% of companies implementing this technology have yet to see a positive outcome. It’s understandable to feel confused.
