LALatent SpaceDec 31, 2025· 17:45

[State of Code Evals] After SWE-bench, Code Clash & SOTA Coding Benchmarks recap — John Yang

John Yang, creator of SWE-bench, explains the benchmark's evolution from an ignored project to the industry standard after Cognition's Devin launch, and introduces CodeClash as a new paradigm for evaluating long-horizon coding agents via programming tournaments. Yang covers SWE-bench's expansion into nine languages (JavaScript, Rust, Java, C, Ruby) and multimodal tasks, the proliferation of independent variants like SWE-bench Pro and SWE-bench Live, and the shift from unit tests to iterative agent competitions. He addresses the Tau-bench controversy over impossible tasks, arguing they serve as cheat detection, and weighs the tension between long autonomy (5-hour runs) and interactivity (Cognition's fast back-and-forth). Yang highlights the academic data problem—companies like Cognition have rich user interaction data, while academics need user simulators or compelling products like LMArena—and positions CodeClash as a testbed for studying human-AI collaboration by freezing model capability and varying interaction setups.

Transcript

Welcome0:00

Host0:03

Light in space like 2025.

Break ups. Light in space like 2025. We're here at NeurIPS with John Yang of SWE-bench and many other things, but welcome.

John Yang0:18

Thanks so much for having me. Yeah, really happy to be here.

SWE-bench Origins0:20

Host0:20

Uh, last year I talked to Ophir and, uh, I think Carlos as well, one, one of your co-authors.

John Yang0:26

Yeah.

Host0:26

How's SWE-bench doing? Like, just, just generally the project is, like, one and a half years old?

John Yang0:32

Yeah, yeah.

Host0:33

Or so.

John Yang0:33

I think one and a half years old in terms of when it was actually useful.

Host0:36

Yeah.

John Yang0:37

You know, we put it out October 22, 23, and then people didn't really touch it too much, and then of course, like, Cognition came on the scene and Devin was an amazing release. And I think after that it kind of kicked off the arms race of-

Host0:49

Did they tell you beforehand or they just showed up?

John Yang0:51

It was... You know, I got an email about, like, two weeks ago. I think it was from, I think it was from Walden. It was like, "Hey, you know, we have a good number on it." I was like, "Wow, congrats, you know, thanks for using it."

And then the release was, like, mind-blowing. I was like, "Wow, these guys did an excellent job."

Host1:06

Amazing. And then SWE-bench Verified was, like, maybe last year.

John Yang1:10

Yes, that's right. Yeah.

Host1:11

Uh-

John Yang1:11

Like-

SWE-bench Variants1:11

Host1:11

Catch us up this year. Like, you have, uh, other languages. You've, uh, there, there's, like, a whole bunch of varieties of SWE-bench now.

John Yang1:18

Yeah.

Host1:18

So what should people know?

John Yang1:19

Yeah, for sure. Um, I think there's a couple extensions that have happened. One is, like, more SWE-benches, SWE-bench Pro, SWE-bench Live, um-

Host1:27

Oh, SWE-bench Pro, was that with you guys? Because it looks independent. It's, like, different authors.

John Yang1:31

It's completely independent, yeah.

Host1:33

So they just called themselves SWE-bench Pro without your blessing?

John Yang1:35

Yeah. I think, uh, I think we're, we're, we're, we're okay with it. Uh, when we came out we were like, "Oh, cool. Interesting." Would've been, you know, fun to be part of it, but you know, I mean, congrats to them.

It's a great benchmark, yeah.

Host1:46

All right.

John Yang1:47

Yeah, yeah.

Host1:47

Uh, but yeah, uh, multimodal.

John Yang1:49

Yeah.

Host1:49

The big one.

John Yang1:49

We did multimodal and multilingual, um, and I think, like, those have- multilingual seems to be the-

Host1:55

Is, is that, is it, like, JavaScripts? What else?

John Yang1:57

Yeah, yeah.

Host1:57

Ruby.

John Yang1:57

Yeah, multilingual is, like, it's, like, nine languages-

Host2:00

Yeah

John Yang2:00

