不开源的公链,算不算真正意义上的公链?

写在前面

每次遇到公链项目,ZB第一件事就是想问,开源吗?

虽然ZB也不一定能看懂源代码,但是,ZB认为,开源是公链最基本的一件事。

所以在ZB对项目进行评测时,开源也是其中重要的因素之一。

开源

开源嘛,顾名思义,开放源代码。主要是指公开源码之意。事实上,开源有两种形式,一种是公开源代码,另一种开放源代码。

公开源代码

第一种形式,程序开发者把程序源代码公开出来,放到自己的官方网站上,用户可以免费使用。当然,也可以在程序的基础上进行二次开发,实现更多满足自己需求的功能。

最常见的两个开源程序是wordpress和discuz。

wordpress是博客程序,是文章系统,可以用wordpress程序来建立自己的博客、企业网站甚至其他网站。这个是wordpress的官方网站:相关链接

而discuz是一个论坛程序,可以用它来建立论坛。虽然discuz是一个经典程序,它的默认模板比较土气。但是,程序员完全可以对它进行二次开发,因为代码是开源的,可以根据自己的需要去完善和修改代码。链圈、币圈的朋友都知道巴比特网站,这是国内最著名的区块链与数字货币网站,这个网站的外观和使用都比较舒服,而这个网站就是使用discuz制作的。

半开源

当然,也有一些开源程序是半开源的。在网站上,程序是可以下载的,用户也可以安装和使用程序。但是,程序中全部或部分源代码是加密的。用户只能使用这个程序,却不能进行二次开发。

开放源代码

另一种开源的形式就是完全开放源代码。不仅可以下载使用,不仅可以在自己使用进行二次开发。还可以在源代码的基础上进行修改,在源代码基础上,用户可以进行互动。

不用多说了,大家应该都知道Github,程序的源代码可以放在Github上,用户可以可以使用,也可以在Github上对源代码进行讨论和修改,从而使程序的开发者对程序不断进行修复和完善。

开源,不止是大度

我们都看过武侠小说,武侠世界里总有一些正派邪道的人在抢夺一些武功秘籍。而很多门派中的绝功武功是不能外传的。

很有意思的一件事。从互联网时代到区块链时代,时代变了。程序员辛辛苦苦专研和写成的代码就这样被开放出来了。其他人可以把别人的成果直接拿过来使用。

开源是市场需要

对于水平一般的程序员而言,比如ZB,开源程序员无疑是一种福利。在现成代码的基础上就可以实现很多功能,有时候莱特币只需要进行简单的二次开发就可以满足自己的需要。所以,开源程序可以获得更多的用户,包括像ZB这种半调子程序员,甚至还有一些小白用户。所以说,开源是一种市场需要。

开源是自我约束

开源,意味着程序的算法设计和实现代码全部被公开,甚至包括bug。这就要求开源程序在写作时,更加认真和小心,甚至要注意书写的规范。更加要注意bug的防范,因为一个严重的bug可能会使程序成为笑料。

当然,有些程序不是程序上线使用时才开源的,而是从程序开始开发时就全部开源。这样意味着程序的开发过程全部处于大众的监督之下,这个程序的开发过程自然是在压力之下进行的。EOS就是这样的开源机制,程序的整个开发进展都是可见的,开发者就是这样进行自我约束。

开源是自我激励

除了自我约束,开源也是一种自我激励。因为开源,意味着其他人可以直接拿去用。省去了许多麻烦,但也很容易就山寨了程序。有的山寨是改进性的,或者在某些角度是改进性的。比如莱特币就是对比特币程序的的改进,但是没有影响比特币的地位。

但有的程序山寨,可能会超过原程序。这就需要原程序不断自完善。所以说开源是一种自我激励。

开源公链

目前,比特币是开源的,以太坊是开源的,EOSBTSSteem就不用说了,也是开源的;LTC是开源的,BCH是开源的,就连中心化的瑞波币都有开源的程序。

coinmarketcap上前20名的项目,除了USDT以外,只有VETBNB没有开源。往下的项目,ZB也大概看了看,大部分项目是开源的。

开源是开放公链的使用 

尤其是公链项目,更需要开源。所谓公链,就是人人可以使用的链。所谓使用,并不仅仅是人人都可以建节点,当矿工来挖矿。

公链上可以建立各种应用场景,如果不开源,如何去开发应用场景呢?

开源是开放公链的治理 

我们常说区块链治理、区块链社群、区块链自治。如果不开源,参与者无法对公链的程序进行思考和完善,那么公链的治理、LTC自治是很难形成的,而区块链的社群也很难建立。因为程序只能由中心化的开发团队来开发和修改,程序完全由中心化的团队来掌握。

开源是去中心化 

所以说,公链的“公”与不开源是截然相反、完全矛盾的。

结语

公链当然是由中心化的团队发起的,但是公链的开源,可以打破这种中心化的局面,让更多人参与到公链的发展中。更多的人可以使用公链的源码,为公链建立更多的应用场景,同时也可以为公链代码的完善和公链的发展献策献力。 

不开源的公链,不算是真正的公链。只有项目方可以看到和使用公链的程序,这能算得上是公链吗?

只有敢开源的公链才是敢于面对公众的项目。有的项目部分源码开发,证明这个公链部分源码是可以见人的,另一部分还没有开发完善,对这种项目要谨慎。

有的公链项目,开源以后再也没有更新,这样的项目的前景也有待考察。

开源,并不是放上源码就行了。我们还可关注源码的更新频率和参与者人数。这些都是公链生态的反应。

可以这么说,github,是公链项目的一面镜子。

所以,无论你否能看懂源代码,你都要关心公链开源这件事。  

甚至可以这样,对于一个公链项目,第一件事就问项目方这个问题——开源吗?


  原文链接:http://www.ikoding.com/tutorial/111.html

相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。