Joel Martin
banner
kanaka.bsky.social
Joel Martin
@kanaka.bsky.social
Creator of mal/make-a-lisp, noVNC, websockify, clj-protocol, conlink, instacheck, miniMAL, wam, wac, warpy, raft.js (github.com/kanaka).

Interested in Clojure, WebAssembly/wasm, AI/LLMs, JS, Rust, network protocols, web browsers, testing, etc.
Pinned
If you are into programming languages, or your work/play is polyglot, you might enjoy the mal/make-a-lisp project: github.com/kanaka/mal It is one application (interpreter for the mal Lisp language) implemented in 88 different languages by 36 unique authors.
GitHub - kanaka/mal: mal - Make a Lisp
mal - Make a Lisp. Contribute to kanaka/mal development by creating an account on GitHub.
github.com
Reposted by Joel Martin
UNIX V4 (written in C in the 1970s) found on 50+ year old 9-track tape is restored, compiled, then boots.
www.theregister.com/2025/12/23/u...
UNIX V4 tape successfully recovered
: Crucial early evolutionary step found, imaged, and ... amazingly ... works
www.theregister.com
December 24, 2025 at 3:00 PM
Reposted by Joel Martin
How long until people start running an inetd (look it up, kids) for our growing piles of local mcp servers?
December 25, 2025 at 2:36 AM
Reposted by Joel Martin
I wrote a post about GPT-5.2-Codex-Max porting Photoshop 1.0 to the web with only a few human turns of the crank here: photoslop-1.com/port and the result is here: photoslop-1.com

I was inspired by @simonwillison.net 's recent post about sending the agent-LLM off to port an HTML parser
Photoshop 1.0 Web — Port Log
photoslop-1.com
December 25, 2025 at 2:51 AM
Reposted by Joel Martin
Zawinski's law (www.laws-of-software.com/laws/zawinski/) should read "Every program attempts to expand until it can *chat with an AI.* Those programs which cannot so expand are replaced by ones which can."

I'm not sayin' I like it, but it is what it is
Zawinski's Law
A catalog of the laws guiding software development. Especially useful for individual contributors, new managers, and product managers who want to build well-made software.
www.laws-of-software.com
December 3, 2025 at 12:48 AM
Free idea for an unsaturated LLM benchmark with large real-world value:
- input: raster image of a diagram
- output: a dot/mermaid diagram with correct nodes, edges, labels, fonts, colors, subgraphs/groupings, etc.

Bonus: it is automatable and has variable complexity.
December 1, 2025 at 7:24 PM
Reposted by Joel Martin
Folks: Use AI in hard mode.

Use it to be stronger, not as a substitute for your strength. And for goodness sake, don't let it be your voice. It's a great audience and editor to give you feedback and to train and refine your voice. Your voice is you — don't lose it!
November 24, 2025 at 10:25 PM
Reposted by Joel Martin
Prototypes are the most powerfully tool I know of for increasing the productivity of conversations about what software should do and how it should work

