Tagged: Тренды

02
Апр
2021

🗣 45 русскоязычных подкастов для программистов

Подкасты – отличный способ отвлечься от рутинных дел и провести свободное время с пользой. Предлагаем список из 45 актуальных ресурсов на русском языке, которые будут полезны программистам.

26
Мар
2021

☁ На пике технологий: эксперты Microsoft, Сбер и МТС рассказали о гибридных облаках

Предлагаем вниманию читателей небольшой обзор самых крутых открытий с прошедшей недавно онлайн-конференции Microsoft Hybrid Cloud Forum.

На мероприятии Microsoft собрались эксперты в области облачных вычислений, IoT, голосовых помощников и сетевой безопасности, которые рассказали о возможностях применение и последних обновлениях сервисов Azure. Специалисты из Microsoft, Сбер и МТС обсудили интернет вещей, кибербезопасность и внедрение гибридных решений в корпоративную ИТ-инфраструктуру. Особенно необычными и интересными оказались выступления про соблюдение законов при использовании современных технологий.

Microsoft Hybrid Cloud Forum разделен на два трека: «Инструменты Azure» и «Современное рабочее место». Чтобы помочь читателям оценить его актуальность, мы собрали анонсы нескольких особенно интересных тем. Если вы хотите посмотреть полную версию форума, можно сделать это на YouTube прямо сейчас (к выступлениям на английском языке есть русские субтитры).

Microsoft Azure

Первый трек посвящен использованию Microsoft Azure на уровне организаций: зачем переходить в облако, какое решение выбрать и как интегрировать технологии в инфраструктуру компании.

Куда движется Microsoft Azure?

Представьте гибридную систему, состоящую из любого количества компонентов: облачных и локальных серверов, устройств IoT, обмена файлами, обработки данных, политик доступа или средств настройки безопасности. Комбинируйте эти элементы в любом порядке и интегрируйте с уже внедренными технологиями, собирая решение для своей компании. Все это с полной локализацией и соблюдением российских законов, а главное – из одного окна браузера любого устройства. Таким видит будущее Марк Руссинович, CTO Azure.

Нужны реальные примеры внедренных решений?

Послушайте выступления вице-президента по облачным и цифровым решениям ПАО «МТС» Дмитрия Халина и Анастасии Данилиной, исполнительного директора по стратегическим партнерствам ПАО «Сбербанк».

Компания МТС уже разместила Azure Stack Hub, который позволяет оказывать услуги по облачным и IoT-решениям конечным заказчикам. В Сбербанке используют Bing Cognitive Search, чтобы помочь сторонним разработчикам интегрировать продукты в экосистему Сбера.

В конце трека менеджер по развитию партнерского канала в сегменте крупного производства Microsoft Russia Михаил Чепурин рассказывает о кейсах крупных мировых компаний. Вы узнаете, почему лидеры рынка переходят на гибридные решения и сколько они на этом зарабатывают.

Интересуют юридические вопросы?

Михаил Емельянников, эксперт в области информационной безопасности и безопасности бизнеса, проясняет правовые тонкости:

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

Что нового в Azure?

  • Узнайте про компоненты Azure Stack Hub – программно-аппаратного комплекса для построения гибридных решений. Он позволяет работать со всеми компонентами: облаками и локальными данными.
  • Познакомьтесь с решениями Azure Hybrid для развертывания мультиоблачных систем любой сложности.

Подробно об этих новинках рассказали Антон Ватов, архитектор облачных решений и сервисов Azure в Microsoft Russia, и Валентин Логинов, Head of Presale Azure Stack ПАО «МТС».

Azure IoT Central – платформа для облегчения жизни

С ее помощью можно найти ответы на самые сложные вопросы:

  • как обойти недостаток бюджета и кадров?
  • что может снизить общую сложность разработки?
  • как проверить техническую идею?

Это тот самый конструктор компонентов, который поможет собрать нужное решение буквально за часы.

Узнайте все подробности в большом блоке от специалистов по IoT:

  • Дмитрия Тетерука, архитектора решений для интернета вещей;
  • Виталия Бачука, старшего менеджера по продукту центра разработки устройств и планирования сети интернета вещей и М2М ПАО «МТС»;
  • Андрея Плавича, руководителя центра разработки устройств и планирования сети IoT и М2М ПАО «МТС».

Не пропустите это видео, если хотите узнать цены на сервисы Azure.

Современное рабочее место

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

Интересно, как рядовые сотрудники смогут работать друг с другом через мультиоблачные системы? Все подробности в видео. Еще из него вы узнаете, как строится защита данных в сервисах Microsoft 365 и Azure, а также чем отличается защита наземных, облачных и гибридных сред.

Что такое современное рабочее место?

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

Даже у киберпреступности есть свои тренды

Изучите ландшафт современных киберугроз: чем больше и сложнее ваша сеть, тем проще потерять данные. Современные решения поставляются с модулями для безопасности: о защите на уровне рабочих станций и сервисе MDE рассказали Александр Русецкий, руководитель направления защиты от направленных атак центра информационной безопасности АО «Инфосистемы Джет», и Александр Ахремчик, ведущий аналитик центра мониторинга и реагирования на инциденты ИБ Jet CSIRT.

Как защитить данные там, где это невозможно?

Кирилл Богданов, эксперт по решениям Microsoft в области информационной безопасности из Microsoft Russia, затронул тему защиты ключевых узлов корпоративной инфраструктуры. Он рассказал, что делать с рисками на облачных и локальных серверах и как поддерживать безопасность на уровне каналов связи с помощью сервиса Microsoft Defender for Endpoint.

***

Это всего лишь несколько интересных тем, затронутых на Microsoft Hybrid Cloud Forum. Еще больше вы найдете на YouTube.

12
Мар
2021

🤖📊 Как машинное обучение упорядочивает большие данные

Когда в работу с большими данными вступает машинное обучение, игра выходит на новый уровень. Рассказываем, как и зачем методы Machine Learning применяется в сфере Big Data.

Что такое большие данные?

Big Data – область, в которой рассматриваются различные способы систематического извлечения полезных для решения бизнес-задач знаний из больших объемов данных. Для этого существуют различные механические или алгоритмические процессы получения оперативной информации. Специалисты по Big Data работают с сырыми неструктурированными данными, результаты анализа которых используются для поддержки принятия решений. Аналитика включает проверку, преобразование, очистку и моделирование данных.

Анализ больших данных – относительно новая, но довольно востребованная сфера рынка труда. Спрос на специалистов в этой области постоянно растет.

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

Аналитик Big Data – специалист, который выявляет и исследует закономерности в данных с помощью специальных программных средств.

5V больших данных


Работа с большими данными строится вокруг пяти основных принципов (c англ. V’s of Big Data: Volume, Velocity, Variety, Veracity, Value):

  1. Объем: количество собираемой компаниями информации действительно огромно, поэтому ее объем становится критическим фактором в аналитике.
  2. Скорость: практически все происходящее вокруг нас (поисковые запросы, социальные сети и т. д.) очень быстро генерирует новые данные, многие из которых могут быть использованы в бизнес-решениях.
  3. Разнообразие: генерируемая информация неоднородна и может быть представлена в различных форматах, таких, например, как видео, текст, базы данных, числа, сенсорные данные и т. д. Понимание типов больших данных является ключевым фактором для раскрытия их ценности.
  4. Достоверность: данные высокой достоверности содержат много записей, которые ценны для анализа и которые вносят значимый вклад в общие результаты. Данные с низкой достоверностью содержат высокий процент бессмысленной информации, которая называется шумом.
  5. Ценность: возможность трансформировать большие данные в бизнес-решения.

Откуда получают большие данные


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

Некоторые из основных источников Big Data:

  • Социальные сети;
  • Облачные Хранилища;
  • Веб-страницы;
  • Интернет вещей.

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

Что такое машинное обучение?


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

Алгоритмы машинного обучения могут быть применены к каждому этапу работы с большими данными, включая следующие:

  • Сегментацию данных;
  • Анализ данных;
  • Моделирование.

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

Как машинное обучение применяется в Big Data?

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

Примеры применения алгоритмов МО для больших данных

Автоматизация Маркетинга

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

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

Анализ тональности текста


Анализ тональности текста – мощный инструмент для запуска нового продукта или внедрения новых функций. Тренированные на больших данных модели машинного обучения позволяют с высокой точностью предсказать реакцию клиентов: полюбят ли они продукт или полностью проигнорируют его. Предсказание результатов возможно в самом начале разработки продукта! Это позволяет изменить дизайн или маркетинговую стратегию в соответствии с потребностями рынка.

