Программирование как хобби, как делать по уму?
Комментарий выше призван отбить желание программировать.
Я рекомендую использовать C#, и начинать с небольших программ для себя. Эти первые программы призваны ознакомить вас с синтаксисом, после базы можно начинать ООП, можете посмотреть на моём канале.Ссылка
После освоения ооп стоит задуматься об оптимальности написаного кода, в этом помогут SOLID принципы, но я могу гарантировать что с практикой половина из них приобретается сама. После чего рекомендую либо продолжать делать свои проекты но больших маштабов, либо пойти пофрилансить (я пошел фрилансить 1.5-2 года).
Примерно такой путь прошел я начиная с 15 лет, это видно на моём канале, в 18 я пошел на работу, и знания были на столько крепкими, что до миддла мне не хватало только знание процессов коммандной разработки.
Это придет только с опытом. Я тоже задавался этим вопросом как правильно, но это можно понять только с опытом. Не одного рецепта, зависит от многих факторов.