Собрали в одном месте самые важные ссылки
консультируем про IT, Python
Эта статья родилась из опыта использования GraphQL в проекте одного из крупнейших аэропортов РФ. Проект посвящен разработке системы по автоматизации обслуживания рейсов и управлению ресурсами аэропорта в реальном времени (MRMS система).
А теперь о том, что происходило в последнее время на других ресурсах.
Среди разнообразных подходов оптимизации, сегодня мы поговорим про методы решетчатого (grid search) и случайного (random search) поиска. Они были созданы для нахождения оптимальных решений в больших пространствах параметров.
Как и многие программисты, я страдал от сидячего образа жизни и низкой физической активности. Для решения этой проблемы занялся бегом, сначала на улице, потом в спортзале, затем перешёл к более интенсивным силовым упражнениям. Но как отслеживать свой прогресс и повышать мотивацию? Конечно, тут поможет IT.
В статье описана эволюция системы управления процессами в компании «Магнит». Некоторые детали были упрощены для лаконичности и последовательности повествования, некоторые были изменены по соображениям безопасности. В любом случае, целью статьи является с одной стороны желание поделиться с сообществом техническим опытом, с другой — оставить ретроспективный взгляд на историю компании.
Генеративные модели привлекли мое внимание ещё в феврале 2022 года. Тогда я внедрил цифрового ассистента для полевых продавцов. Летом 2022 года хороший знакомый из крупной компании предложил совместный эксперимент. Создать цифрового юриста, способного отвечать на вопросы первой линии, используя в качестве базы знаний 200-страничный регламент из более чем 1200 пунктов. Все это должно было функционировать в закрытом контуре.
Хочу поделиться своим наработанным опытом по созданию API тестов. Для написания автотестов в компании используем selenium webdriver, behave.
Это ответ на статью «Сколько строк на C нужно, чтобы выполнить a + b в Python?» где количество строк так и не указано. Сразу оговорюсь покрывать все сценарии для python по количеству строк я не собираюсь — слишком много вариантов, слишком лень. Но вот вопрос, сколько питону нужно строк, что бы сложить 2 числа? Будет ли разница, если сохранять эти числа в переменные или разницы нет?
Представляю подборку из 100 вопросов с собесов на позицию джуна Python-разработчика.
В прошлом году TestRail прекратил предоставлять и продлевать лицензии компаниям из России, поэтому мы в YADRO решили разработать собственную тест-менеджмент систему TestY.
Проблемы ORM известны всем, кто хоть раз ими пользовался. Об этом существует множество статей как у нас (1, 2, 3, 4), так и в зарубежных источниках (1, 2, 3, 4). Эти проблемы в общем можно объединить довольно сложным термином Object-relational impedance mismatch, что позволю себе вольно перевести как "Объектно-реляционная разница потенциалов".
Log-файлы систематически записывают хронологию событий, происходящих в системе (или приложение). Это может быть что угодно: от записи о запуске программы до детальной информации об ошибках и предупреждениях. Для нас log-файлы — это не просто дневники событий, а очень хороший инструмент для диагностики и устранения проблем.
В современной разработке различного ПО и управлении данными, одной из ключевых проблем является работа с разнообразными файловыми системами. Разработчики и системные администраторы сталкиваются с вызовами при интеграции различных хранилищ данных, от локальных дисков до облачных сервисов. Эта множественность и разнообразие сильно усложняют процесс разработки и поддержки приложений, требуя от разработчиков постоянного адаптирования под различные стандарты и протоколы.
Платежи через ботов позволяют пользователям совершать покупки напрямую в интерфейсе чата. А непосредственно разработчикам, можно интегрировать функции электронной коммерции в бота, позволяя пользователям покупать товары или услуги без выхода из телеги.
Целью любого проекта, будь то разработка сайта, внедрение искусственного интеллекта или модернизация оборудования, является получение бизнес-результата. Поэтому для клиента важно понимать, какую выгоду он получит от внедрения проекта и как это отразится на его прибыли. Кроме того, разработчикам также необходимо оценить эффект от проекта по нескольким причинам: увеличение вероятности получения новых проектов, лучшее понимание потребностей клиента, повышение рыночной стоимости и моральное удовлетворение от значимости своей работы.
С развитием бизнеса нагрузка на приложения возрастает, один из способов масштабировать его под большее количество запросов — запустить Gunicorn-сервер с несколькими worker-процессами в мультипроцессном режиме. Однако при таком подходе клиент Prometheus не выводит нужные нам метрики CPU и RAM. В статье расскажу, как мы решили эту проблему, сохранив метрики и организовав мониторинг в мультипроцессном режиме.
В одном из совместных исследований нам с Хайди требовалось решить такую задачу. Допустим, нам требуется синхронизировать между двумя узлами хеш-граф, например, как в репозитории Git. В Git каждый коммит идентифицируется через соответствующий ему хеш, причём, в коммит могут включаться хеши коммитов-предшественников (то есть, конкретный коммит может содержать более одного хеша, если он получен слиянием). Мы хотели получить минимальное множество таких коммитов, которыми должны обменяться два узла, чтобы их графы получились одинаковыми.
Векторные представления (эмбеддинги, векторы) – это по-настоящему приятный инструмент, но в любом рассказе о векторных представлениях эта техника скрыта за ворохом каких-то страшных словес.
Сегодня я расскажу о том, как был подготовлен материал об одиночестве, «24 hours in an invisible epidemic», опубликованный на платформе Pudding.
Хотел бы перед самой статьёй обсудить вопрос целесообразности писать свой движок, вместо готовых решений. Есть куча статей, которые опишут разные движки от более популярных до менее. Я бы хотел затронуть немного другой вопрос: "Как человеку, который изучал программирование много лет заняться геймдевом?".