What is the Future of IDEs — Transcript
Full transcript
- 0:00Okay, so here's a question that I keep
- 0:02hearing and honestly, one that I've been
- 0:04kind of asking myself a lot lately. With
- 0:07the state of coding agents, the way that
- 0:09they are, what is the role of IDEs? And
- 0:13I think it's really easy to be
- 0:14dismissive and say that you don't need
- 0:16them at all, but also when I find myself
- 0:18actually running code that I want to put
- 0:20into production, that I want to know is
- 0:22safe and stuff like that, I do want an
- 0:24IDE that I can actually go and look at
- 0:27the code and do a variety of different
- 0:29tasks, etc. So you hand code or codex a
- 0:32task, it goes off and does a bunch of
- 0:34changes and usually those changes are
- 0:36not just changing one file. That could
- 0:38be touching 10 15 different files there.
- 0:41And from the terminal alone, you really
- 0:44can't see any of that. Now that can be
- 0:46kind of good when you're just trying to
- 0:48run something on your phone, you're
- 0:50trying to get an idea down, you're
- 0:51trying to do something like that. But I
- 0:53still believe if you're going to call
- 0:54yourself a developer, that you need to
- 0:56know what the code is actually doing.
- 0:59You need to know that the code is still
- 1:01right. And in some way, shape or form, I
- 1:03feel you can't leave all of that to AI.
- 1:05So this video is sponsored by Jet
- 1:07Brains. It's not a big push though for
- 1:09any particular product that they make or
- 1:11anything. It came about from me talking
- 1:13to them and then publishing a blog post.
- 1:15And that whole idea of that is really
- 1:18what do you need an IDE for in this day
- 1:20and age? And I got my own answer to this
- 1:23and it's really no longer about writing
- 1:25code at all here. Okay, so just to set a
- 1:27bit of background here, when Jet Brains
- 1:29reached out about this, I wrote back
- 1:31with my honest take. I said that I think
- 1:33IDEs still matter, but I think they
- 1:36drastically need to change. And to be
- 1:38fair, Jet Brains seems to see it the
- 1:40same way. Here is their take on what an
- 1:42IDE looks like when agents are doing a
- 1:45lot of the writing. And I gave them a
- 1:47few reasons that I'm going to go through
- 1:48here. I also want to say on a personal
- 1:50note that I actually started using Jet
- 1:53Brains IDEs for doing Objective C
- 1:55development back in 2012. So I've seen
- 1:58their products change over years. I
- 2:00myself never used IntelliJ Idea, but I
- 2:02had lots of friends who did Java
- 2:04development who were using IntelliJ
- 2:06Idea. I used their Python idea at one
- 2:08stage for doing Django development. And
- 2:10on the whole, I found them to be a very
- 2:12thoughtful company in trying to make
- 2:14products that are really geared for
- 2:16developers. And honestly, that's why I
- 2:18accepted the sponsorship here. So going
- 2:20back and forth with them about IDEs, and
- 2:22there are a number of things that I told
- 2:24them that I still think the IDEs are
- 2:25really important here. One was diffs and
- 2:29being able to actually see what an agent
- 2:32has changed. So I see so many people
- 2:35doing vibe coding where they're just
- 2:37putting in a prompt, they don't care.
- 2:39And there's a time and a place for that.
- 2:41Don't get me wrong. I think that's
- 2:42really good when you're developing quick
- 2:44ideas and stuff like that. But for
- 2:46example, a lot of you have asked me
- 2:48about the testing suite that I use for
- 2:50basically testing all of the models. And
- 2:53that's now become quite an extensive
- 2:55piece of software there. And in the
- 2:56process of developing that, I used an
- 2:58early version of Fable. I used Claude
- 3:01Code. I used Codex. There are quite a
- 3:04number of different agents that have
- 3:06touched that codebase. And often each of
- 3:08them has got their own idea about how
- 3:10that should actually all work. So one of
- 3:13the things that was really important to
- 3:14me there is not just the low-level code
- 3:17of how things are actually going. And
- 3:19that software, for example, can support
- 3:21a whole bunch of different backends.
- 3:23Everything from the Gemini APIs, Open
- 3:26Router APIs, to VLM local, to SG Lang
- 3:30locally, and even things like Llama CPP
- 3:32and Nvidia Dynamo, etc. And one of the
- 3:35most important things with a project
- 3:37like that is how you basically build
- 3:39something like that in modules. And you
- 3:42really need to know how the codebase is
- 3:44laid out. And this is where I think IDEs
- 3:47are going to become a lot more important
- 3:48in the future. That we're very rarely
- 3:51ever going to use an IDE for handwriting
- 3:53code. Occasionally, yes, you might go in
- 3:56and make some changes or do things like
- 3:58that. But the majority of the time, it's
- 4:00for inspecting the code and then for
- 4:03inspecting how that code was made. So
- 4:06one of the tricks that I learned from
- 4:07one of the people in Anthropic was to
- 4:10basically get the agents to create HTML
- 4:13documentation and HTML diagrams for how
- 4:16everything is laid out. And that is
- 4:18really useful and I always try to make
- 4:20sure that's in a lot of my code bases
- 4:22when it's something important and I'll
- 4:24make sure that that actually refers to
- 4:27file names that I can then go and
- 4:29actually look at that in an IDE. That's
- 4:32something that's really crucial here.
- 4:34Another thing that I think is the IDEs
- 4:36are kind of merging away from just being
- 4:39things where you look at code but things
- 4:41where you run agents. So I think GitHub
- 4:44Copilot was one of the first ones that
- 4:45did this and I used them for a time and
- 4:48they basically had an agent panel as
- 4:50well as the code panels etc in there.
- 4:53And for me that started off well but I
- 4:55honestly moved away from them for a
- 4:56variety of different reasons. And over
- 4:59the last six months I've experimented
- 5:00with a whole bunch of tools. Like you've
- 5:02probably seen in my videos a couple of
- 5:03months back that I was using C Mux a lot
- 5:06and running multiple agents in that and
- 5:09having that open and then often having
- 5:11some IDE to actually look at the actual
- 5:14code as well. I've also experimented
- 5:16with things like Herda and even more
- 5:18recently with T 3 code. And even Jet
- 5:21Brains Air also has these abilities in
- 5:24it where you can run multiple agents and
- 5:26then orchestrate them from the IDE
- 5:29directly. And you're not just limited to
- 5:31one agent. You can run a whole bunch of
- 5:33different ones in here. Each of these
- 5:35solve the problem. I think one of the
- 5:36key things here is that you want
- 5:39something that's going to allow you to
- 5:41be able to go very quickly from the high
- 5:44level chunks down to the low level
- 5:47chunks here. Now for a company like Jet
- 5:49Brains for most of their history IDEs
- 5:51really were the place where you write
- 5:53code, right? Gradually later on you had
- 5:56things like auto complete, you had the
- 5:58ability to do refactoring. For those of
- 6:01you who remember actually writing a lot
- 6:03of code the whole idea of snippets was
- 6:05really cool, and everyone would have
- 6:07their own version of personalized,
- 6:09curated snippets that they used in
- 6:11developing. And all of that was about
- 6:12making typing code faster. The early AI
- 6:16autocompletes were really cool in that
- 6:18suddenly you didn't need to write a full
- 6:21function. You could just start off
- 6:22writing the function, and it would just
- 6:24autocomplete it and be able to match the
- 6:26variables and do things like that. Now,
- 6:28obviously we've come a huge way since
- 6:31then, and agents have come along. And I
- 6:33would say not only has that made typing
- 6:35code, you know, longer the main thing,
- 6:37more often than not it's actually made
- 6:39it the bad option. So for sure, if IDEs
- 6:42[clears throat] were only about typing
- 6:43code, then they would be in trouble. But
- 6:45I think a lot of what a really good IDE
- 6:47does is it helps you read code, helps
- 6:50you navigate it, helps you understand
- 6:52it, helps you check it. So if we talk
- 6:54about where the bottleneck has moved, if
- 6:56you've been using coding agents
- 6:58seriously, you've probably noticed this
- 6:59yourself, right? That an agent can
- 7:01produce a change in a few minutes, but
- 7:04then reviewing that change can take you
- 7:06much longer than it actually writing the
- 7:09change. This is especially true if
- 7:11you're the one responsible for
- 7:13committing that to the codebase for
- 7:15production. I know for example, in a lot
- 7:17of organizations like Google, and if you
- 7:20go back to the interview I did with
- 7:21Logan Kilpatrick earlier in the year, he
- 7:22actually talked about this, that
- 7:24nowadays anyone can write code and
- 7:27submit a pull request in there. But one
- 7:30of the software engineers on that
- 7:32project has to go through it and sign
- 7:35off on it. And they're the ones that are
- 7:37responsible for it, not the person who
- 7:39came up with the idea and vibe coded it
- 7:42with an agent, etc. So that radically
- 7:44flips your tools from being just about
- 7:46generation to much more about curation
- 7:49now. So JetBrains put out a post
- 7:51recently based on talking to a bunch of
- 7:53engineering teams, and the pattern that
- 7:55they found is pretty much what I see.
- 7:58Implementation has become quick. The
- 8:00bottleneck has moved to the code review
- 8:03and the planning. They talked about that
- 8:05one team actually measured it and found
- 8:07that their PR time went up, not down, as
- 8:10they're actually rolling out agents. And
- 8:12I think at big organizations, there
- 8:14really is a trust problem over the
- 8:17agents of how much can you actually
- 8:18trust them to do stuff. And honestly, I
- 8:21kind of feel that that's the right
- 8:22behavior. I'd be more worried about a
- 8:24team where review time has gone down to
- 8:27zero here. And of course, there's a
- 8:29version of this where people say, well,
- 8:31just get another agent to do the review
- 8:33and look, the AI can review itself. It
- 8:35catches stuff. But that still doesn't
- 8:38remove the need for a person who
- 8:40understands what the system is supposed
- 8:42to do to actually check, not only is it
- 8:45getting to a good result, is it getting
- 8:47there in a way that is not breaking the
- 8:50law, that is not running up huge compute
- 8:52bills or database bills? And while it's
- 8:55definitely possible that we may get
- 8:56there in the future as the models keep
- 8:58getting better and better, I think at
- 9:00the present, we still need humans to
- 9:03actually sign off on what goes into
- 9:05production. Okay, so let me get concrete
- 9:07about what actually I use IDEs for
- 9:10nowadays. So the first off is diffs.
- 9:12It's the most basic one and probably
- 9:14still often the most important. But
- 9:17before anything an agent writes that
- 9:19gets fully merged, I want at least have
- 9:22a good sense of
- 9:24what the file structure is, what's in
- 9:27those files, has the documentation
- 9:29actually documented properly what it's
- 9:31doing? All of those things are sort of
- 9:34key. And you just can't do that with
- 9:36with a wall of text in a terminal or
- 9:38some kind of agent panel where you never
- 9:40actually see what's going on in the
- 9:42background.
- 9:43The second up is navigation. So when the
- 9:46agent actually changes the function, I
- 9:48want to be able to jump in to where that
- 9:51function is actually called. I want to
- 9:53find usages, see what implements the
- 9:55interface there. And IDEs have had this
- 9:58forever, but it's often exactly what you
- 10:00need to judge whether a change is safe.
- 10:03And of course, I'll admit that if it's
- 10:04something that's not that important, I'm
- 10:06not going to spend that much time on it.
- 10:08But if it's something that I know is
- 10:10making uh large amount of database calls
- 10:13or something like that, I want to check
- 10:15and see is that done in a reasonably
- 10:18efficient manner in there. And that kind
- 10:20of brings me to the third use. And the
- 10:21third use is verification. So this is
- 10:24running tests, running the inspections.
- 10:26And then when something looks off, and
- 10:28that's not going to be a huge amount of
- 10:30times, but I want to be able to step
- 10:32through it with a debugger to actually
- 10:34see, okay, what is going on here? Or I
- 10:38want to be able to have a set of tests
- 10:41that I can run and I can see the outputs
- 10:44of that in the IDE to see, okay, which
- 10:47of these tests are running, which of
- 10:49these tests are failing, which of these
- 10:51tests are doing well, etc. That's
- 10:53something that's really key here for any
- 10:54sort of verification is to be able to
- 10:57have tests, to be able to quickly look
- 10:59at those tests and make sure they don't
- 11:02just have a return equals true on them,
- 11:05but they're actually doing what you
- 11:06think they're doing. And then being able
- 11:08to see the outputs of those and go
- 11:10through those quickly in a nice way. The
- 11:12fourth element here, I think is really
- 11:14underrated, is documentation. I think
- 11:16that the IDE becomes much of the place
- 11:19where you document code as it's being
- 11:21written. So if agents are producing most
- 11:24of the code, definitely they should be
- 11:25writing documentation as well, but you
- 11:28should be reviewing that documentation.
- 11:30You should be reviewing that what it's
- 11:33saying it's doing is actually what you
- 11:35want it to be doing. Just checking
- 11:37things like why does this particular
- 11:39component exist? What are the
- 11:40constraints are here? And then also
- 11:43being able to see if I asked for one
- 11:45particular change, did the agent go off
- 11:47and change things that I didn't want
- 11:49changed in there? And then having that
- 11:51allows you to basically feed back into
- 11:54agents. So that gives you better
- 11:56documents, that gives you better
- 11:58context, that gives you better output.
- 12:00Especially that's true if you're using
- 12:02multiple agents. So if you're using
- 12:04something like Claude Code plus Codex
- 12:06plus Open Code plus a custom harness
- 12:09that you've created yourself plus a a of
- 12:10different open models. And I think
- 12:12that's one of the areas that really gets
- 12:14overlooked here is that all of this IDE
- 12:17intelligence isn' just for you. It's
- 12:19useful for the agent too. An agent that
- 12:22can only grep through files and have to
- 12:25basically use its full context window to
- 12:28sort out what is actually going on is
- 12:31often an agent that's kind of working
- 12:32blind. An agent that can kind of work
- 12:34with what you've given it and what
- 12:36you're looking at in the IDE and that
- 12:39can use that IDE to do things like
- 12:41semantic search across the codebase is
- 12:44just going to have much better context
- 12:47and therefore it's just going to be more
- 12:48accurate. And then on top of that, this
- 12:50is often just going to save you money by
- 12:53using fewer tokens. And that's something
- 12:55I think that we're all being spoilt with
- 12:58here is that we're paying these $100,
- 13:00$200 plans, perhaps even going up to
- 13:03$500 plans now, and you're getting a
- 13:05very high amount of token usage. If
- 13:08suddenly that starts to come to a stop
- 13:10as the models get bigger and better and
- 13:13you have to start paying for API calls,
- 13:15this whole game is going to radically
- 13:17change then. Anyway, hopefully this
- 13:19video, whatever tools you use, has got
- 13:21you to think a little bit about the way
- 13:23that you and your team are actually
- 13:25building software these days. Like I
- 13:27said earlier, my whole answer here is
- 13:29that the IDEs are really not where you
- 13:32write code anymore. It's where you read
- 13:34it, where you check it, where you decide
- 13:36whether it ships. The writing part has
- 13:38gotten cheap. The verification hasn't.
- 13:41That's really the direction JetBrains is
- 13:43heading with AI, bringing the agents
- 13:45that you already use into the IDE so
- 13:48that you can review and check their
- 13:49work. So anyway, I'll include the link
- 13:51to the blog post on JetBrains IDEs in
- 13:53the description. You should also check
- 13:55out AI for yourself. And really I would
- 13:57like to start a conversation here of
- 13:59what do you find yourself using to
- 14:01actually push software into production
- 14:03here? Now I know some of you are brand
- 14:05new to software development, but I also
- 14:07know a lot of people listening to my
- 14:08channel do this as a full-time job. So
- 14:11let me know what are the challenges that
- 14:12you're facing and how are you actually
- 14:15trying to address and fix those
- 14:17challenges now that the entire world is
- 14:20moving to these coding agents as we go
- 14:22forward? Anyway, as always, if you found
- 14:24the video useful, please click like and
- 14:26subscribe, and I will talk to you in the
- 14:28next video. Bye for now.
About this transcript
This page contains the full transcript of What is the Future of IDEs by Sam Witteveen, generated from the public captions YouTube serves with the video. The transcript has 2,847 words across 391 segments, with the original timestamps preserved so you can click any line to jump to that moment in the embedded player.
What you can do with it
Use the transcript to take notes, quote the speaker, build a study guide, generate a summary with ChatGPT or Claude via the YouTube Summary tool, or export it as a timed subtitle file with YouTube to SRT. You can also re-open it in the transcriber to choose a caption track available on the video.
Free YouTube transcript tool
YouTube2Text is a free YouTube transcript generator — no signup, no daily limit. Paste any YouTube link and get the full transcript instantly, with timestamps, click-to-jump, caption language selection, AI prompts for ChatGPT, Claude, and Gemini, and exports to TXT, SRT, VTT, or Markdown.