📖✨:announce the SDK, and a date for it - #1829
Open
DerekNonGeneric wants to merge 4 commits into
Open
Conversation
The one post on this blog was from November 2024, written by three people, and it named the SDK by a name we have retired. It is replaced rather than amended: same author, one voice now, dated today. It has something to say this time. The SDK is ten packages, and the idea worth publishing is that a type guard carries the specification for its own check, so an error message is derived from the check instead of written beside it. The technical claims come from the SDK's own README. The four-year gap is the spine of it rather than an embarrassment. Six of these packages have sat on npm untouched since April 2022, which is checkable, and saying so earns the release date at the top. The day job and the shoestring stay in. They explain the gap. Signed-off-by: Derek Lewis <DerekNonGeneric@inf.is> Assisted-by: Claude-Code:claude-opus-5
✅ Deploy Preview for gh-pages-openinf ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
The post read like a specification. It listed package counts, showed a code sample, and explained a design decision, none of which belongs in a first announcement and some of which is not announced yet. So it says the SDK has a name and a shipping quarter, and stops. The details keep until the release, which also means nothing here commits us to specifics that may still change. The language is mostly the original's again: the opening question, the note on Brendan Eich's ideas, the day job and the shoestring, the rough edges that come with building in the open. First person throughout, and the voice follows the Factorio post the original was already modeled on. Signed-off-by: Derek Lewis <DerekNonGeneric@inf.is> Assisted-by: Claude-Code:claude-opus-5
The post thanked the reader twice, once for their patience and once for their company, a paragraph apart. One is warmer than two. It also gave away nothing, which reads as coy when the interesting part is ready to be talked about. So it now says the packages are not new, that several have been on npm since 2022 and are being rewritten in TypeScript, and it describes the one idea the SDK is built around without naming an API: a type check knows how to describe itself, and composing checks composes the description. The claim about Brendan Eich's ideas now links to the post it comes from, "Harmony Of My Dreams", so a reader can go and check what we mean by modular and extensible rather than taking it on faith. Signed-off-by: Derek Lewis <DerekNonGeneric@inf.is> Assisted-by: Claude-Code:claude-opus-5
The post claimed inspiration from Brendan Eich and left the reader to take it on faith. Now it shows its work: a guard is a small function you pass around and combine, which is the "Scheme-ish first-class functions" he said in 2008 he was glad he chose, and a guard you compose carries its description exactly as a shipped one does, which is the goal his 2005 notes set for user code, that extensions "can do anything the native classes can do". It also stops overreaching. He was designing a language in a standards committee, so the analogy is ours to answer for and the post says so. One correction. The published packages were already written in TypeScript and shipped type declarations from the start, so the claim that they are being rewritten in it was wrong. What is true is that they had not changed since April 2022, and the rebuild is about the dependencies they leaned on rather than the language they are in. Signed-off-by: Derek Lewis <DerekNonGeneric@inf.is> Assisted-by: Claude-Code:claude-fable-5
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The blog's one post was written in the plural and called the SDK the "INF
Development Kit (IDK)", a name we have retired. This one is dated today, is
written in the first person, and keeps most of the original's language: the
opening question, the note on Brendan Eich's ideas, the day job and the
shoestring, and the rough edges that come with building in the open.
It moves to
/news/2026/08/18/here-we-are/.What is new
The SDK has a name and a shipping quarter, and the post says that much and
stops:
No package names, no counts, no design details. Those keep until the release,
which also means nothing here commits us to specifics that may still change.
Voice
It follows the Factorio post the original was already modeled on, down to the
length: 320 words against their roughly 300. Short paragraphs, direct address,
and an honest closing note about half-finished pages rather than a polished
sign-off.
Checks
nps build && nps testpasses, including HTML validation of the generatedpage.
nps verify.mdis clean across Prettier, markdownlint, remark with theretext readability and simplify rules, link validation, and cspell. The post
renders as 18 Aug 2026 by Derek Lewis, and the old URL is gone.