Хороший инструмент не делает из вас мастера.
Достаточно частая ситуация: некто покупает дорогой фотоаппарат и считает, что он тут же стал фотографом. Это не так. Фотография — это не просто направлять камеру и нажимать на кнопку затвора. К этому должно прилагаться видение и понимание того, что происходит.
Это из той же серии, что дорогая посуда не делает автоматически вашу пищу вкуснее, а дорогой музыкальный инструмент не означает, что музыкант будет извлекать из него шедевры вместо омерзительной какофонии. Приобретение бормашины не делает из вас стоматолога, а скальпеля — хирурга.
И это же относится к программированию. Классическое фундаментальное обучение состоит в том, что преподаватель сначала рассказывает азы и алгоритмы, а потом даёт решать типовые задачи (поиск подстроки в строке, сортировка, списки и так далее). И задачи эти решаются на бумаге, студент просто пишет код ручкой на листе, а преподаватель его оценивает.
Можно сказать, что это чистка унитазов зубной щёткой, но это не так. Весь процесс программирования состоит из решения типовых задач, просто со временем приходит понимание, из каких примитивов состоит любая глобальная цель.
Современные интегрированные среды разработки позволяют делать очень много и повышают продуктивность на порядки, но это всего лишь очень удобный инструмент. Когда я только начинал заниматься разработкой, я несколько лет писал код в редакторе EditPad, где не было даже подсветки синтаксиса, а саму её я считал излишеством, всё ведь и так понятно, есть же отступы.
Потом я купил EditPad Pro, где была подсветка. Это оказалось действительно удобным. И спустя ещё несколько лет я открыл для себя IDE, правда в тот момент и сам процесс достаточно сильно поменялся. Вместо нескольких файликов с логикой пришли фреймворки из тысяч разных файлов.
В общем хороший инструмент — это благо, но основа всего — это то самое фундаментальное образование в соответствующей области. Причём стоит иметь в виду, что знания из разных областей тоже пересекаются.