Бизнес-сериал: формируем BI-систему в строительстве почти в прямом эфире. Часть II

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

Высокоуровневый язык программирования

Привет, друзья!
Продолжаем нашу серию статей о создании BI-системы в компании Sminex. Расскажем о наших дальнейших шагах по построению хранилища с якорной моделью.
Как и многих пользователей Хабра меня интересует вопрос, как можно повысить эффективность изучения иностранных языков. Один из наиболее часто рекомендуемых методов — смотреть фильмы на изучаемом языке. И, естественно, я им пользуюсь. Периодически меня посещают мысли о необходимости оптимизации этого подхода. Сначала я нашел себе проигрыватели, которые поддерживают одновременное отображение субтитров на двух языках: субтитры на изучаемом языке отображаются как обычно внизу экрана, а вверху отображаются субтитры на русском. Но этого мне показалось мало. Я пошел искать проигрыватель, который мог бы отображать не только текущие субтитры, но и «транскрипт» — последовательность, включающую как текущий фрагмент субтитров, так и соседние, что бы из них можно было сложить связанный более крупный фрагмент текста. Это может быть удобно если:
— при просмотре было что‑то непонятно, нужно прочитать субтитр, а он уже скрыт и при этом не хочется перематывать назад и ловить пропущенный кусок
— субтитры разбиты на фрагменты таким образом что каждый из них не является законченной фразой и для того что бы понять смысл нужно иметь перед глазами две‑три строки субтитров
Похожая функциональность есть, например, на YouTube и на Корсэре.
Однако после некоторых изысканий я к своему удивлению обнаружил что этой фичи нет ни в одном Windows‑проигрывателе. (UPDATE: этой фичи в стандартных проигрывателях нет в нужном мне виде, т. е. с параллельным отображением транскрипта на двух языках)
У меня как раз чесались руки попробовать что из себя представляет связка Cursor+o1. Так спонтанно родилось решение использовать такой проигрыватель в качестве объекта для экспериментов с этими инструментами. Сразу скажу, что навыков разработки у меня практически нет (если не считать минимальных фрагментарных представлений о разработке для веба).

Предпосылки, или «куда делось всё место на телефоне»
Одним прекрасным днем, обнаружив, что на новом свежем купленном айфоне из 256гб осталось примерно половина места после переноса данных со старого, я задался вопросом — а куда делось место?
Потребление по категориям расставило точки над i — 70гб было занято приложением Photos. Приложение Photos обрадовало наличием 15 000 объектов в галерее.
Быстро проскроллив часть галереи, я пришел к трем фактам:
— Большинство объектов — сохраненные откуда‑то мемы;
— У меня нет желания их удалять;
— У меня нет желания платить за облачное хранилище.
Спустя недолгое время раздумий, было найдено решение, позволяющее сохранить бесценные богатства и повеселить друзей — постить мемы в телеграм.
Под катом история о том, как постить мемы ненапряжно, без необходимости использования телеграм ботов и без затрат на сервера.

Поиск соседей в программировании — это процесс поиска элементов, расположенных рядом с заданным элементом в структуре данных (например, матрице или графе). Этот подход применяется для анализа взаимосвязей между элементами, определения их свойств на основе окружения и выполнения различных алгоритмов (например, поиск пути, кластеризация, фильтрация данных).

Привет! Я Владимир Морозов, senior DS engineer в команде модерации Авито: в основном занимаюсь автомодерацией видео, но развиваю и другие проекты. В статье рассказываю, с какими трудностями мы столкнулись при модерации видео в условиях небольшого количества данных, и как их решили. Думаю, материал будет полезен всем, кто занимается похожими задачами в крупных продуктовых компаниях.

Подростковый возраст – идеальное время для обучения детей чему-то новому. Кодинг не стоит считать исключением. Есть несколько подходящих и относительно простых языков и вспомогательных сред: Скретч и Роблокс, Python, в том числе в связке с Minecraft, C# и JavaScript. Разбираемся, с чего стоит начать.
Мы твердо уверены в следующем: если ребенку нравится играть в компьютерные игры, в том числе онлайн, то это не повод для ограничений, а основа развития ценных навыков. Нужно подтолкнуть школьника к тому, чтобы начать программировать: достаточно показать, скажем, что тот же «Питон» может применяться для моддинга в Майнкрафте, а C# – для создания игр на кроссплатформенном движке Unity. Но это лишь примеры.
Давайте разбираться в вопросах по поводу возраста и целесообразного маршрута. Для убедительности представим мнения наших преподавателей с опытом в обучении школьников программированию, разработке игр, созданию сайтов и другим IT-направлениям.

Пример создания Full Stack проекта, используя функциональное тестирование как инструмент дизайна(продолжение)
API часть и релиз проекта

С момента своего появления в 2017 году в публикации Attention is All You Need трансформеры стали доминирующим подходом в обработке естественного языка. В 2021 году в статье An Image is Worth 16x16 Words трансформеры были успешно адаптированы для задач компьютерного зрения. С тех пор для компьютерного зрения было предложено множество архитектур на основе трансформеров.
В этой статье мы рассмотрим трансформер зрения (Vision Transformer, ViT) в том виде, в котором он был представлен во второй статье. Она включает в себя открытый код ViT, а также концептуальные объяснения компонентов. Реализация ViT, рассмотренная в статье, выполнена с использованием пакета PyTorch.

