Найти тему
CryptoFox

Как работать с github при анализе криптовалют / c open-source кодом

Оглавление

Часто при перечислении преимуществ блокчейн-проектов упоминается «открытый исходный код». Но что имеется в виду под этим термином, известным так же как open-source. И что можно узнать по ссылке на GitHub о какой-либо криптовалюте.

Если вы не технарь…

Если вы до изучения криптовалют особо не сталкивались с программированием и особенностями интернет-стартапов, возможно, вы задаетесь вопросом, что именно означает open source. А если вы рассматриваете проект для инвестирования, продукт предлагают смотреть на GitHub (или другом хранилище репозиториев).

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

Также важно просматривать исходный код проектов самостоятельно, независимо от уровня знаний в программировании (или вообще отсутствии таковых). Это незаменимый инструмент в определении достоверности работы команды.

Открытый исходный код

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

Напротив, программы корпораций часто имеют исходный код, который поддерживает только тот человек, команда или организация, которые его создали. Это Facebook, Adobe и другие популярные компании (которые тоже часто открывают доступ к своим наработкам в определенных областях). В таком случае это называется несвободное программное обеспечение — с закрытым, защищенным правом собственности кодом. Только оригинальные авторы проприетарного программного обеспечения (его второе название) могут юридически получить доступ, скопировать и изменить указанное ПО.

Программное обеспечение с открытым исходным кодом делает код доступным для всех. Буквально каждый может просматривать, копировать, изменять и делиться, а также учиться на его базе (ограничения все таки могут быть, они регулируются лицензией каждого конкретного проекта). Это способствует сотрудничеству внутри сообщества, позволяет другим людям вносить изменения в исходный код.

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

Преимущества открытого исходного кода

В книге Эрика Рэймонда «Собор и Базар» описывается, что открытый источник представляет собой революционный способ создания технологий. Linux, с тысячами неаффилированных разработчиков, работающих в сотрудничестве, служит примером такой модели.

Раймонд выделил несколько преимуществ:

  • разработчики мотивированы создать продукт, потому что сами хотят им пользоваться, это не контракт, а личная необходимость.
  • сложный код упрощается, универсализируется,
  • выгоревшие разработчики сменяются новыми, которые не потеряли энтузиазм,
  • пользователи становятся соразработчиками, тестировщиками,
  • реализуется Закон Линуса: «когда много глаз смотрят, багам не укрыться»,
  • идея в том, что продукт не обогащает компанию, а помогает людям.

Клиент Bitcoin Core является продуктом более 15 000 уникальных обновлений от более чем 450 независимых разработчиков.

Программное обеспечение доступно для бесплатного использования и модификации в соответствии с разрешительной лицензией MIT, а полная история этой разработки видна в общедоступном репозитории программного обеспечения, размещенном на Github. Это позволяет любому зарегистрировать учетную запись, загрузить новый код и отслеживать изменения.

GitHub

Децентрализованный программный проект хоть и распределен, но по-прежнему требует единого места для всех участников проекта, где можно смотреть, изменять, сравнивать, обновлять код. Один из таких вариантов GitHub.

GitHub — это платформа для хостинга проектов, в основе которой лежит система GIt. GitHub отслеживает историю изменений исходного кода (хранит правки всех файлов за все время) проекта: что конкретно было изменено, кто изменил и когда.

  • Хранилище проекта называется репозиторием.
  • Изменения в проект вносятся посредством коммитов. Он представляется собой набор изменений в файлах объеденных в один список, который имеет свое текстовое описание).
  • Новые изменения в крупные проекты обычно вносятся посредством принятия Pull-request (запрос на изменение). Он представляет собой набор описанных выше коммитов.

Пример: при создании нового сайта есть задача добавить новую страницу. В первый день мы сделали основную html-разметку, создали коммит для этих изменений. Во второй — добавили стили (цвета, шрифты и т. д.) и также сделали новый коммит. Для того чтобы наш код могли проверить как единое целое (работа над конкретной страницей), создаем pull-request из списка наших коммитов. Теперь автор проекта может посмотреть все изменения и дать им оценку, возможно добавить какие то правки от себя или просто прокомментировать какие-то моменты.

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

Основные элементы интерфейса

Главная страница репозитория:
Главная страница репозитория:

Отображений изменений сделанных в коммите:

-3

Красным показываются удаленные строчки (символы), зеленным — добавленные.

Больше гайдов, новостей и обзоров на нашем сайте и каналах:
Telegram / ВКонтакте / Twitter!
поддержать проект