Как самостоятельно стать программистом с нуля

Внесите свой вклад в сообщество с открытым исходным кодом

Когда вы вносите свой вклад в сообщество с открытым исходным кодом, это расширяет ваши возможности

«Когда вы вносите свой вклад в проект, обратите внимание на обратную связь, которую вы получаете от пользователей и других разработчиков», — добавил Техада

Когда вы отдаете что-либо обществу, убедитесь, что вы также пользуетесь возможностью получать в ответ!

«Признайте, насколько важно взаимодействовать с вашим профессиональным сообществом, но также долго и упорно думайте о том, какой вы хотите видеть свою роль в данном месте», — сказал Чарли Роббинс, директор по инженерным вопросам GoDaddy и бывший член совета директоров компании. Node.js Foundation

Вместо того чтобы гоняться за славой суперзвездного разработчика, убедитесь, что вы выступаете на конференциях, пишете посты в блогах и участвуете в проектах наставничества, которые на самом деле вызывают у вас страсть!

Обмен идеями и изучение новых вещей из вашего сообщества может помочь избежать выгорания, но только если вы подходите к нему по-настоящему с интересом.

8 | У вас ограниченное, узкое и беспорядочное мышление

Если ваше мышление ограничено, и вам сложно содержать в порядке код, а также ваши мысли, вам никогда не стать успешным программистом.

В учениках я иногда замечаю две крайности. Первая — это ограниченное и узкое мышление. Такие ученики не принимают помощь, и ничего не меняют, несмотря на советы. Они видят ситуацию только с одной стороны и игнорируют все предложения. 

Вторая крайность — это беспорядочное мышление. Такие ученики всё слишком усложняют, их код слишком запутанный и непонятный. Они начинают мудрить и пишут 100 строчек кода, когда хватило бы и 10.

В комбинации эти два образа мышления дают ограниченный подход к программированию, что-то вроде метода “грубой силы”, который ведет к появлению всё новых фиксов и “костылей”. В таком случае нужно вернуться к решению задачи, повторно его проанализировать, отказаться от первоначального подхода и начать всё заново.

Если вы не видите других вариантов решения или не слушаете советов, вы на корню рубите свою возможность расти и развиваться. Беспорядочное мышление замедляет вашу работу и не позволяет вам увидеть решения, которые в иной ситуации были бы очевидны. И в итоге общее качество вашей работы снижается.

Самоанализ: Вы должны сделать шаг назад и посмотреть в общем на то, как вы подходите к решению задачи. Как вы можете улучшить свой подход? Есть ли у вас возможность упростить себе жизнь? Возможно, вы упускаете что то полезное.

Факторы, влияющие на зарплату программиста

Помимо умения работать на языке программирования и добиваться нужного результата есть и другие факторы. Среди них:

  • Основной язык программирования и опыт работы на нем;
  • Знание английского языка (чаще всего требуют не ниже среднего);
  • Образование и желание работать над собой;
  • Политика компании.

В России, к сожалению, программисты не могут зарабатывать как программисты в США или Европе, где средняя зарплата составляет 21 — 25 тысяч долларов. Но даже, чтобы выйти на такой уровень, программист должен быть в этой сфере уже не первый год. Компании предпочитают брать в свой штат специалиста минимум с трехлетним опытом. Если сравнивать этот гонорар с другими странами мира, то программист из России будет занимать позицию в середине таблицы.

Для тех, кого интересует сколько зарабатывает программист в месяц, приводим основные IT-специальности:

  • ведущий специалист зарабатывают от 150 до 600 тысяч в месяц рублей;
  • Java программисты имеют месячный доход от 100 до 200 тысяч;
  • Программисты 1С получают зарплату около 50 тысяч;
  • PHP программисты от 30 до 120 тысяч;
  • сисадмин в России зарабатывает в пределах от 35 до 50 тысяч;
  • программисты C++ имеют гонорар до 80 до 200 тысяч.

Какую зарплату предлагали ИТ-специалистам в 2016-2018 гг

По данным Яндекс.Практикума и аналитической службы HeadHunter, 2018

