Михаил, добрый день!
Всё зависит от того, какую цель вы ставите перед собой и для чего хотите изучать программирование. Здесь может быть несколько вариантов:
1. Чтобы разобраться, как работает компьютер. В таком случае можно начать с книги Чарльза Петцольда «Код: тайный язык информатики».
2. Чтобы сменить профессию. Для этого нужно определиться со сферой, в которой вы хотите работать. Это может быть веб-разработка, разработка мобильных приложений, разработка игр, робототехника, аналитика данных или машинное обучение. Для каждой специальности нужны свои языки программирования и инструменты. Если вы ещё не определились, какую специальность выбрать, попробуйте пройти несколько бесплатных вводных курсов. За 10 часов в Яндекс.Практикуме можно разобраться в основах тестирования, а за 20 ― сделать свой первый проект на языке программирования Python.
3. Чтобы понять, чем занимаются коллеги. Если вы работаете в смежной области, например дизайнером или менеджером проектов, то знание программирования поможет вам разобраться, за что отвечает программист, сколько времени уходит на создание простого проекта и почему невозможно поставить кнопку там, где вы хотите. В таком случае попробуйте освоить языки разметки HTML и CSS и разместить свой первый сайт в интернете. В Яндекс.Практикуме есть бесплатный вводный курс «Основы HTML, CSS, JS», на котором вы напишете свой первый веб-проект на JavaScript.
Начни с алгоритмизации. Научись создавать алгоритмы и попутно изучай архитектуру ПК и ОС). Ну, а затем определись, в какой сфере ты бы хотел применить свои знания, и исходя из этого определишься с средой и языком программирования. Удачи!).
Сразу оговорюсь, я не программист, а системный администратор, однако в программировании разбираюсь и это мне очень помогает в работе. Если вы ещё новичок, то не надо сразу заниматься программированием на серьёзных языках, изучите основы. Это не так просто, это серьёзный навык, который требует терпения и настойчивости. Проблемв в нашем русском языке, это не самый логичный язык, но думаем о мы на нем. Поэтому и в голове, что должно переключиться, на правильное понимание логики, это возможно только упорном работе, над своей программой. Когда пишешь свою программу неизбежно возникают ошибки, которые надо разрешить, после этого и возникает понимание. Лично я совету изучить работы со скриптами bat или cmd. Команд не много, серьёзную программу не напишешь, но можно автоматизировать много задач. Кроме того часто требуется автоматизировать процесс работы в уже готовой программе, а не писать новую. В это может помощь интересную продукт и AutoIt, который то же является языком программирования. После этого к вам придёт осознание принципа работы при программировании и можно изучить любой другой язык.
Начните с простейшего языка программирования - Microsoft Small Basic. Он самый простой и удобный для новичка. Начинайте изучение всегда с простого и двигайтесь к сложному. После освоения Small Basic можно приступать к более популярным и продвинутым языкам программирования. Если начинать со сложного языка, а не с простого, есть большая вероятность забросить обучение и разочароваться, так ничего и не освоив. Вот сайт с описанием и бесплатными учебными материалами на русском языке: http://small-basic.ru/
Учась в универе "на программиста" и работая в разных компаниях. я заметил, что это зависит от типа человека. У каждого своя история. Некоторые просто не могут начать изучать языки и сразу учиться писать программы путем слепого повторения за ведущим курса по программированию, без понимания, что происходит после нажатия кнопки "Запуск программы", им обязательно хочется знать "как это устроено", такому типу людей, вероятно, необходимо начать с "азов".
Другие же получают больше драйва, когда слепо повторяют за спикером, сталкиваются с проблемами, ищут готовые решения в комментариях к курсу, в гугле, где-то еще и радуются когда все завелось, эта энергия драйвит их на следующий шаг и так далее.
Поэтому, я думаю тут нужно попробовать так и так и посмотреть в каком случае у вас не будет отвращения, а будет вовлечение, в таком случае вы быстрее войдете в программирование, а дальше уже со всем разберетесь постепенно.
Необязательно учиться в университете, но необходимо закончить приличные курсы, чтобы научиться мыслить алгоритмически, понимать такие концепции, как абстракция, алгоритмы, структуры данных, инкапсуляция, управление ресурсами, безопасность, а после познакомиться с языками C, Python, JavaScript, CSS и HTML