Рекомендательные системы

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

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

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

Регулирование рисков

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

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

Расшифровка паттернов

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

Прогнозная аналитика


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

***

Мы рассмотрели возможности и сферы применения машинного обучения в больших данных. Если вы еще не определились со специализацией, начните с базового онлайн-курса «Библиотеки программиста» по математике в Data Science. Без царицы наук в этой области обойтись не получится, а с помощью опытных преподавателей из ведущих вузов страны получить знания намного проще, чем самостоятельно по книгам. Также ведется запись и на продвинутый курс. Удачи в освоении востребованной профессии!

16
Фев
2021

📊 Какие медиа предпочитают российские айтишники?

Proglib.io проводит опрос читательской аудитории, чтобы определить популярность используемых российскими ИТ-специалистами медиа-ресурсов. В качестве бонуса – 10 самых популярных русскоязычных каналов на YouTube.

В изобилии информационных продуктов легко запутаться. Proglib.io проводит опрос читательской аудитории, чтобы определить популярность различных ресурсов в российской ИТ-среде. Пройдя по этой ссылке и ответив на вопросы, вы можете получить скидку в 5% на все наши курсы.

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

На данный момент в исследовании уже приняло участие 440 человек – все они или иначе связаны с миром ИТ. На диаграмме ниже наглядно показаны профессии и опыт работы опрошенных специалистов.


Судя по полученным данным, примерно половина опрошенных только начинает свой путь в отрасли, но и более опытных специалистов тоже хватает. Хочется отметить, что нас читают разработчики разных направлений. Кроме представителей вошедших в список лидеров профессий, было довольно много android-разработчиков, специалистов по DevOps, тестировщиков и разработчиков приложений для iOS. Вдобавок немалое количество наших читателей только планируют посвятить свою жизнь программированию и определиться с дальнейшей специализацией – мы в свою очередь постараемся им в этом помочь.

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


  • Результаты этой диаграммы красноречивы. Подавляющее большинство разработчиков сидят в Telegram. Хотя это больше мессенджер с функциями соц. сети, детище Павла Дурова пользуется огромной популярностью. По состоянию на январь 2021 года количество активных пользователей сервиса составляет около 500 млн. человек и ежемесячно увеличивается примерно на 600 тысяч. Помимо обмена сообщениями тут можно хранить неограниченное количество файлов, создавать и использовать ботов, а также вести группы и микроблоги (каналы). Именно каналы публикуют полезную информацию без отвлекающих факторов, что выгодно отличает Telegram от традиционных социальных сетей. Нет ленты, которую приходится перелистывать – меньше шансов залипнуть на чьей–то странице.
  • Это довольно странно, но занявший второе место в нашем списке соцсетей ресурс тоже не является социальной сетью в привычном понимании. Видеохостинг Youtube – второй сайт в мире по посещаемости – заслуженно находится на лидирующих позициях в нашем исследовании. Все благодаря десяткам тысяч видеороликов по разработке, настройке, отладке и тестированию. Опытные профессионалы делятся здесь с новичками знаниями, готовыми решениями, рабочими методами и идеями, а также дают советы на любые темы.
  • Также стоит отметить довольно часто упоминающийся сайт medium.com. Это быстрая и простая в обращении блог-платформа от создателей Twitter, которая является местом для публикации заметок по связанной с ИТ тематике. Каждый желающий человек или компания могут зарегистрироваться в сервисе и что-то написать.
  • Традиционные социальные сети тоже прекрасно с этим справляются: чтобы потеснить лидеров нашего топа им не хватило совсем чуть-чуть голосов.

Далее мы детально разберем, какие интернет-издания читает наша аудитория.


  • В списке лидеров оказались три крайне полезных ресурса. Во-первых, это Habr.com – русскоязычный сайт в формате системы коллективных блогов (хабов) с техническими и аналитическими статьями. На сайте есть т.н. карма – социальный рейтинг пользователя, который зарабатывается знаниями и авторитетом. Чем у автора она больше, тем весомей его мнение в глазах читателей, поэтому будьте внимательны и учитесь у профессионалов.
  • На втором месте по популярности, по результатам опроса, оказался наш сайт proglib.io. Здесь вы всегда найдете актуальные материалы, которые помогут освоить не только программирование, но и множество других ИТ-профессий. Книги, лекции, видеоуроки и советы, тесты знаний и обсуждение горячих наболевших тем, а также анонсы, туториалы, ссылки, интервью, обзоры, онлайн-курсы, свежие вакансии и много чего еще. Мы запускаем даже собственные авторские курсы, которые ведут опытные преподаватели из главного вуза страны.
  • Третий популярный у опрошенной аудитории ресурс – образовательный проект tproger.ru («Типичный программист»). Известное российское издание посвящено разработке и всему, что с ней связано. Пользователи могут оставлять комментарии к публикациям, ставить лайки, делать закладки и т.д.

10 популярных каналов на Youtube