Меньше всех зарабатывают программисты на Flash: размер их зарплаты в пределах 20 тысяч рублей. Связано с тем, что данный язык программирования становится все менее актуальным. А вот программисты 1С все больше востребованы в России и странах СНГ. Для США и большинства стран Европы самым востребованным языком программирования является Python.

Знание английского языка

Умение работать с документами и знание английского языка прибавит к доходу программиста около 20%. Но это зависит от сотрудничества компании с европейскими партнерами. Английским языком на высоком уровне владеют примерно 70% программистов, а около 30% — еще одним иностранным языком.

Образование

Диплом ВУЗа не гарантирует должность в хорошей компании на приличной зарплате. Работодатели смотрят, в первую очередь, на опыт и предыдущие проекты. Для сравнения: новичок в IT не сможет зарабатывать выше 100 тысяч (если у него нет богатого портфолио и отличных навыков), а достаточно опытный специалист с десятками проектов может выйти на доход от 150 тысяч рублей в месяц.

Опыт работы

Сколько зарабатывает программист в России зависит от его опыта и компании, в которой он работает. Больше всех зарабатывает директор — он руководит работой специалистов и отвечает за работоспособность ПО, на втором месте находятся IOS — разработчики и главные инженеры по данным hh.ru — их заработная плата чуть меньше.

Зарплата и требуемый опыт работы в разных специальностях

По данным Яндекс.Практикума и аналитической службы HeadHunter, 2018

Также требования к опыту работы различаются в разных городах России. Ниже приведены данные исследований Яндекс.Практикума и компании HeadHunter в прошлом году.

Зарплата и требуемый опыт работы в больших городах

По данным Яндекс.Практикума и аналитической службы HeadHunter, 2018

Как поступить в университет?

Процедура такая же, как и для поступления в колледж: выберите понравившийся ВУЗ, изучите перечень документов и специальностей, и в период приема документов подайте заявку и документа. После подачи заявления, может потребоваться пройти дополнительное собеседование или тестирование. В определенное время будут размещены результаты приемной комиссии и абитуриент сможет узнать, принят он в университет или нет.

Программа обучения

В университетах довольно много направлений, которые позволяют выучиться на IT-шника.

Вот некоторые из них:

  • Администрирование систем и математическое обеспечение.
  • Информационные технологии.
  • Фундаментальная информатика.
  • Вычислительная техника и информатика.
  • Программная инженерия.

Для каждой специальности своя программа обучения, которую нужно уточнять в соответствующем ВУЗЕ.

Формы, срок обучения

В разных университетах сроки могут отличаться, но в среднем необходимо проучиться 4 года. Форм обучения две — очная и заочная. В некоторых ВУЗах может быть и очно-заочная или вечерняя форма.

Преимущества работы

Первое, это, конечно же, достойная заработная плата. В данной сфере труд высококлассных специалистов оплачивается весьма неплохо. Зарплаты тут гораздо выше средних. Опытный специалист в месяц может получать от 60 до 100 тысяч рублей.
Высокий спрос. Многие компании осознают необходимость привлечения программистов, которые помогут улучшить бизнес и поднять показатели. Помимо этого, на рынке большое количество компаний, которые работают конкретно с программистами. Перед новичками предстает огромное поле действий — найти место не составит большого труда, но постараться, чтобы найти более выгодные условия, все же придется.
Свободный график. У многих компаний есть возможность трудоустройства с рабочим графиком. Это отличная возможность планировать свой день так, как хотелось бы

Важно успевать сдавать проекты вовремя, а когда сотрудник будет выполнять свою работу — не так уж важно. Но некоторые работодатели все же настаивают на физическом присутствии работников в офисе компании.
«Свобода» творчества

Привилегия обучения в том, что есть большой выбор направлений, в которых можно себя испробовать. Можно тестировать приложения, создавать игры, операционные системы. Если не нравится одна область, можно за довольно короткий срок переучиться, после начать работу в другой области. Это еще один весомый плюс. Работа приносит удовольствие.
Возможность карьерного роста. Успешных специалистов зачастую ставят по главе отдела или организации. Помимо этого, чем опытнее специалист, тем выше оплачивается его труд. Есть возможность поехать за границу и испробовать свои силы там.

