New releaseThe Anthropic Book ↗

19 chapters  ·  corpus-verified  ·  audio narration

CONTEXT JAMMING

Field notes from inside the context window.

Hire
Share

FounderFiles·N°070·Reinforcement Learning · Post-Training · Alignment

2015 —

Fig. · The finisherPortrait forthcoming

Subject·John Schulman·Co-founder & Chief Scientist, Thinking Machines Lab · Co-founder, OpenAI · Author of PPO

John Schulman

John Schulman built the cheap, default way to make a model behave, and he keeps changing institutions so that he never has to change the problem.

He wrote TRPO as a Berkeley PhD student and PPO as an OpenAI co-founder, and in between he traded a proof for a clipping function. The algorithm went inside ChatGPT, whose post-training he led. He says he gets too much credit for it. Within six months he left OpenAI for Anthropic and Anthropic for Mira Murati’s Thinking Machines Lab, where he is chief scientist. The moves look restless. The work has not moved at all.

TRAINED
Caltech · Berkeley (PhD, 2016)
AT
Thinking Machines Lab · Chief Scientist
FILE
N°070
§ 01 · The Detour

Physics, neurons, and a length of rope

He studied physics at Caltech and graduated in 2010. Five years earlier he had made the U.S. Physics Olympiad team. [single-source] He went to Berkeley and spent what his own homepage calls a brief stint in neuroscience. Then he switched to computer science, and to the robotics lab of Pieter Abbeel.

Abbeel’s lab had a goal. Robots should handle floppy things: surgical robots tying sutures, household robots folding laundry. Schulman’s share of that goal was a PR2 research robot and a piece of rope. The plan was to teach the robot to tie knots by watching people tie them.

Knots need motion. The arm has to get from here to there without hitting itself, the table, or the rope it is holding. That is a trajectory-optimization problem, and it was not the point of the project. He solved it anyway. In his 2020 essay on research method he records the result without ceremony: the subproblem ended up being the most influential product of the knot-tying project.

Halfway through the PhD he changed goals. He wanted a simulated 3D robot to learn to run from scratch, using reinforcement learning rather than a hand-designed controller. He kept domain tricks to a minimum: a little feature engineering, a little reward shaping, nothing that touched the algorithm. The point, he wrote, was to get locomotion in a way that was general and could be applied to other problems. Legs were the test, not the prize.

He also kept a notebook. One entry a day, a review every week or two, ideas and plots condensed into findings, insights, code progress and next steps. He kept it up through five years of grad school and two at OpenAI. It is the least glamorous fact in this file and probably the most predictive.

Keep the shape of the knot-tying project in mind. A goal, a subproblem nobody asked for, and the subproblem outlives the goal. It happens to him at least three more times.

§ 02 · The Trust Region

Going the other way on Atari

While he was getting his first locomotion results, DeepMind showed a deep Q-network learning to play Atari from pixels. The field turned toward it. In his own account, many people jumped on the bandwagon and set about building better Q-learning for better Atari scores.

Schulman had already tried Q-learning on locomotion. He had decided it was the wrong tool. He stayed with policy gradients, which he picked because they seemed most amenable to understanding and mathematical analysis, and because optimization was what he was best at.

On February 19, 2015, he posted Trust Region Policy Optimization with Sergey Levine, Philipp Moritz, Michael I. Jordan and Abbeel. The trouble with policy gradients is step size: too small and nothing happens, too large and the policy falls apart. TRPO limits each update to a trust region, a bound on how far the new policy can drift from the old one. It derives a guarantee of monotonic improvement and then approximates its way to something practical. The abstract is honest about the gap: TRPO works despite its approximations that deviate from the theory.

On June 8, 2015, came Generalized Advantage Estimation: use a learned value function to cut the variance of the gradient, at the cost of some bias. Simulated bipeds and quadrupeds learned to run. A biped learned to stand up off the ground. The simulated experience amounted to one to two weeks of real time.

That December he co-founded OpenAI, before he had finished his degree. The thesis followed on December 16, 2016: Optimizing Expectations: From Deep Reinforcement Learning to Stochastic Computation Graphs. Its last chapter treats reinforcement learning as one case of a more general problem, taking the gradient of an expectation.

The field ran toward Atari. He ran toward a stick figure trying to get up off the floor. The stick figure won.

§ 03 · Two Lines of Code

PPO, or the guarantee traded away

TRPO worked, but it was heavy. It solved a constrained second-order problem at every update. OpenAI’s own write-up later named the practical cost: TRPO was not easily compatible with architectures that share parameters between the policy and the value function, or that add auxiliary losses. Those were exactly the architectures people wanted for pixel inputs.

