







Pony
An open-source, object-oriented, actor-model, capabilities-secure, high-performance programming language.
Learn Go by Building a Command Line Todo App | Barbarian Meets Coding
Learn the Go programming language by building a test-driven command line todo application

A break from programming languages
This is a blog post I have been considering writing for a long time.
Self-Instruct: Aligning Language Models with Self-Generated Instructions
Large "instruction-tuned" language models (i.e., finetuned to respond to instructions) have demonstrated a remarkable ability to generalize zero-shot to new tasks. Nevertheless, they depend...

Why the fuss about conversational programming?
First, there isn’t much fuss … yet. But there will be.

Claude Is Not a Compiler - exe.dev blog
In early 2025, I wrote Is Claude a Compiler? At the time, my answer was: I don’t know.

Ewan's Corner
A personal space where I share my thoughts on coding, technology, and life.

RFC: Programming Languages Course Reboot, 2026

Machine Learning Glossary | Google for Developers
This glossary defines a wide range of machine learning terms, including those specific to TensorFlow and large language models.


Magicoder: Empowering Code Generation with OSS-Instruct
We introduce Magicoder, a series of fully open-source (code, weights, and data) Large Language Models (LLMs) for code that significantly closes the gap with top code models while having no more...

Cursor: AI coding agent
Built to make you extraordinarily productive, Cursor is the best AI coding agent.

The peril of laziness lost | The Observation Deck
In his classic Programming Perl — affectionately known to a generation of technologists as "the Camel Book" — Larry Wall famously wrote of the three virtues of a programmer as laziness, impatience, and hubris: If we’re going to talk about good software design, we have to talk about Laziness, Impatience, and Hubris, the basis of good software design. We’ve all fallen into the trap of using cut-and-paste when we should have defined a higher-level abstraction, if only just a loop or subroutine. To be sure, some folks have gone to the opposite extreme of defining ever-growing mounds of higher level abstractions when they should have used cut-and-paste. Generally, though, most of us need to think about using more abstraction rather than less.
Modular: The Claude C Compiler: What It Reveals About the Future of Software
Compilers occupy a special place in computer science. They're a canonical course in computer science education. Building one is a rite of passage. It forces you to confront how software actually works, by examining languages, abstractions, hardware, and the boundary between human intent and machine execution.
