寫在前面:本文作者為AmitiUttarwar,是BitcoinCore開發者,就職于Xapo,曾是Coinbase的軟件工程師。根據自身的經歷,她在文章中分享了為比特幣做貢獻的秘籍,其中包含了大量的學習資料,干貨滿滿,對有需要的人來說很有幫助。P.S.這是個優秀的小姐姐哦~
在過去的一年里,我進入了為BitcoinCore做貢獻的奇妙兔子洞。在這個過程中,我很幸運地從許多人那里得到了指導和支持,我自己也學到了一些技巧。在這篇文章中,我想分享一些我發現的有效工具。
成為BitcoinCore貢獻者只是幫助推進這個協議的其中一種方式。其他選擇包括參與郵件列表討論、研究攻擊向量或擴容技術、為閃電網絡客戶端做貢獻,或開發相關工具,如secpk256k1代碼庫或更好的測試基礎設施。但這篇文章不涉及這些話題。
這篇文章是關于BitcoinCore的,通過我的體驗,我希望它能幫助你找到自己的貢獻方式。
開始之前
首先,讀白皮書。講真,如果你還沒有讀過,那就別看這篇文章了,直接去讀白皮書吧。
理解比特幣運作的基礎概念是必要的。了解的渠道有很多。我會從讀其中一本書開始。如果是線上資料,我會訪問JamesonLopp的資源列表或Chaincode實驗室的課程。前者更寬泛,但后者專門針對協議開發。
如果你的目標是為BitcoinCore做出貢獻,不要試圖學習每個概念的細節。有許多主題的差別不大。目標是獲得高層次的理解,并接觸系統的不同部分。徹底消化這個分布式共識系統的基本原理是需要時間的。
Aave社區正對“如何分配Aave Grants DAO收到的30萬枚OP”提案進行投票:5月4日消息,Aave社區正對“如何分配Aave Grants DAO(AGD)收到的30萬枚OP”提案進行溫度檢查投票,該提案目前支持率為99.97%,并將于5月8日結束。根據該提案,Aave社區去年創建了一個提案并成功收到了30萬枚OP代幣,作為激勵基金OP Stimpack階段0的一部分。這些代幣將用于資助項目,以幫助Aave在Optimism上的發展。該提案旨在澄清收到的OP應如何分配并獲得社區支持。
該提案建議分配最多10萬枚OP用于當前AGD季度的贈款以及以Optimism為中心的事件和賞金,并將剩余的20萬枚OP保留在AGD多簽錢包中以用于AGD的未來季度贈款或分配。如果該提案獲得此次投票通過,AGD將按照上述方式進行資金分配。不需要AIP或進一步的治理行動。[2023/5/4 14:42:34]
BitcoinOptech周報是了解生態系統技術發展的“最佳”方式。DaveHarding在保證其更新。我強烈推薦訂閱這個內容。
選擇放棄什么
一旦你決定為BitcoinCore做出貢獻,這個過程就不會停止。這個項目有足夠的復雜度和開發工作,足以讓任何人忙上好幾輩子。選擇如何分配你的注意力,這有助于確定你“不想”關注什么。
要做出改變,開發的廣度和深度都很重要。找到正確的平衡是一門隨著時間而發展的藝術。廣度增加了對新概念的接觸,并有助于確定哪些工作是相關的。為了提出一種改進代碼庫的PR,理解更大的背景與深入研究一個方面并充分熟悉所提議的變更集一樣重要。
FIBA提問:15個比特幣你如何選球員?郭艾倫周琦上榜:金色財經報道,國際籃球聯合會(FIBA)亞洲杯官方更新社媒,拋出了“用15個比特幣組建陣容”的話題。“你會用哪些亞洲球星來組建你的最佳陣容?”FIBA亞洲杯官方社媒寫道。其中,郭艾倫出現在了得分后衛的位置上,需要用最多的5個比特幣來選擇。出現在中鋒位置上的周琦,需要用2個比特幣選擇,而在中鋒位置上,比特幣最高的是哈達迪。[2022/6/28 1:35:49]
人們喜歡推薦的東西總是會超出你的閱讀、理解、消化和學習范圍……我在上面已經這樣做過了——我推薦了3本書,2個無窮無盡的材料清單,還有一個周報。當你與他人交流時,你也會面臨潛在的壓力,因為你需要對大量的話題有足夠的了解,以便在任何對話中都有所貢獻。這對廣度來說很好,但只有你才能創造出追求深度的道路。要提交一個PR,你需要開發特定的知識,讓你提供改變。不要停留在“消化”階段,專注將確保你繼續“創造”的階段。
如果你不是整天都在研究比特幣,這一點就更重要了。這是一個非常復雜的項目。需要創造空間。即使是看起來很簡單的任務也需要一段時間。
好了,人生忠告夠多了了。現在開始說項目細節……
熟悉代碼庫
復制代碼庫,進行編譯和測試。
通讀項目開發人員文檔:
1.ContributingtoBitcoinCore指南是入門的基本知識,包括pullrequest和審查過程如何工作。
2.《開發者筆記》是很好的精讀指南,在開啟一個PR之前,重讀這個筆記,以確保你符合當前的標準。
央行回應非指定機構如何參與數字人民幣運營:央行表示,需發揮其他商業銀行及非銀行支付機構作用,與指定運營機構一起,共同提供數字人民幣流通服務,包括支付產品設計創新、系統開發、場景拓展、市場推廣等服務。(一財)[2021/7/16 0:57:56]
3.ProductivityNotes的技巧在開發工作流程的不同時段非常有用。我強烈建議立即執行前四個步驟。
閱讀JimmySong和JohnNewbery寫的入門文章。
參加每周的PR審查。審查PR對項目來說至關重要。更重要的是,這在最開始,是了解代碼庫和合并過程的有效方法。PR審查是在別人的幫助下熟悉特定變更集的一種方式。你從PR審查獲得的價值是你愿意投入精力的直接產物。每周的參與有助于提高對技術架構和歷史環境等模式的認識,獨立開發需要更長的時間。無論你選擇參與這樣的活動,還是僅僅潛水,或花時間探索代碼,你肯定會學到很多東西。提前準備可以讓你利用這段時間來發文或樹立你理解代碼的信心。
找到你的第一個PR
當你開始適應代碼庫時,你可能覺得自己已經準備好提交PR了,但是不確定如何選擇對項目有價值的貢獻。到目前為止,這篇文章中提到的各種方法都很有可能幫助你找到一個有意義的內容。但如果你還在尋找,這里有一些其他的選擇:
時刻關注goodfirstissue和upforgrabs。
搜索帶有“TODO”的代碼庫,并進行解析,以查看是否有你熟悉且可用的代碼庫。我在測試中遇到過一些看起來對初學者很友好的。
直播|“后浪”仙女周|熱幣-Merry如何乘風破浪:金色財經 · 直播主辦的《 幣圈 “后浪” 仙女直播周》第7期16:00 Hotcoin Global|首席品牌官 Merry將在直播間聊聊“幣圈‘后浪’仙女如何乘風破浪”,感興趣的朋友掃碼移步收聽![2020/7/1]
選擇代碼庫的一個部分,并注意正在打開的相關PR。如果你跟進了PR內容,你肯定會注意到接下來要做的事情。同時,批判性地思考如何測試這些變化。打開PR來跟進處理和增加測試覆蓋率將是最佳選擇。你還可以訪問pr-review-clubhistory來熟悉某個部分。
開源貢獻的本質意味著沒有中心化的項目管理系統。因此,有些對項目有用的變更集不一定是對PR作者注意力和技能的最佳利用。因此,作為一名貢獻者,在你的學習曲線上找出有用的貢獻是你工作的一部分。我的第一個PR是通過up-for-grabs找到的。
我很驚訝地發現有這么多舉手之勞可以做。在仔細查看Github項目之前,我從來沒有想到會這樣。
從伴隨著BitcoinCore的“街頭形象”來看,很難想象做貢獻是多么容易。留意不間斷的待辦事項清單,確實讓我們看到了比特幣項目是多么年輕,以及對更多貢獻者的緊迫需求。
利用互聯網來進行進一步學習
當我開始學習C++語言的時候,我拿到了一些很棒的書,但是說實話,我仍然在努力閱讀它們。
動手學習對我來說最有效,我專注于學習語言中最相關的部分,這樣我就可以讀懂BitcoinCore代碼庫。
聲音 | 趙長鵬:無論市場如何變化,幣安仍將在100年內存在:據CCN報道,幣安首席執行官趙長鵬今日表示,無論行業發生什么變化,幣安仍將在100年內存在。幣安團隊并沒有對每日比特幣的價格波動有所顧忌,基本上并沒有真正關注市場,而是長期關注并專注于團隊工作。趙長鵬表示,幣安只是低著頭,建立功能。[2019/2/8]
所以,我會寫代碼。當我遇到一個新的C++概念時,我會讀文檔并試圖在一個示例程序中將這個函數拎出來看。我會保持tmux制表打開狀態,方便調用c++play。這些程序還可以作為我修改過的概念的文檔。另一個很棒的工具是CompilerExplorer。我發現顏色編碼對于比較執行相同函數的多種方法特別有幫助,可以看出這些差異是表面的、優化出來的,還是從根本上改變了所做的工作。
為了更深入地研究具體的C++概念,我一直很喜歡觀看CppContalks,尤其是“BackToBasics”這一系列。
這是一個好的開始,但有時我想和人說話。最初,我有時會對一些符號有疑問,但我不知道如何用谷歌來搜索。目前,我更想確認我對文檔的理解是否正確。
我發現了一些很棒的在線社區,有陌生人愿意幫助我找到正確的方向。關于C++有一個cpplangslack,一個##c++-general交流渠道,還有discord上的#include<c++>社區。在網絡上,陌生人給予的幫助令我十分驚訝。
兩個注意事項:
1.我鼓勵尋求幫助,但要有禮貌,并且思慮周全。做盡職調查,首先嘗試自己找到答案。禮貌地使用適合你的問題的溝通渠道。人們不欠你答案。提供任何幫助都是出于慷慨。
2.選擇聊天客戶端:我發現irccloud是一個簡單、美觀的客戶端,而且是免費的。還可以選擇支付少量的費用永久保留用戶名和日志。這樣的客戶端有很多選擇,但是我建議你將你的決策能力集中在更重要的事情上,盡可能快地選擇客戶端。
我最喜歡的比特幣資源在這篇文章中隨處可見,但這里有一些我想要強調的代碼:
P2P消息和RPC的開發者參考
Bitcoinstackexchange有專門針對協議開發的討論,涉及各種問題和答案。這個網站在谷歌很難搜到,所以最好直接訪問
FabianJahr編寫了一個關于調試技術的完整文檔
我喜歡看JamesO’Beirne的架構概述
如果你正在努力學習一個技術概念,不確定要嘗試什么,請聯系我!我肯定不知道所有的答案,但我很高興能集思廣益為你找到解決方案。
更多了解比特幣的途徑
有很多很棒的方法可以增加你對比特幣生態系統發展的了解。以下是一些熱門的選擇:
UTC時間每周四19:00在#bitcoin-core-dev會舉行會議
#bitcoin-core-pr-reviews頻道有時候會討論進程和工具,關注這個頻道會有所幫助
重新看看ChaincodeLabs的比特幣課程,那里有很多很棒的素材——演講、論文、甚至是代碼挑戰
參加高質量的會議
觀看之前會議的視頻。我在上下班的路上看了BitcoinEdgeDev++的視頻,學到了很多
如果可以的話,參加Socraticseminar
閱讀比特幣維基,尤其是協議和隱私頁面
Chaincode最近做了一個播客頻道
熟悉比特幣協議不是一件簡單的事情,尤其是如果你有其他的事要做,比如一份全職工作或還是學生。我用間隔記憶法來記住新信息。我強烈推薦這個方式。它有助于催化持久記憶信息的能力,這樣你就可以花更多的時間來獲取新的概念或應用你所學到的知識。這樣做還有其他好處,即可以隨時進行概念學習,并可以將任何空閑時間都花在代碼庫的特定任務上。
密切關注Chaincode培訓項目。我去年夏天有幸參加了這個項目,這改變了我的工作方式。但請記住,這是一個門檻很高的項目,你對BitcoinCore的貢獻程度越高會增加你被接受的幾率。
說真的,快行動吧
為BitcoinCore做貢獻是很難的,但并非完全不可能。在開始這段旅程之前,我從來沒有寫過任何C++代碼。害怕是很自然的,但不要讓這種情緒阻止你。
對自己要有耐心。我為BitcoinCore做的貢獻很多都需要花很多時間。有一次,我在集成測試中花了整整3天的時間,重復了用交易填充內存池的不同方法。我最初的幾次嘗試要求的測試時間長得很不合理,所以我不得不嘗試不同的方法。不要陷入一種“這應該很容易”的假象。專注于你能學到的,并不斷嘗試。
剛開始的時候,“BitcoinCore”和“核心貢獻者”很容易讓人覺得這是一個龐大而神秘的組織,不可能參與其中。我驚喜地發現人們是多么樂于助人和支持我。每個在項目中工作的人都受到極大的帶寬限制,所以如果你做出了有意義的貢獻,大家是會支持你的。
這是很重要的。不要一開始就糾正PR中的拼寫錯誤。要有耐心,在你的學習上投入,觀察這個項目,并確定你如何才能做出有意義的貢獻。
無論你處于學習曲線的哪個位置,你都可以成為這個項目的資產。如果你愿意貢獻你的精力,并且有能力批判性地思考和學習,你就是一筆財富。不要讓傲慢或不安全感把你引入歧途。
一些異想天開的思考……
如果我們要描繪出各種各樣的學習路徑來為BitcoinCore做貢獻,它肯定不會像區塊鏈那樣有序和線性。追求你自己的旅程,享受路上的風景,玩得開心。
在開源領域的探索讓我想起了越野背包旅行。
在背包旅行中,我首先在一張地形圖上查看我想去的地方,然后畫出我計劃旅行的大致路線,盡量待在最平緩的地形上。由于比特幣是新興領域,可能在地圖上還找不到。因此,在瀏覽比特幣時,你首先必須用一些理解的片段拼湊出該地區的大致地圖,然后制定出一種方法。我希望這篇文章能讓這個過程變得簡單一些。
徒步旅行的實際路線需要不斷的迭代。每走一步,你都會獲得新的信息,你可以利用這些信息來確定難度最小的路徑,這樣你就可以利用你的能量深入山區進行探險。你要注意每一步的細節,還要注意宏觀路線。
這一過程與比特幣領域的探索類似。當你學到更多,你會對未來的地形有不同的看法,必須不斷選擇正確的路線,以保持自己的合理前進。有時你會撞上懸崖,不得不回頭嘗試另一條路。尋找路線需要大量的精力和注意力。你必須是一個航海家和一個徒步旅行者。
我可以再深入談談我的經歷,讓這篇文章變得更長,但是,我將這樣結尾:
祝你好運!希望在GitHub見到你的身影:)
We''repleasedtoannouncesomeexcitingupdatestomargintradingforTezos(XTZ).
1900/1/1 0:00:002月21日下午,SheKnows直播間迎來礦業專場。芯動科技副總裁敖鋼表示,不同芯片對于能效的要求不一樣,比特礦機肯定已經進入10nm時代.
1900/1/1 0:00:00公告編號2020021702各位關心ZBG的投資者們和項目方:ZBG.com于HKT2020年2月18日16:00開放ZB/QC交易,請投資人和項目方提前做好交易準備.
1900/1/1 0:00:00據外媒今日消息,資產管理公司Kryptoin首席執行官DonnieKim表示,要讓ETF獲準在美國證券交易所上市,有多個方面和因素.
1900/1/1 0:00:002月19日,火幣全球站CEO七爺在媒體直播中表示,銷毀非流通盤的做法有助于提升市場對于流通盤不再增加的心理預期,是一種通證模型的改進,火幣不會忽視任何一次改進的機會.
1900/1/1 0:00:00點擊此處添加圖片說明文字★市場上新幣種、小幣種很多,但值得研究的并不多,值得買入的就更少了。今天我來結合實盤,結合我的6000萬KEY,談談買哪些、怎么買的問題.
1900/1/1 0:00:00