On July 20, 2017, Schulman posted Proximal Policy Optimization Algorithms with Filip Wolski, Prafulla Dhariwal, Alec Radford and Oleg Klimov. The trust region became a clip. Compute the ratio of new to old action probabilities, cap it inside a narrow band, take the more pessimistic of the clipped and unclipped objectives, and run several epochs of ordinary minibatch gradient ascent on the same data. The band’s width, epsilon, was usually 0.1 or 0.2.

The abstract claimed some of TRPO’s benefits while being much simpler to implement, more general, and better on sample complexity, empirically. OpenAI’s post that day went further. PPO had already become the default reinforcement learning algorithm at OpenAI because of its ease of use and good performance.

Five months later he wrote an advice essay for the OpenAI Fellows program, published on his site in 2020. It contains the rule. A method that only slightly beats the baseline had better be very simple, or nobody will use it, not even its author. A 10 percent gain is worth two lines of code. A 50 percent gain can have ten.

PPO is that rule applied to his own thesis. TRPO was the theorem. PPO gave up the theorem for a clip function that was correct enough and cheap enough, and that is why it ended up everywhere.

“If it gives a 10% improvement, it better be 2 lines of code.”
Schulman, An Opinionated Guide to ML Research, 2020
§ 04 · The Chat Branch

WebGPT, a sidelined prototype, and November 30

He was not an early convert to language models. After GPT-2, he told Dwarkesh Patel in 2024, he wasn’t completely sold on it being revolutionizing everything. After GPT-3 he moved himself and his team over.

The first project was WebGPT, posted December 17, 2021: a GPT-3 that answers questions by browsing the web, trained with human feedback. It taught him something about format. Question answering, he said later, really wants to be in a chat. You want follow-ups. Sometimes the model should be the one asking a clarifying question.

So the next version was a conversational assistant, built on GPT-3.5, which finished training in early 2022. It went out to friends and family. Then GPT-4 finished training in August, and the company’s flagship RL effort, instruction following, got the new model first. People forgot about chat for a little while, he said. The team kept going, and eventually mixed the instruction and chat data together.

The method was already public. Training language models to follow instructions with human feedback, the InstructGPT paper of March 2022, lists twenty authors, Schulman and Paul Christiano among them. On November 30, 2022, OpenAI’s launch post for ChatGPT described the recipe in one plain sentence: train reward models from ranked comparisons, then fine-tune the model using Proximal Policy Optimization.

What surprised him was how much the chat frame fixed by itself. Complete this text, but in a nice or helpful way is a badly defined task for a model and for a labeler. A helpful robot in a conversation is not. Everyone already knows what one should act like. Hallucination, he decided, was not a law of nature. It responded to straightforward methods.

The knot-tying pattern again. WebGPT was the goal. The chat interface was the subproblem. The subproblem became ChatGPT, and the algorithm under it was the one he had written for a running stick figure.

§ 05 · Too Much Credit

The note to colleagues

From 2022 to 2024 he co-led OpenAI’s post-training team, which built the models behind ChatGPT and the API. In May 2024 Ilya Sutskever left the company, and so did Jan Leike, who co-led superalignment. Press accounts had Schulman taking on OpenAI’s alignment work after Leike went. [single-source]

On August 6, 2024, he posted the note he had sent his colleagues. He had made the difficult decision to leave OpenAI. He wanted to deepen his focus on alignment and return to hands-on technical work. He would do it at Anthropic. Then he ruled out the obvious reading: he was not leaving for lack of support for alignment research at OpenAI. The leaders, he wrote, had been very committed to it.

The middle of the note is a list of other people’s names. Post-training had a deep bench. Barret had built the team into what it was, with Liam, Luke and others. OpenAI was, he wrote, the first and only company where I’ve ever worked, other than an internship. He had been there almost nine years.

At Anthropic he joined the Alignment Science team at Dario Amodei’s company, where the chief science officer, Jared Kaplan, had also come from OpenAI. It lasted about six months. In early February 2025 Anthropic confirmed he had gone. Kaplan said he was sad to see John go and supported his decision. Schulman, as reporters noted at the time, said nothing in public about why.

The note is that rare thing, a resignation letter that tries to give credit away. The tier list took it back and filed him under AI owes them a big favor. He had already turned down the invoice.

“I get too much credit for ChatGPT.”
Schulman, note to OpenAI colleagues, posted on X, August 6, 2024
§ 06 · Thinky

