Обновить

Все потоки

Сначала показывать
Порог рейтинга
Уровень сложности

Пушкин vs Лермонтов: поиск истины на Python

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров64

Можно ли с помощью Python и математических метрик лучше понять поэзию? В этой статье я покажу, как с помощью кода можно количественно сравнить стили Александра Пушкина и Михаила Лермонтова.

Читать далее

Новости

Нефункциональные требования. Список, который вспоминают в последний день перед релизом. Часть 1

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров267

Представьте, что вы покупаете мотоцикл. Чего вы от него ожидаете? Чтобы он мог разгоняться до 180км/час и при этом не разваливался? Чтобы к нему можно было прикрепить коляску? И не забудем про систему безопасности.

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

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

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

К разбору

5 задач, которые я научился автоматизировать AI-агентами (и почему вам не стоит повторять все мои ошибки)

Уровень сложностиПростой
Время на прочтение14 мин
Количество просмотров670

История началась банально. Наш небольшой SaaS получал 30-40 заявок в день, и два менеджера физически не успевали их обрабатывать. Я, как технический директор и большой энтузиаст AI, решил: "Сейчас напишу бота, который всё сделает!"

Через месяц у нас был AI-агент, который...

Читать далее

Главная проблема «чистых архитектур»

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров549

Откройте любой пулл‑реквест в проекте с любой «чистой архитектурой» и вы скорее всего увидите не обсуждение бизнес‑логики, а срач. «Это нельзя класть в UseCase, это логика домена!», «Зачем тут еще один DTO, мы же просто поле прокидываем!», «Этот интерфейс не нужен, у нас никогда не будет другой реализации!». Полагаю, очень много людей с таким сталкиваются.

Эта статья — о том, почему архитектура из спасения превратилась в тонны говнокода. И, что самое главное, — как прекратить этот хаос и, наконец, начать просто писать код, который работает, а не «следует всем концепциям».

Читать далее

Проблемы контурных карт: анализ графики Europa Universalis 5

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров412

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

Читать далее

Как дефолтная пагинация в Spring сломала проект и как это починить

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров383

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

Читать далее

Как подключиться к ClickHouse из IDE?

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров392

Эта инструкция подойдет аналитикам, которые только знакомятся с IDE для написания SQL-запросов. Статья рассказывает, как подключиться к ClickHouse из IDE: DBeaver и Visual Studio Code.

Читать далее

Эластик и проблемы хранения ленты операций

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров270

Привет, меня зовут Екатерина, я работаю в ОТП Банке на позиции Senior-разработчика в одном из трайбов. В продолжение предыдущей статьи мы вместе с Александром, главным solution-архитектором, расскажем о вызовах, с которыми столкнулись при внедрении нереляционного хранилища в наше ДБО.

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

В этой статье мы поделимся частью таких кейсов и расскажем, как наша команда их решала.

Читать далее

Очереди сообщений в Postgres Pro: отказ от внешних брокеров ради транзакционной надёжности

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров628

Ваш сервис отправил сообщение в RabbitMQ, но в момент коммита транзакция в базе данных откатилась. Классический кошмар распределенных систем, порождающий данные-призраки и часы отладки. Обычно эту проблему решают сложным кодом, двухфазными коммитами или просто надеждой на лучшее. А что, если бы откат транзакции в PostgreSQL мог автоматически «откатить» и отправку сообщения, вернув его в очередь без единой строчки вашего кода? Рассказываем, как это работает.

Читать далее

3D-карта вместо инстинктов: как робот учится ползать и прыгать

Время на прочтение4 мин
Количество просмотров323

В Гонконге разработали технологию для передвижения четвероногих роботов. Теперь они почти как настоящие животные способны автономно преодолевать экстремально сложные препятствия. Роботы находят обходные пути там, где кажется, что пройти невозможно. Как это стало возможно и какие возможности открывает новая технология?

Читать далее

Как открыть большие файлы: лучшие программы и способы для Windows, Linux и Mac

Уровень сложностиПростой
Время на прочтение18 мин
Количество просмотров1.4K

Узнайте, как открыть большие текстовые файлы (TXT, CSV, лог-файлы) размером в ГБ или ТБ. Обзор топ-программ: Notepad++, Vim, EmEditor, Far Manager. Советы по экономии RAM, потоковой обработке и редактированию на разных ОС. Быстро и бесплатно!

Читать далее

