Тимлидские хитрости – как календарь может помочь в работе команды

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


Мы живем в компьютерной симуляции. Мнение программиста

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


Как Python использует сборку мусора для эффективного управления памятью

В Python мы часто думаем о переменной как о метке для значения. Однако, если говорить точнее, то переменная на самом деле указывает на объект, который хранит значение. Читать далее


Анализ временных данных с учетом сезонности и трендов

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


Командные роли в картинках

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

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


Создание масштабируемой и высокодоступной системы Postgres с помощью Patroni 3.0 и Citus

В этой статье вы узнаете, как Patroni 3.0+ можно использовать для деплоя высокодоступного кластера базы данных Citus — всего лишь добавив несколько строк в конфигурационный файл Patroni. В статье рассмотрим: 

  • Что такое Patroni.
  • Представление поддержки Citus в Patroni 3.0.
  • Наш первый распределенный кластер Citus с Patroni.
  • Наше первое контролируемое переключение высокой доступности (HA switchover) с использованием Patroni и Citus.
  • Планы на будущее и возможные улучшения.
  • Комбинация Patroni и Citus для обеспечения высокой доступности PostgreSQL в распределенной среде. 

Перейти к статье


Гиперпараметрический поиск и оптимизация моделей

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

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


Mimock: утилита для имитации REST эндпоинтов в режиме реального времени

Статья об одном необычном open source проекте — Mimock  инструменте, который помогает создавать моки REST API эндпоинтов для тестирования UI-приложений локально или в CI/CD-пайплайнах. Mimock представляет собой основанное на перехвате данных решение, позволяющее разработчику создавать или обновлять моки без необходимости перезапускать приложения. Читать далее


Как я написал JVM на Rust

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

  • операторы управления потоком выполнения (if, for, ...)
  • создание примитивов и объектов
  • вызов виртуальных и статических методов
  • исключения
  • сборка мусора
  • разрешение классов из jar-файла.

Читать полностью


Чтобы ускорить работу Numba и кода NumPy, нужно понять, как работают процессоры

Если вам нужно ускорить обработку NumPy или просто сократить использование памяти, попробуйте компилятор Numba just-in-time. С его помощью можно писать код на языке Python, который во время выполнения компилируется в машинный код. Это позволяет получить прирост скорости, сопоставимый с приростом, который можно получить на C, Fortran или Rust.

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

В этой статье мы:

  • Рассмотрим простую задачу обработки изображений.
  • Попытаемся (поначалу безуспешно) ускорить ее с помощью Numba.
  • Рассмотрим, почему современные процессоры такие быстрые, и каковы возможности компиляторов.
  • Опираясь на полученные знания, мы скорректируем наш код так, чтобы он выполнялся в 25 раз быстрее по сравнению с первоначальной версией.

Читать далее


Классификация грибов методами ML

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