Недостатков у данного направления гораздо меньше, чем преимуществ. Главный недостаток — это неподвижность во время работы. Практически вся работа привязана к компьютеру, что означает сидячий образ жизни. Необходимо следить за уровнем

физической активности и поддерживать состояние здоровья. Еще один недостаток, хотя, скорее всего, преимущество — необходимо постоянно обновлять знания. Техническая сфера постоянно развивается, каждый день появляются новые программы и устройства, поэтому необходимо постоянно отслеживать изменения.

Это не самая легкая профессия, но тем, кто усердно учится и работает, удается приобрести ценный опыт и найти достойное высокооплачиваемое место работы.

Адрес поступления:

Москва, Ленинградский пр-т. д. 80, корп. Г (м. Сокол) Москва, ул. Измайловский вал, д. 2, корп. 1 (м. Семеновская)

Телефон: 8 (800) 100 00 11

График работы приёмной комиссии:Пн — Пт: 09.00−20.00;Сб — Вс: 10.00−17.00.

Специализации программистов

В программировании ценятся не только практические навыки, но и идеи специалиста. Разработчиков можно условно разделить на три крупные категории в зависимости от специализации.

Прикладные программисты

Занимаются в основном разработкой программного обеспечения прикладного характера — игры‚ бухгалтерские программы‚ редакторы‚ мессенджеры и т. п. К области их работы относится создание программного обеспечения для СКД, систем видео- и аудионаблюдения‚ пожаротушения или пожарной сигнализации и т. п. Также в их обязанности входит адаптация уже существующих программ под нужды отдельно взятой организации или пользователя.

Системные программисты

Разрабатывают операционные системы, работают с сетями, пишут интерфейсы к различным распределенным базам данных. Системные программисты относятся к числу самых редких и высокооплачиваемых. Их задача состоит в том‚ чтобы разработать системы программного обеспечения (сервисы)‚ которые‚ в свою очередь‚ управляют вычислительной системой (куда входит процессор‚ коммуникационные и периферийные устройства). Также в список их задач входит обеспечение функционирования и работы созданных систем (драйвера устройств‚ загрузчики и т. д.).

Web-программисты

Тоже работают с сетями, но в большинстве случаев с глобальными, в частности с Интернетом. Web-программисты пишут программную составляющую сайтов, создают динамические веб-страницы, web-интерфейсы для работы с базами данных.

Интересные факты о профессии

День программиста – отмечается 12 сентября. День выбран не случайно и символично: это 256-й день года, а 256 это количество чисел, которые могут быть выражены через восьмиразрядный байт.

Профессия программиста входит в десятку самых востребованных профессий мира.

С четверть всего времени в программировании уходит на размышления о том, что пользователь может сделать не так и как это предотвратить.

Язык программирования Python назван совсем не в честь питонов, хотя иконки, логотипы и повсеместные фанатские изображения изображают именно их. Автор языка любил сериал «Летающий цирк Монти Пайтона» и назвал язык в честь него.

Самый дорогой дефис в истории стоил 135 000 000$, когда благодаря пропущенному дефису в одном из уравнений вскоре после старта потерпел крушение Маринер-1, первый космический аппарат для изучения Венеры.

Программист – не специалист по ремонту компьютеров. Хотя благодаря укоренившимся стереотипам их постоянно просят починить компьютеры и даже бытовую технику.

Женщины занимают всего несколько процентов от общего числа программистов в мире. Обидно, особенно учитывая тот факт, что первым в истории программистом была именно женщина.

Иногда для отладки программы программисты используют так называемый «Метод утёнка», когда перед монитором ставится фигурка утёнка (классический вариант – жёлтый утёнок для купания) и строчка за строчкой ей объясняется, что должна делать программа. Часто такой метод позволяет выявить ошибки, которые пропускаются просто просматривая написанный код.

Самое популярное сейчас По оценкам наших пользователей

8 июня 2021 10231

Проходили 1527 раз

Тест. Какое имя вам подходит?

HTML — код