Всем привет!
Меня зовут Азрет, я - CTO в AAA (читается как "трипл-эй"). Мы разрабатываем LLM приложения для бизнеса. Решаем разнообразные задачи - оптимизация внутренних процессов за счет ИИ, маркетинговые исследования и запуск новых продуктов. Но запрос на бота, про которого я хочу рассказать, внезапно пришел от фаундера нашего агенства.
Ситуация понятна - я подписан на кучу телеграм каналов, я не успеваю их читать, мне от этого неприятно, я испытываю FOMO. А я бы хотел не пропустить ничего важного, тратить как можно меньше времени и иметь все в одном месте.
Из этого запроса появилась идея саммари бота. Я столкнулся с множеством интересных задач, пока работал над ним, и подумал, что будет полезно, если я поделюсь решениями.
В этой обзорной статье - детали архитектуры и стека.
Кому интересно - прошу под кат.

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

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

Современные дети могут начать изучать программирование даже в дошкольные и школьные годы. Конкретный возраст не играет роли: есть множество простых языков, вспомогательных сред и даже обучающих и развивающих игр и приложений. С их помощью любой ребенок сможет понять основы написания кода и выполнить первые простые проекты.
Задача упрощается, если используются образовательные игры и приложения. Это плюс: осваивать код в игровой форме нравится даже непоседливым ребятам. Они с охотой используют доступные инструменты различных сред, вовлекаются в процесс и начинают приближаться к пониманию «взрослого» программирования, уже давно ставшего второй грамотностью в эпоху IT.
Перейдем к основной теме: сегодня хотим рассмотреть 35 игр и приложений по программированию для детей. В подборке собраны:
- Среды, в которых можно обучиться блочному кодингу (13 штук);
- Игры, полезные для начинающих питонистов (9);
- Развивающие платформы для обучения веб-разработке с использованием HTML, CSS и JavaScript (10);
- Обучающие приложения, предназначенные для подростков (3).

Привет, Хабр!
Сегодня мы прокачаем PostgreSQL, добавив в него Python. А именно — PL/Python. Это расширение позволяет писать функции на Python прямо внутри базы данных. Лично для меня это как объединение двух лучших миров: любимого PostgreSQL и могучего Python.
PL/Python — это про то, когда стандартного SQL мало. Когда надо сделать что-то действительно интересное: сложные расчеты, массивы данных, или интеграция с аналитикой прямо в базе. А самое крутое — можно тянуть любые Python-библиотеки.
Для начала нужно просто установить расширение в PostgreSQL.

У PaloAlto есть специальный инструмент для миграции под названием Expedition.
Он может конвертировать файлы конфигурации с разных брандмауэров в PaloAlto.
Но его исходный код закрыт, вы не сможете понять логику его работы,
и он больше не будет поддерживаться в 2025 году.
Моя программа на Python имеет открытый исходный код. Вы можете прочитать, использовать, обновлять, добавлять свои собственные функции.
Программа преобразует структурированный текст в другой структурированный текст, и находится в стадии разработки.
Чтобы понять эту программу, вам нужно знать основные операции в Python, текст, list и dictionary.
Я пишу этот текст для сетевых инженеров, которые изучают Python, я хочу показать вам направление развития.
Я добавил как можно больше комментариев в текст для лучшего понимания.
И в Juniper Firewall, и в PaloAlto используются объекты адресов (set address) и группы объектов адресов (set address-group).
В обоих брандмауэрах объекты адресов используются как IP адреса источника или IP адреса назначения в политиках или правилах.
Здесь мы видим объекты адресов (set address). Слева Juniper, справа те же объекты, преобразованные в PaloAlto.

Всем привет! Меня зовут Илья Черников, я аналитик больших данных в X5 Tech, сейчас занимаюсь аналитикой и оценкой активностей CVM маркетинга экспресс-доставки “Пятёрочки”.
В статье я расскажу о том, как мы решали вопрос автоматизации оценки эффективности большого количества маркетинговых кампаний с помощью бутстрапа в PySpark. Я опишу различные подходы к реализации бутстрапа с их плюсами и минусами, а также расскажу об итоговом варианте, который мы выбрали для себя.

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

Привет, Хабр! Меня зовут Иван Четвериков и я AI Architect в Raft. На конференции AIConf я сделал бота @raft_password_bot, который защищает секрет с помощью промптов. Рассказываем, как сделать такого же. И предлагаем попробовать с помощью промпта выведать у него тайну.

Привет, Хабр! Меня зовут Дмитрий, я инженер данных, и это моя первая статья. В ней я хочу поделиться своим пет-проектом, который посвящен созданию ETL-процесса — важного элемента в работе любого Data Engineer. Мой проект направлен на извлечение данных из электронной почты и их загрузку в базу данных Greenplum для анализа.
Идея возникла из личной потребности контролировать расходы в продуктовых сетях, таких как "ВкусВилл". Существуют готовые решения, но я хотел создать свою систему, где данные из разных магазинов собираются в одном месте для более детального анализа и визуализации.
Готовые приложения часто ограничены в настройке, поэтому я решил использовать Python для автоматизации обработки данных, а Greenplum для их хранения и аналитики. В статье я расскажу, как мне удалось автоматизировать процесс извлечения данных из писем "ВкусВилл", структурировать их и загрузить в базу для дальнейшего анализа.

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