Why I think IDEs suck

  Рет қаралды 12,857

typecraft

typecraft

9 ай бұрын

🐦X: x.com/typecraft_dev
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.

Пікірлер: 70
@mahirabbas3700
@mahirabbas3700 9 ай бұрын
thanks nerd
@typecraft_dev
@typecraft_dev 9 ай бұрын
Obfuscation is really hard to say
@devopstoolbox
@devopstoolbox 9 ай бұрын
But important nevertheless 😂
@Uuppi
@Uuppi 9 ай бұрын
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.
@romankapustynskyi8148
@romankapustynskyi8148 9 ай бұрын
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!
@typecraft_dev
@typecraft_dev 9 ай бұрын
Sure I can make a video on it!
@santhosh3374
@santhosh3374 9 ай бұрын
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.
@typecraft_dev
@typecraft_dev 9 ай бұрын
100%
@daffy1981
@daffy1981 7 ай бұрын
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.
@typecraft_dev
@typecraft_dev 7 ай бұрын
good point. to an extent complicated projects are easier with a complicated IDE
@kammy7222
@kammy7222 9 ай бұрын
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
@typecraft_dev
@typecraft_dev 9 ай бұрын
Yes I agree using a standardized thing in a company isn't a bad idea
@GOTHICforLIFE1
@GOTHICforLIFE1 Ай бұрын
without an LSP it would be a nightmare to program as almost everyone is prone to small spelling mistakes, inconsistency in formatting etc etc, But i certainly prefer nvim myself. Now that being said, it's also a terrible practice to perform actions you don't understand. it's like copying code without understanding what it does. You are prone to have unintended consequences
@d3r1n
@d3r1n 9 ай бұрын
hey, can you do an updated neovim setup with lazy.nvim and lsp? also Thanks for quality videos
@typecraft_dev
@typecraft_dev 9 ай бұрын
Sure! And thanks!
@apresthus87
@apresthus87 7 ай бұрын
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).
@typecraft_dev
@typecraft_dev 7 ай бұрын
Very great and balanced take I agree
@maximofernandez196
@maximofernandez196 6 ай бұрын
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.
@dereklomax161
@dereklomax161 9 ай бұрын
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.
@typecraft_dev
@typecraft_dev 9 ай бұрын
yup, agree 100% on stunting the learning of your programming language/tools
@Synergiance
@Synergiance 9 ай бұрын
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.
@mahiabir6348
@mahiabir6348 9 ай бұрын
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
@SRG-Learn-Code
@SRG-Learn-Code 9 ай бұрын
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.
@typecraft_dev
@typecraft_dev 9 ай бұрын
If you feel that a GUI IDE helps you, thats great. Its all about personal preference. I just personally like being closer to the tooling under-the-hood of the programming I'm doing
@nerdg2
@nerdg2 24 күн бұрын
text editors all the way, on vscode trying to move into vim/neovim but the git integration on vscode is so damn neat, merge conflicts is a breeze. it works so well that i can't literally leave it. works so well I've kinda forgotten how to interact with the git cli now :P
@djole0501
@djole0501 9 ай бұрын
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.
@typecraft_dev
@typecraft_dev 9 ай бұрын
IDEs make things simple by hiding the details of what's going on. And in this VERY specific case, I think its a Rubymine problem only. Ruby doesn't have a standard "LSP". Typically you'd use the solargraph gem. Rubymine adds its own "intellisense" to ruby on rails projects. And I think the Rubymine intellisense is what caused this issue.
@djole0501
@djole0501 9 ай бұрын
@@typecraft_dev That makes sense then, yeah
@ludwig8841
@ludwig8841 9 ай бұрын
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.
@devopstoolbox
@devopstoolbox 9 ай бұрын
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!
@typecraft_dev
@typecraft_dev 9 ай бұрын
all 100% true!
@HappyCheeryChap
@HappyCheeryChap 9 ай бұрын
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 to a or something like that... assuming all it would do is update the closing tag. But instead, it renamed every ...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.
@DarthSivius
@DarthSivius 9 ай бұрын
"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.
@typecraft_dev
@typecraft_dev 9 ай бұрын
I have no idea what PEBKAC means, but it sounds naughty. I love it
@renehoehle
@renehoehle Ай бұрын
@@typecraft_dev It means: "Problem Exists Between Keyboard And Chair"
@poguri27
@poguri27 2 күн бұрын
Lol no, modifying core libraries via refactoring should not be something an IDE should ever suggest.
@theuser384
@theuser384 3 ай бұрын
Obfuscation > inaccessible for me (not .deb or script for debian distros). Maybe in 10 years neovim 8 will be in their repos.
@BrijeshWawdhane-jm2pz
@BrijeshWawdhane-jm2pz Ай бұрын
I agree but I think it was partially your colleagues fault, I use goland and than being paid product it’s great
@zozo-yy2gl
@zozo-yy2gl 9 ай бұрын
Relevant Concerns but I just don't want to learn a whole ass language to get done what a plugin does in a few clicks.
@nonono4160
@nonono4160 5 ай бұрын
I kinda disagree with the question rather than answer. My problems with "ide" is that hey are not. IDE means integrated development environment and i have yet to see something that can achieve same level of intergration with the nevironment as vim-like editors or emacs. For example, i doubt there is a relatively easy way to intergrate tools like fzf or rgrep into vscode or other gui editor. There are many cool cli tools that can make my life easier and their amount is constantly increases, and vim provides an easy way to integrate them in my coding workflow. I can either write a pluging myself since it is relatively easy (easier in neovim of course since it uses lua) or use someone elese's pluging, and i have such opportunity because of the ease of integrations. With gui editors it is less so. Even pushing my colorscheme into vscode extensions was more work that writing the colorscheme itself and i believe it's even harder right now. So most of those gui editor do not deserve to be called integrated environments, since there isn't much of an integration to be, mostly it's just vendor locking you into specfic ecosystem.
@marcusrehn6915
@marcusrehn6915 5 ай бұрын
This is also why I always disliked the Microsoft suit of languages and tools. I understand text files and I can copy them from one machine to the next, good luck with that if you are running a typical Microsoft stack
@somfierce
@somfierce 4 ай бұрын
tfw I've only been using jetbrains IDE's off and on for a few months and I go crying soyjak mode when I see someone trash talking them (satire) (I don't know what a computer iis)
@juanmacias5922
@juanmacias5922 9 ай бұрын
lmfao that person really needs to read the fine print before just choosing the quick fix. xD
@user-ti9mv9hb3g
@user-ti9mv9hb3g 5 ай бұрын
I like IDE but it slow like hell, specially when indexing files 😆
@TonKcedua
@TonKcedua 9 ай бұрын
Honestly, after switching from Neovim to Rider (on a strictly need-to-use basis of course), there are so many mostly useless code actions such as this one, which usually do more harm than good. I don't think that's an argument against IDEs, the concept, though, but rather against poorly implemented/maintained features like this. For example, I've been using various JetBrains products for resolving merge conflicts, because you're usually out of purely text editing mode anyway and their interface is by far the most intuitive one I've seen.
@TonKcedua
@TonKcedua 9 ай бұрын
Though to be fair, I don't use the IDE build features, which are going to be the main culprit in terms of obfuscating software development knowledge.
@entx8491
@entx8491 9 ай бұрын
Ob-fus (as in fussy) - cation Easy
@anon_y_mousse
@anon_y_mousse 4 ай бұрын
Interesting, but why NeoVim instead of vanilla Vim? All I seem to get out of people when I ask is that they like the plugins, or that configuration can be done with Lua. Both answers seem wrong, and the first seems especially wrong if you hate IDE's. I've literally only ever used one plugin in all the decades I've been using Vim, and it was written in VimScript, and it's just to enhance tabbing. It hasn't been updated once in the entire time I've been using it, if the original author has updated it anyway. As to the other answer of configuring with Lua, well, there's nothing to prevent you from using vanilla Vim that way, and I always enable Lua when I build it. If you so desire you can also build Vim with Perl, Python, Ruby and TCL enabled. Since you say that you use Ruby, maybe give that a thought and build your own Vim with all the options you want enabled. Just don't forget mouse and system clipboard functionality.
@AK-vx4dy
@AK-vx4dy 3 ай бұрын
I don't blame IDE in this example, human action was needed, so skill issue: your coleague don't understant Rails scecurity credentials model or is to lazy to read what kind of fix IDE proposed or both.
@kevanschwitzer8585
@kevanschwitzer8585 8 ай бұрын
I think it's a bit of a stretch to blame the IDE instead of the programmer in this case. I agree that IntelliJ's inspections and suggestions can be false positives. It's a pain point/annoyance when this happens and as a result I've turned a good number of them off. They generate so much noise that it would be better if there were a smaller set of defaults to start with less false positives or completely opt-in. But at the end of the day, someone applying an inspection fix without understanding what's going on is the fault of the programmer for not understanding a change applied. The other thing I can empathize with is that IDEs tend to be less useful the more meta programming that's done, and Rails apps and Ruby in general has a culture of a lot of meta programming, so IDEs may tend to be less useful to you from that standpoint as well, so due to that factor it's also hard to generalize IDEs as tools not quite up to the job -- it's just a less IDE-suitable framework/programming language.
@Nadiebobo
@Nadiebobo 2 ай бұрын
Try to configure a Java environment in Nvim and then try to use JavaFX. Then we talk if we hate IntelliJ ahhaha
@ArthurSo-wh3tz
@ArthurSo-wh3tz 5 ай бұрын
I think what happened to your friend is not strictly the IDE fault. Rather it's the linter's fault, which could even have happened using a neovim LSP.
@himurakenshin9875
@himurakenshin9875 9 ай бұрын
I think hating IDEs have become a fashion too. IDEs are powerful, if one doesnt read and click on any of the suggestion then things will go wrong. Such suggestion can also be presented via lsp which one has configured in neovim. Secondly, do you all use cli for doing queries and other operations for databases as well? I am asking this because i feel the way u all hate ides u all should hate dbms softwares also
@typecraft_dev
@typecraft_dev 9 ай бұрын
Good point. I WOULD use sql to query things in a DB directly, although I typically have an ORM for anything I'm working on. So REALLY I'd be using a REPL and querying with the ORM to make things easier. So in a way, I don't use dbms software either. haha. thanks for commenting!
@domojestic4155
@domojestic4155 5 ай бұрын
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.
@NubeBuster
@NubeBuster 2 ай бұрын
Wow this is a crazy story. That is not a feature, that's a bug. No IDE should ever manipulate files that are not part of the program you're currently working on. I love IntelliJ though. For the rest I'd rather not pay. VSCode is ok.
@driden1987
@driden1987 9 ай бұрын
thought the word was going to be bloat tbh
@typecraft_dev
@typecraft_dev 9 ай бұрын
Haha. Also a good word
@guglielmobartelloni
@guglielmobartelloni 9 ай бұрын
Until you try to program in Java
@Zeioth
@Zeioth 9 ай бұрын
Code actions are cool, but automated code actions like the ones on webstorm give me severe anxiety when I look at my coworkers screen.
@jaakkouusitalo1094
@jaakkouusitalo1094 9 ай бұрын
Soon as I see someone talking positive about the RoR I stop the video.
@typecraft_dev
@typecraft_dev 9 ай бұрын
damn the rest of the video was good too!
@tuckerhoog9609
@tuckerhoog9609 9 ай бұрын
geek
@andherium
@andherium 9 ай бұрын
IDEs are the reason why Java never appealed to me. IDE is such a crucial part of the Java ecosystem it's shocking
@KangoV
@KangoV 6 ай бұрын
I wrote a huge amount of Java code back in the day in Notepad.
@khanra17
@khanra17 9 ай бұрын
Totally a skill issue. You need to learn IDEs as You learned text editors. Just because you think you are a pro because you learned vim then you are a hypocrite.
Why I Cant Stand IDE's After Using VIM | Prime Reacts
17:51
ThePrimeTime
Рет қаралды 264 М.
30 Vim commands you NEED TO KNOW (in just 10 minutes)
10:27
typecraft
Рет қаралды 63 М.
Is it Cake or Fake ? 🍰
00:53
A4
Рет қаралды 18 МЛН
IS THIS REAL FOOD OR NOT?🤔 PIKACHU AND SONIC CONFUSE THE CAT! 😺🍫
00:41
Climbing to 18M Subscribers 🎉
00:32
Matt Larose
Рет қаралды 30 МЛН
Василиса наняла личного массажиста 😂 #shorts
00:22
Денис Кукояка
Рет қаралды 7 МЛН
My Forever Dev Workflow
16:02
typecraft
Рет қаралды 67 М.
Vim Tips I Wish I Knew Earlier
23:00
Sebastian Daschner
Рет қаралды 38 М.
How Neovim saved me at least 30 minutes today
8:12
Rasmus Bergström
Рет қаралды 8 М.
I'm Gonna Try Zed Now (RIP VSCode)
13:37
Theo - t3․gg
Рет қаралды 158 М.
Tmux will SKYROCKET your productivity - here’s how
10:02
typecraft
Рет қаралды 71 М.
Automatically Execute *Anything* in Nvim
11:03
TJ DeVries
Рет қаралды 67 М.
I tried Neovim Distributions so you don't have to
9:12
typecraft
Рет қаралды 137 М.
What the hell is Zellij?
8:00
typecraft
Рет қаралды 58 М.
Don't use VSCode
35:31
PyCon South Africa
Рет қаралды 209 М.
Tmux has forever changed the way I write code.
13:30
Dreams of Code
Рет қаралды 911 М.
Девушка и AirPods Max 😳
0:59
ОТЛИЧНИКИ
Рет қаралды 17 М.
Мечта Каждого Геймера
0:59
ЖЕЛЕЗНЫЙ КОРОЛЬ
Рет қаралды 1,5 МЛН
Cadiz smart lock official account unlocks the aesthetics of returning home
0:30
После ввода кода - протирайте панель
0:18
МОЩНЕЕ ТВОЕГО ПК - iPad Pro M4 (feat. Brickspacer)
28:01
ЗЕ МАККЕРС
Рет қаралды 84 М.
Нашел еще 70+ нововведений в iOS 18!
11:04