Первые мысли о том, чтобы стать программистом, начали зарождаться с той или иной периодичностью многие годы назад. Но, к моему огорчению, дальше складирования гигабайтов самоучителей, книг и полезных ресурсов на жестком диске мое обучение не продвинулось.
Все начало меняться в марте 2020 года, когда я твердо решил, что дальше нельзя откладывать и либо сейчас я начинаю, либо я откидываю эту мысль раз и навсегда.
Все начало меняться в марте 2020 года, когда я твердо решил, что дальше нельзя откладывать и либо сейчас я начинаю, либо я откидываю эту мысль раз и навсегда.
👍1
Самый популярный вопрос, который становится перед людьми, решившими изучать программирование: “Какой язык программирования (ЯП) выбрать?”.
Может сложиться ощущение, что выбираешь свою будущую судьбу (а это нелегкий выбор), и, сломав на этом вопросе голову, с грустью откладываешь изучение программирования на лучшие времена. Так происходило со мной.
Может сложиться ощущение, что выбираешь свою будущую судьбу (а это нелегкий выбор), и, сломав на этом вопросе голову, с грустью откладываешь изучение программирования на лучшие времена. Так происходило со мной.
Моя основная деятельность - информационное моделирование зданий. Звучит красиво и есть определенный в ней шарм, но сейчас я понял, что уперся в некий потолок, преодолеть который мне сможет помочь только кардинальная смена деятельности. Тем не менее, имея неплохой достаток в крупной строительной компании, и довольно здравый рассудок, у меня также был и страх потерять то, что имел и не получить то, что желал.
<Рассуждения о работе отбрасывают нас на несколько лет назад, но они необходимы для понимания, как мы оказались там, где сейчас.>
Наверное, можно сказать, что мне повезло. В своей повседневной работе я увидел непаханное поле того, что можно автоматизировать на благо компании. Автоматизация, как оказалось, бывает разная:
1) Строительная программа, в которой я работал, предлагала расширить имеющийся функционал при помощи визуального программирования. То есть фактически ты программировал, но уже из готовых блоков, как в детстве складывают из кубиков башню, ты мог из этих блоков составить работающий алгоритм, автоматизирующий рутинные операции. Я сразу стал этим заниматься и даже преуспел в рамках компании.
2) Когда готовых блоков стало мало, я стал искать другие возможности, и быстро понял, что такие готовые блоки, которые я использовал, можно писать самому, используя уже ЯП - Python! Конечно, я не мог писать на Python, но я мог создавать свои блоки, заглядывая внутрь чужих и делая по аналогии. Чуть позже я изучил, как писать самому простенькие блоки, это уже было круто и начинало вызывать интерес. Тем не менее, я понимал, что это неполноценное программирование и потолок тоже видел, хоть он был и выше.
3) Изучив глубже вопрос по автоматизации строительной программы, я также узнал, что существуют еще макросы и даже полноценные плагины, но их нужно уже писать на C#. Вот здесь я и стал колебаться между двумя языками: Python или C#? Из-за чего даже стал прокрастинировать и забросил оба. Опять погряз в ежедневной и монотонной рутине.
4) Шло время, ничто не стояло на месте и наш отдел стал расширяться. Мы набрали несколько программистов, которые стали делать Web-приложение для наших строительных нужд. Когда стали появляться первые рабочие версии, то я понял, насколько крут Web и загорелся создать свое Web-приложение, но уже для своих задач в рамках компании.
Наверное, можно сказать, что мне повезло. В своей повседневной работе я увидел непаханное поле того, что можно автоматизировать на благо компании. Автоматизация, как оказалось, бывает разная:
1) Строительная программа, в которой я работал, предлагала расширить имеющийся функционал при помощи визуального программирования. То есть фактически ты программировал, но уже из готовых блоков, как в детстве складывают из кубиков башню, ты мог из этих блоков составить работающий алгоритм, автоматизирующий рутинные операции. Я сразу стал этим заниматься и даже преуспел в рамках компании.
2) Когда готовых блоков стало мало, я стал искать другие возможности, и быстро понял, что такие готовые блоки, которые я использовал, можно писать самому, используя уже ЯП - Python! Конечно, я не мог писать на Python, но я мог создавать свои блоки, заглядывая внутрь чужих и делая по аналогии. Чуть позже я изучил, как писать самому простенькие блоки, это уже было круто и начинало вызывать интерес. Тем не менее, я понимал, что это неполноценное программирование и потолок тоже видел, хоть он был и выше.
3) Изучив глубже вопрос по автоматизации строительной программы, я также узнал, что существуют еще макросы и даже полноценные плагины, но их нужно уже писать на C#. Вот здесь я и стал колебаться между двумя языками: Python или C#? Из-за чего даже стал прокрастинировать и забросил оба. Опять погряз в ежедневной и монотонной рутине.
4) Шло время, ничто не стояло на месте и наш отдел стал расширяться. Мы набрали несколько программистов, которые стали делать Web-приложение для наших строительных нужд. Когда стали появляться первые рабочие версии, то я понял, насколько крут Web и загорелся создать свое Web-приложение, но уже для своих задач в рамках компании.
Я увидел для себя 3 варианта:
1) Бросить работу и закрыться на месяцы для интенсивного изучения ЯП, а также подготовки к собеседованиям в надежде устроиться в айти-компанию на самую младшую должность.
2) Продолжать работать и в свободное время активно изучать программирование для автоматизации задач компании в надежде, что это будет замечено руководством и можно будет пересмотреть мои обязанности на текущем месте, а может, и должность в случае успеха на этом поприще.
3) Ничего не менять и забыть о программировании.
1) Бросить работу и закрыться на месяцы для интенсивного изучения ЯП, а также подготовки к собеседованиям в надежде устроиться в айти-компанию на самую младшую должность.
2) Продолжать работать и в свободное время активно изучать программирование для автоматизации задач компании в надежде, что это будет замечено руководством и можно будет пересмотреть мои обязанности на текущем месте, а может, и должность в случае успеха на этом поприще.
3) Ничего не менять и забыть о программировании.
3-ий вариант мне показался странным и трусливым, но он все равно возник. Про 1-ый я серьезно думал, но рисков было много, зная текущий бум на айти рынке. Интуиция подсказывала, что лучше всего пробовать золотую середину и я остановился на 2-ом.
Выбрав для себя ЯП C#, так как перспектив я в нем видел гораздо больше, я начал свое восхождение.
За точку отсчета будем брать 06.03.20 - день, когда я зарегистрировался для участия в конкурсе: “Интенсив по программированию на C# с возможностью дальнейшего трудоустройства.” - такую возможность предлагала крупная айти-компания, специализирующаяся на разработке ПО.
Выбрав для себя ЯП C#, так как перспектив я в нем видел гораздо больше, я начал свое восхождение.
За точку отсчета будем брать 06.03.20 - день, когда я зарегистрировался для участия в конкурсе: “Интенсив по программированию на C# с возможностью дальнейшего трудоустройства.” - такую возможность предлагала крупная айти-компания, специализирующаяся на разработке ПО.
Для фиксации: на момент 06.03.20 мои знания по C# были равны нулю, я не смог бы даже текст вывести на консоль. Но я очень хотел пройти успешно тест и попасть на интенсив. Тест нужно было пройти до 18 марта. Но что-то пошло не так и я начал готовиться лишь за 5 дней до дедлайна.
Для подготовки я использовал следующие ресурсы:
1) https://metanit.com/ - Сайт очень крутой и содержит много полезной информации и не только по C#.
2) https://itvdn.com/ - Портал, на котором собрано большое множество видеокурсов. Мне понравилась подача материала и в частности лектор, который ведет курсы по C# (смог ознакомиться с бесплатными видеоуроками с ним). Приобрел доступ к порталу на 1 год, посчитал, что так будет выгоднее.
Все в совокупности помогло мне сдать тест на 65%. К моему разочарованию, проходной был от 75%.
#ресурсы
Для подготовки я использовал следующие ресурсы:
1) https://metanit.com/ - Сайт очень крутой и содержит много полезной информации и не только по C#.
2) https://itvdn.com/ - Портал, на котором собрано большое множество видеокурсов. Мне понравилась подача материала и в частности лектор, который ведет курсы по C# (смог ознакомиться с бесплатными видеоуроками с ним). Приобрел доступ к порталу на 1 год, посчитал, что так будет выгоднее.
Все в совокупности помогло мне сдать тест на 65%. К моему разочарованию, проходной был от 75%.
#ресурсы
Следует отметить еще 2 важных события, произошедших в марте, которые повлияли на мое дальнейшее становление, как программиста:
1) 10 марта мой друг пригласил меня на День открытых дверей в некий “буткемп”, побывав на котором, я узнал, что за 3 месяца и 170 000 рублей из меня обещают сделать JavaScript разработчика, который получит свой первый оффер (предложение о работе) уже после окончания 3 месяцев. Звучало это очень соблазнительно для тех, кто хотел полностью перейти в другую профессию, но здравый смысл слишком громко возмущался этой (на мой взгляд) астрономической сумме за образовательный курс. Свою роль определенно сыграл и выбранный мною раннее C#, так как JavaScript я никак изучать не планировал, тем более за такие деньги. Также я понимал, что за 3 месяца можно натаскать определенным навыкам, но нельзя выработать определенный тип мышления и дать полноценные знания, с которыми было бы нестыдно прийти на собеседование. Поэтому я довольно быстро забыл про этот “кэмп”.
2) Примерно в то же время я познакомился с Сергеем Бобровским и его Высшей Школой Программирования (далее СБВШП), которая оказала и продолжает оказывать на меня благоприятное влияние: https://vk.com/lambda_brain
#ресурсы
1) 10 марта мой друг пригласил меня на День открытых дверей в некий “буткемп”, побывав на котором, я узнал, что за 3 месяца и 170 000 рублей из меня обещают сделать JavaScript разработчика, который получит свой первый оффер (предложение о работе) уже после окончания 3 месяцев. Звучало это очень соблазнительно для тех, кто хотел полностью перейти в другую профессию, но здравый смысл слишком громко возмущался этой (на мой взгляд) астрономической сумме за образовательный курс. Свою роль определенно сыграл и выбранный мною раннее C#, так как JavaScript я никак изучать не планировал, тем более за такие деньги. Также я понимал, что за 3 месяца можно натаскать определенным навыкам, но нельзя выработать определенный тип мышления и дать полноценные знания, с которыми было бы нестыдно прийти на собеседование. Поэтому я довольно быстро забыл про этот “кэмп”.
2) Примерно в то же время я познакомился с Сергеем Бобровским и его Высшей Школой Программирования (далее СБВШП), которая оказала и продолжает оказывать на меня благоприятное влияние: https://vk.com/lambda_brain
#ресурсы
🔥1
Март 2020:
❌ Не набрал проходной балл для отбора на Интенсив по C#
✅ Завершил Стартовый курс C# // itvdn
✅ Завершил курс Системы контроля версий (Git) // хекслет
#результаты
❌ Не набрал проходной балл для отбора на Интенсив по C#
✅ Завершил Стартовый курс C# // itvdn
✅ Завершил курс Системы контроля версий (Git) // хекслет
#результаты
В апреле для меня было очень важным шагом - попадание в группу к Сергею Бобровскому на занятия по Алгоритмам и структурам данных.
Занятия сами по себе специфичные: на каждое занятие дается выжимка теории по конкретной структуре данных, а в самом конце - задание, которое просит тебя реализовать ее на выбранном ЯП (я реализовывал на C#, можно также на: C++, Java, Python).
Занятия сами по себе специфичные: на каждое занятие дается выжимка теории по конкретной структуре данных, а в самом конце - задание, которое просит тебя реализовать ее на выбранном ЯП (я реализовывал на C#, можно также на: C++, Java, Python).
Апрель 2020:
В апреле я прочитал две книжки по теме (к сожалению, в обоих примеры рабирались на Python):
✅ “Грокаем алгоритмы” (Бхаргава Адитья)
// книга не понравилась 👎 (слишком поверхностная и даже детская показалась, но читается легко и примерны наглядные)
✅ “Сам себе программист. Как научиться программировать и устроиться в Ebay” (Кори Альтхофф) // книга понравилась 👍 (многие вещи описаны очень бегло, но ценной информации достаточно для такого малого объема книги)
#результаты
В апреле я прочитал две книжки по теме (к сожалению, в обоих примеры рабирались на Python):
✅ “Грокаем алгоритмы” (Бхаргава Адитья)
// книга не понравилась 👎 (слишком поверхностная и даже детская показалась, но читается легко и примерны наглядные)
✅ “Сам себе программист. Как научиться программировать и устроиться в Ebay” (Кори Альтхофф) // книга понравилась 👍 (многие вещи описаны очень бегло, но ценной информации достаточно для такого малого объема книги)
#результаты
Май 2020:
✅ Завершил первую часть курса по Алгоритмам и структурам данных // СБВШП
✅ Пополнил GitHub решенными задачами: https://github.com/ilyich1/AlgorithmsDataStructures
✅ Научился использовать Bash для взаимодействия с GitHub.
#результаты
✅ Завершил первую часть курса по Алгоритмам и структурам данных // СБВШП
✅ Пополнил GitHub решенными задачами: https://github.com/ilyich1/AlgorithmsDataStructures
✅ Научился использовать Bash для взаимодействия с GitHub.
#результаты
Каждый месяц я буду обновлять счетчик по прочитанным книгам, затраченному на программирование времени и потраченных деньгах в тысячах рублей.
Чем занимаюсь сейчас:
📕 “Код: Тайный язык информатики” (Чарльз Петцольд)
📕 “Программирование на C# для начинающих. Основные сведения” (Васильев Алексей Николаевич)
💻 Базовый курс по C# // itvdn
🧿 Базы данных // Geekbrains
🧿 Beб-технологии: уязвимости и безопасность // Geekbrains
🧿 Операционные системы // Geekbrains
#процесс
📕 “Код: Тайный язык информатики” (Чарльз Петцольд)
📕 “Программирование на C# для начинающих. Основные сведения” (Васильев Алексей Николаевич)
💻 Базовый курс по C# // itvdn
🧿 Базы данных // Geekbrains
🧿 Beб-технологии: уязвимости и безопасность // Geekbrains
🧿 Операционные системы // Geekbrains
#процесс
Отмечу: то, что предоставляет Geekbrains, мне совершенно не нравится (материал дается очень бегло и поверхностно). Подобные площадки делают массовый продукт, нацеленный на широкую публику и на получение прибыли.
Данные 3 курса попали сюда только потому, что из-за пандемии они раздавались бесплатно в начале марта. В нормальных условиях каждый стоит около 10 000 рублей, что на мой взгляд неоправданно от слова совсем (говорю так, потому что есть более достойное приложение этих денег).
По моему опыту, всегда работает правило: чем громче рекламируют продукт, тем пользы от него меньше. Всегда нужно стараться искать «уникальное», а оно никогда не будет массовым.
Данные 3 курса попали сюда только потому, что из-за пандемии они раздавались бесплатно в начале марта. В нормальных условиях каждый стоит около 10 000 рублей, что на мой взгляд неоправданно от слова совсем (говорю так, потому что есть более достойное приложение этих денег).
По моему опыту, всегда работает правило: чем громче рекламируют продукт, тем пользы от него меньше. Всегда нужно стараться искать «уникальное», а оно никогда не будет массовым.
Изучение нового - это, конечно, очень хорошо, но основную работу никто не отменяет. По этой причине приходится отвлекаться на изучение API программы, с которой сталкиваюсь ежедневно на работе, чтобы как можно скорее был виден практический результат.
This media is not supported in your browser
VIEW IN TELEGRAM
Мой первый результат программирования на C# и взаимодействия с API программы Autodesk Revit, который можно увидеть и “потрогать”.
https://archi-lab.net/ - англоязычный сайт разработчика популярных плагинов для Autodesk Revit, благодаря которому мне удалось написать свою первую кнопку внутри программы, строго соблюдая инструкции.
#ресурсы
#ресурсы
Июнь 2020:
✅ Прочитал “Программирование на C# для начинающих. Основные сведения” (Васильев Алексей Николаевич) // 👍 - грамотное изложение: по существу и без воды (не раз во время прочтения возникал какой-либо вопрос по материалу, но буквально через страницу автор давал развернутый ответ почему именно так, а не иначе); с нетерпением приступаю ко второй книге автора
✅ Написал кнопку для программы Autodesk Revit (первые шаги по взаимодействию со сторонним API). Кнопка располагается на ленте со всеми инструментами, на которую можно нажать и вызвать диалоговое окно (https://news.1rj.ru/str/time2code/42)
#результаты
✅ Прочитал “Программирование на C# для начинающих. Основные сведения” (Васильев Алексей Николаевич) // 👍 - грамотное изложение: по существу и без воды (не раз во время прочтения возникал какой-либо вопрос по материалу, но буквально через страницу автор давал развернутый ответ почему именно так, а не иначе); с нетерпением приступаю ко второй книге автора
✅ Написал кнопку для программы Autodesk Revit (первые шаги по взаимодействию со сторонним API). Кнопка располагается на ленте со всеми инструментами, на которую можно нажать и вызвать диалоговое окно (https://news.1rj.ru/str/time2code/42)
#результаты