26 марта 2021 7907

Проходили 599 раз

Тест по электробезопасности (II группа допуска до 1000 В)

HTML — код

30 января 2021 10475

Проходили 206 раз

Тест: Автомобили

HTML — код

1 февраля 2021 32440

Проходили 8647 раз

Тест: Атака титанов

HTML — код

22 июня 2021 4684

Проходили 594 раза

Тест: «В чем ваш талант?»

HTML — код

1 января 2021 14495

Проходили 1140 раз

Угадай фильм по смайликам

HTML — код

2 марта 2021 16114

Проходили 2236 раз

Тест Кибби (Kibbe)

HTML — код

25 марта 2021 18375

Проходили 1867 раз

Тест: «Какой ты покемон?»

HTML — код

19 января 2021 13101

Проходили 1726 раз

Тест: Влюблена ли я?

HTML — код

18 февраля 2021 6489

Проходили 1065 раз

Тест: «Мое будущее. Каким оно будет?»

HTML — код

18 сентября 2021 46

Проходили 6 раз

Тест: Умные слова. Самый большой тест!

HTML — код

29 октября 2020 26126

Проходили 6883 раза

Какая твоя история в Хогвартсе?

HTML — код

4 сентября 2020 10433

Проходили 1081 раз

Угадайте аниме по одному кадру

HTML — код

1 июля 2021 5841

Проходили 743 раза

Тест: Какая у тебя суперспособность?

HTML — код

16 июня 2021 12455

Проходили 2612 раз

Насколько ты хорошо знаешь Friday night funkin

HTML — код

27 февраля 2021 14085

Проходили 1931 раз

Тест: Какой цвет волос мне подойдет?

HTML — код

Показать еще больше

Шаг 3. Изучите основы языка

Программистам приходится решать десятки задач ежедневно. Поэтому для того, чтобы стать программистом с нуля, необходимо развить логические и математические навыки. Старайтесь расширять свой кругозор, решая задачи школьного курса математики и информатики. Читайте книги по синтаксису выбранного языка программирования, участвуйте в городских олимпиадах.

На данном этапе нужно изучить основы языка. Попробуйте написать простейшие программы: калькулятор, календарь или ежедневник. Потренируйтесь в решении задач на сайте «Степик», выбрав язык программирования для изучения.

Какой язык программирования выбрать?

Это зависит от того, чем вы хотите заниматься:

Для тех, кто никогда не имел дела с кодом, лучше всего подходит Python. Его используют и в Data Science и машинном обучении, для создания скриптов в 3D-редакторах и, разумеется, в веб-разработке.

Google использует Python для ранжирования поисковой выдачи, также на нем работают YouTube, Dropbox и Reddit. Еще на этом языке написан фреймворк Django — универсальный инструмент для веб-разработчиков, который отвечает за создание внешнего интерфейса и работу на сервере.

Курс

Fullstack-разработчик на Python с нуля

Научитесь программировать на Python и Javascript и получите востребованную профессию за 15 месяцев. Дополнительная скидка 5% по промокоду BLOG.

Узнать больше

Если вы хотите идти в веб-разработку — определитесь, что вам больше интересно: backend или frontend. Вот, что нужно освоить для каждой специальности: 

Frontend

HTML и CSS — это языки разметки, с помощью которых элементы сайта в браузере встают на нужные места.

Javascript — язык, который добавляет сайту динамику: анимацию нажатия кнопок, движение карточек продуктов, отправку уведомления.

Python — универсальный язык, который подходит для frontend-разработки, а также backend и других интересных задач.

Кроме этого, понадобится базовое знание основ веб-технологий. Например, нужно знать, как работает протокол http или зачем необходимо шифрование данных.

Научиться всему этому можно здесь.

Backend

Go — язык для backend с простым синтаксисом. Подходит для крупных проектов и высоконагруженных приложений, таких как YouTube или Ozon.

PHP — простой в освоении язык, подходит только для backend, но специалисты советуют обратить внимание на более современные инструменты. Java — универсальный язык, который используется уже более 20 лет

Код, написанный на Java, работает одинаково на разных устройствах, что является его базовым преимуществом

