I think a better analogy is that an IDE to a developer is more like a CNC machine to a carpenter.
It's possible that a CNC machine can allow an experienced carpenter to do his work fast and efficiently.
But for an unskilled carpenter, I see two possibilities:
- the carpenter may limit his designs to what the CNC machine can make (no curved wood objects for one example)
- the fundamentals of carpentry might be ignored (like the properties of natural wood, growth, shrinkage)
In the context of an IDE maybe like:
- only build on one platform
- only create products the IDE way (maybe creating "apps" instead of minimal command line tools or OS internal things)
- allow the developer to ignore corner cases that are abstracted away with IDEs (memory management? interrupts?)