PYтокен: история о том, как питон съел ЭЦП. Часть 1

История о том, как я пытался реализовать подпись файлов с помощью сертификата на USB-устройстве, а дополнительно сделал шифрование и расшифрование директории.

Веб-сервис для хостинга и разработки IT-проектов

История о том, как я пытался реализовать подпись файлов с помощью сертификата на USB-устройстве, а дополнительно сделал шифрование и расшифрование директории.

Как же меня бесят статьи в духе “Как всего за 139 рублей в месяц развернуть свой сайт-визитку на vps”. Какие 139 рублей за сайт-визитку, совсем уже стыд потеряли?!
В этой статье я вам пошагово расскажу и покажу как бесплатно разместить и вести ваш личный сайт (блог, cv, wiki). Вам даже отдельный домен не нужен (всё будет «из коробки»), хотя в последнем шагом мы и его прикрутим. От вас нужны будут базовые знания git и просто уметь работать с markdown.
8 лет назад я исправил опечатку в чужом репозитории, а сейчас регулярно делаю коммиты в проекты, которые использую, и даже вошел в core team библиотеки с 27000 звёзд на GitHub
В этой статье покажу, что участие в Open Source проще, чем кажется. Расскажу, как регулярная работа с чужим кодом помогает быстрее разбираться в незнакомых кодовых базах, писать тесты и лучше документировать решения. А также объясню, почему публичная активность на GitHub выгодно отличает вас от других разработчиков, особенно в эпоху повсеместного использования ИИ.

Почти три года назад мы выложили в опенсорс DivKit — наш BDUI‑фреймворк для отрисовки интерфейса приложения из ответа сервера. С его помощью вы можете описать элементы, состояния и анимации на бэкенде. Приложение получит это JSON‑описание и отобразит его.
Мы не перестаём развивать DivKit и за последние месяцы добавили несколько важных функций. О них расскажем в статье.
Встроенная командная строка в Windows не устраивает многих разработчиков. У нее скудный функционал, нет «запоминания» и многих других функций, который были бы полезны её пользователям. Поэтому я решил попробовать сделать свою «консоль», с возможностью создания своих модулей для расширения функционала.
Для этого, на языке программирования Python я начал писать своё CLI‑приложение, которое упрощает работу с консолью. И что из этого вышло?

Сделать перевод этой статьи нас сподвиг, как ни странно, роман Джонатана Свифта «Путешествия Гулливера». Есть там такой примечательный эпизод о борьбе остроконечников и тупоконечников. Аналогия в контексте разработки ПО — это принимающий бесконечный характер спор о преимуществах и недостатках двух инструментов, — OpenAI Codex и GitHub Copilot, — призванных помогать разработчикам. Как нам показалось, эта переводная статья довольно подробно разбирает работу данных инструментов и поможет внести ясность о сферах их применения, особенно для начинающих программистов.

В прошлой части статьи мы говорили о пушах в harbor, в этой же статье мы разберемся другие методы с которыми работает его webhook.

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

Когда я впервые решил создать свой open-source проект, мне казалось, что главное – это хорошая идея и рабочий код. Я взялся за разработку библиотеки для сетевых клиентов и UI-компонентов, вложил в неё два года работы и, наконец, выложил на GitHub. Но вместо успеха меня ждал холодный душ – библиотека получила всего 10 звёздочек.
Тогда я осознал ключевую проблему open-source: одна только идея не работает. Если проект плохо оформлен – его никто не найдёт. Документация и описание – не менее важны, чем сам код. В следующем проекте я учёл ошибки. Когда правильно оформил проект, он начал находить аудиторию, получать звёзды и фидбек от разработчиков.
Open-source – это не только код, но и способность донести свою работу до других. И эта история дала мне важный урок: если хочешь, чтобы твой проект заметили, помоги людям его понять. А ещё я понял, как важно участвовать в комьюнити и контрибьютить.

Руководителям групп разработки и членам команды часто приходится сталкиваться с проблемой информирования коллег о новых версиях docker image внутренних инструментов. Сообщения в общих чатах не всегда эффективны, а писать вручную — не лучшая практика. И тут мы рассмотрим разработку решения по автоматическому информированию.

