1. Обладать аналитическим складом ума и решать математические задачи. Ребята, которые умеют писать код, но не решают математических задач могут стать программистами. Но сложность решаемых задач будет со временем ограничена. Будущее за искусственным интеллектом и, конечно, можно будет использовать библиотеки, но это будут уже не ваши программы, а дополнения к существующим. Любая крупная компания, которая предоставляет библиотеки может закрыть доступ и ваша программа не будет работоспособна. Сегодня очень многое завязано на интеграцию и на первых этапах начинающим программистам нравится использовать готовые решения. Но в прекрасный момент многие сервисы прекращают свою работу. Весь сложный проект приходит в негодность. Так что любой плагин, который вы используете необходимо научится писать самому.
Информатикой не владею, но написал сайт с нуля. И по сути могу теперь репетиторствовать. Сам сайт https://isitnaved.ru Основа стремления научить другого это личный интерес к предмету, больше ничего не нужно.