>>3705982
>В перспективе - Python.
Переходи-ка на него вот прямо сегодня.
> мне кажется, что они начинают объяснять предмет с середины.
Тебе не кажется, так и есть. Потому что сначала быстро учат добиваться хоть какого-то результата, а потом уже рассказывают, как это вообще работает, уже только тем, кому и это тоже интересно.
Если проводить аналогию с прикладными вычислениями (которая, я полагаю, довольно грубая, но лучшей у меня нет), то суть такова: тебя сначала учат складывать и умножать, чтобы ты мог купить себе колбасы и огурцов на ужин, а потом уже рассказывают о коммутативности операций, действительных числах и т.д.
>С чего программа должна начинаться? Чем заканчиваться? Что посередине? Какие элементы обязательные, а какие опциональные? Какова конечная цель программы и что нужно иметь для ее создания?
Вот этим и хорош питон, в нём пустой файл - тоже корректная программа. Всё остальное добавляется по мере необходимости.
>Я знаю, что в принципе могут выразить натуральные языки за счет своего родного, дальше я просто сморю словарь.
Это неправда, кстати. У разных языков совершенно разные конструкции могут быть. В японском у прилагательных есть прошедшая форма, например, а в русском - несовершенный вид глаголов. Попробуй объясни англичанину, что такое род у существительного, и какой он у бутылки, стола и полотенца.
>Что в принципе могут языки программирования и каким средствами это выражают я не имею никакого представления и я не видел, где бы эта информация централизованно выражалась.
Посмотри на brainfuck. Любой алгоритм можно написать на нём, так что любые навороты любых других языков - синтаксический сахар и повышение удобства, не более.
>Вторая половина проблемы это то, что мне кажется, что я многое пропустил и сразу смотрю на результат чей-то многолетней работы.
Так и есть. Но иначе никак, никто не будет тебя сначала запихивать электронный импульс в шину данных, потом строить поверх импульсов кодировку и так далее. Тебе дают абстракцию - поток байт. А потом, если что, доберёшься до сути.
> Откуда взялась оболочка?
Её написали.
>На чем писали софт, с которым работают программисты?
На более старом софте. Самый первый - на машинных кодах, напрямую.
>Откуда взялись все эти библиотеки и почему в литературе их существования воспринимается как данность?
Потому что они часть поставки языка.
>Почему и как процессор понимает латинские буквы?
Не понимает. Если правда интересно, почитай как пишут лексеры и парсеры.
>Кто решил, какое именно слово соответствует какому набору логических команд, как это довели до производителей железа и как они заложили это в железо?
Железо умеет работать только с машинным кодом. Программа либо сама в него превращается (компиляция), либо другая программа, читающая код твоей программы, выполняет разный машинный код в зависимости от того, что ты ей скормил (интерпретация, а также компиляция в байт-код).
>Через сколько именно слоев проходит мой программа и как она преобразуется на каждом из них, пока не станет набором электрических импульсов?
Много. Но это не необходимо знать, чтобы писать код.
>Я представляю себе, что где-то есть такой учебник, где все эти вопросы разбираются ретроспективно в первой главе первого раздела.
Нет. Это абсурдно много информации для неподготовленного мозга, причём информации без опыта написания кода абсолютно непонятной.