The lab that sells the finishing layer

On February 18, 2025, Mira Murati launched Thinking Machines Lab. Murati was CEO, Barret Zoph was CTO, and Schulman was chief scientist. In July it closed a $2 billion seed round at a $12 billion valuation, led by Andreessen Horowitz. Reporting on the deal said Murati holds unusual voting control over the company. [single-source]

One of the lab’s early research posts, under Schulman’s name, was not about frontier models. LoRA Without Regret, September 29, 2025, asked how much of a large network you actually need to touch to post-train it. Very little, it turned out, if you choose the layers and the learning rate correctly. Two days later the lab announced its first product, Tinker: an API for fine-tuning open-weight models, where the customer keeps the algorithm and the data and the lab runs the distributed training.

Then the founding team started moving. In January 2026 Zoph was out, and he went back to OpenAI with co-founders Luke Metz and Sam Schoenholz. PyTorch co-creator Soumith Chintala became CTO. Schulman stayed. OpenAI’s chief-scientist job had gone in 2024 to Jakub Pachocki. Schulman already had one.

In March 2026 Nvidia invested and committed to at least a gigawatt of Vera Rubin systems for the lab. In May, Schulman introduced its research on interaction models with a line about why the company exists: to advance human-AI collaboration, which he called underemphasized relative to intelligence/autonomy because they’re harder to eval. In July came Inkling, an open-weight mixture-of-experts model with 975 billion parameters, 41 billion of them active. In September the lab was reported to be in talks to raise at roughly $40 billion. [single-source]

At OpenAI he post-trained one company’s model. At Thinking Machines he rents post-training out to everyone. This time the detour became the business model.

§ 07 · One Bit Per Episode

The smallest favor

Buried in LoRA Without Regret is an information-theory argument that reads, in hindsight, like a description of his career. Supervised learning gives a model roughly as many bits per episode as there are tokens. A policy-gradient method gets one reward at the end, so it learns from the advantage function, which carries only O(1) bits per episode. RL absorbs about a thousand times less information per token. That is why a rank-1 adapter, the smallest possible, matched full fine-tuning in the lab’s RL experiments.

The algorithm the field credits him with, the layer between a base model and a product, learns about one bit per try. It does not teach the model much. It changes which way the model leans.

The field has already broken it down for parts. In February 2024, DeepSeekMath introduced GRPO, a variant of Proximal Policy Optimization, which drops the learned critic. That is the value function GAE was invented to train. The clip survived. Half of his best-known work went into the frontier recipe, and the other half was optimized away. That is exactly what his two-lines-of-code rule would predict.

The meme sets his tier below existence and royalties, at a big favor. That is the right unit. A favor is small and specific, and it decides the outcome. One bit, pointed the right way.

Then there is the job record. His own essay says the common failure is switching problems too often. He then touched three labs in roughly six months. The contradiction goes away once you list the problems. Policy gradients on a stick figure. Policy gradients on a chatbot. Policy gradients on a rank-1 adapter. Interaction models that learn what they actually want. It is one problem: getting a model to do what people mean from very little signal. See where he sits on the annotated tier list.

He changes institutions so that he never has to change the problem.

The labs are the variable. The problem is the constant.

“In my experience, switching problems too frequently (and giving up on promising ideas) is a more common failure mode than not switching enough.”
Schulman, An Opinionated Guide to ML Research, 2020
Timeline
  • 2010Caltech — B.S. in physics.
  • Feb 2015Berkeley — Trust Region Policy Optimization posted to arXiv, with Levine, Moritz, Jordan and Abbeel.
  • Jun 2015Berkeley — Generalized Advantage Estimation posted to arXiv.
  • Dec 2015OpenAI — co-founds the lab, before finishing his PhD.
  • Dec 2016Berkeley — PhD thesis, Optimizing Expectations; advisor Pieter Abbeel.
  • Jul 2017OpenAI — Proximal Policy Optimization released; becomes the lab’s default RL algorithm.
  • Dec 2021OpenAI — WebGPT, browser-assisted question answering with human feedback.
  • Mar 2022OpenAI — InstructGPT paper; Schulman among twenty authors.
  • Nov 2022OpenAI — ChatGPT launches, fine-tuned with PPO; co-leads post-training 2022–2024.
  • Aug 2024Anthropic — leaves OpenAI to join the Alignment Science team.
  • Feb 2025Thinking Machines Lab — leaves Anthropic; named co-founder and chief scientist.
  • Oct 2025Thinking Machines Lab — Tinker fine-tuning API announced.
  • Jan 2026Thinking Machines Lab — CTO Barret Zoph returns to OpenAI; Soumith Chintala named CTO.
  • Jul 2026Thinking Machines Lab — Inkling, a 975B-parameter open-weight model, released.
