Pull to refresh
1
0
Sergey Kaleev @skaleev

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

Send message

Практичные Python-привычки, которые реально повышают качество кода

Reading time3 min
Views8.9K

Практичные Python-привычки: явное состояние и мемоизация, асинхронность для продакшн, ошибки и raise, типизация и валидация, ленивая загрузка и кеширование

Читать далее

Не пора ли уволить вашего CTO?

Reading time46 min
Views25K

В современном ИТ сложилась парадоксальная ситуация.

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

Парадокс объясняется просто: в современном ИТ отвратительная организация. Настолько отвратительная, что многих её директоров впору увольнять, потому что именно они отвечают за её значительную часть, но многого не делают.

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

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

Даже если они не из ИТ-сферы.

Решить, что же делать с CTO

Забудьте про print(): Современное и красивое логирование в Python с помощью Loguru

Level of difficultyMedium
Reading time15 min
Views20K

Все мы начинали с print() для отладки, но в серьезных проектах это превращается в хаос. Стандартный logging? Мощно, но громоздко. Пора это исправить.

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

Читать далее

Почему мы отказались от AD и FreeIPA и создали свою службу каталогов

Reading time6 min
Views7.6K

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

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

После ухода Microsoft с российского рынка многие инженеры и администраторы столкнулись с вопросом: чем заменить Active Directory? При этом ещё нужно сохранить совместимость и привычные инструменты, обеспечить надежность и безопасность. Samba и FreeIPA казались логичным выбором, но на практике часто оказывались либо сильно устаревшими, либо слишком сложными для использования.

Мы решили начать с нуля и создать службу каталогов, которая сочетала бы знакомый функционал AD с современным стеком, гибкой архитектурой и возможностью интеграции в гибридные инфраструктуры. Так началась история MULTIDIRECTORY (MD).

Читать далее

Как испортить ПО до начала разработки? Вредные советы планирования

Reading time15 min
Views3.7K

Всем привет! За полтора года наша команда разработки в YADRO написала с нуля четыре полноценных приложения для операционной системы kvadraOS. Проекты разные по объему, требованиям и связям с системой, но всех их объединяет современный стек (Kotlin + Compose) и чистая архитектура.

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

Читать далее

Книга: «Кото-математика»

Reading time3 min
Views18K

Привет, Хаброжители! Сегодня у нас открылся предзаказ на книгу «Кото-математика». Хотим вам рассказать про нее побольше в этом посте.

Мяу-математика? Именно! В своей книге Дэниел М. Лук превращает скучные числа в захватывающие приключения, где каждый урок ведет... кот!

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

Читать далее

Практическое применение Теории Ограничений на производстве. Часть 5, про ценообразование

Level of difficultyEasy
Reading time3 min
Views477

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

Итак, у нас две принципиальные ситуации с ценообразованием.

Читать далее

Почему опытные программисты всё чаще молча переписывают, чем спорят в комментариях

Level of difficultyMedium
Reading time4 min
Views37K

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

Читать далее

Про настольный ЧПУ фрезерный станок LUNYEE 3018 Pro Ultra — для изготовления печатных плат (и не только)

Level of difficultyEasy
Reading time11 min
Views32K

Итак, некоторое время назад, я осознал, что для мелкого прототипирования печатных плат мне уже не хватает возможностей ЛУТ/фоторезиста (да и сверлить всё равно потом отверстия надо), поэтому задумал я перейти на следующий уровень — делать мелкие партии печатных плат с помощью ЧПУ фрезера, который и был благополучно приобретён, модели Lunyee 3018 Pro Ultra, и весь дальнейший рассказ будет о том, что это за зверь.

Думаю, что многим будет интересно... ;-)

Читать далее

Интеграция ITAM и ITSM: стратегическая необходимость для современного бизнеса

Level of difficultyMedium
Reading time6 min
Views395

ИТ-отдел работает как часы: заявки обрабатываются за 2 часа, доступность услуг выше 99%, пользователи довольны. Но каждый месяц финансовый директор спрашивает, почему ИТ-бюджет растёт быстрее бизнеса.

ITSM-система помогла навести порядок в процессах, но не дала ответа на главный вопрос: сколько на самом деле стоит порядок и можно ли тратить меньше без потери качества?

Меня зовут Евгения Асоскова, я владелец продукта SimpleOne ITAM. Давайте поговорим о том, почему компаниям с внедрённой ITSM-системой целесообразно автоматизировать управление ИТ-активами и как это усилит возможности бизнеса.

Читать статью

Хрупкий == надёжный? Идея «хрустального кода»

Level of difficultyMedium
Reading time9 min
Views6.5K

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

Читать далее

Замок в небесах: история Oracle

Reading time20 min
Views4K

Oracle снова в центре внимания. Компания, долгое время считавшаяся инфраструктурным элементом корпоративных ИТ-систем, внезапно оказалась в центре внимания ИИ.

