В детстве мне пришлось с языка начинать ибо банально на спектруме без бейсика ничего не запустишь) А основы уже потом подъехали, уже сильно позже того, что по точкам три д кубики отрисовывал и проги писал для корней квадратного уравнения)
В детстве начал с того, что захотелось реализовать некоторую идею. Далее пришлось узнать, какие инструменты чаще для такого годятся, а потом и влезть немного в основы. Без них инструменты использовать получается плохо.
для программиста главное - уложить алгоритм в язык. Алгоритм нарисует постановщик задач. а если все в одну каску - то и задачу клиента в алгоритм уложить придется самому.
Алгоритм это более низкоуровневый элемент программы. Архитектура первична, она подразумевает разделение системы на части, с своими обязанностями и связями, до того момента, когда обязанность подсистемы можно представить с помощью алгоритма.