Nhà phát triển Chaincode – John Newbery đã thành lập một nhóm các nhà phát triển để kiểm tra một số thay đổi được đề xuất đối với mã Bitcoin (Bitcoin Code) vào ngày 19 tháng 6.
Cuộc bàn bạc kiểm tra này diễn ra trên nền tảng Internet Relay Chat (IRC), nhóm các nhà phát triển này bàn về vấn đề sự thay đổi mã Bitcoin liệu có giúp ngăn chặn bớt các nhóm thợ mỏ lừa đảo tốc độ cao tạo ra khối Bitcoin được hay không. Đây là dấu hiệu tích cực giúp giảm bớt các vấn đề liên quan đến rủi ro bảo mật và các tác động bất lợi khác.

Liệu rằng đây có phải là thời gian hợp lý để tiến hành một thay đổi vững chắc ?
Khi giải thích về các vectơ tấn công, chuyên gia Newbery viết rằng:
“Chúng ta có thể khai thác điều này bằng cách đẩy khối điều chỉnh độ khó (difficult) trong tương lai, và sau đó kéo khối tiếp theo trở lại hiện tại.”
Xét trên thực tế, Newbery đang tổ chức các phiên họp tương tự như vậy và đây có thể được xem là tín hiệu tích cực cho thấy sự trưởng thành hơn của cộng đồng các nhà phát triển Bitcoin. Bỡi lẽ đây là ví dụ về cách mà các lập trình viên hàng đầu của dự án đã làm việc chăm chỉ nhằm hướng đến mục tiêu đưa dự án trở nên toàn diện hơn bao giờ hết. Trước Newwbery, quá trình xem xét mã code chưa từng được thảo luận cởi mở và chuyên sâu như vậy.
Câu lạc bộ đánh giá Bitcoin Core (Bitcoin Core Review Club) được Newbery thành lập nhằm cung cấp cho các lập trình viên lời khuyên hữu ích về phương pháp phát hiện, xem xét một thay đổi nào đó và xác định xem nó có lợi hay hại cho thị trường tiền điện tử. Biên bản cuộc họp hiện được đăng công khai trên trang web mỗi tuần.
Điều này có thể là do Bitcoin Code là mã nguồn mở trên GitHub và bất kì ai có kết nối internet đều có thể truy cập – hoặc thậm chí thay đổi được nó. Quá trình này đã tạo động lực thúc đẩy dự án từ những người viết code từng được gọi là “monolithic blob” của YouTube đến với phần mềm một cách dễ dàng hơn dành cho các nhà phát triển với số lỗi nghiêm trọng được giảm bớt nhiều hơn. Mọi người đang rất cố gắng để cải thiện nó, với mục tiêu chung cuộc là khiến cho nó trở thành một “trụ cột” code xứng đáng cho tương lai của tiền tệ.
Do đó, câu lạc bộ trên cũng có thể là một trong những người đóng góp cho code Bitcoin. Nó không giống như mã độc quyền, ai cũng có thể nhìn thấy và sử dụng loại code này – thứ được gọi là “mã nguồn mở”.
Xem thêm: Chi tiết ZK-EVM – Cân bằng giữa ‘Tính minh bạch’ và ‘Quyền riêng tư’
Vì không giống như các loại tiền kỹ thuật số khác, bất kỳ ai trên thế giới có kiến thức phù hợp đều có thể thử thêm các code tính năng mới vào tiền nên Bitcoin còn được gọi là tiền có thể lập trình được. Một trong những phương pháp để tìm hiểu cơ sở code là xem xét và kiểm tra các code mà lập trình viên đưa ra, kiểm tra để đảm bảo nó thực sự hoạt động và không mắc lỗi hoặc – trường hợp thực tế không may – vô tình chia đôi mạng lưới Bitcoin.
Nhưng qua các trang code và hàng trăm thay đổi được đề xuất, thật khó để biết bắt đầu từ đâu.
Trang web của câu lạc bộ giải thích:
“Câu lạc bộ IRC này dành cho những người muốn giúp xem xét Bitcoin Core pull request – (Một dạng tính năng trên Github) nhưng tìm thấy quy trình này quá đáng sợ”.
“Đánh giá và thử nghiệm các pull request là cách tốt nhất để bắt đầu đóng góp cho Bitcoin Core, nhưng rất khó để biết bắt đầu từ đâu. Có hàng trăm pull request khác nhau, rất nhiều trong số chúng yêu cầu kiến thức trong ngữ cảnh nhất định và những người đóng góp và đánh giá thường sử dụng thuật ngữ không mấy quen thuộc.”
Tóm lại, mặc dù trên lý thuyết có thể nói rằng bất cứ ai cũng có thể nhìn thấy và thay đổi code Bitcoin, nhưng về thực tế, để có thể làm được điều đó thật sự không mấy dễ dàng. Nó đòi hỏi bạn cần phải có kiến thức và thực hành thì mới có thể xem xét và hiểu chúng.
Quá trình đó diễn ra như sau:
Ai cũng có thể làm được
Đầu tiên, người dùng có thể truy cập GitHub – trang web lưu trữ tất cả các loại dự án mã nguồn mở. Trong đó có một ứng dụng dành riêng cho Bitcoin Core, hãy triển khai phần mềm bitcoin cơ bản mà được rộng rãi người dùng sử dụng.
Trên GitHub có rất nhiều thứ, nhưng việc xem xét lại code về cơ bản là xem xét các pull request – một loại tính năng chứa một loạt các thay đổi mà các nhà phát triển trên toàn bộ hệ sinh thái coin đã gửi đến để xem xét. Hay nói cách khác, có tất cả 300 thay đổi mà chưa được xem xét đầy đủ để được chính thức thêm vào cơ sở mã code, từ việc làm cho tài liệu mô tả code dễ đọc hơn đến cải thiện hiệu suất hoạt động của bitcoin.
Ngay lúc này, các nhà phát triển đang cố gắng quyết định xem liệu rằng những thay đổi mà họ tiến hành có nên được phê duyệt hay không. Vấn đề đáng chú ý là có rất ít nhà phát triển có đầy đủ kinh nghiệm xem xét thay đổi code để xác định chính xác xem chúng có nên được chính thức thêm vào cơ sở code hay không. Do đó, từng có một người đóng góp cho Bitcoin Core đã mô tả danh sách pull request giống như “nghĩa địa” của những ý tưởng hay.
Đây là lý do tại sao Newbery đã và đang nổ lực giúp đỡ việc tiến hành quá trình này.
Vì vậy, một người thực sự xem xét các thay đổi này như thế nào? Như Newbery mô tả trên trang web của câu lạc bộ do mình thành lập, chúng gồm vài bước quan trọng để bắt đầu, chẳng hạn như xem qua phần “đóng góp cho hướng dẫn Bitcoin Core”, và sửa lại C ++, ngôn ngữ lập trình Bitcoin Core được viết. trước đó.
Bước tiếp theo đơn giản chỉ là chọn một mã code thay đổi để xem xét. Với hơn 300 pull request, ta nên bắt đầu từ đâu? Lựa chọn tốt nhất cho những người không biết về cơ sở code là những thay đổi được dán nhãn cụ thể là “những vấn đề tốt đầu tiên”.
Khi kết thúc quá trình sơ bộ, các nhà phát triển cần phải sao chép kho lưu trữ, hoặc sử dụng git để tạo một bản sao của cơ sở mã code vào máy tính của họ để họ có thể kiểm tra kỹ lưỡng xem sự thay đổi đó có hoạt động theo kế hoạch không.

