Inanna Malick
@inanna.recursion.wtf
📤 111
📥 67
📝 33
Rust, Haskell (sometimes), art
https://github.com/inanna-malick
reposted by
Inanna Malick
Adam Chalmers
about 14 hours ago
LLMs are pretty useful if you're making a new programming language, or a parser for human-readable text. It keeps finding plausible uses of the language, that you'd kinda expect if you just absorbed the general cultural zeitgeist on the internet. It finds edge cases that we really should support.
2
3
1
reposted by
Inanna Malick
Steve Klabnik
about 4 hours ago
It's on apt. It's literally on Cargo. It's on DockerHub with ads. It's literally on nuget. You can probably find it on snap. Dude it's on portage. It's a Homebrew original. It's on pacman. You can download it on nixpkgs. You can go to pkgsrc and watch it. Log onto the Windows Store right now.
17
252
47
reposted by
Inanna Malick
Mara Bos
1 day ago
#rustlang
hot take: We should rename .unwrap() to .or_panic(). (And .expect() to .or_panic_with().) "Unwrap" is a terrible name for the panicking function, especially since we also have things like .unwrap_or() and .unwrap_or_default() which never panic.
32
402
70
reposted by
Inanna Malick
jo melville
2 days ago
Alexandra Elbakyan has had a bigger global impact than probably any single other communist since Gorbachev
add a skeleton here at some point
0
75
17
Please give me feature requests btw this fun for me sickos.jpeg & etc currently the queue is just -0 null byte terminated output support for scripting - ???
add a skeleton here at some point
1 day ago
1
2
0
reposted by
Inanna Malick
eliza🌻
1 day ago
the nation-state that will dominate the future of humanity is whoever decides to start secretly raising children in an isolated environment with no LLMs and a bunch of pre-2021 software engineering books. China is probably already doing this.
10
199
16
reposted by
Inanna Malick
5 days ago
Daily affirmations: I can finish this project before starting another. I will not start another project before finishing this one. This project will be completed and then others can be later. This project is now, other project is later. Other projects are cool but your current project is really cool
1
30
9
reposted by
Inanna Malick
Kuba Suder 🇵🇱🇺🇦
1 day ago
Ok, here it is: ATProto blog posts collection - I collected a lot of interesting blog posts about Bluesky/ATProto things written since 2023* by the team & the community, and put them in one list grouped into sections (there's even a quick search field at the top): (*) one even earlier
loading . . .
ATProto blog posts collection
I come across a lot of blog posts about the AT Protocol and Bluesky technicals – both on Bluesky official blogs and those of the team members, and by independent developers from the community. So many...
https://mackuba.eu/2025/11/18/atproto-blog-posts/
3
50
16
reposted by
Inanna Malick
U.S. Consumer Product Safety Commission
3 days ago
Do not. cite. the deep magic. to me. witch.
4
369
28
I made heavy use of this for `detect` - my UX tester LLMs kept trying to write structured data selectors like `toml:.some_key` as a standalone 'does this key exist' selector back when detect only supported `toml:.some_key == some_value`, and it was like you know what? yeah, that's a good idea
add a skeleton here at some point
1 day ago
0
3
0
I've published a blog post here, with implementation details and metrics:
recursion.wtf/posts/detect/
this may not come as a surprise, but it not spawning a new process via `-exec` for every file or running multiple `xargs` passes makes everything significantly faster
add a skeleton here at some point
1 day ago
0
47
12
reposted by
Inanna Malick
Louis Maddox
10 days ago
Cool: abandons flags for an expr DSL
github.com/inanna-malic...
via pest grammar
github.com/inanna-malic...
This was fun to translate into `fd`: `-e rs -e toml` `-S +1M` `--changed-within 7d` `-X rg -l 'class.*Service'` `-E '*test*'` `-e yaml -S -0.5M -x lq -Y {} | jq -e '.server.port > 8000'` (?)
add a skeleton here at some point
1
4
1
Sick of looking up `find/exec` syntax on stack overflow? I built detect as a replacement: ``` cargo install detect detect 'ext in [rs, ts, js] && size > 0.5mb && modified > -7d' detect 'ext == ts && content ~= class.*Service' detect 'name == "Cargo.toml" && toml:.package.edition == 2018' ```
10 days ago
2
21
7
reposted by
Inanna Malick
dan
2 months ago
can there just be a cloudflare template for this or whatever. serious question
add a skeleton here at some point
7
77
7
I've settled on this architecture recently for personal project cargo workspaces: - crates/human (core code, service traits, proptests) - crates/vibes (throwaway code, to be rewritten later) Type-level domain modeling and property tests keep LLMs on track, at least enough so for a solid prototype
2 months ago
1
5
0
reposted by
Inanna Malick
Tangled
2 months ago
tangled.sh
is now
tangled.org
!
15
311
35
reposted by
Inanna Malick
verdverm
3 months ago
Came across this
@cloudflare.social
❤️
@atproto.com
tutorial, very well done! solid balance of the high and low level, broad coverage of network components, pains and solutions when running certain
#atproto
TS packages on the edge
blog.cloudflare.com/serverless-a...
|
@inanna.recursion.wtf
loading . . .
Serverless Statusphere: a walk through building serverless ATProto applications on Cloudflare’s Developer Platform
Build and deploy real-time, decentralized Authenticated Transfer Protocol (ATProto) apps on Cloudflare Workers.
https://blog.cloudflare.com/serverless-atproto/
0
5
2
Fresh Eyes as a Service: Using LLMs to Test CLI Ergonomics
recursion.wtf/posts/llms_a...
loading . . .
Fresh Eyes as a Service: Using LLMs to Test CLI Ergonomics
An LLM's attempts to use your tool approximate what a statistically average user would try. You can use that to automate basic CLI tool UX testing.
https://recursion.wtf/posts/llms_as_ux_testers/
3 months ago
1
5
4
reposted by
Inanna Malick
Pusha<T>
3 months ago
ok i reposted because this is a cool technique but after reading about half the article i have to call out; you, reader, can understand this, even if functional isn't your bag. she wrote it targeting a working programmer more than a haskell wizard, and it shows!
add a skeleton here at some point
2
9
3
reposted by
Inanna Malick
Pusha<T>
3 months ago
one more quote post of this, because my o11y friends need to see this line: > All GIFs in this post were generated by a special instrumented version of the recursive machinery used by collapse_frames that automatically generates animated ‘stack traces’ we can go furthur, friends
add a skeleton here at some point
1
4
1
reposted by
Inanna Malick
zeu
3 months ago
bsky should really emphasize the best part of atproto: the PDS. investors should fund startups selling PDSs, both as a cloud service and a physical self host device. make it clear to users that the biggest benefit of atproto isn’t “one account for all platforms”, it’s “choice in sharing data online”
4
62
18
reposted by
Inanna Malick
Cloudflare
4 months ago
Perplexity is repeatedly modifying their user agent and changing IPs and ASNs to hide their crawling activity, in direct conflict with explicit no-crawl preferences expressed by websites.
blog.cloudflare.com/perplexity-i...
loading . . .
Perplexity is using stealth, undeclared crawlers to evade website no-crawl directives
Perplexity is repeatedly modifying their user agent and changing IPs and ASNs to hide their crawling activity, in direct conflict with explicit no-crawl preferences expressed by websites.
https://blog.cloudflare.com/perplexity-is-using-stealth-undeclared-crawlers-to-evade-website-no-crawl-directives/
3
70
58
reposted by
Inanna Malick
SE Gyges
7 months ago
pjreddie, who made the best real-time computer vision system, epically explaining that he quit AI because the primary use case was killing people
7
105
32
reposted by
Inanna Malick
Phil Lewis
4 months ago
Labor activist Chris Smalls is back in the United States (via Chuck Modi)
loading . . .
40
5104
1233
Check this out if you want to hear me forget what the 'S' in DNS stands for live on stream
add a skeleton here at some point
4 months ago
0
0
0
reposted by
Inanna Malick
Cloudflare
4 months ago
🚀 Episode 101 of
#ThisWeekInNET
! We explore how to build a real-time, decentralized social app, using Cloudflare Workers and ATProto, the protocol behind Bluesky. Plus: a glimpse into Python notebooks on Cloudflare with marimo. 📺 Watch:
youtu.be/h_wuYR4BEng
loading . . .
0
19
4
Claude for rustlang: you know what this test code needs? Box::leak Claude for beta-testing command line tools: actually quite nice, provides good UX reports and small feature requests The trick is that in the second case, "this was kinda confusing and I couldn't make it work" is _useful output_
4 months ago
0
8
0
reposted by
Inanna Malick
Nick Gerakines
4 months ago
This is good. Great work by
@baileytownsend.dev
in the Rust port of the statusphere tutorial. It's great seeing the community fork and adapt for knowledge sharing. Kind of gets me thinking about XRPC services deployed as Cloudflare Workers ...
add a skeleton here at some point
1
21
5
reposted by
Inanna Malick
Cloudflare
4 months ago
Real-time, decentralized social apps — without running a single server. Here’s how to build and deploy an atproto app on Cloudflare Workers.
blog.cloudflare.com/serverless-a...
loading . . .
Serverless Statusphere: a walk through building serverless ATProto applications on Cloudflare’s Developer Platform
Build and deploy real-time, decentralized Authenticated Transfer Protocol (ATProto) apps on Cloudflare Workers.
https://blog.cloudflare.com/serverless-atproto/
3
189
51
reposted by
Inanna Malick
AT Protocol Community
4 months ago
Great write up by
@inanna.recursion.wtf
of learning from
@baileytownsend.dev
’s Rust Statusphere example and deploying via Wasm in Cloudflare Workers.
add a skeleton here at some point
1
36
11
reposted by
Inanna Malick
Bailey Townsend 🦀
4 months ago
Thank's to
@inanna.recursion.wtf
's blog post on
@cloudflare.social
today, my Rust Statusphere implementation hit 50 stars on GitHub! Pretty excited about that milestone.
github.com/fatfingers23...
0
27
1
reposted by
Inanna Malick
amos
7 months ago
did you know? `#[serde(default = "some_func")` is a remnant of some old Rust limitations. Now we can do: `#[facet(default = some_func())]` (or just have any expression in there!)
9
63
9
Thinking about a useful Bluesky tool for US border crossings - something that archives a user's repo, deletes their post history, and replaces it with anodyne normie meme posts. Then, after the crossing is complete, it should be able to revert that change and restore the original content.
7 months ago
0
3
0
thinking about groupchats... is there a way to push notifications to a bsky account via an (authenticated) atproto client? Like if there was an offsite groupchat could I plug into the onsite chat functionality somehow (for users that opted in ofc)?
7 months ago
2
2
0
reposted by
Inanna Malick
Suraj
7 months ago
SILT#00032: I've been linting my Rust code for a while and have just realized that at the end of a deny, allow, or warn attribute macro, I can place the reason for applying that lint with `reason=`. That feels so much more useful than how I've done it before, leaving comments around the attribute
0
5
2
reposted by
Inanna Malick
Adam Chalmers
7 months ago
I go to the whiteboard and write "API". Then I smirk and cross out the P. The VCs start howling and sobbing and throwing money.
1
27
3
It's a work in progress and I'm not quite ready to post the source code, but check it out: the statusphere-example atproto app running entirely on the edge via cloudflare workers using a free plan & the wasm32-unknown-unknown rust compile target
statusphere-w.inanna-c38.workers.dev
7 months ago
1
16
4
you reached the end!!
feeds!
log in