В нашем исследовании был отдельный вопрос о популярных у аудитории каналах в Telegram и на YouTube. Давайте рассмотрим это более детально:

  1. Канал «АйТиБорода». Автор и ведущий Алексей Картынник (тимлид в компании “SoftTeco”) рассказывает о жизни айтишников изнутри, без цензуры, ярлыков и лишнего пафоса. Его видеоролики помогут вам найти себя в мире цифровой индустрии.
  2. Youtube-канал «Хауди Хо» узбекского блогера Абрахама Тугалова. Здесь вы найдете уроки по программированию, выпуски про хакинг, подборки, топы, гайды и многое другое из типичной жизни программиста.
  3. Канал Сергея Немчинского. Сергей – программист с двадцатилетним стажем, 15 из них – в Java. Проводит авторские интенсивы и освещает актуальные вопросы по разным направлениям в ИТ.
  4. Гоша Дударь – популярный ютубер. У него на канале более 1000 видеороликов на тему разработки, уроков о создании игр и сайтов, изучении языков программирования (C++, C#, Java, Python, С, Swift, Go и др.).
  5. Тимофей Хирьянов, преподаватель кафедры информатики МФТИ, выкладывает свои довольно занимательные лекции и занятия в открытый доступ при помощи своего ютуб-канала.
  6. Владилен Минин – программист со стажем. У него на канале вы найдете большое количество уроков, посвященных веб-разработке. JavaScript и фреймворки, теория и много практики.
  7. «Диджитализируй!» Канал о разработке, цифровом бизнесе, операционных системах, софте и железе. Стримы с обзорами на самые разные темы.
  8. Олег Молчанов. Здесь вы найдете видео уроки по программированию на Python, созданию сайтов и веб-приложений. Есть уроки парсингу сайтов, по Flask, уроки по Django 2, по созданию блокчейна на Python, ботов для Telegram.
  9. «Фрилансер по жизни». Занимательный ютуб-канал украинского ИТ-фрилансера, который регулярно делится со зрителями опытом, наработками, секретами и лайфхаками.
  10. #SimpleCode. Подробные уроки программирования на самых разных языках для новичков и не только.

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

Итоги

Судя по результатам, опрошенные нами пользователи стремятся развиваться и двигаться вперед, постоянно самосовершенствуясь. Читают, учатся, прислушиваются к мнению профессионалов и следят за последними тенденциями в мире разработки – и это прекрасная новость. Редакция «Библиотеки программиста» желает вам профессиональных успехов. Со своей стороны мы постараемся помочь читателям интересными и актуальными публикациями. Удачи!

***

Наш опрос все еще продолжается: ответив на несколько вопросов вы можете получить скидку в 5% на онлайн-курс по высшей математике в Data Science Pro от «Библиотеки программиста». За 5 месяцев (2 занятия по 2 академических часа в неделю) вы сможете наработать необходимые для освоения востребованной профессии знания. Занятия ведут опытные преподаватели из МГУ, а программа рассчитана на желающих поступить в «Школу анализа данных» от Яндекс. Качественный материал и живые трансляции с наглядными примерами помогут понять даже самые сложные темы.

02
Фев
2021

📚 С чего начиналась наука о данных: история в лицах и ключевых работах

Через ключевые научные работы и их авторов попробуем разобраться, с чего начиналась история Data Science и как новая наука формировалась в течение десятилетий. Начнем отсчет с докомпьютерной эры.

23
Янв
2021

🚀 Объектно-ориентированное программирование – самая большая ошибка компьютерных наук

Рассказываем, как ООП наносит огромный ущерб экономике и почему пора менять парадигму программирования. Присоединяйтесь к надвигающейся революции!

C++ и Java, вероятно, являются одними из худших ошибок, которые когда-либо делала компьютерная наука. Многие выдающиеся программисты, включая создателя ООП Алана Кея, критиковали и продолжают критиковать эти языки за то, что они извратили первоначальную идею и породили самую печально известную парадигму современной разработки.

К несчастью, современное ООП приобрело огромную популярность. Это позволило ему нанести огромный ущерб экономике – триллионы долларов – и даже убить (в буквальном смысле) тысячи человек!

Почему же ООП так опасен?

***

Представьте, что вы садитесь в свою хорошо знакомую машину и едете по хорошо знакомому маршруту. И вдруг что-то идет не так, как всегда. Вы отпускаете педаль газа, но машина продолжает ускоряться! Давите на тормоз – не помогает!

Страшно? Подобный инцидент произошел в 2007 году с Джин Букаут – и еще с сотнями водителей Toyota Camry. Десятки человек погибли.

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

Команда экспертов 18 месяцев разбирала кодовую базу Toyota – и нашла сотни потенциальных причин возникновения непреднамеренного ускорения. Код в целом был запутанным и беспорядочным – то, что на сленге называется «спагетти». Из-за этого Toyota пришлось отозвать более 9 млн автомобилей и выплатить более 3 млрд долларов.


Проблема спагетти

Подобные инциденты не уникальны – и это пугает. Например, два самолета Boeing 737 Max потерпели крушение из-за ошибки, вызванной спагетти-кодом (346 жертв, 60 млрд долларов ущерба). То же самое может случиться, например, на атомной электростанции или в реанимационной палате.

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

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

Откуда берется спагетти-код?

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

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

ООП – корень зла

ООП не накладывает на код никаких ограничений, которые могли бы предотвратить его запутывание. Безусловно, есть лучшие практики разработки – внедрение зависимостей, TDD, Domain Driven Design, которые реально помогают. Однако они не внедрены в парадигму, не обеспечиваются ей, и нет инструментария, который мог бы следить за их соблюдением.

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

Ссылочные типы

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

Это превращает программу в один большой сгусток глобального состояния и противоречит первоначальной идее ООП. Алан Кей, создавая свой язык Simula, предполагал, что части программы будут общаться между собой подобно биологическим клеткам, то есть независимо. Они должны были посылать друг другу сообщения, оставаясь закрытыми от внешнего мира (инкапсуляция).

Но в современном ООП одни «клетки» проникают внутрь других и меняют их состояние. Это приводит к большой связанности кода. Изменения в одном месте программы могут привести к неожиданным последствиям в другом.

Предсказуемость

Склонность к спагеттификации – не единственная проблема ООП-парадигмы.

Работая с ПО мы обычно хотим, чтобы оно было надежным и предсказуемым. 2 + 2 всегда должно быть равно 4, а нажатие на педаль тормоза всегда должно приводить к замедлению автомобиля. Это называется детерминированностью.

Если 2+2 будет равно 5 хотя бы один раз из миллиона, это может привести к ужасным последствиям.

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

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

Вот пример кода, который просто вызывает функцию:

nondet-det-func.js
        console.log( 'result', computea(2) );
console.log( 'result', computea(2) );
console.log( 'result', computea(2) );

// result 4
// result 4
// result 4
    

Мы не знаем, что делает эта функция, но кажется, что она всегда возвращает один и тот же результат для одних и тех же входных данных.

А вот другой код:

nondet-nondet-func.js
        console.log( 'result', computeb(2) );
console.log( 'result', computeb(2) );
console.log( 'result', computeb(2) );

// result 4
// result 4
// result 4
// result 2    <=  плохо!
    

Эта функция вернула разные значения для одних и тех же входных параметров. Функция computeb недетерминирована. Она может выдавать ожидаемое значение, но это не гарантируется.

Что делает функцию детерминированной или недетерминированной?

  • Функция, не зависящая от внешнего состояния, на 100% детерминирована.
  • Функция, которая вызывает только другие детерминированные функции, также является детерминированной.
nondet-func-impl.js
        function computea(x) {
  return x * x;
}

function computeb(x) {
  return Math.random() < 0.9
          ? x * x
          : x;
}
    

Результат работы функции computea зависит только от аргумента x и всегда будет одинаков для одинакового x. Эта функция детерминирована.

Функция computeb недетерминирована, потому что вызывает недетерминированную функцию Math.random. С чем мы взяли, что Math.random недетерминирована? Она не принимает аргументов, а вычисление случайной величины основывается на системном времени, то есть зависит от внешнего состояния.

Детерминированный код предсказуем, недетерминированный – нет.

Непредсказуемость

Давайте рассмотрим простую функцию сложения:

nondet-simple-add.js
        function add(a, b) {
  return a + b;
};
    

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

Теперь немного усложним задачу – введем в бой объекты:

nondet-add-boxed.js
        const box = value => ({ value });

const two = box(2);
const twoPrime = box(2);

function add(a, b) {
  return a.value + b.value;
}

console.log("2 + 2' == " + add(two, twoPrime));
console.log("2 + 2' == " + add(two, twoPrime));
console.log("2 + 2' == " + add(two, twoPrime));

// output:
// 2 + 2' == 4
// 2 + 2' == 4
// 2 + 2' == 4
    

Пока все идет хорошо. Давайте внесем небольшое изменение в тело функции add:

nondet-add-mutation.js
        function add(a, b) {
  a.value += b.value;
  return a.value;
}

console.log("2 + 2' == " + add(two, twoPrime));
console.log("2 + 2' == " + add(two, twoPrime));
console.log("2 + 2' == " + add(two, twoPrime));

// output:
// 2 + 2' == 4
// 2 + 2' == 6
// 2 + 2' == 8
    

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

Другими словами, функция больше не детерминирована.

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

***

Детерминированная программа гарантирует, что 2+2 == 4 . Другими словами для входных параметров (2, 2) функция add всегда должна возвращать 4. Независимо от того, сколько раз вы ее вызвали, работает ли она параллельно и что происходит за ее пределами.

Недетерминированные программы – это полная противоположность. В большинстве случаев вызов add(2, 2) вернет 4 . Но время от времени функция может возвращать 3, 5 или даже 1004. Недетерминизм крайне нежелателен, и теперь вы понимаете, почему.

Каковы последствия недетерминированного кода? В нем легко появляются дефекты – баги, которые заставляют разработчиков тратить драгоценное время на отладку и значительно ухудшают качество работы ПО.

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


Побочные эффекты

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

Вернемся к нашей функции сложения:

nondet-add-func-only.js
        function add(a, b) {
  a.value += b.value;
  return a.value;
}
add(two, twoPrime)
    

Функция add выполняет ожидаемую операцию, она добавляет a к b . Однако это также приводит к побочному эффекту – изменению объекта a.

Так как объекты передаются по ссылке, то и объект two за пределами функции изменился. two.value теперь равно 4. После второго вызова станет 6 и так далее.

Чистота

Разобравшись с детерминизмом и побочными эффектами, мы готовы говорить о чистоте.

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

Чистые функции имеют множество преимуществ:

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

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

Насколько чисто ООП?

Для примера давайте поговорим о двух фичах ООП — геттерах и сеттерах.

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

Сеттеры предназначены для изменения состояния объекта, что делает их по своей сути побочными эффектами.

Таким образом, все методы в ООП (кроме, возможно, статических) либо не детерминированы, либо вызывают побочные эффекты. Следовательно, ООП – это что угодно, только не чистое программирование.

Чистое решение

Есть ли что-то, что может спасти программирование – луч надежды в мрачном мире программных сбоев? Что-то достаточно надежное и детерминированное, чтобы на нем можно было строить качественное ПО? Это математика.


В computer science математика воплотилась в парадигме функционального программирования, основанного на системе лямбда-исчисления.

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

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

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

Как я тут оказался?

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

Очень похожий процесс происходит сейчас с ООП. Только вместо вопроса «как я попал в эту точку исполнения», мы спрашиваем «как я попал в это состояние».

ООП (и императивное программирование в целом) не может нам ответить. Когда все передается по ссылке, любой объект может быть изменен другим объектом – и парадигма не накладывает никаких ограничений, чтобы это предотвратить. Инкапсуляция совсем не помогает – вызов метода для мутации некоторого поля объекта ничем не лучше, чем его непосредственная мутация. Программы быстро превращаются в месиво зависимостей и глобального состояния.

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

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

А как же спагетти-код?

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

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

Но ООП и ФП дополняют друг друга!

Жаль вас разочаровывать, но это не так.

Объектно-ориентированное программирование – полная противоположность функциональному. Оно нарушает многие фундаментальные принципы:

  • Поощряет нечистоту кода.
  • По своей сути не детерминировано и поэтому непредсказуемо.
  • Принципы композиции для ООП чужеродны и могут лишь привноситься извне.
  • Способствует спагеттификации кода.
  • Усложняет отладку программы и написание тестов.

Программисты ООП тратят большую часть своего времени на исправление ошибок. Программисты ФП – на написание работающего кода.

Действуйте, пока не поздно

ООП было очень большой и ужасно дорогой ошибкой. Давайте все, наконец, признаем это. Если ваш автомобиль работает на объектно-ориентированном ПО, вы не можете быть спокойны.

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

В ближайшем будущем ООП-программисты станут «динозаврами», как сейчас разработчики на COBOL. C++, Java, C# умрут. TypeScript тоже умрет.

Начните изучать функциональное программирование прямо сейчас! F#, ReasonML и Elixir – все это отличные варианты для начала.

Присоединяйтесь к надвигающейся революции!

23
Янв
2021

🗣️ Навыки и инструменты, которые пригодятся системному аналитику в 2021 году

Корреспондент «Библиотеки программиста» пообщалась с системными аналитиками. Они поделились списком рабочих инструментов, определили наиболее востребованные в 2021 году навыки и рассказали о влиянии пандемии на профессию.

26
Дек
2020

📈 Инфлюенсеры в Big Data и Machine Learning: за кем следить в 2021 году?

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

Инфлюенсеры – это лидеры мнений. Обычно пользователи социальных сетей, которые имеют обширную и лояльную аудиторию. Big Data и ML – одни из самых быстро развивающихся сфер в ИТ, поэтому специалистам важно следить за инфлюенсерами и влиятельными сообществами. Ведущие профессионалы отрасли регулярно делятся с широкой аудиторией опытом, а также последними разработками и новостями.

О работе специалистов по анализу больших данных мы писали в статье «Стать аналитиком Big Data: пошаговое руководство». Продолжая тему, мы собрали в одной публикации влиятельных инфлюенсеров в сфере Big Data и ML, а также сообщества, на которые стоит подписаться в 2021 году.

Предлагаем вашему вниманию подборку самых влиятельных сообществ и инфлюенсеров в сфере Big Data и Machine Learning.

<a href="https://rismedia.com/wp-content/uploads/2020/06/social_media_strategy_1153737066.jpg" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Сообщества

Big Data and Analytics

Сообщество LinkedIn, в котором собраны не только курсы и офферы для аналитиков Big Data, но и вся актуальная информация от ведущих экспертов области. Сообщества на LinkedIn – одно из лучших мест для энтузиастов данных и начинающих ученых, желающих овладеть искусством работы с большими данными. Активное участие в дискуссиях и собственные публикации дают возможность укрепить знания, найти наставника и расширить сеть профессиональных контактов.

Data Science Central

Твиттер-аккаунт одного из самых известных сообществ Data Science, где вы найдете новости о последних технологиях Big Data, машинного обучения, AI, Deep Learning, dataviz, Hadoop, IoT, и BI. Data Science Central объединяет пользователей, которые хотят получить уникальный опыт участия в дискуссиях на темы сбора и интеграции, а также аналитики и визуализации данных. Построенное на инновационной платформе сообщество включает технические форумы и сведения о рыночных тенденциях, а также дает возможности социального взаимодействия и трудоустройства.

DataDriven

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

<a href="https://t4.ftcdn.net/jpg/02/61/98/23/360_F_261982331_9P4vDtQz8briwqDPIs7f94LW7IUuXHiX.jpg" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Инфлюенсеры

Ronald Van Loon

Ronald Van Loon, директор Advertisement компании, которая предлагает партнерам и клиентам консалтинговые, технологические, информационные и автоматизированные решения. Известный инфлюенсер в сфере Data Science, Ronald публикует статьи и посты на темы больших данных, искусственного интеллекта, автономных автомобилей, аналитики и многого другого.

Kenneth Cukier

Kenneth Cukier – редактор данных в The Economist и соавтор книги «Big Data: A Revolution That Will Transform How We Live, Work, and Think», а также популярный спикер и член совета по развитию на основе данных World Economic Forum. Cukier является постоянным гостем на BBC, CNN и NPR. С 2002 по 2004 год он был научным сотрудником Гарвардской школы управления имени Кеннеди. Он также является стипендиатом Оксфордской бизнес-школы, где проводит исследования в области авиации.

Ganapathi Pulipaka

Ganapathi Pulipaka – главный Data Scientist в Accenture. Он разработал ряд программ Deep Learning и машинного обучения и продолжает публиковать новые идеи на GitHub и Medium. Советуем подписаться тем, кто заинтересован в математическом моделировании, нейросетях и визуализации данных в TensorFlow.

Kirk Borne

Kirk Borne является советником и главным специалистом по обработке данных в Booz Allen Hamilton. Kirk – астрофизик и консультант по большим данным, он также специализируется на интеллектуальном анализе данных, машинном обучении и вычислительной астрофизике. Kirk уже более 20 лет участвует в нескольких проектах NASA, включая его астрономический центр и операции с данными космической науки. В своем аккаунте в Твиттер он публикует множество ресурсов по машинному обучению и делится опытом работы.

Iain Brown

Dr. Ian Brown – консультант по большим данным и руководитель научных данных для SAS UK&I. За последние десять лет он работал в нескольких секторах, обеспечивая лидерство по темам риска, искусственного интеллекта и машинного обучения. Ian активно публикует посты в Твиттер и рассказывает о проектах в сфере искусственного интеллекта.

Yves Mulkers

Yves Mulkers – стратег данных и основатель популярного цифрового издания 7wData. Как специалист по интеграции, Yves в постах фокусируется на организации данных и возможностях архитектуры данных в организации. Он публикует свое видение проблем бизнес-аналитики и связанных с данными вопросов.

Mike Quindazzi

Mike Quindazzi – лидер продаж цифровых альянсов в PWC. Он помогает управлять бизнес-результатами, предлагая консультации по новым технологиям, вроде беспилотных летательных аппаратов, 3D-печати, блокчейна, IoT, больших данных и робототехники. Mike работал с такими брендами, как Microsoft, SAP, Amazon и Oracle, и помог сформировать инновационные подходы к решению их проблем. Он часто публикует свое мнение о развитии сферы больших данных и рассуждения на темы, связанные с AI и машинным обучением.

Evan Kirstel

Evan Kirstel является ведущим технологическим влиятельным лицом в сегменте B2B и соавтором eVira Health, которая предлагает консультации, а также разработку продуктов и стратегий развития бизнеса для сообщества медицинских технологий. Он работал с такими известными брендами, как IBM, Intel и AT&T, среди прочих, чтобы максимизировать их видимость и масштабирование в 5G, blockchain, AI, cloud, IoT, AR, VR, Big Data и analytics.

Marcus Borba

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

Bill Schmarzo

Инфлюенсер и автор книги «The art of thinking like a Data Scientist». Он очень активен и на LinkedIn: прочтите пост «Will AI force Humans to become more Human» и подпишитесь, если хотите стать «Data Science Think Tank».

<a href="https://image.freepik.com/free-vector/blog-authors-writing-articles_179970-1523.jpg" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Michael Fisher

Michael Fisher – технический евангелист и старший системный аналитик в Whitcraft Group. Он считается ведущим специалистом в области IoT, 5G, VR и FinTech, и пишет о таких областях, как кибербезопасность, консалтинг и архитектура больших данных.

Srivatsan Srinivasan

Srivatsan Srinivasan – Chief Data Scientist/Architect в Cognizant. Его опыт в построении сложных аналитических конвейеров, моделей машинного обучения для бизнес-процессов и помощи компаниям в преобразовании пространства данных и аналитики, сможет помочь расширить понимание многих областей больших данных, облаков и искусственного интеллекта. Советуем обратить внимание на его посты в LinkedIn, которые точно будут полезны тем, кто хочет быть в курсе новейших технологий AI и лучших практик в области Data Science.

Nando de Freitas

Nando de Freitas – ученый, который возглавляет команду машинного обучения Google DeepMind. Профессор компьютерных наук Оксфордского университета, Nando de Freitas является специалистом в области машинного обучения с фокусом на нейронные сети, байесовскую оптимизацию и вывод, а также Deep Learning. Как главный ученый в Google DeepMind, он помогает в организации ее миссии – использовать технологии для широкой общественной пользы и научных открытий, обеспечивая при этом безопасность и соблюдение этических норм.

David Langer

Если вы регулярно читаете учебные публикации по теме Data Science на LinkedIn, скорее всего вы уже знакомы с David Langer. Помимо того, что он является VP of Analytics в Schedulicity, он также известен как инструктор и YouTube-блогер. У него слава одного из самых выдающихся педагогов в области Data Science. David Langer создает образовательный контент для всех заинтересованных в развитии навыков работы с данными.

Andrew Ng

Основатель и генеральный директор Landing AI, а также основатель Deeplearning.ai. Andrew работал главным научным сотрудником Baidu Research, был профессором Стэнфордского университета, основателем и председателем правления Coursera, поэтому его считают пионером в области онлайн-образования. Он основал проект Google Brain, который разработал крупномасштабные искусственные нейронные сети, в том числе ту, которая научилась распознавать кошек на видео. Andrew специализируется на Deep Learning и часто делает публикации на связанные с машинным обучением темы.

Kristen Kehrer

Kristen Kehrer является преподавателем Data Science в UC Berkeley Extension и основателем Data Moves Me. С 2010 года Kristen предлагает инновационные и эффективные решения для машинного обучения в различных отраслях промышленности, включая коммунальное хозяйство, здравоохранение и электронную коммерцию. Kristen является инфлюенсером и наставником, у которого можно многому научиться благодаря ее опыту и знаниям в области SQL и аналитики больших данных.

***

Без чтения публикаций ведущих специалистов отрасли сложно освоить развивающиеся так быстро профессии. Если же вы только планируете карьеру в этой области, стоит обратить внимание на курс Факультета Аналитики Big Data онлайн-университета GeekBrains. Программа обучения включает основательную математическую и подготовку, изучение основ языка Python и работы с базами данных, а также работу с Hadoop и Apache Spark. Курс ориентирован на применение навыков машинного обучения в бизнесе и построен на основе практической работы над проектами с ведущими специалистами отрасли и личным помощником-куратором. Успешно окончившим его студентам онлайн-университет помогает с трудоустройством.

31
Окт
2020

🔬 Научные статьи по ИИ, которые стоит прочитать в 2020 году

Чтобы не отставать от последних и классических прорывов в ИИ и Data Science, необходимо читать научные публикации. Специалисту по анализу данных крайне важно иметь представление об актуальных и перспективных трендах отрасли.

31
Окт
2020

🐍 Топ 10 трендов разработки на Python в 2020 году

Мы каждый день узнаем о новых технологиях и языках программирования. Единственный язык, который оставался неизменным на протяжении многих лет – это Python.

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

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

Что такое Python и как он появился


Python – это популярный высокоуровневый язык программирования. Он является объектно-ориентированным и интерпретируемым языком с динамической семантикой, что делает его простым и легким в усвоении. Кроме того, Python легко читаем; следовательно, снижаются затраты на программное обслуживание в целом. Разработанный Гвидо ван Россумом, этот язык был создан под знаменем Python Software Foundation. Изначально он был выпущен в 1990 году, и прошло 30 лет, прежде чем он обрел популярность.

Основная философия Python включает в себя следующие идеи:

  1. Прекрасное лучше безобразного;
  2. Явное лучше скрытого;
  3. Сложное лучше усложненного;
  4. Простое лучше сложного;
  5. Читабельность имеет значение.

Учитывая все эти особенности и ключевые идеи, Python действительно заслужил любовь и славу со стороны разработчиков и конечных пользователей.

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

Постоянные обновления фреймворков Python

Фреймворки Python всегда служили ему опорой. Тройка TurboGears, Django и Pyramid стала основополагающей в ускорении работы системы с меньшим количеством строк кода. Этот год обещает сочные обновления трех фреймворков с улучшенными плагинами и новыми библиотеками, которые помогут полноценно раскрыть потенциал языка. В общем, Python – это несомненно прекрасный язык с расширенной и многогранной пользовательской базой.

1. Разработка на Django

Если вы еще не слышали об этом фреймворке Python, вам непременно стоит о нем узнать. В частности фреймворк является одной из высокоэффективных и гибких структур, направленных на минимизацию времени и усилий, необходимых для разработки веб-приложений. Учитывая тот факт, что это фреймворк с открытым исходным кодом, Django получает регулярные и качественные обновления плагинов с целью упрощения процедуры реализации. Известно несколько сторонних библиотек, повысивших популярность языка среди таких известных площадок, как YouTube, Spotify и прочих.

2. TurboGears

Еще один фреймворк Python – это TurboGears, представляющий собой фулстек-инструмент. Он был создан, чтобы упростить и ускорить разработку веб-приложений. Весь фреймворк зависит от «Ruby on Rails» и был разработан вокруг архитектуры MVC. Более того, он дает разработчикам возможность сформировать деловое чутье на всех платформах, сокращая при этом количество строк кода.

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

3. Pyramid

Фреймворк Pyramid идеально подходит для быстрой разработки базовых веб-приложений. Более того, легкость и гибкость обеспечили ему популярность в 2020 году. Python-фреймворк Pyramid основан на фундаментальных принципах, которые можно описать не иначе как простую технику программирования. Это абсолютный фаворит среди разработчиков, способных написать уникальные веб-приложения. Однако начинающим разработчикам он может прийтись не по душе.

В 2020 году мы обязательно увидим рост популярности фреймворка Pyramid среди разработчиков. Этот минималистичный фреймворк предлагает достаточную свободу действий.

Другие адаптеры Python

В 2019 году значительно увеличилось общее количество пользователей Python. Та же тенденция, несомненно, будет наблюдаться и в 2020 году в отношении программного обеспечения на Python. Проведенное компанией Stack Overflow исследование показало, что количество желающих освоить Python специалистов значительно преобладает в сравнении с другими схожими языками.

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

Больше признания со стороны влиятельных отраслей и корпораций

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

Так что, в 2020 году Python будет использовать большее число людей.

Анализ данных на Python

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

Доступность нескольких библиотек в линейке Python – главная причина, по которой разработчики выбирают именно его. Есть библиотеки, которые являются предметно-ориентированными и созданы с помощью сообщества Open-Source Python. Этот язык действительно полюбился многим разработчикам и будет продолжать их радовать в 2020 году.

Автоматизация и гибкость для большего количества пользователей

Главная особенность Python – его скорость. Это позволяет писать код быстрее, автоматизировать задачи и скрипты. Еще одним фактором в пользу Python является то, что он отлично себя проявляет в вопросах автоматизации. Этот факт, несомненно, стал ярким событием 2020 года. Со временем, Python привлечет больше профессиональных разработчиков, которые бы с удовольствием специализировались на этом языке.

Более того, гибкость языка Python в сочетании с его универсальностью сумела впечатлить пользователей и повысить его популярность. Язык отлично регулируется и без проблем работает с несколькими другими, оборудованием, фреймворками и архитектурой. On-board программирование на Python означает, что у вас есть доступ к гибкости и творчеству для реализации ваших стремлений.

Неполноценность программной разработки без Python

Как упоминалось вначале, технологии постоянно меняются. Вот почему знание идущих в ногу с трендом языков помогает оставаться на плаву, несмотря на любые изменения или обновления. Язык Python обладает способностью беспрепятственно работать с современными технологиями, такими как data science, сетевое программирование, машинное обучение, Big Data и многими другими. Большинство программистов стремятся работать с языком, который упрощает работу с кодом и технологиями.

Учитывая все возможности интеграции Python, современные технологии не могут быть полноценными без его использования.

Бесшовная языковая интеграция

Еще одна вещь, которая привела к популярности языка Python в 2020 году – это возможность интеграции, которая облегчит жизнь многим пользователям. Написанные на Python системы могут успешно взаимодействовать с другими популярными языками. Язык сам по себе достаточно гибкий, так что разработчики могут писать отдельные фрагменты кода на Python, а остальное – используя популярные на рынке языки программирования. Именно поэтому этот язык используется для подключения к корпоративным приложениям.

С Python облачные вычисления обрели популярность

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

Основы академического сценария

Применение Python в качестве основного для преподавания языков программирования, безусловно, доказывает его превосходство. Большинство связанных с ИТ университетов и колледжей в течение долгого времени использовали Python, но только недавно представители академической сферы поняли важность введения его в качестве отдельного предмета. В 2020 году язык Python получил более широкое внедрение в учебную программу.

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

Постоянная поддержка сообщества

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

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

***

Универсальность позволяет Python оставаться в тренде 2020 года. Он применяется в различных сферах разработки, включая Frontend и Backend, Big Data и Data Science, а также при решении задач искусственного интеллекта, машинного обучения и даже для создания мобильных и настольных приложений.

Этот универсальный язык программирования преследует множество целей, от функциональных аспектов до объектно-ориентированного программирования. Более того, Python можно использовать как язык для написания скриптов и получения информации.

Python определенно лидирует

Язык Python является полностью бесплатным, что побуждает начинающих разработчиков и программистов его опробовать. Использование Python требует минимальных затрат и рисков. Учитывая его кроссплатформенность языка, разработчики всегда стремятся отдать ему предпочтение.

Заключение

В целом, Python уверенно укрепился в корнях программной экосистемы, и его ожидает еще более светлое будущее в 2020 году. Проще говоря, это как соль для пищи: без него программирование может стать «безвкусным». На сегодняшний день Python составляет серьезную конкуренцию своим соперникам и к концу года станет еще более популярным.

***

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

20
Окт
2020

? Data Science и Big Data: сходства и различия

Разложим по полочкам сходства и различия между специализациями Data Science и Big Data. Их сущность будем раскрывать через примеры и сравнение наборов используемых инструментов.

Если вы заинтересованы в работе с данными, важно иметь четкое представление о связанных с ней направлениях ИТ. В статье, подготовленной при поддержке Факультетов Искусственного интеллекта и Аналитики Big Data онлайн-университета GeekBrains, мы расскажем о сходстве и основных различиях между специализациями Data Science и Big Data.

Термины

Data Science

Data Science – междисциплинарная область, которая охватывает практически все, что связано с данными: от их подготовки до очистки и анализа. Data Science использует научные методы и алгоритмы для работы как со структурированными, так и с неструктурированными данными. Эта область сочетает в себе статистику, математику, машинное обучение, решение проблем и многое другое.

В статье «Научиться Data Science онлайн» мы подробнее рассказали, чем занимаются специалисты Data Science и как овладеть профессией с нуля.

Big Data

Big Data – область, в которой рассматриваются различные способы анализа и систематического извлечения больших объемов данных. Big Data включает применение механических или алгоритмических процессов получения оперативной информации для решения сложных бизнес-задач. Специалисты по Big Data работают с сырыми неструктурированными данными, результаты анализа которых используются для поддержки принятия решений в бизнесе. Аналитика больших данных включает проверку, преобразование, очистку и моделирование данных.

<a href="https://www.ibmbigdatahub.com/infographic/four-vs-big-data" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Работа с большими данными строится вокруг четырех правил (c англ. V’s of Big Data: Volume, Velocity, Variety, Veracity):

  • Объем: объем данных, которые могут собирать компании, действительно огромен, и поэтому их размер становится критическим фактором в аналитике.
  • Скорость: высокая скорость, с которой генерируется информация. Практически все происходящее вокруг нас (поисковые запросы, социальные сети и т. д.) производит новые данные, многие из которых могут быть использованы в бизнес-решениях.
  • Разнообразие: генерируемая информация неоднородна и может быть представлена в различных форматах, таких, например, как видео, текст, базы данных, числовая информация, сенсорные данные и т. д. Понимание типа больших данных является ключевым фактором для раскрытия их ценности.
  • Достоверность: достоверность относится к качеству анализируемых данных. Данные высокой достоверности содержат много записей, которые ценны для анализа и которые вносят значимый вклад в общие результаты. С другой стороны данные с низкой достоверностью содержат высокий процент бессмысленной информации, которая называется шумом.

О том, чем занимаются специалисты по анализу больших данных, мы подробнее писали в статье «Big Data: размер имеет значение».

<a href="https://www.google.com/url?sa=i&amp;url=https%3A%2F%2Fwww.elmhurst.edu%2Fblog%2Ffuture-of-data-science%2F&amp;psig=AOvVaw0dGGYrmNMN04FLar1s0qzD&amp;ust=1603269904686000&amp;source=images&amp;cd=vfe&amp;ved=0CAIQjRxqFwoTCID0zoPkwuwCFQAAAAAdAAAAABAD" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Применение

Data Science

  • Цифровая реклама: алгоритмы Data science используются во всей области цифрового маркетинга – от рекламных щитов до рекламных баннеров.
  • Поиск в интернете: алгоритмы Data science также применяются поисковыми системами для получения наилучших результатов по запросам в течение нескольких секунд.
  • Рекомендательные системы: компании используют технологии Data Science для продвижения своих продуктов, а также для выдачи рекомендаций в соответствии с актуальностью информации и требованиями пользователя. Эти системы не только улучшают пользовательский опыт, но и облегчают поиск продуктов или услуг.

Big Data

Аналитика больших данных применяется в самых разных областях. Перечислим некоторые из них:

  • Игровая индустрия использует BigData, чтобы получить информацию о таких вещах, как симпатии, антипатии, отношения пользователей и т. д.
  • Поставщикам медицинских услуг аналитика больших данных нужна для отслеживания и оптимизации потока пациентов, отслеживания использования оборудования и лекарств, организации информации о пациентах и т. д.
  • Туристические компании применяют методы анализа больших данных для оптимизации опыта покупок по различным каналам. Они также изучают потребительские предпочтения и желания, находят корреляцию между текущими продажами и последующим просмотром, что позволяет оптимизировать конверсии.
Использование больших данных становятся эффективной основой для конкуренции практически во всех сферах. Независимо от того, к какой отрасли вы обратитесь, здравоохранение и персонализированная медицина, или логистика и операции, все они пытаются повысить эффективность своих цепочек поставок с помощью данных.
<a href="https://leverageedu.com/blog/bsc-computer-science-vs-bca/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Навыки

Data Science

Чтобы стать профессионалом в области Data Science, необходим аналитический склад ума, а также навыки управления данными. Большой процент специалистов имеет степень магистра в сфере компьютерных наук и знания в области статистики и математики. Вам также потребуются навыки программирования на Python и SQL, визуализации данных в Tableau и/или PowerBI, работы с библиотеками для машинного обучениями: Pandas, Scikit-learn и NumPy. Наряду с техническими навыками, специалисты Data Science должны обладать набором soft-skills: коммуникабельностью, умением донести информацию простым языком, способностью работать в команде. Самое главное – умение самостоятельно и быстро учиться.

Подробнее о том, как самостоятельно овладеть всеми ключевыми навыками, мы писали в статье «10 навыков, необходимых в профессии Data Scientist».

Big Data

Специалист по анализу больших данных должен хорошо разбираться в таких языках программирования, как R и/или Python и SQL. Наряду с хорошими знаниями статистики и математики, ему потребуются навыки работы с инструментами, вроде Hadoop или Spark, для решения проблем, связанных с огромными объемами данных и их распределенной обработкой. Необходимо владеть навыками визуализации и преобразования данных, а также разбираться в машинном обучении.

О том какие навыки необходимы в сфере Big data, мы подробно писали в статье «Стать аналитиком Big Data: пошаговое руководство».

<a href="https://www.valtira.com/data-analytics-in-2020/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Обязанности

Data Science

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

Big Data

В обязанности аналитиков больших данных входит работа с большим количеством разнородной информации, собранной из различных источников и поступающей с высокой скоростью. Специалисты по Big Data описывают поведение и структуру данных, а также то, как они могут быть представлены с помощью инструментов анализа: Spark, Hadoop и т. д.

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

<a href="https://www.bsebti.com/blog/demand-for-data-scientists-has-doubled-after-the-corona-outbreak/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Карьерные перспективы

В российском IT-секторе, есть тенденция к разделению специалистов по Data Science и Big Data при найме на работу. Однако по запросам Big Data в Яндекс.Работа и HeadHunter, можно заметить, что анализ больших данных включен в описание вакансий как Data Scientist, так и Big Data Engineer.

Начальная зарплата Data Scientist с опытом работы до года – от 113 тыс. рублей. Через 1 – 2 года такой специалист уже может получать до 160 тыс. рублей. Для сотрудника с опытом работы от 4 – 5 лет вилка вырастает до 310 тыс. По запросу на октябрь 2020 года для специалиста Big Data, средняя зарплата по России составляет около 118 тыс. рублей.

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

Заключение

Независимо от того, хотите вы стать специалистом Data Science или Big Data, ваши знания, умения и навыки должны оставаться актуальными. Профессионалу необходимо разбираться в тенденциях развития отрасли и постоянно учиться. Не прекращайте искать возможности развития через участие в митапах, конференциях и хакатонах, а также через онлайн-сообщества Data Science.

***

Если вы хотите построить карьеру в Data Science или Big Data, лучше начать прямо сейчас. Эти области постоянно расширяются, генерируя новые вакансии. Для освоения необходимых навыков с нуля запишитесь на курсы факультетов Искусственного интеллекта и Аналитики Big Data онлайн-университета GeekBrains. Учебные программы построены на практической работе над проектами с ведущими специалистами отрасли и личным помощником-куратором.

20
Окт
2020

📊 Data Science и Big Data: сходства и различия

Разложим по полочкам сходства и различия между специализациями Data Science и Big Data. Их сущность будем раскрывать через примеры и сравнение наборов используемых инструментов.

Если вы заинтересованы в работе с данными, важно иметь четкое представление о связанных с ней направлениях ИТ. В статье, подготовленной при поддержке Факультетов Искусственного интеллекта и Аналитики Big Data онлайн-университета GeekBrains, мы расскажем о сходстве и основных различиях между специализациями Data Science и Big Data.

Термины

Data Science

Data Science – междисциплинарная область, которая охватывает практически все, что связано с данными: от их подготовки до очистки и анализа. Data Science использует научные методы и алгоритмы для работы как со структурированными, так и с неструктурированными данными. Эта область сочетает в себе статистику, математику, машинное обучение, решение проблем и многое другое.

В статье «Научиться Data Science онлайн» мы подробнее рассказали, чем занимаются специалисты Data Science и как овладеть профессией с нуля.

Big Data

Big Data – область, в которой рассматриваются различные способы анализа и систематического извлечения больших объемов данных. Big Data включает применение механических или алгоритмических процессов получения оперативной информации для решения сложных бизнес-задач. Специалисты по Big Data работают с сырыми неструктурированными данными, результаты анализа которых используются для поддержки принятия решений в бизнесе. Аналитика больших данных включает проверку, преобразование, очистку и моделирование данных.

<a href="https://www.ibmbigdatahub.com/infographic/four-vs-big-data" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Работа с большими данными строится вокруг четырех правил (c англ. V’s of Big Data: Volume, Velocity, Variety, Veracity):

  • Объем: объем данных, которые могут собирать компании, действительно огромен, и поэтому их размер становится критическим фактором в аналитике.
  • Скорость: высокая скорость, с которой генерируется информация. Практически все происходящее вокруг нас (поисковые запросы, социальные сети и т. д.) производит новые данные, многие из которых могут быть использованы в бизнес-решениях.
  • Разнообразие: генерируемая информация неоднородна и может быть представлена в различных форматах, таких, например, как видео, текст, базы данных, числовая информация, сенсорные данные и т. д. Понимание типа больших данных является ключевым фактором для раскрытия их ценности.
  • Достоверность: достоверность относится к качеству анализируемых данных. Данные высокой достоверности содержат много записей, которые ценны для анализа и которые вносят значимый вклад в общие результаты. С другой стороны данные с низкой достоверностью содержат высокий процент бессмысленной информации, которая называется шумом.

О том, чем занимаются специалисты по анализу больших данных, мы подробнее писали в статье «Big Data: размер имеет значение».

<a href="https://www.google.com/url?sa=i&amp;url=https%3A%2F%2Fwww.elmhurst.edu%2Fblog%2Ffuture-of-data-science%2F&amp;psig=AOvVaw0dGGYrmNMN04FLar1s0qzD&amp;ust=1603269904686000&amp;source=images&amp;cd=vfe&amp;ved=0CAIQjRxqFwoTCID0zoPkwuwCFQAAAAAdAAAAABAD" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Применение

Data Science

  • Цифровая реклама: алгоритмы Data science используются во всей области цифрового маркетинга – от рекламных щитов до рекламных баннеров.
  • Поиск в интернете: алгоритмы Data science также применяются поисковыми системами для получения наилучших результатов по запросам в течение нескольких секунд.
  • Рекомендательные системы: компании используют технологии Data Science для продвижения своих продуктов, а также для выдачи рекомендаций в соответствии с актуальностью информации и требованиями пользователя. Эти системы не только улучшают пользовательский опыт, но и облегчают поиск продуктов или услуг.

Big Data

Аналитика больших данных применяется в самых разных областях. Перечислим некоторые из них:

  • Игровая индустрия использует BigData, чтобы получить информацию о таких вещах, как симпатии, антипатии, отношения пользователей и т. д.
  • Поставщикам медицинских услуг аналитика больших данных нужна для отслеживания и оптимизации потока пациентов, отслеживания использования оборудования и лекарств, организации информации о пациентах и т. д.
  • Туристические компании применяют методы анализа больших данных для оптимизации опыта покупок по различным каналам. Они также изучают потребительские предпочтения и желания, находят корреляцию между текущими продажами и последующим просмотром, что позволяет оптимизировать конверсии.
Использование больших данных становятся эффективной основой для конкуренции практически во всех сферах. Независимо от того, к какой отрасли вы обратитесь, здравоохранение и персонализированная медицина, или логистика и операции, все они пытаются повысить эффективность своих цепочек поставок с помощью данных.
<a href="https://leverageedu.com/blog/bsc-computer-science-vs-bca/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Навыки

Data Science

Чтобы стать профессионалом в области Data Science, необходим аналитический склад ума, а также навыки управления данными. Большой процент специалистов имеет степень магистра в сфере компьютерных наук и знания в области статистики и математики. Вам также потребуются навыки программирования на Python и SQL, визуализации данных в Tableau и/или PowerBI, работы с библиотеками для машинного обучениями: Pandas, Scikit-learn и NumPy. Наряду с техническими навыками, специалисты Data Science должны обладать набором soft-skills: коммуникабельностью, умением донести информацию простым языком, способностью работать в команде. Самое главное – умение самостоятельно и быстро учиться.

Подробнее о том, как самостоятельно овладеть всеми ключевыми навыками, мы писали в статье «10 навыков, необходимых в профессии Data Scientist».

Big Data

Специалист по анализу больших данных должен хорошо разбираться в таких языках программирования, как R и/или Python и SQL. Наряду с хорошими знаниями статистики и математики, ему потребуются навыки работы с инструментами, вроде Hadoop или Spark, для решения проблем, связанных с огромными объемами данных и их распределенной обработкой. Необходимо владеть навыками визуализации и преобразования данных, а также разбираться в машинном обучении.

О том какие навыки необходимы в сфере Big data, мы подробно писали в статье «Стать аналитиком Big Data: пошаговое руководство».

<a href="https://www.valtira.com/data-analytics-in-2020/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Обязанности

Data Science

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

Big Data

В обязанности аналитиков больших данных входит работа с большим количеством разнородной информации, собранной из различных источников и поступающей с высокой скоростью. Специалисты по Big Data описывают поведение и структуру данных, а также то, как они могут быть представлены с помощью инструментов анализа: Spark, Hadoop и т. д.

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

<a href="https://www.bsebti.com/blog/demand-for-data-scientists-has-doubled-after-the-corona-outbreak/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Карьерные перспективы

В российском IT-секторе, есть тенденция к разделению специалистов по Data Science и Big Data при найме на работу. Однако по запросам Big Data в Яндекс.Работа и HeadHunter, можно заметить, что анализ больших данных включен в описание вакансий как Data Scientist, так и Big Data Engineer.

Начальная зарплата Data Scientist с опытом работы до года – от 113 тыс. рублей. Через 1 – 2 года такой специалист уже может получать до 160 тыс. рублей. Для сотрудника с опытом работы от 4 – 5 лет вилка вырастает до 310 тыс. По запросу на октябрь 2020 года для специалиста Big Data, средняя зарплата по России составляет около 118 тыс. рублей.

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

Заключение

Независимо от того, хотите вы стать специалистом Data Science или Big Data, ваши знания, умения и навыки должны оставаться актуальными. Профессионалу необходимо разбираться в тенденциях развития отрасли и постоянно учиться. Не прекращайте искать возможности развития через участие в митапах, конференциях и хакатонах, а также через онлайн-сообщества Data Science.

***

Если вы хотите построить карьеру в Data Science или Big Data, лучше начать прямо сейчас. Эти области постоянно расширяются, генерируя новые вакансии. Для освоения необходимых навыков с нуля запишитесь на курсы факультетов Искусственного интеллекта и Аналитики Big Data онлайн-университета GeekBrains. Учебные программы построены на практической работе над проектами с ведущими специалистами отрасли и личным помощником-куратором.

30
Июл
2020

Будущее Data Science связано с прогрессом алгоритмов машинного обучения и технологий для работы с большими объемами данных. В этой статье обсуждаем прогнозы того, что ждет дата сайентистов в следующие пять лет.

Будущее Data Science: что ждет отрасль в ближайшие пять лет

Специалисты Data Science собирают и исследуют информацию с помощью различных инструментов анализа, превращая разрозненные массивы данных в сжатые представления практически важных знаний. Стать хорошим специалистом непросто: необходимо обладать глубокими знаниями алгоритмов машинного обучения и других методов работы с данными, знать язык программирования (обычно Python или R), владеть ETL-навыками.

На развитие рынка данных оказывает влияние стремительный рост их объема, постепенное осознание организациями важности Data Science, спрос на анализ Big Data, потребность бизнеса в интерпретируемых аналитических методах. По данным International Data Corporation, к 2022 году мировая выручка от продажи решений для обработки больших объемов данных и бизнес-аналитики достигнет 260 млрд долларов, а среднегодовые темпы роста составят 11.9%. К 2025 году большинство операций, которые сейчас выполняются в Data Science вручную, станут автоматизированными. К 2030 году Data Science уже не будет заниматься поиском и очисткой данных. Эту задачу возьмут на себя программные роботы.

Активнее всего Data Science развивается в Северной Америке и Азиатско-Тихоокеанском регионе. Государственным регулирующим органам приходится реагировать на развитие технологий. Всё сложнее найти баланс между национальными интересами государств, экономическим прогрессом и правом людей на частную жизнь. Однако, как замечает ведущий специалист компании Dun & Bradstreet Антони Скриффиньяно, машинное обучение не имеет географических границ: то, что может быть неприемлемо в одной точке мира, может нормально восприниматься в другой. Модели и наборы данных, разработанные и собранные в регионах с меньшим вниманием к конфиденциальности и этике данных, могут использоваться аналитиками данных в государствах с другими культурными правилами. Наука о данных ещё не раз столкнется с различными этическими вопросами анализа персональной информации.

Применение Data Science в бизнесе

Бизнес может использовать Data Science различными способами. Например, компания по продаже недвижимости из английского Дарема анализирует более 700 личных факторов: демографические данные, изменения доходов, покупательское поведение и история каждого продавца. Эти данные сопоставляются со средними показателями по стране. Так агент узнаёт, когда стоит связаться с продавцом, чтобы иметь лучший шанс на заключение сделки. Системы с похожей функциональностью используют и американские компании, занимающиеся недвижимостью.

Примечание
О различных вариантах применения Data Science в российском бизнесе читайте в нашей статье «Как компании превращают данные в деньги: обзор российских практик Data Science».

Amazon стал наглядным примером того, насколько полезным может быть сбор данных для обычного покупателя. Запоминая что вы приобрели, сколько заплатили и что искали, Amazon показывает на главной странице только те предметы, которые могут быть вам потенциально интересны. Такая стратегия одновременно повышает рентабельность розничной торговли и экономит деньги потребителей.

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

Востребованность профессионалов в области Data Science

Спрос на специалистов по Data Science в ближайшие пять лет будет только расти. Сайт Glassdoor четвёртый год подряд называет специалиста по Data Science «работой №1 в США». Бюро трудовой статистики США сообщает, что к 2026 году ожидается рост занятости в этой сфере на 27.9%. Согласно отчёту MHR Analytics, 80% британских компаний планируют нанять в этом году специалиста по работе с данными или обратиться за консультацией по Data Science. Однако есть не только огромный спрос, но и заметная нехватка квалифицированных аналитиков данных.

Data Science: всё больше применений

Data Science распространяется далеко за пределы розничных продаж, страхования и финтеха. Мы каждый день используем применения Data Science, когда социальная сеть, музыкальный стриминговый сервис или YouTube рекомендуют нам контент.

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


Кроме того, обработка медицинских данных поможет предотвращать эпидемии. Во время вспышки эпидемии Эбола в 2014 г. в Африке учёные смогли проследить за распространением заболевания и выявить наиболее уязвимые районы. Для этого использовались данные, полученные от оператора мобильной связи Сенегала. Благодаря этим данным стало известно, где и с кем находились заболевшие люди во время инкубационного периода вируса, когда болезнь ещё не проявляет симптомов. Можно надеяться, что прошедшие в этом году многочисленные хакатоны по теме COVID-19, также помогут в предотвращении стремительного распространения других вирусов.

Фермеры используют Data Science для повышения эффективности выращивания и доставки овощей, производители продуктов питания – для сокращения количества отходов. Организации волонтёров и активистов применяют Data Science для прогнозирования финансовых поступлений и поисков путей их увеличения.

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

Что ждёт специалистов Data Science

Большое развитие получат системы, позволяющие поставить на поток рутинные операции и ускорить разработку. Автоматизация таких задач, как выбор и оценка алгоритмов, может до 10 раз сократить время, необходимое для работы с данными. Улучшение качества алгоритмов и упрощение программных инструментов снизит порог входа в профессию. Такие простые алгоритмы машинного обучения, деревья решений, теперь развернуть проще простого. А для понимания таких фреймворков, как PyTorch и TensorFlow и вовсе не требуется докторская степень по математике.

IDC прогнозирует, что к 2025 году почти 30% мировых данных будет поступать в режиме реального времени. Предварительно обученные модели искусственного интеллекта будут использоваться всё более широко, а повсеместная практика их применения позволит сократить время и усилия, необходимые для обучения.


Возникнут API, позволяющие встраивать в уже существующие приложения технологии работы с большими объемами данных. Благодаря Data Science более дружественными для пользователя станут VR (Виртуальная реальность) и AR (Дополненная реальность). Сбор и обработка данных будут актуальны и для тех, кто занимается блокчейн-технологиями. Чем важнее данные, тем важнее и их защита. Поэтому вырастет спрос на классных специалистов по защите информации. Уже появилось такое направление IT, как безопасность Data Science.

Зарплаты специалистов начинаются от $100 000 в год для разработчика архитектуры, и приложений, от $70 000 в год для статистика и от $62 000 в год для аналитика данных. Профессионала в области Data Science будут рады видеть в своих рядах Google, Amazon, Apple, Microsoft, Facebook или Яндекс. Молодая компания или стартап предложат специалисту по Data Science разнообразные возможности проявить свои таланты, а вместе с тем стать одним из важных участников проекта. Огромный потенциал ожидает проекты на стыке Data Science и квантовых вычислений.

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

***

Если вы опытный разработчик программного обеспечения или же только начинаете свой путь в IT, вам стоит обратить внимание на учебный курс по Data Science от GeekBrains. Вы увидите, что программа по высшей математике может быть захватывающей даже для тех, кто скучал на математике в институте или школе. А технологии машинного обучения и нейронные сети перестанут быть далекими абстракциями и превратятся в набор удобных инструментов для задач бизнеса. Участие в факультативах познакомит с наставниками, готовыми стать вашими работодателями на старте карьеры.

10
Фев
2020

Kubernetes, Python, React, AI… Что в трендах разработки в 2020 году?

Главные тенденции в создании ПО, связи между трендами и ссылки на ключевые публикации.

Разработка программного обеспечения оказывают колоссальное влияние на прогресс. Хотя не все…

25
Янв
2020

Перестройка наоборот: кто и почему хочет сделать интернет «общим»


Вопросы безопасности персональных данных, их утечек и растущей «власти» крупных ИТ-корпораций все чаще беспокоят не только обычных пользователей сети, но и представителей политических партий. Некоторые из них предлагают изменения.