Обновить
454
123.4

Пользователь

Отправить сообщение

Какую архитектуру конвейера данных следует использовать?

Время на прочтение7 мин
Количество просмотров6.3K

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


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

Книга: «Causal Inference на Python. Причинно-следственные связи в IT-разработке»

Время на прочтение13 мин
Количество просмотров3.4K
image Привет, Хаброжители!

Причинно-следственный анализ — одна из важнейших методологий современной науки о данных (data science), однако между теорией и практикой сохраняется большой пробел. Матеуш написал лучшую на сегодняшний день книгу, которая учит, как перейти от упрощенных моделей к современным методам, работающим на реальных данных и решающим важные практические задачи. Большое внимание уделяется практическому применению, а не формальным доказательствам и теоремам причинно-следственного анализа.

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

К чистому коду через рефакторинг

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

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

Издательство Питер. Колонка редактора, октябрь 24 г

Время на прочтение5 мин
Количество просмотров6.2K
image

Привет, Хаброжители!

Предлагаем ознакомиться с краткими обзорами новинок, отправленных в типографию.
Читать дальше →

Допечатываем ту самую «Математику в машинном обучении»

Время на прочтение1 мин
Количество просмотров6.3K
Друзья, рады сообщить, что скоро выйдет очередная допечатка замечательной книги «Математика в машинном обучении». Мы получили на нее массу положительных отзывов (средняя оценка 4.9 на Озоне, 5.0 на Wildberries).

К сожалению, не обошлось без огрехов, в таком сложном тексте это практически невозможно.

Во время создания русской версии Mathematics for Machine Learning от Cambridge University Press помимо эрраты мы дополнительно учли и исправили более 500 замечаний и ляпов, найденных зарубежными читателями в англоязычной книге (issues на github), плюс десятки нашли самостоятельно.
Читать дальше →

Как спроектировать библиотеку для Spring Boot

Время на прочтение10 мин
Количество просмотров4.2K
image


Принцип DRY (Не повторяйся) – это важная составляющая цикла разработки программного обеспечения. Его цель – избежать ненужной повторяемости в коде. В частности, имеется множество приложений, которые могут находиться в составе одной и той же микросервисной архитектуры и использовать один и тот же компонент. В результате код становится неудобно поддерживать, поскольку всякий раз, когда требуется внести изменение в этот компонент, с каждым из этих приложений приходится разбираться отдельно.
В этой статье давайте рассмотрим, как можно вынести такие компоненты из приложений в отдельный модуль. Тем самым мы одновременно стремимся упростить поддержку кода и сократить в нём количество повторов.
Читать дальше →

Книга: «Разрушители. Грибки и грядущая пандемия»

Время на прочтение20 мин
Количество просмотров1.8K
image Привет, Хаброжители!

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

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

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

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

Книга: «Тестирование программного обеспечения: контекстно ориентированный подход»

Время на прочтение16 мин
Количество просмотров4.9K
image Привет, Хаброжители!

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

Кем Кейнер, Джеймс Бах и Брет Петтикорд очень хорошо об этом знают. За их плечами более 50 лет опыта, и они понимают, что необходимо для достижения успеха в тестировании. Они собрали 293 проверенных совета, которые вы можете использовать в своих проектах. Каждый урок начинается с утверждения, относящегося к тестированию программного обеспечения, за которым следует объяснение или пример, показывающий, как, когда и почему применяется этот урок.
Читать дальше →

Что можно рассказать о функциях Python на примере кофемашины?

Время на прочтение7 мин
Количество просмотров6.9K
Поделюсь с вами одной из моих любимых аналогий.

Я раньше сам молол себе кофе. Купил такую старомодную ручную кофемолку с металлической воронкой, крутильной рукояткой и маленьким деревянным подносом, на который ссыпается смолотый кофе.

Может быть, где-то у меня она ещё валяется.

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

Книга: «Паттерны проектирования JavaScript»

Время на прочтение10 мин
Количество просмотров8.6K
image Привет, Хаброжители!

Раскройте потенциал паттернов проектирования JavaScript. Найдите структурированные решения распространенных задач разработки, пригодные для многократного использования и повышающие масштабируемость, производительность и удобство сопровождения кода. Узнайте, как применение этих паттернов позволяет создавать более чистый и понятный код, способствует организации совместной работы в команде, сокращает количество ошибок и экономит время и силы.Автор дает исчерпывающее представление о паттернах проектирования в современном JavaScript (ES6+) и приводит практические примеры их применения. Сначала вы познакомитесь с порождающими, структурными и поведенческими паттернами проектирования в идиоматическом для JavaScript стиле, а затем переключитесь на архитектурные паттерны и паттерны пользовательского интерфейса. Вы узнаете, как применять паттерны, характерные для таких библиотек, как React, и распространять их на фронтенд и микрофронтенд. В последней части книги представлены и проиллюстрированы паттерны улучшения производительности и безопасности, включая обмен сообщениями, события и стратегии загрузки ресурсов, а также паттерны высокопроизводительных асинхронных вычислений. В издании приводятся примеры использования React и Next.js, а также JavaScript и Web API. Они помогут выбрать и внедрить проверенные паттерны проектирования в различных веб-экосистемах и изменить ваш подход к разработке.
Читать дальше →

