Do modern IDEs make us dumber?
No. They (can) make us more productive.
When you're working with a large number of source files, the ability to have auto-complete, parameter guessing, getter/setter creation, auto-builders, and real-time code syntax/quality/checkstyle/pmd/findbugs/etc... validation means you can write working code more quickly.
The ability to refactor/rename across an entire project with a click of a mouse means I'm much more likely to refactor as the code evolves, leading to higher quality, more readable, more extendable code. Seeing class hierarchy trees with one click, jumping to view the source of a method I'm using, remote debugging totally integrated with my source code, etc... is all really valuable.
Sure, drag-and-dropping everything in some IDEs means you're missing a lot of the core stuff in programming, but at least for me, I am more productive using Eclipse than I was using Emacs and the shell.
Good and bad programmrs use IDEs. Good and bad programmers use text editors. Bad programmers use IDEs as a crutch, supporting their otherwise poor programming skills.
It's simplistic to say that IDEs make us dumber. Auto-completion can lead to a vagueness about code structure but refactoring tools can greatly aid programmers to complete repetitive error prone tasks.
I have grown to hate the MS family of programs's insistence that Daddy knows best, and I must turn off the magic on a case-by-case basis.
I noticed a big difference when I transitioned from Visual Studio/Netbeans type coding to Emacs. I stopped hunting through class hierarchies and started, you know, actually learning the libraries I needed to use. Emacs lets me be the magician.
I haven't programmed using XAML, but it reminds me of the .ui file produced by Qt Designer, which I've edited by hand at times.
They don't make us dumber...they do make it a bit harder to become smarter though, since they do so much for us.
I think that there's a forcing function with using a non-IDE environment that makes me, at least, write better code. I have to navigate it and understand it without (easily) jumping between files/methods/objects.
For me, that leads to better organized and better encapsulated code.
IDEs seem to be more a symptom of a programming environment that is poorly designed especially if your IDE is generating large amount of code for you. Perhaps that is what petzold was advocating if I could stand reading the talk in its entirety.
I really love the DrScheme IDE. You can see the values that your functions are passing each other, and I've prototyped some code using Scheme and it was a really seamless experience.
Does watching TV make us dumber? Video games? Questions like this don't have an answer but can be an interesting discussion.
I guess I consider emacs ad IDE (or at the very least toolkit to build a personalised IDE). What about smalltalk? I don't think most would think of that as "dumbing things down" yet it really invented all the good things that IDEs have ?
Yes, if you are a beginner. I have seen many folks who start learning Java with IDEs struggle with issues like classpath. So, at least as a beginner of any new language, i would work with just a good editor (emacs/textmate) instead of an IDE.
As someone who started learning C a few months ago, it was comforting to hear a 20+ year veteran programmer say that coding in C made him "feel like a real programmer again".
It'd be interesting to see a wide spread study on this. I've yet to meet a good programmer that uses an IDE, but that could just be an anomaly.
from my observations, OOP style programmer tends to rely most on IDE while FP style the least
that might reflect the relative dumbness of the two
IDE = Code re-use
Code generation is bad if you ever have to edit the code generated, under any circumstances (the qualification excludes (good) compilers).
I like features like IntelliSense (when they work properly). I mean really, if you don't like features like this then perhaps you should consider removing auto-indent from your editor -- perhaps it's making you too lazy. As for me, I'd rather not remember API minutiae if I can help it.
That's not to say I don't learn APIs. I do and it's important to understand a system completely. But sometimes I forget the order of arguments to some random function.
Tl,dr. Anything interesting happen in this movie after Intellisense?