И всё же, как уйти в то самое "IT"?
Начать стоит с того, какой смысл люди вкладывают в слово "IT" при произношении.
По моему опыту, для большинства это означает исключительно профессию разработчика (того самого человека, который пишет код).
Но дело в том что данная сфера охватывает огромный пласт профессий, начиная от тестеров и заканчивая Project manager'ами с аниматорами, которые в глаза код не видят, и никакого отношения к нему не имеют.
Но т.к. никому не будет интересно читать о копирайтерах или тестерах, я напишу о тех самых "программистах".
Кто они(?), что их работа из себя представляет(?), и что получается на выходе(?) на все эти вопросы я попытаюсь ответить. Шучу.
Эти вопросы ведь унылые, согласитесь. Интересна ведь не сама профессия и её суть, а пресловутые три с половиной тысячи вечно зелёных в месяц , и звание "программиста".
(Сарказм)
Намного интереснее узнать, с чего начать непосредственно ваш "уход" в эту область.
Для начала стоит определиться, как же правильно называется эта профессия.
"Программист" — это просто древнее слово типа "доктор" которое не несёт, по сути, никакой конкретики. Зачастую люди, не желая объяснять чем они занимаются, говорят "Я — программист", видимо ориентируясь на аудиторию, которая абсолютно не в теме. Людей, которые имеют отношение к данной сфере это кстати, напрягает — типо ответили, но ничего не сказали толком. При этом часто подобное можно услышать и от школьников, которые научились делать сайт в конструкторе, а теперь стараются козырнуть.
"Разработчик ... (с уточнением чего и на чём)" — это уже конкретнее. При этом многих "разработчиков" к оным причислять вообще не за что, они даже к коду отношения не имеют.
Теперь, когда мы уже определились, что человека пишущего код правильнее называть разработчиком а не программистом, можно приступить к перечислению основных направлений в этой профессии:
Разработка web-приложений
Web разработку можно разделить на backend (написание серверных скриптов – PHP, Python, Ruby) и frontend (разработка юзерского интерфейса – Javascript, HTML, CSS).
Разработка desktop-приложений
Разработка ПО для различных ОС
Хотите написать свой обработчик фотографий, аудио-плеер или текстовый редактор, тогда вам сюда.
Разработка серверных приложений
Это создание комплекса решений, отвечающих за оперативное и устойчивое взаимодействие баз данных и ПО.
Разработка мобильных приложений
(Android, IOS) В основном спользуются такие языки, как ObjectiveC и Swift для IOS, и Java для Android.
Программирование встраиваемых систем
Отрасль программирования для различной техники: пылесосы, холодильники, стиральные машины, навигаторы и т.д.Используются такие языки, как C++, Java, Python, JavaScript, и т.д.
Системное программирование
Написание различных драйверов для оборудования, программирования «ядра» операционных систем. Используются такие языки, как C++, Java, Swift, Ruby и и т.д.
Разработка игр
Чтобы начать разработку, вам необходимо иметь хотя бы базовые навыки программирования. В частности, для движка Unity нужно знание языка C#, а для движка Unreal Engine нужно знание языка C++.
Программирование для финансовых и бухгалтерских продуктов
«1С: Предприятие» вся бухгалтерия в России завязана на этом продукте. Плюс в том, что без работы точно не останетесь.
Программирование баз данных
В разработке используются большое количество языков, таких как:SQL, Python, Perl.
И вот, мы уже знаем все основные направления и какие языки являются основными для них. И даже определились с тем, чём именно мы хотим заниматься, например backend.
Определяемся с языком, который лучше всего нам подходит:
Для подавляющего большинства проектов в техническом плане не имеет значения выбор языка разработки. На российском рынке для веб-проектов наиболее популярен PHP, после него идут Java, Ruby, Python и языки наиболее часто используемые в ASP. NET проектах (VB, C# и С++).
Допустим это будет PHP, язык весьма неплох, но его экосистема и особенности кадрового рынка делают PHP не самым лучшим выбором для разработки сложных проектов. Хотя порог вхождения довольно низкий.
Потому возьмём пожалуй не самый лёгкий, но довольно широко используемый язык, а именно – Python.
Начать изучение Python, как и любого языка программирования стоить начать с синтаксиса, а именно :
операции с целыми и вещественными числами;
типы данных;
переменные, ветвления, стандартный ввод/вывод;
логические операции, операции сравнения;
условия: if, else, elif;
блоки, отступы;
строки и символы;
циклы while, for;
операторы break, continue;
установка и подключение модулей;
списки;
функции;
словари;
интерпретатор: установка, запуск скрипта;
файловый ввод/вывод.
После этого можно приступить к прочтению литературы.
Часто рекомендуют Марка Литца, и его "Учим Пайтон", а после этой книги можно уже приступить к чему-то более продвинутому, вроде "Python 3 и PyQt 5. Разработка приложений." 2 издательства. Ну и самое главное, это как можно больше практики.
Как можно больше писать собственные приложения.
В общем, с остальными направлениями так же, можно вывести общую формулу для данной индустрии:
1. Выбираете направление (frontend, backend, mobile или что-либо еще из вышеперечисленного)
2. Овладеваете базовым знанием необходимых инструментов для данного направления (для фронтенда - это, например, JS, HTML, CSS, jQuery, для бекенда - тут вариантов очень много, очень часто берут PHP и Python)
3. Пилите парочку приложений по видеоурокам а-ля how to build messenger with PHP. По ходу видеоуроков, возможно, придется столкнуться с git, composer, какими-то фреймворками. Будет полезно.
4. Начинайте искать работу, на собеседованиях вас скорее всего завалят, но есть шансы, что возьмут. Тогда-то и начнется настоящее обучение.
Ну и немаловажным является общение с такими же учащимися, и общение с "наставником", человеком работающим в этой сфере, который может ответить на все ваши вопросы. Наличие такого человека среди ваших друзей/знакомых даёт неплохой буст в изучения языка.
Канал, в котором я вскоре буду описывать пошагово изучение C++/Python, собирать таких же учащихся и возможно товарищей, которые уже длительное время в индустрии :
t.me/suixide2001


