Live data from Hacker News

Interview with Boris Cherny [video]

youtube.com

21–30 of 87 posts

Re: Interview with Boris Cherny [video]

#21
post #3

The TL;DR of the fragment at around 6:57 in the video, for those who don't want to watch, is that Boris recommends to delete all the customizations, CLAUDE.md, skills, and other stuff you had for older models, and try using the new models without all that, because the new models can surprise you.

Steering/corrective instructions are now supposed to go into memories - which are non-portable? How do we manage these documents for team members without everyone repeating themselves? And if you remove all these documents, how do you work with other models which might use them (nevermind that claude ignored AGENTS.md for the longest time). I am on board with not putting stuff like "write clean code" into an agent fi…

> Steering/corrective instructions are now supposed to go into memories - which are non-portable?

I’m sure this just intended to steer you to vendor lock-in. Remember, these are the same people who are so insecure/petty about their product that they won’t make it recognize the .agents/AGENTS.md standard.

Re: Interview with Boris Cherny [video]

#22
post #18

Earlier quoted context omitted.

> Like why isn't there a 'move this function from this file to this file' tool (copy/paste char range) There is, you can install LSPs for a given language which act as just another tool the model can use to more efficiently manipulate code.

LSPs don't really do this. They're like a better way to grep for something (so they do address the previous thing I said about listing all function names etc.) But they often don't say (depending on the particular LSP setup etc) this function ends at this char and they definitely don't then provide the text editing tool

This is not accurate. Most LSPs do provide text editing tools, which the Language Server Protocol calls "code actions". These actions do things like: reorganizing imports, expanding macros, extracting a selection into a function, or converting one type of control flow into another (e.g. if to match). Common LSPs, like rust-analyzer and Ruff (Python) support code actions. Editors also expose code actions: Zed, for instance, exposes actions under the default keymap with the binding Command + .

source: https://microsoft.github.io/language-server-protocol/specifi... and https://microsoft.github.io/language-server-protocol/specifi...

Re: Interview with Boris Cherny [video]

#23
post #18

Earlier quoted context omitted.

LSPs don't really do this. They're like a better way to grep for something (so they do address the previous thing I said about listing all function names etc.) But they often don't say (depending on the particular LSP setup etc) this function ends at this char and they definitely don't then provide the text editing tool

This is not accurate. Most LSPs do provide text editing tools, which the Language Server Protocol calls "code actions". These actions do things like: reorganizing imports, expanding macros, extracting a selection into a function, or converting one type of control flow into another (e.g. if to match). Common LSPs, like rust-analyzer and Ruff (Python) support code actions. Editors also expose code actions: Zed, for ins…

Come on what are we talking about. Ruff is a linter. Can you show me any LSP server that can move an arbitrary function from file1.ts to file2.ts based on calling it on the command line?

Re: Interview with Boris Cherny [video]

#24
post #3

The TL;DR of the fragment at around 6:57 in the video, for those who don't want to watch, is that Boris recommends to delete all the customizations, CLAUDE.md, skills, and other stuff you had for older models, and try using the new models without all that, because the new models can surprise you.

That is the interesting part to me. Also, was anyone else familiar with the LLM-app terms "ablation" and "product overhang," prior to this? I was not.

If you were, please share the knowledge with us. Where can I learn more?

Re: Interview with Boris Cherny [video]

#25
post #6

I don't get why Anthropic keeps saying how cool it is that they were able to rewrite bun in rust, I feel like if the model is really that good you wouldn't need a rewrite, you'd be able to create the runtime from scratch.

Rust is a great tool for what they did with Bun. Why make a whole new tool when existing off the shelf tools can do the job?

Re: Interview with Boris Cherny [video]

#26
post #23

Earlier quoted context omitted.

This is not accurate. Most LSPs do provide text editing tools, which the Language Server Protocol calls "code actions". These actions do things like: reorganizing imports, expanding macros, extracting a selection into a function, or converting one type of control flow into another (e.g. if to match). Common LSPs, like rust-analyzer and Ruff (Python) support code actions. Editors also expose code actions: Zed, for ins…

Come on what are we talking about. Ruff is a linter. Can you show me any LSP server that can move an arbitrary function from file1.ts to file2.ts based on calling it on the command line?

I've had decent results telling agents to use emacs for structural editing operations. Pretty rare that I need to move a function across files verbatim but that should only be a few extra lines of elisp.

Re: Interview with Boris Cherny [video]

#27
post #23

Earlier quoted context omitted.

This is not accurate. Most LSPs do provide text editing tools, which the Language Server Protocol calls "code actions". These actions do things like: reorganizing imports, expanding macros, extracting a selection into a function, or converting one type of control flow into another (e.g. if to match). Common LSPs, like rust-analyzer and Ruff (Python) support code actions. Editors also expose code actions: Zed, for ins…

Come on what are we talking about. Ruff is a linter. Can you show me any LSP server that can move an arbitrary function from file1.ts to file2.ts based on calling it on the command line?

They're not command line applications, they use JSON-RPC inline, and it's an interactive flow, so you need the client to actually persist state.

So what you'd see in the LLM traces, for example, is a couple back-and-forths using JSON-RPC. It absolutely works at the moment, and claude code will happily use it if everything is set up correctly, just tested it using https://github.com/typescript-language-server/typescript-lan...

Re: Interview with Boris Cherny [video]

#28
post #3

The TL;DR of the fragment at around 6:57 in the video, for those who don't want to watch, is that Boris recommends to delete all the customizations, CLAUDE.md, skills, and other stuff you had for older models, and try using the new models without all that, because the new models can surprise you.

Even for older models I was (and am) of the opinion that a lot of the context-overstuffing cruft people have been wrapping around their LLM usage is more of an RNG-impacting (but not always for the better) lucky charm rather than it being universally helpful. And a lot of people latched on to it as a form of self-soothing. "I may not write much code anymore, but I can still be an expert prompt engineer!"

Not really. The big change in newer models is the amount of RL relative to pretraining. RL makes the models stable by collapsing distributions around desired outcomes. The old tweaks like giving the agent a role ("You are an expert XYZ engineer") or stuffing the context with engineering idioms have effectively been RL'd into negligence, but they still waste tokens.

You can see this visually in older image generation models. Stable Diffusion 1.5 would produce wildly different images based on slight variations in prompt and seed, but the latest image gen models are nearly seed indifferent and can tolerate a decent amount of prompt tweaking while staying "consistent"

Re: Interview with Boris Cherny [video]

#30
post #23

Earlier quoted context omitted.

Come on what are we talking about. Ruff is a linter. Can you show me any LSP server that can move an arbitrary function from file1.ts to file2.ts based on calling it on the command line?

They're not command line applications, they use JSON-RPC inline, and it's an interactive flow, so you need the client to actually persist state. So what you'd see in the LLM traces, for example, is a couple back-and-forths using JSON-RPC. It absolutely works at the moment, and claude code will happily use it if everything is set up correctly, just tested it using https://github.com/typescript-language-server/typescri…

What did you test exactly?

Look what I’m asking for is not complicated

Node cutpaste.js inputpath startcharnum endcharnum outputpath startcharnum

I was just using it as an example of how dropping claude / gpt in a Linux shell and saying good luck and then giving interviews about spawning sub agents seems to overlook basic text editing primitives

But if you managed to move an arbitrary char range from one file to another using Claude Code talking to the TS LSP server let me know that would be enlightening.

Post reply on HN