... across, like, 40 repos. But yeah, you got them. Like, JavaScript, Rust, Java, C, you know, Ruby. Yeah, yeah, you got them. Yeah.

Host2:08

And then core SWE-bench itself, a lot of people, like, they, they talk about the, the Django focus.

John Yang2:13

Yes. Django.

Host2:14

Uh, is there- Is, is there, is there, like... I don't know. How do we, how do we move past Django?

John Yang2:19

Yeah, for sure. I mean, it, it's cool to see, um, a lot of the newer benchmarks, like, really try to di- diversify the repos. Like, in the two follow-ups we did with multimodal and multilingual, we made it a point to do that.

So I think-

Host2:31

But you can also just put out SWE-bench 2025 and just-

John Yang2:34

That is true, and do a new distribution. Yeah. Yeah, so it's been cool to see the follow-ups. I think quietly, and, and it's an open question for me, I'm excited to see how people curate the next sets. Like, it's kind of interesting to see in the literature or in their blog posts, like, how they're justifying why they're creating their separate split.

The easier ones were like, "Oh, more languages, more repos." And then I think now people are like, "Well, ours is more difficult because of this curation technique." And I'm, yeah, I, I'm excited to see how, how long that lasts and, you know, where we're gonna, like, guide the evaluations towards.

CodeClash3:08

Host3:08

Yeah. And more recently you're working on CodeClash.

John Yang3:11

Yes, that's right.

Host3:11

Uh, so let's give people... You, you've already done other episode, uh, other podcasts about it.

John Yang3:15

Yeah, for sure.

Host3:15

We'll refer people to, to that with, uh, your chat with Andy.

John Yang3:18

Yeah.

Host3:18

Uh, but just give, like, a people, like, a one, two sentence-

John Yang3:21

Yeah, no, happy to do it, especially on your podcast. It's an honor. Um, yeah, so basically the idea is I don't like unit tests as a form of verification, and I also think there's an issue with SWE-bench where all of the task instances are independent of each other.

So the moment you have the model kind of submit it, oh, it's done, you know, and, a- and that's the end of the story, end of the episode, you know? So with CodeClash, what we're thinking is let's try to really evaluate, like, long horizon development and, uh, development on a code base that is consequential and conditional upon what a model did, you know, before to that code base.

And so the general idea is you have two or more language models and they play a programming tournament, and what that means is each model maintains their own code base. In each round of the tournament, first they get to, like, edit and improve their code base however they see fit, very self-determined.

And then in the competition phase, those two code bases are, are pitted against each other. So the code bases are run and there's generally an arena. You know, we have a lot of diverse arenas, but the arenas determine, like, code base A is better than code base B, and then you kind of repeat that across multiple.

Host4:33

A- as determined by an LLM judge.

John Yang4:34

Yeah. Yeah, so LLM judge is definitely one of the mechanisms. Uh, we started with some pretty, like, simple programming games, so one of the cooler ones is, like, Halite, which, uh, Michael Trulкости-

Host4:45

Oh, yeah, I played it, uh, for Jane Street.

John Yang4:47

Yes. That's right.

Host4:48

Yeah.

John Yang4:48

That's right. You know, that's awesome. Yeah. Halite 1, 2, 3, like, Michael Trul of Cursor wrote this, uh, game.

Host4:55

Two Sigma or Jane Street?

John Yang4:56

Yes. Yes. Oh, oh, Two Sigma.

Host4:57

Two Sigma.

John Yang4:57

Two Sig- It's Two Sigma.

Host4:58

Yeah, I worked at Two Sigma. I'm like-

John Yang5:00

Oh, there you go. Yeah.

Host5:01

This is too long ago.

John Yang5:02

There you go, yeah, 2016 at this point, but we're bringing it back, you know.

Host5:06

Halite is fun. I, I, I would say if you've never done a programmatic competition where you have to control fleets of, uh, ships and attack things and defend things-

John Yang5:14

Yeah

Host5:14

... and collect resources-

John Yang5:16

Yeah

Host5:16

... it's like y- play StarCraft, but you can code, right?

John Yang5:18

Yeah, exactly.

