IDEs can be useful, but can also weaken developers. People get used to the IDE keeping track of bloated, overly complex interfaces. Autocompletion also leads to a style of development where every term must be defined before it can be used in any code. That may seem to make sense at first, but in practice means that it becomes impossible to freely sketch out code paths without first defining all terms. Depending on context this may all be appropriate and valuable, but it is worth keeping in mind that IDE saturated development has particular characteristics and may potentially amount to a crutch or even an impediment.