Книга: «Грокаем алгоритмы. 2-е изд.»

Время на прочтение5 мин
Количество просмотров27K
image Хаброжители, привет!

Мы снова возвращаемся с вторым изданием книги “Грокаем алгоритмы”! Красивым, новеньким, актуализированным. От первого тиража всё ещё пахнет типографией, а код примеров обновлен на Python 3!

Зачем второе издание? Первое было интересным, понятным, запоминающимся. Но оно было выпущено в далёком 2016 году, а перевод появился лишь в 2017. В сфере компьютерных технологий всё меняется и обновляется с невероятной скоростью, неудивительно, что автор решил актуализировать свою книгу.

Читать дальше →

Компилируем и выполняем C на JavaScript

Время на прочтение13 мин
Количество просмотров6.7K
Мир работает на C. Этот язык лежит в основе сжатия файлов, сетевых взаимодействий и даже браузера, в котором вы читаете эту статью. Если код не написан на C, он всё равно взаимодействует с ABI, написанном на C (речь о C++, Rust, Zig, т.д.) и доступен в виде библиотеки на C. Язык C и C ABI — это прошлое, настоящее и будущее системного программирования.
Читать дальше →

Рефакторинг вглубь

Время на прочтение9 мин
Количество просмотров2.7K
image

Рефакторинг – это “это контролируемая техника совершенствования структуры существующего кода” [Фаулер]. Сейчас уже написано так много всего о запахах кода и приёмах рефакторинга в микромасштабе (есть, например, книги и целые сайты). А я хочу рассмотреть ситуацию крупным планом и обсудить, как именно и в каком порядке следует применять эти приёмы. В частности, берусь утверждать, что рефакторинг лучше всего выполнять наизнанку, то есть, начинать от границы с внешним API, а далее прорабатывать код вглубь, переходя к классам, методам, алгоритмам, типам, тестам или именам переменных.

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

Деконструкция монолита: Максимально производительный подход к проектированию программ

Время на прочтение10 мин
Количество просмотров7.4K

Как и почему компания Shopify перешла от монолитной архитектуры к модульно-монолитной.


image

У компании Shopify одна из крупнейших баз кода на Ruby on Rails. Над ней трудились более десяти лет свыше тысячи разработчиков. Она включает множество разнообразных функций, например, выставление счетов продавцам, управление сторонними приложениями, обновление информации о товарах, обработка доставки и так далее.

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

Издательство Питер. Колонка редактора, сентябрь 24 г

Время на прочтение3 мин
Количество просмотров3.2K
image

Привет, Хаброжители!

Предлагаем ознакомиться с краткими обзорами новинок, отправленных в типографию.
Читать дальше →

Осенняя распродажа в издательстве «Питер»

Время на прочтение1 мин
Количество просмотров8.3K
image


Добрый день, Хаброжители!

С летом мы уже попрощались, но не прощаемся с хорошими новостями — с сегодняшнего дня стартует сентябрьская распродажа!
Читать дальше →

Типы проб в Kubernetes: проверяем работоспособность систем

Время на прочтение6 мин
Количество просмотров5.3K
В Kubernetes существует три типа проб, предназначенных для проверки работоспособности подов. В этой статье рассказано, как использовать эти пробы, а также объяснены отличия между ними.

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

Книги Python — рекомендации для вдумчивого изучения

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров25K
Как хорошо вы знаете python? Вы только начали делать неуверенные шаги в изучении или уже беглого осмотра кода хватит, чтобы найти ошибки? Для совсем новичков и для настоящих профессионалов-питонистов! Для любой аудитории найдётся своя книга!

image

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

Книга: «Безопасность веб-приложений. Разведка, защита, нападение. 2-е изд.»

Время на прочтение19 мин
Количество просмотров5.2K
image Привет, Хаброжители!

Поговорим немного о безопасности? О защите, нападении и об Эндрю Хоффмане. Тем более, что вышло второе издание его известной книге о безопасности веб-приложений! Обновлённое, дополненное, актуализированное!

Три столпа безопасности приложений — разведка, нападение и защита. Во втором издании Эндрю Хоффман рассматривает десятки смежных тем — от новейших типов атак и средств защиты до моделирования угроз, жизненного цикла безопасной разработки ПО (SSDL/SDLC) и архитектуры нулевого доверия.

Вы получите подробную информацию об эксплойтах и средствах защиты от атак с использованием GraphQL, облачных технологий и доставки контента (CDN). В главы, посвященные атакам и их предотвращению, добавлены сведения для более продвинутых читателей.
Читать дальше →

Камень, ножницы, бумага: путешествие во времени, стратегия и код

Время на прочтение7 мин
Количество просмотров1.9K
image


«Камень, ножницы, бумага» — простая, но очень популярная жестовая игра, которой вот уже не первый век развлекаются люди во всём мире. Поскольку правила игры просты, а жесты общепонятны, ею широко пользуются для улаживания споров, принятия решений или просто чтобы провести время. В этой статье мы исследуем богатую историю игры «Камень, ножницы, бумага», поговорим о том, как в неё играть, напишем саму игру и разберём структуру её кода, а также узнаем, как на материале этой игры можно прокачать навыки программирования.
Читать дальше →

Информация

В рейтинге
Не участвует
Работает в
Зарегистрирован
Активность