普通增刪改查的web程序員如何轉型做區塊鏈開發?

需要學習什麼?


謝邀,如果做過增刪改查的話,那就是做Web後端的咯。

目前區塊鏈開發分為兩種,一種是底層的開發,簡單說就是造輪子;另一種是上層應用開發,類比現在IOS和安卓相當於開發APP。現在的區塊鏈行業就像是上個世紀軟體生態之爭,做底層的不少,也很火熱,需求很高。但是對於未來而言不做底層,而選擇做上層應用更好。

底層的開發需要的技能點特別多,一般區塊鏈底層語言會選擇高性能的編譯性語言,如比特幣用的C++,以太坊有C++和Golang的實現,而Hyperledger全部使用的Golang,這些都在Github上開源,你可以看看他們的底層語言。一般很少特別少幾乎沒有使用Java,如果你的技術棧是Java,我推薦學習Golang。

區塊鏈本質上是一個分散式的資料庫,所以說對於分散式網路以及資料庫知識也是必要的,資料庫方面所有的區塊鏈為了性能上的考量都是用的NoSQL,也就是key-value資料庫,一般都是使用的google的levelDB。而分散式網路,學習P2P,再進一步深入TCP/IP學習也是很重要的。

加密演算法都是現有的庫,直接import就可以了,密碼學的知識不深入做底層太難太難。共識演算法,很學究的事情,這個一般都是學習已有的,國內的小蟻以及超級賬本使用的拜占庭容錯演算法,比特幣的PoW演算法,比特股的PoS演算法等,演算法層面造輪子不是這麼簡單。

超級賬本算是金融區塊鏈領域的Linux,很多金融機構都是基於Fabric進行業務的,如果不想造輪子,我建議學習Fabric。

補充一點,區塊鏈和現有的技術還不一樣,有必要的時候必須學習金融方面的知識,如果區塊鏈底層有代幣,而你不懂金融方面的內容,做得會很懵。

上層應用就簡單了,一般就是寫智能合約,像以太坊很友好,Python以及JS都有類似的語法實現。我也推薦開發應用,現在的區塊鏈行業就可以看成操作系統生態或者瀏覽器生態之爭,最終會很多都會被行業大佬打敗,以太坊以及比特幣、超級賬本算是行業的老大了,你可以想想,目前操作系統以及瀏覽器使用最多的也就是三四家,做底層最容易失敗了。不過——目前做底層還是有好處的,二級市場ICO至少能賺一大筆錢。

另外,歡迎加入區塊鏈的世界。


樓上回答的已經很詳細,補充一點,無論是做應用開發還是底層開發,首先要理解區塊鏈的基本原理和知識。如同無論你用PHP, ROR,還是Java做Web開發,你如果HTTP協議不十分了解,你都只能算三四流碼農。

我個人目前比較看好以太坊的智能合約和solidity語言。將來即使有更好的底層平台出現,EVM虛擬機以及上次語言介面我覺得應該不會變動太大。也就是說你現在的學習投資不會因為將來的底層技術發展而打水漂。

我在微信建了個區塊鏈相關的碼農群,你如果感興趣可以加「掘金大隊群專用」微信號,留言「碼農」,拉你入群。


推薦閱讀:

比特幣交易平台「GBL」捲款逃跑,比特幣交易平台究竟受何機構監管,交易人該如何盡量保障權益?
為什麼央行發行數字貨幣,比特幣還在漲?
比特幣暴漲的邏輯在哪裡?
比特幣是不是對大部分人的財富洗劫?

TAG:演算法 | 比特幣Bitcoin | 演算法與數據結構 | 區塊鏈Blockchain | 小蟻區塊鏈 |