Pinned Tweet
At @answerdotai, we integrate @stripe into lots of projects. Every time, I found myself doing the same dance: create product, create price, create checkout session. Then hunting docs for parameters for each. So we built FastStripe, a self-documenting Stripe SDK that's easy to use!

ALT A code snippet in Python demonstrating the use of the faststripe library to create a Stripe payment. The code imports StripeApi, initializes it with a placeholder key, and then calls the one_time_payment method to create a checkout session for a 'Digital Course' costing 4999 cents, with specified success and cancel URLs. The final line prints the first 64 characters of the generated checkout URL.
Nathan Cooper retweeted
I recorded a short video on Toad's shell.
If we are going to use AI in the terminal, it shouldn't replace the kind of terminal workflows devs have been using for years.
We can keep the stuff that worked from the past. While benefiting from AI.
Give Toad a try! 🐸
github.com/batrachianai/toad
Nathan Cooper retweeted
論文公開しました!RoPE、実は学習を手助けしているだけで、最終的には要らないかも、って論文です。NoPE(位置埋め込みなし)でも実は位置を扱えること自体は有名かもと思うのですが、実際のところ最初からNoPEだと学習うまく行かないんですよね。途中でRoPEをdropする"DroPE"でいいとこ取りします。
Introducing DroPE: Extending the Context of Pretrained LLMs by Dropping Their Positional Embeddings
pub.sakana.ai/DroPE/
We are releasing a new method called DroPE to extend the context length of pretrained LLMs without the massive compute costs usually associated with long-context fine-tuning.
The core insight of this work challenges a fundamental assumption in Transformer architecture. We discovered that explicit positional embeddings like RoPE are critical for training convergence but eventually become the primary bottleneck preventing models from generalizing to longer sequences.
Our solution is radically simple: We treat positional embeddings as a temporary training scaffold rather than a permanent architectural necessity.
Real-world workflows like reviewing massive code diffs or analyzing legal contracts require context windows that break standard pretrained models. While models without positional embeddings (NoPE) generalize better to these unseen lengths, they are notoriously unstable to train from scratch.
Here, we achieve the best of both worlds by using embeddings to ensure stability during pretraining and then dropping them to unlock length extrapolation during inference. Our approach unlocks seamless zero-shot context extension without any expensive long-context training.
We demonstrated this on a range of off-the-shelf open-source LLMs. In our tests, recalibrating any model with DroPE requires less than 1% of the original pretraining budget, yet it significantly outperforms established methods on challenging benchmarks like LongBench and RULER.
We have released the code and the full paper to encourage the community to rethink the role of positional encodings in modern LLMs.
Paper: arxiv.org/abs/2512.12167
Code: github.com/SakanaAI/DroPE
Replying to @patrickc
SolveIT by @answerdotai is by far the best reading experience I've had. Their dialogue approach means you can split the text at any point and just ask questions. You can also run code if you need it, and show/hide selectively stuff to the AI (so it does not get distracted with your rabbit holes).
Here's a very basic example: gist.github.com/kafkasl/d76e…
People are lately reading full form books in a number of different personal approaches
Nathan Cooper retweeted
Introducing DroPE: Extending the Context of Pretrained LLMs by Dropping Their Positional Embeddings
pub.sakana.ai/DroPE/
We are releasing a new method called DroPE to extend the context length of pretrained LLMs without the massive compute costs usually associated with long-context fine-tuning.
The core insight of this work challenges a fundamental assumption in Transformer architecture. We discovered that explicit positional embeddings like RoPE are critical for training convergence but eventually become the primary bottleneck preventing models from generalizing to longer sequences.
Our solution is radically simple: We treat positional embeddings as a temporary training scaffold rather than a permanent architectural necessity.
Real-world workflows like reviewing massive code diffs or analyzing legal contracts require context windows that break standard pretrained models. While models without positional embeddings (NoPE) generalize better to these unseen lengths, they are notoriously unstable to train from scratch.
Here, we achieve the best of both worlds by using embeddings to ensure stability during pretraining and then dropping them to unlock length extrapolation during inference. Our approach unlocks seamless zero-shot context extension without any expensive long-context training.
We demonstrated this on a range of off-the-shelf open-source LLMs. In our tests, recalibrating any model with DroPE requires less than 1% of the original pretraining budget, yet it significantly outperforms established methods on challenging benchmarks like LongBench and RULER.
We have released the code and the full paper to encourage the community to rethink the role of positional encodings in modern LLMs.
Paper: arxiv.org/abs/2512.12167
Code: github.com/SakanaAI/DroPE
Nathan Cooper retweeted
Replying to @zoltanszogyenyi
I'm quite familiar with it. I wrote my first piece of open source software >30 years ago, and have written and released hundreds of libraries.
And I still have plenty of incentive to write good OS - it's the same as I've always had: to help people do the stuff they want to do.
Omarchy 3.3 is out! Now with opt-in AI dictation, hibernation sleep, theme-synced @opencode, simplified themes via colors.toml + templates, and compatibility with Hyprland 0.53. Enjoy! github.com/basecamp/omarchy/…
Nathan Cooper retweeted
New post: nanochat miniseries v1
The correct way to think about LLMs is that you are not optimizing for a single specific model but for a family models controlled by a single dial (the compute you wish to spend) to achieve monotonically better results. This allows you to do careful science of scaling laws and ultimately this is what gives you the confidence that when you pay for "the big run", the extrapolation will work and your money will be well spent. For the first public release of nanochat my focus was on end-to-end pipeline that runs the whole LLM pipeline with all of its stages. Now after YOLOing a few runs earlier, I'm coming back around to flesh out some of the parts that I sped through, starting of course with pretraining, which is both computationally heavy and critical as the foundation of intelligence and knowledge in these models.
After locally tuning some of the hyperparameters, I swept out a number of models fixing the FLOPs budget. (For every FLOPs target you can train a small model a long time, or a big model for a short time.) It turns out that nanochat obeys very nice scaling laws, basically reproducing the Chinchilla paper plots:
Which is just a baby version of this plot from Chinchilla:
Very importantly and encouragingly, the exponent on N (parameters) and D (tokens) is equal at ~=0.5, so just like Chinchilla we get a single (compute-independent) constant that relates the model size to token training horizons. In Chinchilla, this was measured to be 20. In nanochat it seems to be 8!
Once we can train compute optimal models, I swept out a miniseries from d10 to d20, which are nanochat sizes that can do 2**19 ~= 0.5M batch sizes on 8XH100 node without gradient accumulation. We get pretty, non-itersecting training plots for each model size.
Then the fun part is relating this miniseries v1 to the GPT-2 and GPT-3 miniseries so that we know we're on the right track. Validation loss has many issues and is not comparable, so instead I use the CORE score (from DCLM paper). I calculated it for GPT-2 and estimated it for GPT-3, which allows us to finally put nanochat nicely and on the same scale:
The total cost of this miniseries is only ~$100 (~4 hours on 8XH100). These experiments give us confidence that everything is working fairly nicely and that if we pay more (turn the dial), we get increasingly better models.
TLDR: we can train compute optimal miniseries and relate them to GPT-2/3 via objective CORE scores, but further improvements are desirable and needed. E.g., matching GPT-2 currently needs ~$500, but imo should be possible to do <$100 with more work.
Full post with a lot more detail is here:
github.com/karpathy/nanochat…
And all of the tuning and code is pushed to master and people can reproduce these with scaling_laws .sh and miniseries .sh bash scripts.
Nathan Cooper retweeted
Great to see @threejs supporting llms.txt. 😀
I have noticed that the majority of libs/services I work with nowadays seem to have an llms.txt nowadays. Makes me happy!
(I've been really enjoying the very comprehensive @GeminiApp llms.txt recently for writing Gemini code.)
Nathan Cooper retweeted
A workflow I'm enjoying for managing coding agents on a kanban board:
When an agent needs your input, it turns the task red to alert you that it's blocked!
And then you can respond right there on the card to unblock it 😎
Nathan Cooper retweeted
Replying to @zephyr_z9
My colleagues at FAIR already wrote the whole paper on this and released the model: arxiv.org/abs/2510.02387
Nathan Cooper retweeted
“Human review as the bottleneck for AI work” suggests an *education* problem
I don’t just want a code diff and some tests. Make me a personalized explainer that helps me reach the point where I can thoroughly understand and critique the work!
A book chapter, an interactive explorable, a virtual lecture series, a quiz to check my understanding — whatever it takes. All communications media and pedagogy techniques should be considered
The end goal isn’t just that I can verify this unit of work, it’s that I can grow myself and help think of better ideas for the next thing to do
I had no idea that local model dictation had gotten this good and this fast! I'm blown away by how good hyprwhspr with Omarchy is just using a base model backed by the CPU. Unbelievably accurate. github.com/goodroot/hyprwhsp…
Nathan Cooper retweeted
Hyperparams and architectures are *far* more stable across model and data sizes than most people think. For stuff that does need to change, we have pretty reliable rules of thumb for nearly all of them.
(eg: OpenAI did nearly all their GPT4 ablations on ~1000x smaller models.)
In the last 6 months the NanoGPT Speedrun to 3.28 loss on FineWeb dropped by 33% to 2mins. Recently a subset of these changes were bulk copy-pasted to the larger-scale 2.92 loss track. Surprisingly, the untuned yolo run broke the 2.92 loss record by 25%. github.com/KellerJordan/modd…
# New shell sage release v1.0.4
- Add optional `safecmd`
- add bash keyboard shortcut to extract codefences
- Add `trust`
- Optional reasoning; add `a` to always allow tool call
- fix: EOFError when redirecting input and using tools
ssage.answer.ai/
Nathan Cooper retweeted
Replying to @eiselems
Claude has been running my nanochat experiments since morning. It writes implementations, debugs them with toy examples, writes tests and makes them fail/pass, launches training runs, babysits them by tailing logs and pulling stats from wandb, keeps a running markdown file of highlights, keeps a running record of runs and results so far, presents results in nice tables, we just finished some profiling, noticed inefficiencies in the optimizer resolved them and measured improvements. It looked at all PRs to the repo and categorized and prioritized them, made commits against some of them etc. I'm still very much in the loop. It made subtle mistakes that I had to point out. It got confused a few times and (amusingly) admitted that what it said was a "brain fart" (verbatim quote hah). It has missed a few ideas that I had to pitch. It made a bunch of bad design decisions that bloat the code and coupled abstractions that I had to revert. It's not perfect but I'm used to doing all of these things manually, so just seeing it running on the side cranking away at larger scope problems and coordinating all these flows in relatively coherent ways is definitely a new experience and a complete change of workflow.
Nathan Cooper retweeted
I've been learning about FastStripe this week, created by @ncooper57 and the @answerdotai team. I created a small demo to teach myself. It's a simple demo with some core building blocks handling things such as one time payments, user sessions/cookies, magic login links, multiple products etc. All in Python! 😀
GH Repo
github.com/DrChrisLevy/fast_…
Blog Post:
drchrislevy.com/blog/
Live Demo:
fast-stripe-demo.pla.sh/
Nathan Cooper retweeted
Aggressively JIT your work. It's not about the task at hand X, it's a little bit about X but mostly about how you should have had to contribute ~no latency and ~no actions. It's digital factorio time.
Nathan Cooper retweeted
PSA for Python asyncio. Many operations in Pathlib are blocking, such as "Path().is_dir". Meaning they will prevent the asyncio event loop from doing anything else until they return.
They are generally *fast*. But if you have a lot of concurrent jobs, you should run them in a thread.
Nathan Cooper retweeted
I built a new Python CLI tool called claude-code-transcripts that can create nice readable HTML versions of your Claude Code sessions, both local and pulled from Claude Code for web, and makes it easy to publish them online too simonwillison.net/2025/Dec/2…
Nathan Cooper retweeted
I've never felt this much behind as a programmer. The profession is being dramatically refactored as the bits contributed by the programmer are increasingly sparse and between. I have a sense that I could be 10X more powerful if I just properly string together what has become available over the last ~year and a failure to claim the boost feels decidedly like skill issue. There's a new programmable layer of abstraction to master (in addition to the usual layers below) involving agents, subagents, their prompts, contexts, memory, modes, permissions, tools, plugins, skills, hooks, MCP, LSP, slash commands, workflows, IDE integrations, and a need to build an all-encompassing mental model for strengths and pitfalls of fundamentally stochastic, fallible, unintelligible and changing entities suddenly intermingled with what used to be good old fashioned engineering. Clearly some powerful alien tool was handed around except it comes with no manual and everyone has to figure out how to hold it and operate it, while the resulting magnitude 9 earthquake is rocking the profession. Roll up your sleeves to not fall behind.




















