Как стать автором
Поиск
Написать публикацию
Обновить
43.1

GitHub *

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

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

GitHub Copilot: он не стоит таких рисков

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

3 ноября программист и правовед Мэтью Баттерик совместно с юридической фирмой Джозефа Савери подал коллективный иск против GitHub, Microsoft (его материнской компании) и OpenAI.

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

Генеральный директор GitHub Томас Дохмке ранее заявлял, будто Copilot способен избавить программистов от 40% рабочей нагрузки, предлагая им шаблонные фрагменты кода — в теории это позволит избежать долгих часов изысканий, проб и ошибок.

Но Бутерик и другие критики Copilot утверждают, что многие предложения Copilot вовсе не являются «шаблонными»; в них безошибочно угадываются следы оригинальных авторов, поскольку Copilot был «обучен» на хранилищах публичного и открытого кода GitHub.

Этот иск, как и масштабные дебаты вокруг Copilot, поднимает массу сложных вопросов: технологических, юридических, этических и даже экзистенциальных.

Читать далее

GitHub Codespaces

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

Всем привет! Меня зовут Макарий Балашов. Я SRE в Ak Bars Digital, но в свободное время люблю чуть-чуть покодить и запушить это все на GitHub. Недавно заметил там Codespaces и решил разобраться для себя, что это и зачем оно нужно, вот что у меня получилось.

Читать далее

CI/CD для AWS Lambda через GitHub Actions

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

Сегодня я расскажу, как без лишних усилий настроить CI/CD pipeline из GitHub в AWS Lambda с помощью GitHub Actions. Логика такая — когда мы пушим изменения в main-ветку репозитория на GitHub они прорастают в AWS и обновляет продовую версию функции.

Читать далее

Многопоточность на фронте: абсурд или прекрасное архитектурное решение?

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

Веб-сайты уже давно перестали напоминать простые листы с текстовой информацией. Сейчас это полнофункциональные приложения, порой с очень сложной и тяжелой логикой. А чем больше логики и чем сложнее она становится, тем сильнее сайт начинает замедляться, что, естественно, не нравится пользователям. Сейчас это решают разными способами, например с помощью ленивой подгрузки, а более рисковые пробуют применять микрофронты или виджетные системы. Однако есть еще один вектор, на который пока никто не обращает внимания: использование многопоточности в браузере.

Практически во всех областях IT-разработки весь мир перешел на использование многопоточности: мобильные приложения, бэкенд, прикладное программирование. И даже процессоры развиваются в сторону увеличения количества ядер. Но на фронте многопоточность используют нечасто, и эта тема до сих пор почему-то не очень популярна, особенно в ру-сообществе.

Сегодня я постараюсь это исправить, открыв для вас фантастический мир многопоточности в браузере.

Читать далее

Как я организовал автоматический деплой для своих пет-проектов

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

Всем привет) Это мой первый пост на Хабре, и сегодня я расскажу про небольшой pet project (git-trigger), который я недавно написал для сборки своих проектов на сервере. На данный момент я использую его в нескольких своих проектах для автоматической сборки и пока не было замечено никаких косяков.

Читать далее

Yii3 Overview 2. Вспомогательные инструменты разработки

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

Самое ужасное, что может предоставить рабочий код – внезапную проблему. Будь то отложенная бага или неудачное обновление. Для того чтобы избежать такую ситуацию, мы в команде договорились покрывать тестами как можно больше написанного кода, проверять все допустимые варианты, делать статический анализ и проверять обратную совместимость будущих версий библиотек.

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

Читать далее

Правка чужого кода

Время на прочтение6 мин
Количество просмотров19K
Всегда приятно, когда удаётся сделать мир чуточку лучше.


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

Старожилы знают, что в комплекте с различными версиями ДОС шли дополнительные утилиты, и среди них была «замечательная» утилита debug, которая убога чуть более, чем полностью. Ещё во времена моей молодости эта утилита вызывала у меня самые противоречивые чувства, то сейчас и подавно. Пользоваться ей без успокоительных очень сложно, с другой стороны, хорошо, что она есть. Но мне возможностей и удобства этой утилиты не хватало, поэтому пришлось искать другой подходящий инструмент. После длительного гугления наткнулся на исходники утилиты RAM View.

К сожалению, исполняемого файла найти не удалось, только исходные коды под Borland C++ 3.1, и как впоследствии оказалось, сама программа содержала ошибки.

Всё это вылилось в интересный квест по поиску старого компилятора, исправления ошибок в программе 25-летней давности и создания запроса на слияние.
Читать дальше →

CI/CD из GitHub в Яндекс Облако через Docker

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

Всем привет!

Будем использовать GitHub Actions. Создадим виртуальную машину в Яндексе. И многое другое.

Сегодня настраиваем деплой из GitHub в Яндекс Облако, используя Docker compose.

Читать далее

SiteWatcher — наблюдаем за изменениями на страницах сайтов

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

