19 июня Джон Ньюбери собрал группу разработчиков для изучения предлагаемого изменения в коде биткоина. Новое изменение было нацелено на предотвращение раздувания предложения биткоина потенциальным злоумышленником. Задача Ньюбери состояла в том, чтобы рассказать о том, что он знает о проверке такого кода.
Ньюбери основал Bitcoin Core Review Club, чтобы дать кодерам советы для изучения изменений и определения того, будут ли они полезны для главной криптовалюты. Стенограммы встреч теперь публикуются на сайте каждую неделю.
Биткоин имеет открытый код и выложен в свободный доступ на GitHub м люди постоянно пытаются улучшить его, чтобы сделать достойным звания «денег будущего».
Одним из способов изучения изменений кодовой базы является просмотр и тестирование кода, представленного программистами, чтобы убедиться, что он действительно работает и не содержит ошибок. Но, просматривая страницы кода и сотни предлагаемых изменений, трудно понять, с чего начать.
«Этот клуб предназначен для людей, которые хотят помочь улучшить код Bitcoin Core», — объясняет веб-сайт клуба. «Просмотр и тестирование пула запросов на изменения — лучший способ начать вносить свой вклад в Bitcoin Core, но сложно понять, с чего начать. Существуют сотни запросов, многие требуют большого количества контекстных знаний, а участники и рецензенты часто используют незнакомую терминологию».
Таким образом, несмотря на то, что код этой цифровой валюты находится в свободном доступе и его можно посмотреть или изменить, это не всегда легко сделать. Требуется практика, чтобы знать, что проверять.
Любой может сделать это
Для начала нужно зайти на GitHub — веб-сайт, на котором размещаются многие проекты с открытым кодом. Есть тут и Bitcoin Core — базовая реализация программного обеспечения биткоина.
GitHub позволяет многое сделать, но при проверке кода в основном рассматривается пул запросов (pull requests) — ряд изменений, которые разработчики всей экосистемы представили на рассмотрение. Другими словами, есть, например, 300 предложенных изменений, которые еще недостаточно рассмотрены для официального добавления в кодовую базу: от упрощения документации, описывающей код, до повышения производительности биткоина.
Разработчики должны решить, одобрить или отклонить эти изменения. Проблема в том, что есть ограниченное число разработчиков, которые имеют достаточный опыт просмотра изменений кода для определения того, должны ли они быть официально добавлены в кодовую базу. Из-за этого один из участников Bitcoin Core однажды назвал пул запросов «кладбищем классных идей».
Ньюбери пытается помочь улучшить этот процесс.
Итак, как же рассмотреть изменения? Как пишет Ньюбери на своем веб-сайте, есть несколько ключевых шагов, с которых нужно начать — ознакомится с разделом «contributing to Bitcoin Core guide» и освоить язык программирования C++, на котором написан Bitcoin Core.
Когда предварительные условия выполнены, разработчик может клонировать репозиторий или использовать git, чтобы сделать копию кодовой базы на своем компьютере для проверки изменения.
Требуется простая команда, чтобы скопировать всю кодовую базу на ваш компьютер:
С этого момента вы можете просматривать пул реквестов, а затем запустить тесты, чтобы убедиться, что изменение не запутало другой фрагмент кода.
Определение того, следует ли внести какое-либо изменение, особенно критическое, основано на «грубом консенсусе», что означает, что большинство активных участников должны согласится с тем, что его следует внести.