Это история Oracle Ларри Эллисона, её многолетней трансформации и создания облака, идеально подходящего для эпохи искусственного интеллекта.

Читать далее

Сколько ели динозавры и при какой температуре их яйца развивались

Level of difficultyEasy
Reading time3 min
Views14K

На счёт динозавров травоядных, которые особо крупные, надо понимать что это по сути бочки с шеями и кишками. У них размеры были такие, что бы переваривать много жёсткой листвы с ветками вперемешку. Точнее не листвы, а зачастую хвойные ветки, потому что до 66 000 000 лет назад доминировали хвойные деревья на планете. Питаться травой вот такое не могло, разве что трава будет 5 — 10 метров высотой. Собственно динозавры огромных размеров были подстригальщиками лесов тогдашних, делая их светлыми, не густо растущими. Когда динозавры вымерли из за удара метеорита и последующих тысяч лет извержений вулканов, деревья буквально заполонили Землю и резко обеднили количество калорий на квадратный километр.

Вот пример того что шастало — жираффатитаны, 70 тонн. С поправкой, именно этот вид жил между 143 000 000 — 144 000 000 лет назад. Но и перед ударом метеорита 66 000 000 лет, назад наподобие громадины жили.

Читать далее

Ухо не выполняет преобразование Фурье

Level of difficultyEasy
Reading time3 min
Views3.2K

Давайте поговорим о том, как улитка уха вычисляет звук!

Барабанная перепонка приводится в колебания изменениями давления воздуха (звуковыми волнами). Кости среднего уха усиливают и передают эти колебания в заполненную жидкостью спиралеобразную улитку. Колебания перемещаются по жидкости к базилярной мембране, которая выполняет разделение частот1: более жёсткое и лёгкое основание (base на иллюстрации) резонирует с высокочастотными компонентами сигнала, а более гибкая и тяжёлая вершина (apex) резонирует с низкими частотами. Между двумя концами резонирующие частоты логарифмически снижаются в пространстве2.

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

Читать далее

Создаем свой create-react-app на Python: интерактивный генератор проектов с Typer и Questionary

Level of difficultyMedium
Reading time12 min
Views2.3K

В мире фронтенда уже давно стали стандартом такие инструменты, как create-react-app или vue create. Они задают несколько вопросов и за секунды разворачивают полностью настроенное рабочее окружение. Почему бы нам не создать такой же удобный помощник для своих Python-проектов?

Читать далее

Почему Pascal лучше для обучения программированию, чем Python

Level of difficultyMedium
Reading time12 min
Views28K

Некоторое время назад меня попросили обосновать, почему я за Pascal при обучении программирования. А я скорее не конкретно за Pascal, я за наличие у языка для обучения программированию ряда важных свойств. Получается, я скорее против Python (шутка). В результате получилась эта мини-статья.

Читать далее

Кайдзен-подходы в проектах разработки и внедрения информационных систем

Level of difficultyMedium
Reading time13 min
Views2.5K

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

Читать далее

BDD как клей между TDD и DDD

Level of difficultyEasy
Reading time12 min
Views3.8K

Как превратить автотесты в живую документацию(как техническую, так и аналитическую).

Как сделать так, чтобы они рассказывали о предметной области.

И в конце концов, проверяли, что все это работает.

Читать далее

ITSM-система — это только начало: как SimpleOne меняет управление услугами всего предприятия

Reading time10 min
Views1.3K

Enterprise Service Management продолжает развиваться как один из ведущих трендов в области корпоративной автоматизации. Истории успеха российских компаний уже показывают, что сегодня ESM становится стратегическим инструментом операционной трансформации. Самый заметный эффект достигается при комплексном подходе: единая платформа для всех подразделений плюс интеллектуальная автоматизация рутинных операций.

В этом обзоре рассмотрим архитектуру современных ITSM и ESM-платформ, как ИИ интегрируется в сервисные процессы, и что это дает бизнесу на примере реальных внедрений.

Читать далее

Docker для Python-разработчика: как упаковать ваше приложение в контейнер и запустить где угодно

Level of difficultyMedium
Reading time13 min
Views12K

Представьте ситуацию: вы написали шикарного Telegram-бота, отладили его на своем ноутбуке с Python 3.11 и последней версией любимой библиотеки. Вы отправляете код коллеге, а у него падает с ошибкой, потому что у него Python 3.9 и какая-то зависимость встала криво. Или, что еще хуже, вы пытаетесь выкатить это на сервер, а там системный администратор смотрит на ваш requirements.txt и тяжело вздыхает, потому что для установки одной из библиотек нужна системная утилита, которой нет и не будет. Знакомо?

Читать далее

Information

Rating
Does not participate
Location
Сургут, Тюменская обл. и Ханты-Мансийский АО, Россия
Date of birth
Registered
Activity