Привет всем!
Как обычно это и бывает, я накопил критическую массу мыслей, и пора их как-то систематизировать, чтобы вы, мои замечательные читатели Хабра, могли что-то извлечь из моего опыта или поделиться своим :)
Я люблю и одновременно ненавижу статьи-обзоры в стиле «10 программ для {whatever}». Ненавижу — потому что их очень легко делать, вбил в гугл «программа для X», взял первые 10 ссылок, статья готова. Я называю такие статьи «лёгкий рейтинг». А люблю я их за то, что даже если 9 пунктов — чушь полная, то десятый, как правило, годный, я узнаю что-то новое, это что-то облегчает мне жизнь и позволяет мне быть более продуктивным.
Сегодня я побуду автором такой статьи — я расскажу вам про то, какие штуки я использую в разработке на питоне, если что-то из этого будет кому-то полезно — я буду рад. В своё время мне этого не хватало. А если вы знаете что-то круче — разнесите меня в комментариях.
Статья получилась ОГРОМНАЯ, и у меня был большой соблазн разбить её на сотню статей поменьше, чтобы в каждой ставить ссылки на свой телеграм-канал и получать гонорар за каждую по отдельности. Но я не буду. Пусть знания будут сгруппированы вместе. Welcome!
Читать далееAI-стартапы отвергают PLG-модель, выбирая интенсивные услуги внедрения.
В статье рассказываем почему инженеры, работающие на стороне клиента стали ключевой ролью.
Читать далееParty — это не только про веселье и напитки, но иногда и про автоматизацию!
Михаил купил квартиру в Тюмени площадью 140 м² и не собирался превращать её в «умную». Но одна случайная встреча с интегратором на Sprut.Party изменила все.
Как интегратор уговорил Михаила на «умную» квартиру? Спойлер: он справился всего за два предложения.
Нас заинтересовала эта история, и мы посетили объект, чтобы рассказать вам, каким получился умный дом.
Читать далееШирокоэкранный режим для виртуальных учебных классов. Помимо установки NDI Recording System в GDS-M и GDS-S, о которой было рассказано в предыдущей статье, параллельно осуществлялся еще один проект.
Читать далееВ этом году я решил выстроить чёткую и долгосрочную систему поддержки энергии и физической формы. Не просто «пить витамины» и «ходить в зал», а реально следить за здоровьем и прогрессом — на цифрах, в динамике, с результатами. И помог мне в этом DeepSeek.
Читать далееВ этой статье мы расскажем о том, как GitLab выявил и устранил «бутылочное горлышко» производительности в 15-летней функции Git, что повысило эффективность, обеспечив возможность применения более надёжных стратегий резервного копирования и снижения рисков.
Резервные копии репозиториев — важнейший компонент надёжной любой стратегии восстановления после сбоев. Однако с увеличением размеров репозиториев процесс создания надёжных бэкапов становится всё сложнее. Для резервного копирования нашего собственного репозитория Rails нам требовалось 48 часов. Это заставило нас искать невозможные компромиссы между частотой резервного копирования и производительностью системы. Мы хотели найти собственное внутреннее решение для наших клиентов и пользователей.
В конечном итоге, мы нашли источник проблемы в 15-летней функции Git со сложностью O(N²) и устранили его, внеся изменения в алгоритм, что экспоненциально уменьшило время резервного копирования. В результате мы обеспечили снижение затрат, уменьшение рисков и возможность создания стратегий резервного копирования, которые хорошо масштабируются месте с нашей кодовой базой.
Оказалось, что это проблема масштабируемости Git, влияла на всех его пользователей с крупными репозиториями. Ниже мы расскажем историю о том, как выявили и устранили проблему.
Читать далееUSB-C проектировался как универсальный стандарт. Но его возможности, к сожалению, варьируются от устройства к устройству, а это сбивает с толку пользователей. Microsoft решает эту проблему, внедряя строгие требования в рамках Windows Hardware Compatibility Program (WHCP). Сегодня разберем, как компания исправляет путаницу с USB-C-портами на Windows-устройствах, какие проблемы устраняет и что это значит для пользователей и производителей.
Читать далееПосле выхода первой статьи о проекте «Дайджест» мы получили много обратной связи — как от пользователей, так и от коллег из продуктового сообщества. В этом посте рассказываем о функциональных обновлениях, которые мы реализовали в последние месяцы. Все они направлены на повышение стабильности, персонализации и удобства взаимодействия с ботом.
Читать далееКорпоративный сектор всё активнее внедряет решения на базе больших языковых моделей (LLM) — от генерации документов до поддержки пользователей и автоматизации внутренней аналитики. Однако вместе с ростом эффективности растут и риски, особенно когда речь идёт о передаче персональных данных. Для российских компаний эти риски связаны не только с киберугрозами, но и с прямыми нарушениями Федерального закона №152-ФЗ «О персональных данных». Одним из ключевых способов защиты информации в таких сценариях становится маскирование данных — то есть скрытие или замена персональных данных в сообщениях, обрабатываемых LLM.
Читать далееДача — мое место силы и вдохновения. Если вам так же, как и мне, невыносимо работать в весенне‑летний период в четырех стенах в городе, то давайте посмотрим, что нам поможет получить наибольшее удовольствие от трудовой деятельности на природе. И здесь — не про уход за грядками. Речь пойдет о необычных и полезных девайсах и приспособлениях, которые я выбрала для себя, благо работа в дистрибьюторе diHouse позволяет быть в курсе большинства новинок электроники.
Обещаю, что не буду затрагивать такие банальности, как усилитель сигнала сотовой связи или модем. Так что же еще может пригодиться в вашем дачном офисе?
Немедленно узнатьЗнаю, что тема уже изъезжана вдоль и поперек, но я хотел бы поделиться своим видением Open/Close Principle из всеми любимым SOLID подходу к построении архитектуры софта. Ведь дядюшка Боб херни не посоветует, все таки опыта ему не занимать, поскольку он с 70х годов в разработке и знает базу, что нам и нужно. Да современный софт ушел далеко от того какой он был в 70-х, когда писали логические цепочек на перфокартах, делая дырки в картоне и компиляция занимала прямо прапорционально количеству этих самы карточек, где скорость выполнения считалась количеством символов в минуту. За все это время Дядюшка Боб собирал лучшие практики из которых и получились эти 5 принципов, которые помогут построить софт, который будет не так сильно с течением времени влиять на стоимость одной строки кода. (О чем он и пишет в своей книги «Чистая архитектура»).
Хочу отметить то, что есть мнение, что принципы SOLID — это про ООП и для языков, которые не следуют этой парадигме это не актуально, нет. Эти принципы построения архитектуры приложения не зависят от языка.
Если вы читали книгу «Чистая архитектуры» и дошли до Open/Close principle (SOLID) и из примера ничего не поняли, тогда вы пришли по адресу, поскольку я буду рассматривать именно этот пример. Для меня лично OCP это один из принципов, который заставляет продумывать архитектуру приложения, что очень важно.
Я не буду писать тут тесты или использовать TDD подход к написанию кода, потому, что это отдельная тема, я сделаю простой http сервер с одним эндпойнтом для получения финансового отчета в разных форматах.
Читать далееВ 2022 году мы выпустили во внешний мир первую версию голосового робота приема заказов по телефону. Статья рассказывает о пути робота от «деревянного» до конверсии оформления в 80%, от негатива до принятия, от «уберите эту ерунду» до «пожалуйста, верните робота обратно».
Читать далееВремя — это неуловимая река, которая несёт нас от прошлого к будущему, никогда не позволяя повернуть назад. Мы живём в мире, где чашки разбиваются, но не собираются сами собой, где звёзды рождаются и умирают, а воспоминания о вчерашнем дне не становятся предчувствием завтрашнего. Но почему время движется только в одном направлении? Почему мы не можем перемотать плёнку жизни назад? Ответ на этот вопрос кроется в загадочной силе, называемой энтропией, и в концепции "стрелы времени", которая связывает физику с самой природой реальности. Давайте отправимся в путешествие через космос, молекулы и философию, чтобы понять, почему время так неумолимо движется вперёд.
Читать далееЗнаете, я долго вынашивал эту модель. Крутил её в голове, наблюдал за рынками, читал аналитику — и вот теперь картинка сложилась. То, что происходит сейчас в мировой экономике — это не просто очередной цикл. Это тектонический сдвиг, после которого мир уже не будет прежним.
Читать далееКакая из современных мультимодальных GPT-моделей лучше и дешевле распознаёт текст с фотографий книжных аннотаций и правильнее выделяет оттуда структурированную информацию?
Проведём сравнительное тестирование 28 моделей от Anthropic, Google, Meta, Mistral AI, OpenAI, Qwen и попытаемся ответить на эти вопросы не написав ни одной строчки кода самостоятельно.
Читать далееАвтор статьи — мобильный разработчик, который сам поднял инфраструктуру для стартапа на одной небольшой виртуалке. Вы узнаете, как он выбрал и внедрил werf, какие проблемы решал с помощью SOPS, как организовал хранение и шифрование секретов, и почему GitOps стал для него спасением.
Читать далееПривет! Меня зовут Катя Халитова, я исследователь из Контур.Фокуса. Cегодня поговорим про важное для бизнеса взаимодействие исследователей и продакт-менеджеров. Эта статья основана на десяти экспертных интервью со специалистами из ритейла, финтеха, телекома и других сфер.
Мы затронем следующие вопросы:
– Как распределяется зона ответственности в discovery между продактом и исследователем? Есть ли чёткие рамки?
– Какие ожидания есть у продактов и исследователей друг от друга?
– Должен ли продакт валидировать исследования, когда проводит их самостоятельно?
– Какие факторы влияют на внедрение результатов исследования?
Читать далееПривет, Хабр. Изучая безграничные просторы интернета интернета, заметил явное отсутствие обучающих статей на тему кастомизации админ-панели в /Django/, а уж поверьте. Её довольно старое для современных рамок стилизация - не приговор. И делается это буквально в пару кликов, без лишнего .css кода. На который как раз таки гайдов полно. Зачем засорять папку со статическими файлами лишним кодом, если можно сделать это в пару кликов.
Главное преимущества /Python/, заключается в том, то что пишется на других язык программирования в десять строк, можно написать на нашем любимом языке в две строчки. Поэтому варианты с самостоятельной кастомизацией, затрагивать не будем. Хотя данная библиотека, не ограничивает вас в написание своего кода для кастомизации. Всё написанное, лишь подключенная библиотека на /Python/ для /Django/.
Читать далееПереезд с облака на свои сервера - это не просто техническая миграция, а настоящая проверка на прочность для всей команды и бизнеса в целом. В статье я постараюсь объяснить, опираясь на свой опыт, почему облачные решения не всегда оказываются универсальным спасением, с какими неожиданными сложностями мы столкнулись и какие компромиссы пришлось принимать. Это история не только про железо и Hard-скиллы, но и про людей, процессы и принятие решений в условиях ограниченного бюджета и рисков.
Читать далее