Java — универсальный язык, который используется уже более 20 лет. Код, написанный на Java, работает одинаково на разных устройствах, что является его базовым преимуществом.

Научиться этому можно здесь.

Начинающим разработчикам мобильных приложений стоит определиться, с какой операционной системой они будут работать, потому что код для iOS и Android пишется на разных языках.

iOS

Objective-C — язык программирования Apple, который используется в первую очередь для MacOS. Приложения для iOS раньше тоже писали на нем, но теперь мобильные разработчики используют в основном Swift.

Swift — понятный и логичный язык, который отражает главные качества iOS — функциональность и производительность.

Освоить навыки можно здесь.

Android

Java — кроссплатформенный язык для создания мобильных и серверных приложений. На нем также можно писать backend для сайтов.

Kotlin — язык, альтернативный Java, большую часть нового кода сейчас стараются писать именно на нем. Но Java стоит знать для того, чтобы ориентироваться в уже написанном коде, а благодаря совместимости языков код на Kotlin и Java можно миксовать в одном проекте.

Освоить профессию можно здесь.

Курс

Android-разработчик с нуля

Вы освоите программирование и главные навыки мобильного разработчика, подготовитесь к трудоустройству и уже после первых 8 месяцев обучения сможете начать работать по новой специальности. Дополнительная скидка 5% по промокоду BLOG.

Узнать больше

В геймдеве выбор языка зависит от уровня проектов и платформ, с которыми вы хотите работать:

C++ — потребуется, если вы планируете создавать крупные AAA-проекты с фотореалистичной графикой для PlayStation и Xbox. В этом случае обойтись простыми в изучении базовыми языками точно не получится. Подробная статья о С++.

C# (Си-шарп) — язык для движка Unity, разработанный компанией Microsoft. Он особенно популярен в России и считается более простым в освоении, чем C++. Изначально на нем создавались проекты эксклюзивно для ПК, но сейчас код, написанный на C#, можно портировать на Android, iOS, Xbox и другие платформы.

Курс

Разработчик игр с нуля

Научитесь создавать игры на самом востребованном движке Unity и станьте востребованными специалистом. Дополнительная скидка 5% по промокоду BLOG.

Узнать больше

Отнеситесь к проверке кода серьезно

Давно читаешь статьи, но до сих не подписался в группу ВКонтакте? Не мучайся, подпишись.

Обзор кода — это не только эффективный способ найти ошибки, но и отличный способ разжечь дискуссию и поделиться знаниями между членами команды.

«Как рецензент, будьте восприимчивы к конструктивной критике и используйте опыт своих рецензентов, чтобы создать что-то лучшее, чем вы могли бы сделать сами», — сказал Тигран Слоян, генеральный директор CodeFights.

«Как рецензент, оставайтесь конструктивными, но используйте возможность распространять лучшие практики и накопленную мудрость или даже узнать что-то новое из кода, который вы просматриваете».

Цитаты про программистов

Когда кажется, что все уже работает, все объединено в систему — вам еще осталось работы на четыре месяца – Ч. Портман

Генерация случайных чисел — слишком важный вопрос, чтобы оставлять его на волю случая – Р. Ковзю

Ошибка? Это не ошибка, это системная функция – Д. Уэнделл

Пользователь не знает, чего он хочет, пока не увидит то, что он получил – Э. Йодан

Если отладка — процесс удаления ошибок, то программирование должно быть процессом их внесения – Э. Дейкстра

Компьютеры бесподобны: за несколько минут они могут совершить такую грандиозную ошибку, какую не в состоянии сделать множество людей за многие месяцы – М. Мичем

В любой программе есть ошибки – аксиома.

Законы Мерфи для программистов

Сложность программы растет до тех пор, пока не превысит способности программиста.

Чем больше программист делает ошибок, тем быстрее он делается учёным.

Если Вам удалось написать с первого раза программу, в которой интерпретатор не обнаружил ни одной ошибки, то обязательно сообщите об этом системному программисту. Он исправит ошибки в интерпретаторе.

Программист видит ошибки только в чужих программах.

