FEW SKILLS
Все о продуктивности

С ЧЕГО НАЧАТЬ ИЗУЧЕНИЕ ПРОГРАММИРОВАНИЯ?

0 590

Продолжаем публиковать обзоры онлайн-курсов в IT. Начало тут и тут. Теперь о том, с чего начать изучение программирования. Если ваш биологический возраст больше 20 лет, вы в буквальном смысле на себе успели ощутить, как технологии меняют мир. Сегодня своя увлекательная история в духе «как мы жили до айфонов и убера» есть у каждого студента. Однако глобальное проникновение IT в нашу жизнь имеет и обратную сторону. Чем больше в нас становится софта – тем сильнее необходимость понимать, как он (софт) устроен и функционирует. Тем важнее изучение программирования.

Оставим за скобками проблему обучения и трудоустройства собственно программистов – у нас есть отдельные статьи про онлайн-курсы по разработке и data science. Обсудим, нужно ли программирование тем, кто связан с ним опосредованно: дизайнерам, управленцам, маркетологам. И если да, то насколько глубоко должно быть погружение в специфику? Какие языки учить и для чего?  И c чего начать изучение программирования?

Тема оказалась настолько интересной, что мы вынесли ее в отдельную статью. Ниже наши размышления о том, зачем программирование «непрограммистам» и как (и где) его лучше изучать.

Почему важно изучение программирования?

  • Программирование развивает абстрактное мышление. Мозг программиста воспринимает задачи иначе. Он умеет мыслить абстрактно, разделять большую задачу на маленькие. Более того, занятие разработкой плодит наши нейронные связи — по данным ученых, когда человек пишет код, у него работают те же участки мозга, что и при изучении нового языка. Больше о том, как работает мозг, есть в нашей статье.
  • Знание программирования востребовано у работодателей. Копирайтер, умеющий писать не только качественные статьи, но и код для HTML-страниц с этими самыми статьями, экономит работодателю деньги и нервы. При прочих равных преимущество скорее всего будет отдано универсалу — тому, кто раньше решил взяться за изучение программирования. Он сможет проконтролировать подрядчиков, составить ТЗ или подменить кого-то из коллег на время больничного. Интересно, что никто не будет писать в требованиях вакансии копирайтера или маркетолога обязательные навыки программирования. Но наличие таковых в резюме — безусловный плюс. Еще важны soft skills, тут мы писали об их важности;
  •  Программирование растит вашу продуктивность и экономит время. Выполнение рутинных задач все чаще это скидывают на ботов и сервисы автоматизации (здесь есть статья про последние). Простой скрипт из нескольких строк может сберечь вам часы и дни. Например, если нужно скопировать идентичные данные с десятков сайтов, можно провести день, поочередно нажимая на Ctrl, C и V. Но ведь машина справиться быстрее, а время — самое дорогое, что у вас есть (мы уже не раз говорили об этом в наших материалах о тайм-менеджменте). Но для этого необходимо изучение программирования;
  • Программирование защитит вас от манипуляций и обмана. Программисты-подрядчики — тоже люди, им свойственна лень, халатность и тяга к манипуляции. С той лишь разницей, что у разработчиков есть возможность замаскировать свои недоработки, если заказчик не совсем компетентен. Знание принципов работы программного обеспечения даст возможность выявлять жонглирование терминами, самостоятельно тестировать результаты работы разработчиков и выявлять критические ошибки. Проще говоря, вас не проведешь;
  •  Программирование развяжет вам руки. Представьте, что у вас родилась гениальная идея — сервис доставки всего всем всегда! Чтобы проверить  жизнеспособность этой идеи и сразу после успешно выйти на IPO, нужна помощь программистов. А это время и деньги. Выход — изучение программирования. И писать код простейших приближений и прототипов самостоятельно. Наверняка получится криво, но для проверки валидности спроса это и не особо важно.

Кому важно изучение программирования? Менеджеры

