Это отличный вопрос, самой пришлось потратить на его решение много времени. Очень большой выбор курсов, но к сожалению, действительно хорошие курсы можно пересчитать по пальцам. Очень много халтурщиков.
Важно понять главное . Программирование нельзя освоить наскоком, за пару недель или пару месяцев. Необходимо настроиться на систематическое и достаточно длительное обучение. Необходима практика. Лучше под контролем хорошего наставника. Книги - да, но это вариант для самых мотивированных, таких людей очень мало - 1-2%. Остальным, большинству из нас, как ни крути, нужен наставник.
Выбрать, на мой взгляд, лучше те курсы программирования, которые ведут люди из компаний-техногигантов - Яндекс, Гугл, Мэйл.ру и других крупных ИТ-компаний.
В самом начале обучения программированию подойдет Stepik.ru . Он в меру серьезный, в меру развлекательный, что очень хорошо подойдет именно новичкам. Из крупных известных платформ подойдет Coursera.com, но там слишком много курсов, легко потеряться.
Если Вы джуниор, имеете уже опыт программирования, то подойдет Otus.ru - это уже серьезный проект, со сложными домашними работами, для тех, кто хочет стать middle или senior developer; он уже для тех, кто мечтает работать в ИТ-индустрии.
Интересно будет Otus.ru посмотреть и изучить))
Для начала выбери INTUIT. Там большое количество курсов можно пройти бесплатно. https://www.intuit.ru/
Вопросы, которые возникнут по ходу прохождения курсов, можно обсудить с кураторами, наставниками и другими студентами.
Хорошие курсы у Яндекс Практикума. Самое удобное, что можно бесплатно попробовать и понять нравится или нет. Не только теория, но и практика, а то на обычных курсах практики, как правило, маловато.
Для начала вы можете выбрать для себя онлайн-курсы, но такой курс, после прохождения которого получите сертификат. В частности, могу посоветовать тут affspot ru/online-kursy/ лучшие варианты для себя присмотреть.