Привет, Хабр! Меня зовут Андрей Гетманов, я работаю ML-инженером в Исследовательском центре “Сильный ИИ в промышленности” в ИТМО, а кроме того являюсь энтузиастом open source. В этой статье хочу рассказать о нашей новой разработке ― ИИ-инструменте, который помогает репозиторию стать лучшей версией себя.
Разнообразных «улучшателей» много, но все они фокусируются преимущественно на качестве самого кода. Мы же смотрим шире ― на репозиторий в целом, насколько он понятен стороннему наблюдателю. Инструмент нацелен на наших коллег от науки ― например, биологов и химиков ― которые не обладают опытом коммерческой разработки и соответствующего оформления кода. Он поможет в несколько кликов сделать репозиторий более читаемым и воспроизводимым.

Что происходит, когда GitHub берётся за собственную безопасность? Они пишут код для защиты кода — и активно используют для этого CodeQL. В этой статье команда Product Security Engineering рассказывает, как настроить масштабный автоматический анализ уязвимостей, зачем создавать свои пакеты запросов и как с помощью CodeQL находить ошибки, которые невозможно поймать обычным поиском по коду.

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

Привет, Хабр!
На проекте была одна довольно типичная и, мягко говоря, надоедливая проблема: разработчики вручную заполняли CHANGELOG при выкатке новой версии приложения. Иногда информация туда попадала точная и соответствующая реальным изменениям, иногда – частично верная, а иногда и вовсе напрочь забытая.
Решение нашлось довольно элегантное – интегрировать инструмент semantic-release в наш пайплайн CI/CD. Но оказалось, что найти полноценное руководство по его настройке, особенно с учетом корпоративного GitLab и плагина semantic-release/changelog, не так-то просто. Собирал информацию буквально по крупицам из различных источников, и вот теперь делюсь с вами проверенной пошаговой инструкцией.

Всем привет. Это моя первая статья, так что не судите строго (да, да, заезженная фраза).
Я думаю у всех есть домашние питомцы и за всеми так или иначе надо убирать - разбросанный силикагель (для кошек как пример). В один из дней, знатно наступив на один из силикагелевых шариков, которые разбросала моя кошка, я понял, что мне это надоело и установив Home Assistant, а так же датчик движения в кошачий лоток (который, к слову, выглядит как пуфик с дыркой для входа кошки) я написал простенький скрипт на то, чтобы робот-пылесос убирал определенную зону после того как кошка сделает свои грязные дела. Все заработало и мои, а так же моей жены телесные травмы свелись к минимуму (все же задержка перед уборкой аж целых 5 минут), но я начала думать о том что было бы неплохо еще и запах убивать после особо пахучих дел, но времени на это не было (да и желания, так как готовых решений не было, тем более появился ребенок и время на подобные дела вообще свелось к минимуму).
Шло время и вопрос о запахе из лотка становился все острее.

Kafka — это популярный брокер сообщений, который используется в самых разных проектах: от обработки логов и управления очередями задач до персонализации контента и аналитики в реальном времени. Например, его можно использовать для индексирования изменений в Википедии или поиска товаров в интернет-магазинах. Manticore Search, в свою очередь, поддерживает интеграцию с Kafka, что позволяет автоматически импортировать данные и использовать их для полнотекстового поиска, аналитики, векторного поиска и многого другого.
При импорте данных в Manticore вы можете гибко их обрабатывать:

Всех привествую, меня зовут Денис, я PHP Backend разрботчик
Я выступаю на хакатонах за команду https://жыбийрыр.рф/ и у нас была проблема что не было шаблона с которым мы могли спокойно приходить на хакатоны и не писать один и тот же код из раза в раз
Данная статья будет посвещена о том как я писал данный шаблон, с какими проблемами столкнулся и чему смог научиться

Современная разработка ПО — это плавильный котел языков: Java, C#, JS/TS, Go, Kotlin… список можно продолжать. Но когда дело доходит до оценки ИИ-агентов, способных помогать в написании и исправлении кода, мы часто упираемся в ограничения. Популярный бенчмарк SWE-bench, например, долгое время поддерживал только Python.
Чтобы преодолеть разрыв между реальностью разработки и возможностями оценки ИИ, наша команда в Doubletapp взялась за адаптацию SWE-bench для множества языков программирования. Меня зовут Кирилл Увенс, и в этой статье я расскажу, как мы подходим к этой задаче и почему считаем ее важной для всей индустрии.
В статье расскажем:
• Что такое SWE-Bench
• Какие сложности возникают при сборе данных и тестировании
• Наш опыт: какие языки поддерживает SWE-bench
• Ручная перепроверка, или SWE-bench Verified
• Сравниваем SWE-bench с другими бенчмарками для разработки ПО
• Ценообразование SWE-bench: как формируется стоимость одного датапойнта