Менеджеры мультифункциональны и администрируют кучу процессов, начиная от оповещения сотрудников и клиентов и заканчивая заполнением отчетов. Рассмотрим конкретный пример: нужно регулярно считать средний чек по данным в базе данных и рассылать это коллегам из других отделов. Рядовой представитель среднего звена тратит на это несколько часов продуктивного общения с калькулятором (особенно это свойственно представителям поколения Z — мы писали об этом). Тот же, кто обладает хотя бы базовыми навыками программирования, может написать короткий код для обращения к базе данных и автоматического подсчета средней суммы чека. Рассылку, кстати, можно поручить боту (если любите боты, прочтите нашу статью о каналах и ботах о продуктивности в Телеграмм). 

Где начинать изучение программирования менеджерам

Линейным управленцам для решения простых прикладных задач можно использовать языки  Python и JavaScript. Они оба имеют невероятно простой синтаксис и дают разработчику приятное ощущение комфорта и контроля. Начать изучение программирования для автоматизации работы и решения смежных задач знания можно тут:

изучение программирования

Кому важно изучение программирования? Маркетологи и аналитики 

Аналитики и маркетологи регулярно визуализируют данные. Эту процедуру можно, как и в прошлом примере, поручить компьютеру. Он быстро и без ошибок произведет нужные вычисления, а если добавить математический подход, то сможет и найти закономерности. Визуализировать результат своей работы аналитик может, использовав специальные библиотеки и фреймворки. Наглядный пример: необходимо отобразить изменение доходов и сопоставить его с затратами на рекламу, отследить динамику ROI. Простой скрипт соберет все данные, а затем выявит корреляцию. Это не rockit science, этому вполне реально научиться за несколько вечеров и попробовать самостоятельно написать свой плагин для Trello (тут мы рассматривали самые популярные). 

Где начать изучение программирования маркетологам и аналитикам 

Уместен Python — один из самых распространенных языков для анализа данных. R лучше не брать новичкам, так как главная сфера его применения — научные исследования. Ну и musthave —  язык запросов к базам данных SQL. Этому всему можно научиться здесь:

  • Python для анализа данных — курс от Skillfactory, который практикует изучение программирования по базовым навыкам работы с Python и заостряет внимание на применении этого в аналитике. По окончании курса парсинг веб-страницы с последующим составлением интерактивного отчета не будет проблемой;
  • Python для работы с данными — онлайн-курс от Нетологии, который научит любого, даже далекого от IT человека, автоматизации работы с данными. Большое количество практических заданий и несколько лабораторных работ дадут опыт, который можно перенести на решение задач со своего места работы;
  • SQL и получение данных — курс, который позволит аналитику стать независимым от разработчиков. Кроме практической работы с SQL предусмотрено изучение различных видов баз данных и системы контроля версий Git;
  • Основы баз данных – доступный курс по написанию запросов на SQL от Geekbrains.
изучение программирования

Кому важно изучение программирования? Контент-менеджеры, seo-специалисты и копирайтеры

Все они работают в команде с веб-разработчиками над тем, чтобы сделать сайт привлекательным для поисковых роботов. К сожалению единодушие — редкость для таких команд. Гораздо чаще это вариация на тему глухого телефона: все кроме вас делают работу не так, как надо, а так как «понимают». В итоге на это уходит уйма нервов и времени и переписок в системах управления проектами (мы рассматривали последние в этой статье). Поэтому голубая мечта любого контент-менеджера или seo-шника — решать задачи без привлечения разработчиков. Зачастую это возможно.

Где начать изучение программирования контент-менеджерам, seo-специалистам и копирайтерам