The Index
0.2
Typical width of PPO’s clip, epsilon — “usually 0.1 or 0.2” (OpenAI, 2017)
2
Lines of code a 10% improvement is worth, by his own rule
~9
Years at OpenAI, “almost 9 years,” in his August 2024 note
1
Company he had worked for before Anthropic, “other than an internship”
~6
Months at Anthropic, August 2024 to February 2025
$12B
Thinking Machines Lab valuation on a $2B seed round, July 2025
975B
Parameters in Inkling, 41B active, July 2026
O(1)
Bits per episode a policy-gradient method learns, per his LoRA post
Dossier

Education. Great Neck South High School; U.S. Physics Olympiad team, 2005. [single-source] California Institute of Technology (B.S., physics, 2010). A brief stint in neuroscience at UC Berkeley, then UC Berkeley EECS (Ph.D., computer science, 2016; thesis: Optimizing Expectations; advisor: Pieter Abbeel).

Affiliations. OpenAI (co-founder, December 2015 to August 2024; led the reinforcement learning team; co-led post-training, 2022 to 2024). Anthropic (Alignment Science, August 2024 to February 2025). Thinking Machines Lab (co-founder and chief scientist, February 2025 to present).

Collaborators. Pieter Abbeel, Sergey Levine, Philipp Moritz and Michael I. Jordan (TRPO, GAE). Filip Wolski, Prafulla Dhariwal, Alec Radford and Oleg Klimov (PPO). Long Ouyang, Jeff Wu, Paul Christiano and the InstructGPT team. Barret Zoph, whom he credited with building ChatGPT’s post-training team. Mira Murati (Thinking Machines Lab CEO).

Honours. MIT Technology Review 35 Innovators Under 35, Pioneer, 2018. UC Berkeley Mark Bingham Award for Excellence in Achievement by Young Alumni, 2025.

File. Tier on the Context Jamming annotated list: AI owes them a big favor. Online at joschu.net and @johnschulman2. Current title confirmed on his homepage, retrieved November 2, 2026.

Career Shape
T-shaped — one spike opened into broad collaboration

T-Primitive Builder

Opens one engineering spike into a product primitive that becomes the category; ships the thing, then watches the market form around it.

Credential Path
Doctoral
Abstraction
Balanced
Exit Horizon
Compounding
Moat Instinct
Optimization + systems
Capital Posture
Compute-intensive
Role-Model Reference Class
  • Pieter Abbeel (PhD advisor)
  • Richard Hamming (You and Your Research, recommended in his research guide)
  • Michael Nielsen (Principles of Effective Research, recommended in his research guide)
Founder Context · JSON

A small reasoning persona distilled from this file. Inject it into a chat or deep-research context to assess a business problem the way Schulman would.

Reason like John Schulman: pick a concrete goal that differs from what the rest of the field is chasing, and solve it with methods general enough to transfer. Treat complexity as a cost: a small improvement must be nearly free to implement, so prefer the simple approximation people will actually run over the elegant guarantee they will not. Keep a notebook, review it weekly, and resist abandoning ideas too early. Remember that RL and post-training move models with very little information, so aim the signal carefully rather than adding more of it.

{
  "$schema": "https://www.contextjamming.com/schemas/founder-context-v1.json",
  "file": "N°070",
  "persona": "John Schulman",
  "archetype": "t-primitive",
  "shape": "T",
  "one_line": "An RL optimizer who took one deep spike, policy gradients, and turned it into the default primitive for making models behave (TRPO to PPO to ChatGPT to Tinker), always trading theory for the simplest version people will actually use.",
  "cognitive_basis": {
    "credentialPath": "doctoral",
    "abstractionDirection": "balanced",
    "exitHorizon": "compounding",
    "moatInstinct": "optimization-and-systems",
    "capitalPosture": "compute-intensive"
  },
  "operating_questions": [
    "Is this a 10% improvement or a 10X improvement?",
    "If the gain is small, is the method simple enough that anyone, including me, will bother using it?",
    "Am I choosing a different goal from the rest of the co
  …
Share
FounderFiles N°070 · John Schulman
Filed by Bret Kerr · ACRA Insight LLC · Franklin, MA
contextjamming.com · @bretkerr
← back to Context Jamming