Я не являюсь разработчиком (я себя таковым не считаю) и не занимаюсь программированием для заработка (хотя раньше такое и было), но иногда возникает острое желание чего-нибудь написать для себя, чтоб оно работало, как надо мне, чтоб выглядело, как я хочу, и чтоб была возможность что-то изменить в поведении программы/скрипта/сайта.

В очередной такой "приступ" и было решено написать SiteWatcher. А чтобы труд не пропал зря, решил опубликовать свой проект. Может кому понадобится сама программа или что-то из её кода.

Читать далее

Октябрь — лучший «понедельник» для Open Source

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

Октябрь — время фестивалей. Один из них — Hacktoberfest, который приглашает любого участника внести вклад в Open Source. Кому это подходит? Давайте вместе разберемся, чем полезен Open Source начинающим и опытным разработчикам.

Happy Hacktoberfest!

Покажи мне свой Git, и я скажу, кто ты

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

Можно ли с помощью GitHub анализировать работу, не заглядывая в монитор сотрудника — без скриншотов и тайм-трекеров?

Я Александр Кириллов, технический директор компании Evrone. Больше 20 лет я посвятил разработке. В этой статье поделюсь с вами опытом, который собрал за время работы с распределенными командами. Расскажу о том, как, не нарушая приватность разработчиков, следить за качеством работы на проектах и отслеживать нежелательные паттерны с помощью метрик в Jira и Git.

Читать далее

Простые, но приятные и воздушные тени вместе с Vue Box Shadows

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

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

Читать далее

Добавление расчёта пути к схеме метро Москвы из Википедии

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

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

Для этого решил адаптировать не алгоритм к схеме, а схему к алгоритму. Поскольку алгоритм BFS использует перебор массивов станций, координат линий и пересадок, то нужно было распарсить схему из Википедии в массивы: для этого я написал различные варианты CSS-селекторов.

Читать далее

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

Размер имеет значение! Часть 2

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

Как бы мы себя не обманывали - Размер имеет значение! И конечно, мы будем говорить о размере нашего андроид приложения, куда мы добавляем кучу классных features, и даже не задумываемся как это может негативно повлиять на размер приложения. Поэтому мы научимся обнаруживать регрессию размера нашего приложения на CI для автоматизации этого процесса.

В данной части, обсудим как можно проверять размер в pull request, что позволит автоматизировать весь процесс обнаружения регрессии, до того как изменения попали в development.

Читать далее

Обучение модели Stable Diffusion текстовой инверсии с помощью diffusers

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

Листая интернет на наличие интересных технологий в области нейронных сетей и различного искуства,я наткнулся на пост в Твиттере, в котором Suraj Patil объявил о возможности обучения модели Stable Diffusion текстовой инверсии используя всего 3-5 изображений.

Читать далее

Использование GitHub в обучении студентов. Автоматизация проверок. Часть I

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

В конце декабря 2020 года я написал несколько статей на Хабре по своему опыту использования GitHub в обучении студентов (ссылки на них будут в конце сей статьи).

Сегодня же хочу рассказать об автоматизации проверки кода студентов. Примеры будут про C#, т.к. это мой основной язык, на котором я преподаю программирование.

Для меня при обучении программированию важно, чтобы студенты умели не только правильно решать задания, но и красиво писать код. В обучении и проверки заданий я использую EditorConfig, dotnet cli и GitHub Actions. Но обо всём по порядку.

Читать далее

Как я выиграл апелляцию против американских санкций

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

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

Пораскинув мозгами и посовещавшись с моим приятелем, основателем московского интернет-провайтера RiNet Сергеем Рыжковым, у которого в тот же день забанили счет в Ситибанке в Лондоне, я решил: нужно бороться.

Читать далее

Четыре важных теста для Apache Kafka CI/CD с GitHub Actions

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

Если вы используете GitHub для создания приложений Apache Kafka®, наверняка вы захотите интегрировать Kafka в свою среду разработки и эксплуатации GitOps. Эта статья для тех, кто понимает принципы GitOps, ценность непрерывной интеграции и поставки (CI/CD) и важность промежуточных сред (staging).

Мы поговорим о том, как применять принципы GitOps к жизненному циклу разработки клиентского приложения Kafka с помощью GitHub Actions — для тестирования в локальной среде и Confluent Cloud, со Schema Registry и без него, и для эволюции схемы.

Читать далее

Реализация кэш-компрессии по алгоритму base+delta

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

Существенную часть кристалла современных ЦП занимает кэш-память. Дальнейшее увеличение кэш-памяти без изменения технологических норм приведет к соответствующему увеличению кристалла. Одним из способов увеличения объема хранимой информации в кэше без увеличения самого кэша является использование алгоритмов компрессии. Среди них выделяются алгоритмы Base+Delta и Base-Delta-Immediate. Данная статья посвящена реализации первого алгоритма.

Читать далее

Вклад авторов