Подсчёт энергопотребления освещения в Home Assistant

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров655

В прошлой статье «Многотарифный счётчик электричества для умного дома Home Assistant» я рассказал, как считать общее потребление электричества в доме на основе счётчика Zigbee и его интеграции в Home Assistant.

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

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

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

Другие полезные конфигурации для умного дома и обзоры умных устройств, можно найти в моём Tg канале.

Читать далее

Назад к on-premise. Почему это снова тренд и чем будет полезен Selectel Server

Время на прочтение4 мин
Количество просмотров669

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

Читать далее

Ближайшие события

Обзор платформы BotHub: сердце вашей AI-экосистемы

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров288

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

Так появились AI‑экосистемы — попытка навести порядок в этом цифровом оркестре. Они собирают генераторы текста, изображений, видео и кода в одну среду, где нейросети работают не наперегонки, а сообща. Если упрощать, это как город, где у каждой модели своя профессия, но все вместе они строят один проект.

Но какую экосистему выбрать, когда их уже десятки? Сегодня разберём одну из отечественных платформ — Bothub. Покажем, что она умеет, как с ней работать и чем она может быть полезна не только разработчикам, но и обычным пользователям, которые просто хотят, чтобы ИИ был помощником под рукой.

Приятного прочтения!

Читать далее

Резервирование кластера Greengage DB. Часть 2

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров118

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

Читать далее

SwiftUI-Adapter: поддерживаем новые модификаторы SwiftUI на старых версиях iOS

Уровень сложностиПростой
Время на прочтение1 мин
Количество просмотров135

Друзья, привет! Сегодня хочу представить вам свою библиотеку - SwiftUI-Adapter, которая избавит вас от головной боли при работе с новыми модификаторами SwiftUI.


Недавно я наткнулся на удобную Android-библиотеку, которая упрощает работу с разными версиями API и подумал: «Почему бы не сделать что-то подобное для SwiftUI?». После этого родилась идея разработать инструмент, который избавит вас от бесконечных проверок available и сделает код чище.

Ссылка на библиотеку в GitHub

Установка библиотеки выполняется через Swift Package Manager.

Читать далее

Обо всём и наболевшем

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров837

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

Читать далее

Пустая трата времени или путь к лишним  итерациям? Как работают исследования в продукте и нужны ли они разработчикам

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров206

«Да все равно эти исследования в итоге не пригодятся», —– именно такими словами однажды на созвоне прервал мое выступление коллега. Я замерла с открытым ртом. Хорошо, что камера была выключена. 

За секунду до этого я рассказывала о результатах проведенного исследования. Перед ноутбуком у меня лежал листок с заметками, которые я старательно писала от руки. Мне казалось, все идет хорошо. А тут такое!

Уже позднее, на другом проекте и другой встрече, ситуация повторилась. Исследование было уже проведено, я сделала анализ и рассказывала о результатах и гипотезах. И снова вопрос «Зачем это нужно?». Б — боль.

Меня зовут Яна, я дизайнер внутренних продуктов в MWS. Одна из моих задач — проводить исследования, чтобы лучше понимать потребности аудитории и определять, какие функции приоритетны. Но после кейсов, описанных выше, мне стало казаться, что исследования интересны только дизайнеру, аналитику и продакту — но никак не разработчикам и другим членам команды. Спойлер: это тот случай, когда «кажется» — действительно кажется. Как обстоят дела в реальной жизни, предлагаю обсудить сегодня.

Читать далее

Go-to-Community вместо Go-to-Market

Уровень сложностиСредний
Время на прочтение17 мин
Количество просмотров107

Привет, Хабр!

Сегодня поговорим про стратегию Go-to-Community вместо Go-to-Market. Звучит, конечно, круто, но суть простая: перестать видеть разработчиков только как лидов в воронке продаж и начать работать с ними как с сообществом на равных, с созданием ценности для всех.

Разобраться в GTC

Уоррен Баффетт покидает Berkshire Hathaway, назвав преемника, и предупредив о рисках для $1 трлн империи

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

В понедельник, 10 ноября, легендарный инвестор Уоррен Баффетт опубликовал прощальное обращение к акционерам инвестиционного холдинга Berkshire Hathaway. Это финальное ежегодное послание в его статусе генерального директора, которым он бессменно был с 1965 года. В конце года 95-летний Баффетт официально покинет свой пост.

Читать далее
1
23 ...