В этих сферах вполне достаточно знания связки CSS (язык для описания внешнего вида сайтов) + HTML (язык разметки веб-страниц). Если еще знать WordPress, Wix и изучить язык программирования JavaScript, то можно стать настоящим «универсальным солдатом». Учиться этому можно тут:

  •  WordPress: Личный блог — бесплатный курс по работе с WordPress от GeekBrains. Очень прост в освоении и не требует никакой базы. Его ключевая особенность в том, что знакомство с элементами WordPress идет с непосредственным их применением для решения реальной задачи;
  • Основы HTML и CSS — изучение программирования по верстке сайтов от Нетологии можно смело назвать самым быстрым стартом в мире верстки. Все домашние работы ориентированы на практическое закрепление теоретических навыков, полученных на лекциях, а сами лекции построены таким образом, чтобы даже далекий от программирования человек все понял и всему научился;
  • HTML/CSS. Интерактивный курс – образовательный проект от Geekbrains, где обучение проходит в тесной связке с наставником;
  • HTML book — самоучитель по HTML. В нем есть ответы на все вопросы, которые могут возникнуть при знакомстве с языком, плюс мануал по CSS. К этой книге стоит больше обращаться как к справочнику при изучении языка;
  • Frotend-разработчик от Skillbox — комплексный курс по верстке. Каждый урок полноценен сам по себе, поэтому те, кто не хочет погружаться в верстку полностью, могут выбрать что-то по душе. Вместе же все они дают знания, необходимые новичку для того, чтобы попасть в сферу веб-разработки.

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

изучение программирования

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

Языки программирования для начинающих

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

  • Основы Python 3 — бесплатный курс по программированию на Python от Udemy. Этот курс на 2 часа погружает слушателя в мир программирования, давая все необходимое для дальнейшего самообучения;
  • Python для всех — набор курсов от Coursera, в котором каждый может найти необходимые ему знания. Первый курс по введению в Python можно считать обязательным, а дальше каждый может выбрать, какое применения Python ему подойдет;
  • Основы программирования — интенсив от  GeekBrains, который обучает фундаментальным основам программирования на JavaScript. После прохождения можно применить полученные знания к другим языкам программирования и продолжить обучение самостоятельно;
  • Python-разработчик с нуля — курс от Нетологии, который дает всю необходимую базу для работы с Python и предлагает углубить знания в стезе разработки. Для тех, кто только начинает изучать программирование это — отличный шанс подумать о новой специальности и попробовать себя в ней;
  • Курс Python для веб-разработки – эффективный обучающий проект от Skillfactory. Идеален для быстрого старта;
  • Полный курс по JS — замечательный материал от Udemy, который учит основам программирования на JavaScript, объясняя всю концепцию языка и подготавливая к применению этого языка для написания серьезных проектов.

Язык С++ для начинающих

C++ не такой модный, но уже давно является настоящей классикой разработки во всех ВУЗах. На нем написана большая часть программного обеспечения, которым мы пользуемся в повседневной жизни — те же таск-менеджеры (мы рассматривали самые удачные здесь). И главное, он всегда был и будет востребован. Чтобы начать изучение С++ с нуля, подойдут следующие курсы:

  • Искусство разработки на С++ — курс от МФТИ на Coursera. Учит написанию эффективного и качественного кода на С++. В ходе курса обсуждается множество алгоритмических задач, которые решают исследователи и программисты.
  • Beginning C++ programming — From Beginner to Beyond — курс на Udemy, который объясняет ключевые аспекты программирования через призму С++ и затем переходит на применение С++ в современных реалиях. Более 30 упражнений по программированию позволяют сразу же применить новые знания на практике. Английский.
  • Программист C++ — онлайн-курс от Geekbrains с преподавателями-практиками в С++.

Статьи и книги о изучении программирования для начинающих 

  • Начинаем программировать на Python — гайд от Skillbox о том, как начать работать в Python. Покрывает базовые темы, которых обычно достаточно для старта. Информация дается в очень сжатой форме, но все объясняется на примерах, поэтому даже тот, кто раньше не программировал, должен понять что к чему;
  • Программируем на Python — книга, по которой можно начать изучение программирования с нуля. Обучение идет через написание простых игр, что делает его интересным. Полученные из книги знания о базовых принципах программирования можно перенести на любой другой язык, если возникнет такая необходимость;
  • Eloquent JavaScript — книга, которая благодаря своему понятному языку и увлекательным заданиям привела в программирование на JavaScript тысячи людей. 

Заключение об изучении программирования

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

 Читайте дальше:

Онлайн-курсы со скидками и описаниями

Наши подборки лайфхаков для продуктивности

Обзоры приложений для карьеры и бизнеса

Рецензии на книги о саморазвитии и продуктивности

Статьи о научном подходе к спорту и здоровому образу жизни 

Оставьте ответ