They're tools for thinking
September 21, 2025 at 8:37 PM
Reposted by Joel Martin
I added a basic tool use chapter to the rlhfbook if you've long heard about it and never spent the time to learn the fundamentals of what it actually is and how the data is formatted.
(I'm becoming more tool-pilled)
June 16, 2025 at 2:01 PM
Reposted by Joel Martin
I know a lot of my followers are pretty AI skeptical. Which is fine. But for people trying to find a middle way in-between ridiculous waves of pro-AI and anti-AI propaganda you may find this relevant: open.substack.com/pub/mikecaul...
The Apple "Reasoning Collapse" Paper Is Even Dumber Than You Think
We're this far into reasoners and neither hypesters nor skeptics really understand their significance. Also: Read Toulmin.
open.substack.com
June 13, 2025 at 8:51 PM
Reposted by Joel Martin
"Design Patterns for Securing LLM Agents against Prompt Injections" is an excellent new paper that provides six design patterns to help protect LLM tool-using systems (call them "agents" if you like) against prompt injection attacks

Here are my notes on the paper simonwillison.net/2025/Jun/13/...
Design Patterns for Securing LLM Agents against Prompt Injections
This a new paper by 11 authors from organizations including IBM, Invariant Labs, ETH Zurich, Google and Microsoft is an excellent addition to the literature on prompt injection and LLM …
simonwillison.net
June 13, 2025 at 1:35 PM
Reposted by Joel Martin
By surveying workers and AI experts, this paper gets at a key issue: there is both overlap and large mismatches between what workers want AI to do & what AI is likely to do.

AI is going to change work. It is critical that we take an active role in shaping how it plays out. arxiv.org/pdf/2506.06576
June 13, 2025 at 2:37 PM
Reposted by Joel Martin
Lots of neat stuff in this paper showing 30% of US python commits use AI

As of the end of 2024: “the annual value of AI-assisted coding in the United States at $9.6−14.4 billion, rising to 64−96 billion if we assume higher estimates of productivity effects reported by randomized control trials”
June 12, 2025 at 5:00 PM
I posted a new version of my coding agent tutorial: : kanaka.github.io/blog/llm-agent-in-five-steps This version uses the llm library by @simonwillison.net The process is now only 5 steps and the final agent is less than 80 lines of python. Still uses GitHub Copilot (no API/credit card needed).
kanaka.github.io
June 13, 2025 at 12:01 AM
Reposted by Joel Martin
39 years ago today....

nedbatchelder.com/blog/202506/...
Digital Equipment Corporation no more
Tech giants come and go
nedbatchelder.com
June 9, 2025 at 2:50 PM
Reposted by Joel Martin
Reposted by Joel Martin
Completely agree - code is such an interesting application because you get a basic form of "fact checking" for free, unlike with prose simonwillison.net/2025/Mar/2/h...
Hallucinations in code are the least dangerous form of LLM mistakes
A surprisingly common complaint I see from developers who have tried using LLMs for code is that they encountered a hallucination—usually the LLM inventing a method or even a full …
simonwillison.net
May 8, 2025 at 4:41 PM
Reposted by Joel Martin
I think the one counterexample is that it's good at writing a lot of code, which is creating more text. My rough rule of thumb is that LLMs are good when it's easy to verify the output as correct, which is quite a lot of things
May 8, 2025 at 4:30 PM
mal/make-a-lisp just hopped up to 89 different languages with the addition of a Hare implementation (harelang.org). Contributed by github.com/einsiedlersp...
The Hare programming language
harelang.org
May 6, 2025 at 12:02 AM
Reposted by Joel Martin
New release of LLM, accompanied by a new plugin - you can now use llm-video-frames to turn a video file into a sequence of JPEGs and feed those into a long-context vision model like GPT-4.1-mini simonwillison.net/2025/May/5/l...
May 5, 2025 at 5:53 PM
Reposted by Joel Martin
In which our hero fine-tunes when GitHub actions are run, and battles mysterious YAML and GitHub oddities along the way: nedbatchelder.com/blog/202505/...
Filtering GitHub actions by changed files
How to limit what GitHub workflows run based on what files have changed.
nedbatchelder.com
May 4, 2025 at 2:06 PM
@emollick.bsky.social You might be interested in this: bsky.app/profile/kana... I made it to be lower barrier than other agent tutorials I've seen: no API sign-up/credits needed (via free GitHub Copilot) and hopefully it is approachable for less experienced python devs (incremental, diagrams, etc)
A 6 step tutorial on creating an LLM coding agent: kanaka.github.io/blog/litellm....
* Uses LiteLLM
* About 140 lines of python when finished
* Can use the free plan of GitHub Copilot (no API sign-up/credit is needed to work through the steps)
* Step 5 of the agent is used to create Step 6
An LLM Coding Agent in 6 incremental steps and about 140 lines of python
I will show you how to create a working LLM coding agent in 6 incremental steps (and about 140 lines of code). We will use the python LiteLLM library and use Github Copilot which means all you need is...
kanaka.github.io
May 3, 2025 at 3:43 PM
Reposted by Joel Martin
The postmortem OpenAI just shared on their ChatGPT sycophancy behavioral bug - a change they had to roll back - is fascinating! My notes here: simonwillison.net/2025/May/2/w...
Expanding on what we missed with sycophancy
I criticized OpenAI's [initial post](https://openai.com/index/sycophancy-in-gpt-4o/) about their recent ChatGPT sycophancy rollback as being "[relatively thin](https://simonwillison.net/2025/Apr/30/sy...
simonwillison.net
May 2, 2025 at 5:04 PM
A 6 step tutorial on creating an LLM coding agent: kanaka.github.io/blog/litellm....
* Uses LiteLLM
* About 140 lines of python when finished
* Can use the free plan of GitHub Copilot (no API sign-up/credit is needed to work through the steps)
* Step 5 of the agent is used to create Step 6
An LLM Coding Agent in 6 incremental steps and about 140 lines of python
I will show you how to create a working LLM coding agent in 6 incremental steps (and about 140 lines of code). We will use the python LiteLLM library and use Github Copilot which means all you need is...
kanaka.github.io
May 2, 2025 at 6:20 PM
Reposted by Joel Martin
I think the key bit here is that LLMs don't make me X% faster at everything, it makes me able to solve a specific subset of tasks instantly, *including* many tasks that then boost my regular programming. So even though programming is high-leverage, creative, nonfungible, LLMs boost my productivity
folks are talking about how AI makes developers 30% more productive as if that's meaningful—but it simply isn't?

programming is a high-leverage, creative pursuit

it just isn't a matter of outputting fungible programming-units X% faster
April 30, 2025 at 7:18 PM
Reposted by Joel Martin
Have you sailed "all the seven seas"? Well, what are the seven seas?
April 30, 2025 at 7:03 PM