Live data from Hacker News

What do you really get from IDE-driven development?

briandfoy.github.io

61–70 of 143 posts

Re: What do you really get from IDE-driven development?

#61

It seems like the author understands, or perhaps his criteria is based on, only a thin layer of what an IDE can provide. Here's the highlights: - Data flow to/from here (where did the value of this variable come from/go to) - Call hierarchy (up and down) - Class hierarchy (up and down) - Class structure (including all inherited fields, methods) - Checking your code against an actual database schema, perhaps one autom…

I think a lot of people's views have been influenced by their use of languages where the type system or overall language framework is either too weak (eg: Python, Javascript) or in some cases too complex (eg: C++) for more than a thin layer IDE experience to be possible. If you use those kind of languages then it's true, IDEs buy you a limited set of functionality and you don't need much more than a basic language server because that's about the limit of what you can get anyway.

Re: What do you really get from IDE-driven development?

#63
post #9

This is an argument against programming by autocomplete, not an argument against programming with IDEs. IDEs make this method of programming possible , but they don't make it mandatory. The primary thing I use autocomplete for is to insert method calls that I already know that I want. Secondarily I use it like a documentation browser to read the documentation for every function that I could call if I'm trying to figu…

> This is an argument against programming by autocomplete, not an argument against programming with IDEs.

Exactly. IDEs fulfil an important function of removing repetitive and mundane tasks. The goal is to be you, the programmer, to know what you want to do and the tool, IDE, to make it happen as efficiently as possible.

That can happen through parsing code, showing documentation, showing references, alerting to obvious bugs, etc. But it can also be fulfilled by generating code (esp. in environments that like boilerplate) and possibly also by finding pieces of code to achieve the operation you need.

Sure, by using autocomplete constantly I may impair my memory same way that using Google Maps impairs my ability to drive without navigation. So what? I care that the task is completed and my mind is available to thinking about higher level problems rather than how to exactly search the code for references or locate the documentation.

Isn't the goal of software development actually building something rather than obsessing about the process?

Re: What do you really get from IDE-driven development?

#64
There's a sort of meta irony in computer programmers rejecting software assistance in conducting their trade, when a large fraction are actually focused on building software to do exactly that in one form or another.

Do such people fundmentally believe software is incapable of helping people work with information oriented tasks better? In that case, how do they assess the actual value of their own work?

Re: What do you really get from IDE-driven development?

#65
post #61

It seems like the author understands, or perhaps his criteria is based on, only a thin layer of what an IDE can provide. Here's the highlights: - Data flow to/from here (where did the value of this variable come from/go to) - Call hierarchy (up and down) - Class hierarchy (up and down) - Class structure (including all inherited fields, methods) - Checking your code against an actual database schema, perhaps one autom…

I think a lot of people's views have been influenced by their use of languages where the type system or overall language framework is either too weak (eg: Python, Javascript) or in some cases too complex (eg: C++) for more than a thin layer IDE experience to be possible. If you use those kind of languages then it's true, IDEs buy you a limited set of functionality and you don't need much more than a basic language se…

Actually, modern IDEs are super helpful with JS and Python, especially with type hints.

I can export a function or class in a big JS project, go to any file, start typing the method name, and Webstorm will suggest the import. With JavaScript!

Not as great as the Java integration but still pretty nice.

Re: What do you really get from IDE-driven development?

#66
This is normal crotchety "kids these days" silliness. Most IntelliJ autocomplete suggestions are things like: * syntactic constructs (e.g. 'v' -> 'void', 'p' -> 'public'). * variable names you've already defined, or likely will define (e.g. 'MyFoo m' -> 'myFoo'). * methods names you've already defined or method names in commonly-used modules. The idea that the average programmer writing in an IDE is using functions that the IDE suggested, (but they have no idea what those functions do), is nonsensical. In addition to giving you (extremely rudimentary) autocomplete, IntelliJ gives you the ability to browse the libraries you've imported and read their doc. It gives you the ability to quickly see where variables were defined. It gives you the ability to conduct mass renames, move methods into new classes, and to conduct complicated syntax-aware search-and-replaces. It gives you an effective debugging GUI for tests, and allows you to inspect variables at will. I do believe that, as an IntelliJ programmer, I have lost my memory for certain language-specific details, (e.g. the fact that in Java, it is Collection::isEmpty vs. Collection::empty), but it's arguable whether these sorts of details are actually useful information for a working programmer.

Re: What do you really get from IDE-driven development?

#68

All these anti-IDE rants strike me as coming from people who have never actually used an IDE beyond "oh it's an editor with an autocomplete".

Definitely this. I was a long time Notepad++ fan but immediately changed tune soon as I tried VS Code.

Re: What do you really get from IDE-driven development?

#69
post #61

It seems like the author understands, or perhaps his criteria is based on, only a thin layer of what an IDE can provide. Here's the highlights: - Data flow to/from here (where did the value of this variable come from/go to) - Call hierarchy (up and down) - Class hierarchy (up and down) - Class structure (including all inherited fields, methods) - Checking your code against an actual database schema, perhaps one autom…

I think a lot of people's views have been influenced by their use of languages where the type system or overall language framework is either too weak (eg: Python, Javascript) or in some cases too complex (eg: C++) for more than a thin layer IDE experience to be possible. If you use those kind of languages then it's true, IDEs buy you a limited set of functionality and you don't need much more than a basic language se…

I use PhpStorm by JetBrains and am totally blown away by how powerful it is. It does all of the GP’s list and way more.

Re: What do you really get from IDE-driven development?

#70
post #9

This is an argument against programming by autocomplete, not an argument against programming with IDEs. IDEs make this method of programming possible , but they don't make it mandatory. The primary thing I use autocomplete for is to insert method calls that I already know that I want. Secondarily I use it like a documentation browser to read the documentation for every function that I could call if I'm trying to figu…

Agreed. I don’t think programming with autocomplete is even a problem so much as learning to program with autocomplete is a problem. I think everyone should start out with a barebones text editor to get used to thinking things through and not relying on advanced IDE features as crutches.
Post reply on HN