Why I think IDEs suck

preview_player
Показать описание

IDEs are excellent pieces of technology. But personally I think they take something away from developers. In this video I go over why I feel like IDEs aren't that great for programmers.

They aren't TERRIBLE of course and if you have a great workflow with an IDE that is cool. But personally, you know... yuck

Anyways, thanks nerds.
Рекомендации по теме
Комментарии
Автор

I would say the ruby example given here is not necessarily a good argument against IDEs, but instead shows a user error. The quick action does say "Create method 'something'", which is something you would not want to do in this case. Sure, the IDE should probably also navigate to the newly created method, to better indicate what it has done.

Uuppi
Автор

I think they're good for when you're working on a work/business project, since everyone has the same tools/setup etc. but I do prefer just a text editor (and maybe lsp) for anything else

kammy
Автор

I don't think it's viable to use just an editor for project beyond certain size.
Also all tools like refactoring, navigating through methods just by clicking (also going to implementations) are worth paying the price of occasional IJ hiccups.

daffy
Автор

Indeed. IDEs are double edged swords. While it makes it easier for beginners to get started, when things like this happens, they have no place to look at on how to fix it but on the other hand, it also teaches the fact that not everything is available on the internet that you can just copy-paste to fix. I think its crucial that new programmers learn that early on so they won't keep nagging their closest available senior dev for every small error they face.

santhosh
Автор

Basically a tool is bad when it tries to help but it does the opposite thing, so it is better to do everything the hard way.

ludwig
Автор

I think ide's have their purpose as they make things easier. But vim just makes me enjoy coding a lot more than an IDE

mahiabir
Автор

I agree if we are talking web dev or something like that, I don't use an IDE for that, and never would. But I also work on fairly large and complex C/C++ projects (like a game engine/game and raytrace renderer) and for that I do most of my work in CLion (IntelliJ's C IDE). I find it easier to use the debugger visually most of the time, and it's really handy to have a fully featured one to quickly inspect memory, step into code etc. I found myself agreeing more with John Carmack on this after having tried to use both simple editors and pseudo IDE setups with VSCode for C development (it was a royal pain the ass).

apresthus
Автор

Man, I agree with the obfuscation thing, and I'd even add "bloat" to it. I love how IDEs make things simple, but at the same time I just want to have what I need and nothing else. Right now I'm using micro, but as your neovim series goes on, I think I'm finally switching to the sacred side of vim.

maximofernandez
Автор

Can't remember the exact details (was years ago), but in a jetbrains IDE, I did something like refactor-renaming an opening HTML tag like a <div> to a <span> or something like that... assuming all it would do is update the closing </div> tag. But instead, it renamed every <div> ...not just through the whole project itself, but under node_modules too. That was lolz.

I'm not against IDEs in general though. Benefits usually outweigh the downsides for me personally. Although my "IDE" these days is vscode + plugins. Same thing in the end, regardless on people trying to be pedantic about the definitions of words.

HappyCheeryChap
Автор

I hate them because they are all proprietary software.

Even the beloved VS#@$% obfuscates the fact that it is proprietary software.

They also do so many magic actions they can stunt your progress learning a programming language all in the name of convenience.

dereklomax
Автор

Someone correct me if I'm wrong here, but I think IDEs are doing the complete opposite of obfuscation, they make things too simple.
And on the other hand, this issue that your colleague had isn't really a problem of the IDE, rather the LSP it uses.
If you used the same LSP in Vim, and performed the same action, the same problem would occur.
That's my understanding of it.

djole
Автор

Hi!
I'm working with ruby too and want to switch to neovim badly for a long time.
Can you, please, list some plugins that you use with neovim and also some ruby specific ones? Which lsp do you use?
Thanks!

romankapustynskyi
Автор

Wow this is messed up!
I totally see the point here. IDEs complicate everything when it comes to configuration.
My only comment here is that I think the number one issue of GUI IDEs, is that they almost *force* interrupted work by requiring mouse work.
I remember my brain thinking of a process then "UGHHH I need a split" then creating a split working some more and then "UGHHHH I need to jump 20 lines down".
I honestly believe that having a productive welcoming environment like Vim's, eliminates a HUGE mental load, resulting in productivity that's based on FUN and FOCUS!

devopstoolbox
Автор

It's important to understand the tools you use. This sounds like a case of someone not understanding what things do, not setting things up right, and possibly outright dismissing possible warnings or errors in a desperate attempt to get something working. I wouldn't trust this person moving forward if they don't pay attention to what they're actually doing in the project. If you understand what the IDE does under the hood instead of clicking random buttons, this should not happen. Either that or there's a massive bug report to send to the developers of this IDE.

Synergiance
Автор

Noob POV here. I love GUI IDEs, there are a lot of abstractions that let me do some work without being aware of all the work done behind. Maybe when I learn more I'll be able to leave them behind, but until then I think they help me to go through the complexity of writing code. I might be wrong and not being exposed to some steps is creepling my understanding of the big picture, but for a noob, sometimes there is too much to get lost in the weeds.

SRG-Learn-Code
Автор

"because of rubymine" no, this is a PEBKAC error. Your coworker made a mistake, this by no means rubymine's fault. You need to know the tools your working with. Just like if you use a vin plugin, you can't just assume it does the right thing. Same thing here.

DarthSivius
Автор

IDEs are bad if you don't know how to configure it

JuanGomez-xhqd
Автор

I think a stronger word you're looking for is "abstraction." IDE's bring everything to the high-level, making it not impossible to understand the low-level stuff, but seemingly uneccessary, which is perhaps even *more* dangerous. Command line editors don't afford you this luxury.

domojestic
Автор

hey, can you do an updated neovim setup with lazy.nvim and lsp? also Thanks for quality videos

drn
Автор

I also dislike IDEs but for different reasons: they are chunky and slow, take a long time to start up and configure, they break for inexplicable reasons. In the scenario you pointed out, playing the devil's advocate, I would say in that case it was a human error: he didn't read what the suggested fix was before applying it and he didn't check what was the result of the action after applying. I don't think it was a big deal to find out the problem by having a look at the working tree.

krige