Если написанная программа сработала правильно, то, скорее всего, программист не понял задание.

Работающая над программой команда всегда питает отвращение к еженедельной отчетности о достигнутых результатах, поскольку она слишком явно свидетельствует об отсутствии таковых.

Абсолютно любая программа всегда обходится дороже и требует больших затрат времени, чем предполагалось.

Если программа уже полностью отлажена, то ее нужно будет переделать.

Любая программа стремится занять всю доступную память.

Самая серьёзная ошибка будет выявлена, только лишь когда программа пробудет в производстве как минимум полгода.

Увеличение числа программистов при разработке не укладывающейся в сроки программы только замедляет процесс.

Плохо спланированная программа требует в три раза больше времени, чем предполагалось; отлично спланированная — только в два.

Если программа полезна, то её обязательно придётся переделать.

В любой программе всегда есть ещё одна ошибка.

Решительно невозможно создать программу с абсолютной защитой от дураков, ибо дураки крайне изобретательны.

Если разработка идет хорошо — ждите серьёзных осложнений.

Если кажется, что хуже уже некуда, то вскоре выяснится, что это далеко не так.

Если вам непонятен термин в технической документации, то смело игнорируйте его, смысл от этого никак не пострадает.

Всегда оставляйте место для объяснения того, почему написанная Вами программа работает не так как ожидалось.

Если бы строители возводили здания так же, как и программисты пишут программы, первый же залетевший дятел разрушил бы человеческую цивилизацию до основания.

Как научиться программированию

Итак, вы определились с языком, теперь нужно придумать, как его выучить. А выучить его вам будет не так уж и сложно, как кажется на первый взгляд. У страха глаза велики. Нужно просто приложить усилия и потратить на обучение несколько месяцев. Это не так уж и много на самом деле. Специалисты уже подсчитали, что на изучение programming language нужно в среднем от 6 до 13 недель, если заниматься по 8 часов в день. Если предположить, что вы уже где-то работаете на полный рабочий день, и свободного времени у вас меньше, то это 2-6 месяцев.

Есть еще такая теория как «10,000 hours rule». Она гласит, что в любом ремесле можно стать профессионалом за 10 тысяч часов. Если поделить на 40 часов в неделю, то выйдет около пяти лет. Но это чтобы стать прям экспертом. А для первых серьезных проектов и первой работы достаточно, как мы уже сказали, от нескольких месяцев до полугода.

Где учиться?

  • Книги. У нас в блоге выходила подборка лучших книг для изучения программирования. Рекомендуем к прочтению.
  • Онлайн-курсы. В той же самой подборке о них тоже сказано несколько слов, но если вкратце, то можно заниматься в GeekBrains (рус), Яндекс Практикуме (рус), Codeacademy (англ), Coursera (в основном англ), Skillshare (в основном англ) и так далее.
  • Видеоуроки на YouTube. Есть много хороших бесплатных курсов. В том числе записи уроков из платных видеокурсов прошлых лет — слитых или выложенных самими школами. 
  • Оффлайн школы и тренинги. Это самый дорогой способ научиться программированию, но самый эффективный. Под личным руководством наставника вам будет гораздо проще, ведь не придется задерживаться на одном месте.

Что общее у всего вышеперечисленного? Наличие практики. В хороших учебниках всегда есть разделы с практикой, на онлайн-курсах есть тренажеры или домашние задания. На ютубе вы можете сами попробовать написать программу по туториалу. А на тренингах вы именно этим и будете заниматься большую часть времени. Возможность написать что-то своими руками будет вас мотивировать. В идеале вы должны написать свою первую программу уже на первом, максимум на втором уроке.

Стоит ли поступать в университет, чтобы научиться программировать? Можно, но это вовсе не обязательно. Курс обучения в университете длится от четырех лет. За это время вы спокойно можете выучиться самостоятельно и получить несколько лет опыта. Поступать стоит в том случае, если вы планируете освоить сложную профессию по узкой специальности, и знаете, что в этом конкретном университете вас этому могут научить.

Специфика профессии

