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