Host5:19

Right.

John Yang5:19

Exactly. Yeah, yeah.

Host5:21

A lot of games.

John Yang5:22

Yeah.

Host5:22

Is there... Are there non-games or are you focusing games?

John Yang5:25

No, I think that's an excellent point. So for kind of the initial release for scientific purposes, we kind of used existing programming games. Uh, the current ongoing effort is, you know, to build economically valuable arenas. That's, you know, the popular word these days, so this-

Host5:40

Yeah, SuiteLancer is a big one this year.

John Yang5:42

Yeah. GD- GDPeval-

Host5:43

GDPeval

John Yang5:43

... is awesome. Yeah, just, uh, I mean, I think the big selling point of Terminal-bench and SWE-bench and these evals is that it was really close to real world utility, and so I think it's resolvable for CodeClash, and that's what we're working on.

Yeah.

Host5:57

Okay.

John Yang5:57

Yeah.

Host5:58

Um, so you're part of, uh, Ophir's group.

Group Benchmarks5:58

John Yang6:00

Yes.

Host6:01

Um, the other students have also been putting out a lot of other stuff. Uh, what would you highlight?

John Yang6:05

Yeah, no, I mean, Ophir is such a prolific mentor when it comes to benchmarking. SWE-efficiency I really like in the line of-

Host6:11

Yeah

John Yang6:12

... performance optimization.

Host6:12

What's the TLDR on that one?

John Yang6:14

Yeah, for sure. Um, so SWE-efficiency was wrote by this PhD student called Jeffrey Ma, who happened to be my high school classmate, and the idea there was, like, you take a code base and you just want to, you know- Do modifications that will literally make the code run faster.

So I think this is like paralyzation, SIMD operations, stuff like that. Yeah.

Host6:32

So, so no, no behavior change, just faster.

John Yang6:35

Exactly.

Host6:36

Okay.

John Yang6:36

Keep the unit test passing, but I want better runtime.

Host6:39

Okay.

John Yang6:39

Yeah, yeah. And then, and then there, there's AlgoTune that is kind of in line with that, and then there's also kind of pushing along like the scientific coding domain, uh-

Host6:49

SciCode.

John Yang6:50

Yeah, exactly.

Host6:50

Which is like-

John Yang6:51

SciCode 2 is awesome. They did like a quick-

Host6:54

And, and for, for people, SciCode is... My, my- The way I explain SciCode is it's human eval but better.

John Yang6:59

Yes, exactly. Exactly. I think, you know, there's a lot of good stuff that these days where, yeah, that's, that's the way to go.

Host7:05

Which is like SWE-bench is expensive to run. Any agentic benchmark is expensive to run.

John Yang7:09

Yeah.

Host7:10

Actually, you do need some completions benchmarks-

John Yang7:12

Yeah

Host7:12

... that just, just, just complete.

John Yang7:13

Exactly. Like, you know, you can do well on those first and then sort of graduate to the multi-turn expensive stuff. Yeah, yeah.

2025 Trends7:20

Host7:20

Uh, okay. Other than that, just like broadly other work in the field in 2025-

John Yang7:25

Yeah

Host7:25

... in terms of coding evals, um, obviously we shot up Meter. They use SWE-bench, and they have a very interesting like, I guess human hours worked number.

John Yang7:34

Yeah. They like the X-axis being sort of the runtime and the- or yeah, Y-axis being the completion. You know, like we can do more long-running SWE-agent tasks. Yeah, I think the projections are, are quite interesting and I definitely appreciate them kind of using SWE-bench Verified to, to sort of proxy a lot of these things, but yeah, they're great.

Yeah.

Host7:53

Okay.

John Yang7:53

Yeah.

Host7:53

Any other work that like caught your eye this year?

John Yang7:55

That's kind of... Yeah, I mean, I, I think within the co- okay, Terminal-bench, SWE-bench, uh, yeah, Critical Point was kind of cool. Um-

Host8:02

Critical Point?

John Yang8:03

Yeah. The, it's like a very new benchmark that, uh, Ophir did. Um, and I think it's kind of related to physics. Um, there's this one called SecBench, kind of related to cyber-

Host8:12

Security

John Yang8:12

... security. Yeah, exactly. SRE-bench, which I, I think is affiliated with LOD. Like it's just cool to kind of see people really dive into different coding domains. And then stepping a little bit outside of coding, um, I personally think it's quite interesting to think about the user simulator stuff.

So like Tau-bench-

Host8:29

Vending Bench

John Yang8:30

... Tau-bench too. Yeah, and Vending Bench and-

Host8:32

I, I got mixed feelings. Uh-

John Yang8:34

Yeah. No, I'm interested.

Host8:35

Well, I mean, it's, it's like, it's like you're sampling one path. I, I don't know how realistic it is, to be honest.

John Yang8:40

Yeah.

Host8:40

It's, it's just the reality is, but it is cool.

John Yang8:42

No, for sure. Yeah, I agree. I, I think it's a good initial effort. Um, to me, I think it's super cool to see companies like, you know, I'm sure Mercora and stuff are focusing on building environments like for code, beyond code, and so I think it, it might be interesting to have like work gym style stuff.

This is stuff that my advisor, Di Yang at Stanford thinks about a lot, so yeah.

Host9:03

Yeah.

John Yang9:03

Yeah.

Host9:04

I just realized we ha- we're talking about Terminal-bench-

John Yang9:06

Yes

Host9:06

... in front of the author.

John Yang9:07

We have the author.

Host9:07

Folks.

John Yang9:08

Yeah, yeah.

Host9:09

Uh, you know, really, really, really good work, uh, just overall. Um-

John Yang9:12

Thank you.

Host9:12

Yeah.

Tau-bench9:12

John Yang9:12

Yeah.

Host9:12

Let's talk about Tau-bench-

John Yang9:14

Yeah

Host9:14

... uh, because you mentioned Tau-bench.

John Yang9:15

Yes, yes.

Host9:16

Uh, there's some discussion or some people are saying that Tau-bench is, uh, impossible to get a high score on-

John Yang9:24

Mm

Host9:24

... because some of the tasks are under-specified or just impossible.

John Yang9:28

Yeah.

Host9:29

I don't know if you're up to speed on that.

John Yang9:30

I'm a little bit-

Host9:31

It's a little spicy

John Yang9:32

... feed. Yeah, it's a bit spicy. I think I saw, so I, you know, for co- like I worked with Xunyu and Karthik back in Princeton very closely, and I think Karthik I just saw posted a tweet kind of, um-

Host9:42

Defending it

John Yang9:43

... yeah, like rebutting some of these claims. Um, yeah, I mean, it, it's-- I, I think I get the concern. Um, but yeah, I think it, it also brings up just maybe like interesting research problems to solve of like, okay, like why is it impossible?

Is it the ambiguity? Is it kind of the user simulator that has issues? And I think generally we all agree that, you know, we'll improve on these things over time for evals.

Host10:05

So I actually really like benchmarks that intentionally, uh, I think we should intentionally include impossible tasks-

John Yang10:10

Mm-hmm

Host10:10

... as a flag-

John Yang10:11

Yeah

Host10:11

... of like, "Hey, you're cheating."

John Yang10:13

Yes.

Host10:13

It's kind of sad that like Karthik actually is defending it because the master move would be like, "Oh yeah, you caught us." Like that, that, that was, uh, you know, like everyone reporting above 75 on Tau-bench Retail, uh, you've been cheating.

John Yang10:24

Yeah. Oh, interesting. That would be, that'd be cool. Yeah. I mean, yeah, you'll have to ask the Tau-bench authors, but yeah, no, that, that's, that's fun. Um, yeah, I, I think there was, uh, ImpossibleBench was a recent benchmark, uh, maybe from...

Was it from Anthropic? I don't know. But they basically took SWE-bench Verified and they changed the issues to make them impossible and they checked like how often the models would be like, "I actually just can't do this. I don't know what's going on."

Host10:50

Oh, like for refusals?

John Yang10:51

Yes, yes, yes. So-

Host10:53

Oh, how did they do?

John Yang10:53

I thought that was interesting. I think they're all, the models are all kind of attempting and saying like, "Oh, I did it," you know? So maybe not great on that front.

Host11:00

That's cool. But no, that, that, that's a, that's an important one.

John Yang11:02

Yeah.

Host11:03

Um, how does coding evals evolve next year?

Future Evals11:03

John Yang11:05

Wow, that's a great question. I mean, honestly, I think, I think it's people will make more SWE-benches. Um, I think Terminal-bench has really got something going where you, you, you ask people to... You know, with SWE-bench you're, you're confined in some sense to the domain of issues and PRs that already exist, um, wh-which I think has its benefits of being close to reality and natural.

But I think with Terminal-bench there's a lot of creativity that you can infuse into that. So I would personally be really excited, like the 2.0 job was really excellent and I'd be super excited to see, you know, 3.0, 4.0.

Host11:36

Be-because of like the environments-

John Yang11:38

Yeah

Host11:38

... angle?

John Yang11:38

I mean, the environments, you know, bringing more people into the fold. You know, I think, correct me if I'm wrong, Mike, but early on you had PhD students, very smart CS people who are adding tasks and, you know, what does that look like when you fold more coding environments for non-coding tasks, non-coding environments in general, and ask people to make stuff there.

So that's pretty cool. And then of course for myself, I think just like this long-running SWE-agent kind of thing just feels very compelling. I think the vision of like, "Hey, I tell it a goal. I don't have to be super specific about my task.

I have like a decent verifier that proxies what I want." Something literally like a code base that makes the most money in this like setting, you know? Like that's my verifier, you know? And I walk away for five hours.

The thing is just running. I'm hanging out with you, talking to my friends. I come back and it gives me like literally a soda code base on, on, on that, you know, task. I think that would be super cool.

Host12:34

Okay, I'll push back. We're part-time Incognition.

John Yang12:36

Yes.

Host12:36

And we are, uh- Emphasizing a lot of interactivity.

John Yang12:40

Mm.

Host12:41

Because the, the point is that you're going to underspecify, right?

John Yang12:45

Right.

Host12:45

And actually what people want is back and forth, back and forth and on like a really-

John Yang12:49

Mm

Host12:49

... fast timeframe, which is terrible for a benchmark author. Right?

John Yang12:53

Yes.

Host12:53

'Cause how are you gonna do that?

John Yang12:54

Yeah, yeah.

Host12:55

Uh, but, but realistic.

John Yang12:57

Yeah.

Host12:57

So, um, I, I think, like, the, this, uh, this, this is where I, I'm a little bit an- anxious or cautious about this push for long autonomy.

John Yang13:05

Right.

Host13:05

We're gon- I mean, you know, let's say this time next year we'll have... Five hours is, is pessimistic. Like-

John Yang13:11

Yeah

Host13:11

... it'll be, it'll be 24.

John Yang13:12

It'll be long. Yeah, right. Days. Yeah.

Host13:13

Um, but I don't know if that actually materially changes the industry.

John Yang13:18

Mm.

Host13:18

So we approach it, like, as in evals, you know, we have the people, people who make evals here.

John Yang13:23

Yeah.

Host13:23

We push the industry in ways that we want it to push, but I don't know if we... Like, that's a productive way because that's more of like a, a stunt that, that like, yeah, it's a proof of concept that prove- existence proof.

It can be done.

John Yang13:35

Yeah.

Host13:36

But will you use it-

John Yang13:37

At, in practice

Host13:38

... for real life?

John Yang13:39

Yeah. Yeah. I mean, honestly, um, to me, I think there's, there's potentially room for growth, so I, I would actually agree with y- your take here. Um, I mean, uh, with my lab at Stanford with D, like, there's a...

You know, her emphasis is on human AI collaboration. And so I, I definitely don't believe in this idea of just kind of getting rid of the human. Um, but yeah, maybe just, like, finding the balance of, like, you know, just because the developer ecosystem is so diverse and there's so many participants in it who want different things out of it, like just enabling different levels of abstraction.