У тестировщика свои особенности мышления. Программист на всё смотрит с точки зрения реализации, а тестировщик — со стороны эксплуатации. Программист чаще пишет в позитивном сценарии, а тестировщик исследует в том числе негативный.

Недавно меня спросили, есть ли в профессии тестировщика преимущества, которые позволяли бы временами радоваться, что я не разработчик. Безусловно есть! Ведь каждый отловленный баг программиста — это минус из кармы разработчика, переходящий плюсом в карму тестировщика 🙂

В хорошо отлаженном процессе разработки тестировщик и программист работают на общую цель — выпустить на рынок качественный продукт. Но даже тогда может получиться так, что разработчик воспримет какой-то баг-репорт с долей негатива, как поэт — критику своего произведения. Бывает, что трёхдневный труд разработчика тестировщик бракует за пять минут.

Сейчас для меня огромное преимущество в том, что я нахожусь в окружении разработчиков, от которых могу перенимать знания и продвигаться в автоматизацию тестирования.

У вас математический склад ума

«По своей сути программирование очень похоже на „инженерные специальности“, человек с „математическим складом ума“ может с одинаковым успехом заниматься проектированием колесных машин либо написанием кода. Если из этого исходить, то один из главных признаков того, что у человека есть талант к программированию — это наличие аналитического склада ума, то есть склонности к изучению, анализу и выстраиванию в „законченные формы“ любой информации, которую он получает» — говорит Антон Енакиев, Вице-президент Acronis по разработке.

«Нужно дружить с математикой, как говорил один русский ученый, „она ум в порядок приводит“» — соглашается Сергей Стрелков, руководитель направления собственных разработок компании КРОК.

Любимый вопрос новичков или «насколько программисту нужно знать математику?»

«„Математический склад ума“ в контексте программирования вовсе не синонимичен типичному представлению об „ученом-математике“, которых обычно изображают в фильмах. Программист — это не Рассел Кроу в роли нобелевского лауреата Джона Нэша, погруженный в цифры и постоянную аналитику. В 90-95% своей работы программисты используют только базовый математический аппарат, и лишь в 5-10% задач необходимы глубокие знания математики. Поэтому, мне кажется, что нет особого требования к наличию чересчур глубоких познаний в теории графов или теории вероятности для программиста, но это всегда будет считаться плюсом» — считает Антон Енакиев, Вице-президент Acronis по разработке.

Какая именно нужна математика рассказывает Алексей Светлов, руководитель отдела разработки технического департамента ООО «Стрим»: «Основа программирования — дискретная математика. И хороший программист должен любить и понимать этот предмет. Это база для развития. Математика дисциплинирует человека и учит искать рациональный выход из любого положения. Иначе любая нестандартная ситуация поставит программиста в тупик и он, не найдя ответа на всех известных ресурсах, сложит руки и распишется в своей беспомощности».

«Можно не знать досконально теорию вероятностей и высшую математику, но линейная алгебра должна быть неотъемлемой частью мышления в решении большинства задач или „записана на подкорке мозга“ (как говорят некоторые учителя) — это врожденная грамотность, но в математическом смысле» — считает Воротников Денис, ведущий веб-программист Mercaux Inc. 

Заключение

Подведем итоги. Чтобы начать обучение программированию, надо следовать поэтапно. Сделайте следующее:

  1. Заполните пробелы, если таковые имеются. Речь идет об архитектуре компьютера и английском языке.
  2. Изучите для начала теорию алгоритмов и структур данных.
  3. Выберите направление, в котором есть желание развиваться.
  4. В зависимости от направления подберите язык программирования.
  5. Наберитесь знаний об инструментах программирования и веб-фреймворках.
  6. Изучите базы данных.

И в качестве общих советов:

  • как можно больше практикуйтесь;
  • используйте для обучения любые доступные материалы и платформы;
  • начинайте с малых проектов;
  • составьте грамотное резюме и портфолио;
  • учитесь у профессионалов;
  • если решили уйти в программирование, то действуйте и не затягивайте с этим, пока технологии не устарели.

На блоге iklife.ru вы найдете еще больше информации о программировании и других сферах деятельности.

Удачи!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector