Как стать автором
Обновить
135.45

GitHub *

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

Сначала показывать
Порог рейтинга
Уровень сложности

CI/CD на GitHub Actions и GitLab CI для самых маленьких. Часть 3

Уровень сложностиСредний
Время на прочтение41 мин
Количество просмотров4.5K

Как запускать пайплайн только для нужных веток, хранить секреты в безопасности и управлять окружениями — просто, наглядно, с примерами. Если вы уже настроили первый workflow — самое время сделать его умнее 🚀

Читать далее

Новости

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

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров2.2K

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

Просвятиться

CI/CD на GitHub Actions и GitLab CI для самых маленьких. Часть 2

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров6K

Часть 2: Настройка GitHub Actions и GitLab CI – первый workflow и деплой

В первой статье мы разобрались с основами CI/CD: что это такое, зачем нужно и какие инструменты существуют. Теперь пришло время перейти от теории к практике – создадим наши первые рабочие CI/CD-конвейеры на GitHub Actions и GitLab CI.

Читать далее

CI/CD на GitHub Actions и GitLab CI для самых маленьких. Часть 1

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров9.7K

Часть 1: Основы CI/CD – что это и зачем нужно; обзор GitHub Actions и GitLab CI

В последние годы вы, вероятно, слышали слова "DevOps", "CI", "CD", возможно, даже "GitHub Actions" или "GitLab CI". Но что это всё значит на практике? Нужно ли быть сеньором DevOps-инженером, чтобы с этим разобраться?

Читать далее

Terminode или Новичок пишет «терминал» (часть 2)

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров1.8K

В прошлой своей статье я рассказывал о том, как начинал создавать свой якобы «терминал». Её заметило две с лишним тысячи человек, что для меня уже было каким‑то неплохим числом. Некоторые писали мне различные советы, кто‑то давал критику по статье. И вот, спустя небольшое время работы я снова пишу статью о своем «терминале» под именем Terminode. Вот она вторая часть «новичка пишущего терминал».

А что далее?

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

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров8K

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

Просвятиться

Бесплатный сайт (блог, cv, wiki) — закроем уже эту тему

Время на прочтение6 мин
Количество просмотров6.5K

Как же меня бесят статьи в духе “Как всего за 139 рублей в месяц развернуть свой сайт-визитку на vps”. Какие 139 рублей за сайт-визитку, совсем уже стыд потеряли?!

В этой статье я вам пошагово расскажу и покажу как бесплатно разместить и вести ваш личный сайт(блог, cv, wiki). Вам даже отдельный домен не нужен (всё будет “из коробки”), хотя в последнем шагом мы и его прикрутим. От вас нужны будут базовые знания git и просто уметь работать с markdown.

Читать далее

Почему я исправляю баги бесплатно и как это изменило мою карьеру

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров14K

8 лет назад я исправил опечатку в чужом репозитории, а сейчас регулярно делаю коммиты в проекты, которые использую, и даже вошел в core team библиотеки с 27000 звёзд на GitHub

В этой статье покажу, что участие в Open Source проще, чем кажется. Расскажу, как регулярная работа с чужим кодом помогает быстрее разбираться в незнакомых кодовых базах, писать тесты и лучше документировать решения. А также объясню, почему публичная активность на GitHub выгодно отличает вас от других разработчиков, особенно в эпоху повсеместного использования ИИ.

Читать далее

Большое обновление DivKit: визуальный редактор, поддержка форм, аниматоры

Время на прочтение8 мин
Количество просмотров3K

Почти три года назад мы выложили в опенсорс DivKit — наш BDUI‑фреймворк для отрисовки интерфейса приложения из ответа сервера. С его помощью вы можете описать элементы, состояния и анимации на бэкенде. Приложение получит это JSON‑описание и отобразит его.

Мы не перестаём развивать DivKit и за последние месяцы добавили несколько важных функций. О них расскажем в статье.

Читать далее

Как новичок пытался написать свой «терминал»

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров3.1K

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

Для этого, на языке программирования Python я начал писать своё CLI‑приложение, которое упрощает работу с консолью. И что из этого вышло?

Узнать продолжение

Сказ о том, как один программист себе мебель из ДСП на PHP программировал

Уровень сложностиСредний
Время на прочтение19 мин
Количество просмотров22K


Тут немного о том, как я сделал библиотеку для проектировки простой мебели из ДСП не визуальным методом, а в виде PHP-скрипта.
Вперед, в мир безумия!

OpenAI Codex против GitHub Copilot: что лучше для написания и тестирования кода?

Уровень сложностиПростой
Время на прочтение17 мин
Количество просмотров3.1K

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

Читать далее

Webhook у Harbor или как я оповещения о пушах docker images нашей команды делал часть — 2

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров548

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

Читать далее

Ближайшие события

Конституция против цензуры: история одного иска в суд

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров19K

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

Читать далее

Дивный мир мобильной разработки и трудности Open Source

Время на прочтение8 мин
Количество просмотров2.8K

Когда я впервые решил создать свой open-source проект, мне казалось, что главное – это хорошая идея и рабочий код. Я взялся за разработку библиотеки для сетевых клиентов и UI-компонентов, вложил в неё два года работы и, наконец, выложил на GitHub. Но вместо успеха меня ждал холодный душ – библиотека получила всего 10 звёздочек.

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

Open-source – это не только код, но и способность донести свою работу до других. И эта история дала мне важный урок: если хочешь, чтобы твой проект заметили, помоги людям его понять. А ещё я понял, как важно участвовать в комьюнити и контрибьютить.

Читать далее

Webhook у Harbor или как я оповещения о пушах docker images нашей команды делал часть — 1

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров1.1K

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

Читать далее

OSA: ИИ-помощник для разработчиков научного open source кода

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров1.9K

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

Разнообразных «улучшателей» много, но все они фокусируются преимущественно на качестве самого кода. Мы же смотрим шире ― на репозиторий в целом, насколько он понятен стороннему наблюдателю. Инструмент нацелен на наших коллег от науки ― например, биологов и химиков ― которые не обладают опытом коммерческой разработки и соответствующего оформления кода. Он поможет в несколько кликов сделать репозиторий более читаемым и воспроизводимым.

Читать далее

Как GitHub использует CodeQL для обеспечения безопасности

Уровень сложностиСредний
Время на прочтение16 мин
Количество просмотров906

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

Читать далее

15 команд Git, которые покрывают 90% повседневной работы разработчика

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров70K

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

Читать далее

Semantic-release в GitLab: автоматизируем CHANGELOG

Время на прочтение3 мин
Количество просмотров752

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

На проекте была одна довольно типичная и, мягко говоря, надоедливая проблема: разработчики вручную заполняли CHANGELOG при выкатке новой версии приложения. Иногда информация туда попадала точная и соответствующая реальным изменениям, иногда – частично верная, а иногда и вовсе напрочь забытая.

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

Читать далее
1
23 ...