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

GitHub *
Веб-сервис для хостинга и разработки IT-проектов
Как запустить публичный сайт на телефоне или экономим на спичках

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

Уже много лет опенсорсные проекты позволяют нам «украшать» графики активности на GitHub фальшивыми историями коммитов Git. Но знали ли вы, что подобные граффити можно также размещать в профилях других пользователей?
К примеру, в графиках активности нескольких фишеров я оставил вот такую «черную метку»:

В статье расскажу, как отметить профиль недобросовестного юзера таким граффити, чтобы другие пользователи GitHub знали, с кем имеют дело.
Раздел OSINT (разведка): Что такое Github Dorking?

Здесь вы узнаете, как повысить свой уровень в OSINT, будут приведены примеры и готовые поисковые запросы.
(Вы можете дополнить меня, если я что-то забыл в комментариях).
Как вынести Go-модуль в open source с сохранением авторства

Так случается, что команда решает вынести часть проекта в open source и использовать ее как внешнюю зависимость. Как правило, это самостоятельный пакет или инструмент, лишенный какой-либо бизнес-специфики, способный принести пользу сообществу и получить дальнейшее развитие. Большинство коммерческих разработчиков имеет персональные профили на открытых платформах и поддерживает собственные портфолио, поэтому при переносе мы хотим сохранить авторство и историю коммитов. Основная сложность здесь в том, что необходимо полностью исключить всю внутреннюю корпоративную информацию: названия репозиториев и проектов, имена и имейлы сотрудников, внутренние идентификаторы тикетов и любые формулировки, отражающие задачи продукта. Важно, чтобы такая информация отсутствовала по всему дереву коммитов. Для этого мы будем пользоваться такими инструментами,
как git grep
, git filter-branch
и git rebase --interactive
. В статье приводятся порядок шагов и общие рекомендации по оформлению открытого проекта.
Я Константин Соколов из бэкенд-разработки в Positive Technologies. Люблю программировать на Go.
Мастер-класс по точечному переносу изменений между ветками в git

Представьте ситуацию: вы нашли критический баг в проекте, исправили его в feature-ветке, но до полного слияния ещё далеко. Или вам срочно нужно перенести одно конкретное изменение из текущей ветки в другую. В таких случаях git cherry-pick становится вашим секретным оружием.
Топ популярных проектов на GitHub в январе 2025 года

Топ популярных проектов на GitHub за январь 2025 года. Эти проекты стали настоящими хитами среди разработчиков, аналитиков данных и всех, кто интересуется технологиями. Каждый из них показывает новые возможности и свежие идеи в разных сферах.
Подружить Great Expectations с Impala: решение для больших данных

Всем привет, меня зовут Ольга Вишницкая, работаю главным аналитиком данных в одном из департаментов Газпромбанка. Мы постоянно следим за развитием инструментов и технологий в области анализа данных, ищем и тестируем новые решения. И в какой-то момент один из наших стримов, который отвечает за качество данных, обратил внимание на Great Expectations (GX). Это отличная библиотека для анализа качества данных: от базовой валидации до сложного профилирования и автоматической генерации документации.
Но при внедрении мы столкнулись с проблемой: GX официально не поддерживает Impala — наш основной SQL-движок для обработки данных в Hadoop. Сначала мы решили пойти обходным путем через pandas DataFrame, благо GX прекрасно с ним работает. На тестовых данных все выглядело многообещающе, однако DataFrame может обрабатывает только около 15 000 строк за раз. Данные нужно дробить на части и по результатам теста на действительно больших объемов, обработка растянулась больше чем на сутки, а часть возможностей библиотеки мы вообще потеряли.
Стало понятно — нужно возвращаться к идее использования Impala. Тем более что он обрабатывает те же объемы данных за считанные минуты. Оставалось только найти способ подружить его с GX. В документации GX ни слова о том, как запустить проверки через неподдерживаемый движок. Пришлось экспериментировать самим, и после серии проб и ошибок нашли решение. Решила им поделиться.
Что случилось с легковесными десктопными приложениями? История Electron

Electron — это один из самых известных инструментов современного разработчика. Если присмотреться, то это родственник React Native, манящий лозунгом «пиши один раз, запускай везде!», но с гораздо меньшими издержками по сборке и релизу, чем в случае мобильной разработки. Его уникальное преимущество заключается в комбинации Node.js и Chromium, создающей мощную десктопную среду для веб-технологий. Официальный блог Electron не так давно отметил своё десятилетие, что весьма удивляет с учётом того, насколько глубоко этот инструмент успел проникнуть в культуру разработки.
Переиндексация в Manticore Search с использованием mysqldump

Эта статья написана Мариусом Матилионисом, старшим разработчиком и экспертом по Manticore Search в компании Ivinco. Ivinco специализируется на предоставлении передовых решений для поиска, оптимизации баз данных, управлении инцидентами и настройке систем мониторинга, помогая бизнесам достигать более быстрых, эффективных и масштабируемых операций.
Как не усложнять себе жизнь при разработке первого pet-проекта
Начинающие разработчики часто усложняют первый pet-проект: выбирают слишком амбициозные или нереалистичные идеи, углубляются в детали или стремятся к идеалу. Это замедляет работу и приводит к разочарованию. Сегодня разберём, как избежать этих ошибок и успешно завершить проект.
Привет! Меня зовут Руслан и я разработчик со стажем.
В начале карьеры разработал много тестовых(pet) проектов как для себя, так и для повышение своей квалификации. Создал более 10 pet проектов и теперь хочу поделиться с вами опытом.
PPTAgent: Генерация и оценка презентаций, выходящая за рамки преобразования текста в слайды