Um, and you know, it depends on the task. Like, there's settings where you wanna be, you know, more involved and more sort of hands-on, and so you wanna use Windsurf for that. But then maybe there's kind of this general data processing thing.

It's just a lot of JSON parsing you don't really care about, and that's the one I kind of wanna walk away from and just let it figure it out.

Host14:29

Yeah.

John Yang14:29

Um, so yeah, I, I would agree with you generally.

Call to Action14:31

Host14:31

Yeah. Amazing. Any call to action? What, what do you want help on? How can people, uh, I guess, like, find more of your work?

John Yang14:38

Definitely. For the call to action, super jealous of all the great data that Cognition and, you know, Cursor would get. Like, that user-entered action data is, like, really fascinating. From an academic standpoint, it feels like there's two difficult approaches to resolving that.

Either you build, like, a really compelling product like LMArena that people have people use consistently, whi- which is, I mean, really tricky in and of itself, or you build, like, really good user simulators that try to mimic sort of these settings.

Uh, but that is also, like, non-trivial. I don't think it's as simple as, "Hey, ChatGPT, act like a human," right?

Host15:13

Yeah.

John Yang15:13

So it would be really cool to sort of get inspiration of like what exactly does that data look like or, or between the two, like what's the best way to scale up sort of evaluating human AI interaction. And then I think for visibility for my own work, pushing more arenas.

Like I think for, for CodeClash, what I'm excited about is the current framing is really long-running SWE agents, but you know, you could have multi agents, like two agents work together on the code base-

Host15:41

Mm

John Yang15:41

... and what happens. You have a human and an agent work on the code base versus just AIs. What happens there? You know, like when the models improve and hopefully they hill climb and they become better at digesting logs and iterating on analysis, you know, how does, how does human AI interaction like change with model capability?

Um, and so I'm kind of hoping, you know, I'm trying to inspire and, and, and convince people that the... it's a very cool test bed where you can do a lot of different sort of combinations of like human AI on different arenas, playing one arena at a time, N arenas at a time, you know.

I just, you know.

Host16:17

Yeah. I think very interested to work with you on, on the interaction stuff.

John Yang16:19

Oh, that would be awesome. Yeah.

Host16:21

Um, and then I, I think, uh, one, one more thing I'll add is for Cognition, uh, is we're gonna be pushing a lot of code-based understanding, which is kind of-

Cognition's Push16:21

John Yang16:28

Yeah

Host16:28

... code-based retrieval plus plus.

John Yang16:29

Yes.

Host16:30

And mostly it is helping, um, humans understand their own code bases better to enable humans-

John Yang16:36

Yeah

Host16:37

... or to, to sort of mind meld the human with the machine, uh, to do the highest possible task that LLMs cannot do alone, humans couldn't, couldn't do alone. And then the other thing is also au- like basically automatic context engineering for an LLM.

So that, that, that is like sort of like a research sub-agent, uh, that we're, that we're working on.

John Yang16:55

That's so awesome.

Host16:56

Um-

John Yang16:56

Yeah

Host16:56

... so I, I don't know what the benchmark would be 'cause like how do you, how do you benchmark understanding?

John Yang17:00

That is true.

Host17:02

Uh, apart from... I think like just, yeah, it's als- mostly like you freeze a repo, um, have some manually curated answers and then, you know, pose trivia questions. That's very easy to saturate, so I don't know how else to-

John Yang17:13

Yeah. I think, um, I, I think Silas tweeted a while ago, like sort of like the, the wiki, the code wiki stuff-

Host17:18

Yes

John Yang17:18

... set up. That's incredible. I mean, I, I use that on a daily basis.

Host17:21

Yeah. With, with, uh, Google actually just, uh, came out with their own version.

John Yang17:23

Oh.

Host17:24

Yeah.

John Yang17:24

Yeah, with the, the anti-gravity people that's-

Host17:26

Uh, no, no, no. This is like a separate-

John Yang17:28

Separate team.

Host17:28

Yeah, yeah.

John Yang17:29

Gotcha. Gotcha.

Host17:29

Um-

John Yang17:29

Yeah

Host17:30

... but cool. That's the State of Code.

John Yang17:32

Yep.