Từ đó, người dùng có thể xem lại pull request. Theo như lời khuyên của các nhà phát triển thì nên chạy tất cả các thử nghiệm trên hệ thống, để đảm bảo việc thay đổi mã code mà không vô tình trùng với một đoạn code khác, sau đó mới chuyển sang xem xét phần code còn lại.
Xem thêm: Những chỉ số Bitcoin off-chain hữu ích mà bạn nên biết.
Đối với người review
Người review cần xem xét những điều gì?
Đầu tiên, có những mối quan tâm đặc biệt cần chú ý. Đầu tiên là xác định xem liệu thay đổi mới – đặc biệt là thay đổi quan trọng – về cơ bản có dựa trên sự đồng thuận hay không, tức là hầu hết những người đóng góp tích cực sẽ đồng ý và thay đổi.
Trong một cuộc họp khác của câu lạc bộ, Newbery nói:
“Những suy nghĩ của tôi về việc mở các pull request: không ai nợ bạn một đánh giá. Bất cứ ai đánh giá mã code của bạn đều đang giúp bạn. Nếu bạn tạo một pull request, bạn đang cạnh tranh với các pull request khác.”
“Nếu bạn nghi ngờ về việc người khác nghĩ rằng pull request của bạn sẽ hữu ích như thế nào, hãy hỏi #bitcoin-core-dev hoặc hỏi trực tiếp những người đóng góp khác”,
Một nhóm IRC khác được Newbery đã đề cập đến, đó là nơi các nhà phát triển có thể đặt câu hỏi liên quan đến quá trình phát triển Bitcoin Core.
Điều này thể hiện kên rằng, các nhà phát triển không hẳn lúc nào cũng đồng thuận về việc thay đổi đó có đáng để thêm vào hay không. Nhóm các nhà phát triển tập trung vào các thay đổi về mã code gây tranh cãi trong một tuần. Đã có những ý kiến trái chiều: Một số người cho rằng cái xấu vượt trội hơn cái tốt, trong khi những người khác vẫn cho rằng điều đó có thể hữu ích.
Nhưng ngay cả khi có một ý tưởng chung tốt thì vẫn còn tồn tại những mối quan tâm thứ yếu khác. Mã code Bitcoin mới có lỗi phát sinh hay không? Liệu việc thay đổi mã code có đi kèm với các thử nghiệm đảm bảo rằng nó sẽ hoạt động đúng theo kế hoạch không? Những câu hỏi này cần rất nhiều thời gian để các nhà phát triển xem xét để có thể đưa ra câu trả lời đúng nhất.
Điển hình kể đến như việc các nhà phát triển đã xem qua việc nâng cao hiệu suất cho ví của nút Bitcoin (Bitcoin node trong cuộc họp ngày 29 tháng 5.
Một người đóng góp có bút danh là Ariard, đã dẫn dắt cuộc họp bằng cách đưa ra quá trình review mà họ đã phát triển.
“Trước tiên, tôi đã cố gắng xác định loại PR (Pull request): Tài liệu, loại code, sửa lỗi buf, tính năng mới hoặc thử nghiệm bổ sung. Bởi vì [theo ý kiến của tôi] những điều này sẽ hướng dẫn bạn xác định, bạn sẽ cần bao nhiêu thời gian để review và loại thử nghiệm nào cần thiết”.
Một nhà nhận xét khác có ý kiến rằng họ tìm thấy xách xem xét sự cải thiện của mã chỉ bằng cách kiểm tra xem mã code đó đã mất thời gian bao lâu để hoạt động – trước và sau. “10000 khóa của tôi nhập vào từ 8 phút đến 3 giây xD”, một người dùng khác có tên jb55 cho biết.
Biên bản cuộc họp được bổ sung vào rất nhiều lời khuyên khác nhau về cách sắp xếp hợp lý quá trình review này và giúp dễ dàng xem xét hơn. Đồng thời sẽ có nhiều cuộc họp khác được diễn ra trong tương lai. Một vài phần tiếp theo sẽ được chủ trì bởi nhà văn – nhà đóng góp Bitcoin – David Harding.
Bạn muốn xem thêm về Bitcoin6s? Hãy đến với chúng tôi tại đây.