Автоматическая генерация презентаций из документов представляет собой сложную задачу, требующую баланса между качеством контента, визуальным дизайном и структурной связностью. Существующие методы в основном сосредоточены на улучшении и оценке качества контента изолированно, часто упуская из виду визуальный дизайн и структурную связность, что ограничивает их практическую применимость. Для решения этих ограничений мы предлагаем PPTAgent, который комплексно улучшает генерацию презентаций за счет двухэтапного подхода, основанного на редактировании, вдохновленного рабочими процессами человека. PPTAgent сначала анализирует эталонные презентации, чтобы понять их структурные шаблоны и схемы контента, затем разрабатывает контуры и генерирует слайды с помощью кодовых действий для обеспечения согласованности и выравнивания. Для комплексной оценки качества сгенерированных презентаций мы дополнительно представляем PPTEval, структуру оценки, которая оценивает презентации по трем измерениям: Содержание, Дизайн и Связность. Эксперименты показывают, что PPTAgent значительно превосходит традиционные методы автоматической генерации презентаций по всем трем измерениям. Код и данные доступны по адресу https://github.com/icip-cas/PPTAgent.
Установка telegrtam-cli в Ubuntu и Debian

Начну с плюсов и полезных фишек:
1. Самое главное на мой взгляд это легковесность, всего 10мб
2. Меньше движений(всё легко, быстро и красиво)
3. Больше степеней свободы(куча фишек которые не всегда есть в приложениях)
4. Вы можете быть "Призраком"(вы в сети и видите сообщение, но в статусе вы не в сети)
5. Клиент можно установить на самое разное железо, включая такое скромное, как Raspberry Pi или Orange PI(на котором и будут показаны примеры ниже)
Но не всё так легко, кроме плюсов всегда есть минусы:
1. ВСЁ КОМАНДАМИ(это очень часто пугает, и многие могут подумать что это что-то выше их понимания)
2. Всё на английском(хотя я уже держу в планах создание перевода)
3. Надо разбираться, а на это нужно время
Из этого вы уже сами должны решить, есть ли смысл!
Ближайшие события
Надоело постоянно пользоваться телефоном, поэтому написал замену Google Authenticator в виде TUI

Мне надоело постоянно использовать Google Authenticator и переключаться между ПК и телефоном для подтверждения двухфакторной (мультифакторной) аутентификации. Красивых и функциональных TOTP (Time-based one-time password) хранилок в терминале я не нашел, поэтому сделал эту TUI, которая позволит хранить, управлять, просматривать, копировать 2FA ключ в пару нажатий с поддержкой VIM управления. Ну и просто мне было интересно, какого это создавать свои TUI приложения.
Система репутации в Telegram

Сегодня я расскажу, как можно создать собственную систему репутации с Telegram на Python. Решение будет легким и красивым, обещаю.
Поиск изображений по тексту с Manticore Search

Кратко: Узнайте, как Manticore Search даёт возможность искать изображения по текстовому описанию, совмещая обработку естественного языка и поиск по векторным представлениям. Мы рассмотрим разные пути — от классических методов до современных решений на базе векторного поиска. А если хотите увидеть всё в реальном времени, загляните в наше демо.
Итоги года команды «кодИИм»

Так неожиданно год подходит к концу, а мы, как и все, не забываем рассказать о его итогах!
Год начался с курса, на котором ребята в течение 3 месяцев изучали ИИ очень глубинно, включая CV и NLP.
В этом году мы сделали программы для junior-уровня, где участники не просто начинают заниматься ИИ, но и применяют сразу знания на практике. Ребята начали изучать искусственный интеллект на буткемпах в феврале и августе ✨
Tg бот для IT + автоматизация ИПРО-2 используя MTS Exolve. Упаковка в Docker и автоматизация сборки с GitHub Actions
Статья написана с целью передачи проекта всем кто ищет информацию по написанию простых ботов, началу работы с docker и github Actions.
Атаки на GitHub-разработчика в 2024 году

Тренд «Platform Engineering», предложенный аналитическими агентствами, стал интересен не только компаниям, которые трансформируют свои процессы, команды и инструменты согласно новым подходам. Этот тренд также интересует и злоумышленников, которые используют возможности платформ разработки для проведения атак.
Меня зовут Денис Макрушин, и вместе с командой SourceCraft я создаю технологии безопасной разработки, чтобы кибербезопасность была драйвером для инноваций, а разработчик мог эффективно использовать свои когнитивные способности. В этой статье я собрал коллекцию интересных уязвимостей и методов атак на пользователей крупной платформы разработки, обзор актуальных методов атак, выявленных в 2024 году. Понимание актуальных угроз позволяет лучше разобраться в необходимости улучшения практик безопасности в такой платформе на примере GitHub. Материал будет полезен как разработчикам, так и специалистам по информационной безопасности для защиты своих проектов.
Conventional Commits без лишних слов: ваша шпаргалка
Эта шпаргалка поможет вам быстро и просто составлять сообщения для коммитов, которые соответствуют стандарту Conventional Commits. Она не для обучения или дискуссий о том, нужны ли такие схемы, а служит удобным инструментом🪄, чтобы подсмотреть и сразу написать коммит.
Если интересно, листайте ниже и пользуйтесь!👀