Как и многие разработчики, Джеймс Хиллиард (James Hilliard), автор BIP 91, не раз в открытую критиковал предложение SegWit2x, а также временные рамки, которое оно пытается установить для развития сети. Тем не менее, его скептицизм особенно примечателен тем, что возможно именно Хиллиард сыграл важнейшую роль и способствовал принятию плана, а также его движению вперед.
Хиллиард был движущей силой предложения BIP 91. Его цель – координация майнеров для принятия давно откладываемой в долгий ящик оптимизации кода Segregated Witness (SegWit). BIP 91 был назван первой из двух частей технологической карты SegWit2x, хотя на самом деле это идея других разработчиков. После того, как BIP 91 получил одобрение майнеров на прошлой неделе, с большой долей вероятности SegWit будет активирован к концу августа (через два периода пересчета сложности, то есть около 4 недель). Это событие станет важнейшей вехой развития сети и по мнению многих участников сообщества, Хиллиард заслуживает признания за свое непосредственно участие в этом.
Что он думает на самом деле
Учитывая серьезную политизацию разработки в последнее время, для кого-либо вряд ли стало неожиданностью, что мотивы Хиллиарда касательно его роли в обновлении кода были поставлены под сомнение. Поддерживает ли он увеличение размера блока до 2Мб? Делает ли он это потому, что это поможет избежать разветвления сети? Какой команде разработчиков он отдает предпочтение?
В одном из последних интервью Хиллиард уточнил, что не поддерживает SegWit2x полностью – в частности, он не одобряет увеличение размера блока до 2Мб всего лишь через несколько месяцев. Хиллиард считает, что изменение размера блока через 3 месяца – слишком короткий срок для подобного серьезного обновления, которое скорее всего приведет к хардфорку.
«Три месяца для хардфорка – нереальный срок», - говорит он. «Даже для написания кода и тестирования этого мало, не говоря уже о развертывании обновления… Это очень сложно».
Многие другие разработчики также утверждают, что шансы того, что 2-мегабайтный хардфорк может быть безопасно реализован через 3 месяца, весьма малы, поскольку такое изменение может привести к тому, что пользователи потеряют биткоины, если будут допущены ошибки.
Неизвестное и скрытое
Мнением Хиллиарда не стоит пренебрегать, так как он потратил некоторое время на изучение безопасных вариантов хардфорка, результатом которого стала его уверенность в том, что изменения «консенсусного» кода Биткоина – весьма непростая задача.
«Все очень непросто, когда дело доходит до консенсусного кода, особенно в случае Биткоина. Все выглядит просто на первый взгляд, однако при более детальном рассмотрении становится понятно, что есть много сложностей. Очень много что может пойти не так», - говорит Хиллиард.
В качестве примера он привел SegWit отметив, что понадобились месяцы для того, чтобы исправить все известные проблемы кода. Однако, по его мнению, разработчикам часто приходится сталкиваться с неизвестными и скрытыми проблемами. Вот почему многие сторонники Bitcoin Core опасаются жестких сроков, таких как те, которые поощряются соглашением Segwit2x.
«Когда вы начинаете внедрение, вы понимаете – о, вот одна проблема, вот еще одна и еще одна. И со всеми ними нужно разбираться быстро».
«Вы действительно не знаете, как много времени это займет, пока не начнете работу», - добавляет Хиллиард.
Многие участники сообщества также утверждают, что команда SegWit2x несерьезно относится к проблемам безопасности программного обеспечения. Хиллиард также предполагает, что в случае возникновения серьезных проблем, майнинговые пулы, несмотря на то, что они выказали поддержку SegWit могут не принять код, созданный разработчиками SegWit2x. Другими словами, они могут попросту вернуться к ПО Bitcoin Core до хардфорка. В этих опасениях есть здравое зерно – майнинговый пул F2pool и возможно другие пулы уже используют Bitcoin Core с BIP 91 вместо BTC1, а это многое говорит об уровне доверия к новому коду.
Закрытая разработка
Еще одна проблема, идущая рука об руку с вышеописанным заключается в том, что некоторые пользователи обвиняют команду SegWit2x в том, что они не подпускают к разработке известнейших программистов индустрии. Только некоторые разработчики и компании изначально были добавлены в список рассылки SegWit2x и в группу в Slack, где происходило тестирование и обсуждение предложения (хотя на днях группа была открыта для набора новых участников). Хотя его предложение и было принято группой, Хиллиард все равно считает, что разработка SegWit2x излишне закрытая. Он отмечает:
«Причина, по которой у подобных проектов нет открытых моделей разработки, заключается в том, что, когда вы выдвигаете, возможно, плохие идеи, - скажем, хотите произвести хардфорк через три месяца - делать это в открытую довольно сложно, потому что, когда плохие идеи подвергаются публичной критике, они как правило стираются в порошок».
Подобные комментарии наводят на мысль, что технические разногласия будут продолжаться и дальше, несмотря на то что вопрос с активацией SegWit выглядит практически решенным.