LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 区块链资讯 > 思考 黑客圣经之《大教堂和集市》| 以太坊智能合约学习007|YAS会归零吗?

思考 黑客圣经之《大教堂和集市》| 以太坊智能合约学习007|YAS会归零吗?

2020-08-28 牛币集了 来源:区块链网络




投资之道

独立思考,复利思维




01

每日思考

When one teaches, two learn.


●《大教堂和大集市》


作者是ESR


你可以搜索百度黑客ESR,那是十二个超级黑客之一。



作者有业界称为“五部曲”的核心著作:“黑客圈简史”、“大教堂和大集市”、“如何成为一名黑客”、“开拓心智层”和“魔法锅”。其中最著名的当属“大教堂和大集市”。本书在开源运动中的地位相当于基督教的《圣经》,用黑客们的话说,这是“黑客藏经阁”的第一收藏。


他的真名叫埃里克.雷曼,谈到埃里克.雷曼,也必需谈到另一个超级黑客,理查德·斯托曼,他名字的缩写是RMS,和作者的ESR一样现在RMS也是一个专有名词了,特指理查德·斯托曼。


这个RMS最重要的贡献是发明了一个概念:Copyleft,明眼人一看这个单词就知道它对标的是Copyright(版权)。


相当于Copyright的反义词,并且RMS给这个概念下了一个定义,符合Copyleft的软件不只是公开源码那么简单,还要保证这种开放是可传染的。什么意思呢?就是说,如果你只是开源了,任何人都可以Fork你的源码并任意修改,之后变成自己的东西,甚至可以不再开源并获利。


但是如果你说我这个开源是Copyleft的,那就是说这是一个自由软件,如果你Fork我的代码,它也必需遵守自由软件的原则,那就是如果你使用了我的部分代码,你也必需开源,并遵守Copyleft原则。这样就保证了Copyleft的传染性!


基于这个思想,RMS开始和其它黑客大牛,一起开发GNU,这个就是想把UNIX这个牛逼的网络系统重新写一遍,这样就可以让它符合Copyleft的原则。从而打破某些财团对软件的统治,这是一个崇高的使命,因此吸引了一些大牛程序员。


但是后来他们的开发却卡在了内核上,要知道内核东西是最重要的,而他们这群精英就是想用大教堂模式,从顶层上设计一个完美的内核出来。但是这件事的难度是非常大的,所以好多年都没有大的进展。

理查德·斯托曼这些黑客大牛们为内核发愁的时候,一个草根英雄忽然出现了。这就是Linux的创始人,林纳斯·托瓦茨。1991年,他还是一名芬兰的大学生,当时为了学习操作系统,编写了一个非常原始的操作系统内核,并且发布到了网上。这就是Linux内核。让人想不到的是,仅仅2年之后,Linux在稳定性和可靠性上已经和很多商业内核不相上下了。


一群黑客大牛很多年搞不定的事情,最后竟然让一个大学生搞定了,让人非常意外。因为Linux已经满足了GNU的需求,而且林纳斯也让Linux遵守了自由软件原则,所以GNU放弃了正在开发的内核项目,而是选择使用Linux内核。这个时候一个完全开源的操作系统就诞生了。


我们昨天安装的Ubutu就是它的一个子项目。但是为什么林纳斯能做到这些黑客大牛都做不到的事呢?作者ESR为此做了专门的研究,因为他也一直在跟林纳斯的项目,所以对林纳斯开发Linux的情况十分了解,他发现林纳斯用的是一种“大集市”的模式来进行开发的。和大教堂那种自上而下的顶层设计思想不同的是,它是一种自下而上的方式。


林纳斯每次发布一个版本,就会有许多人根据他的版本增加或者修改一些自己的想法,而林纳斯做的是把这些想法都保留,选择那些大家都认为靠谱的做主链,这和现在区块链的去中心化思想和最长链原则是何等的相似。


这样子的Linux就像一个可以自我成长的生物,通过对环境的适应而物尽天择,适者生存。所以这本书的名字叫《大教堂与大集市》其实就是讨论的这二种思维模式的不同。这种大集市的思维模式下诞生了世界上最大的开源社区github ,而github上诞生众多的开源好项目,包括BTC。


我们可以看到这种自下而上的去中心化协作模式,现在已经不只是在币圈流行,而是在各个方面,特别是在年青人中间。


比如在游戏上,有一种MOD模式,其实就是对游戏的一些修改,任何人都可以发布自己的MOD,这样就加强了游戏的可玩性。如是MOD最多的《上古卷轴5》还有很值得一玩的《骑马与砍杀》也有各种各样的MOD版本。


比如同人小说的流行,这种小说是用一些知名的游戏人物或者小说人物来去创造新的剧情和冒险,又比如在B站上流行的鬼畜视频。


还有SCP基金会,这个是一个知名的世界虚拟组织,它汇集了全世界最有创意的一群人,他们用编号来收容一些超自然的地点和生物。任何人都可以有自己的创意来创造一个超自然的地点和事件,一个超自然的生物,如果基金会大部分人认可你的创意,你的创意就会被编上一个号,收容在SCP里。这就像一个大型的虚拟游戏,但是随着人类对客观世界的改造能力越来越强,天知道里面的创意会不会真的被实现。


在B站有大量的,SCP的短视频,看起来很有意思,有兴趣的可以去看一下比如搜索SCP096,感受一下这种大集市的协作模式。


●以太坊智能合约学习007


今天先把清单列出,明天再来具体讲解吧


1.部署到Truffle

Truffle中文文档地址:

https://learnblockchain.cn/docs/truffle/index.html

1.安装 Truffle:

npminstall-gtruffle

2.新建项目文件夹

mkdirmyProject
cdmyProject
truffleinit

3.安装Openzeppelin

npminstall@openzeppelin/[email protected]

4.创建Token.sol

vimcontracts/Token.sol

pragmasolidity^0.5.0;import"@openzeppelin/contracts/token/ERC20/ERC20.sol";import"@openzeppelin/contracts/token/ERC20/ERC20Detailed.sol";contractExampleTokenisERC20,ERC20Detailed{
constructor()public
ERC20Detailed("CuiToken","CUI",18){
_mint(msg.sender,10000000000*(10**uint256(decimals())));
}}

5.编译

trufflecompile

6.创建文件

vimmigrations/2_deploy_contracts.js

constExampleToken=artifacts.require("ExampleToken");module.exports=function(deployer){
deployer.deploy(ExampleToken);};

7.部署到Truffle develop

truffledevelop

migrate

8.合约调用

varmyCoinExampleToken.deployed().then(function(instance){myCoin=instance})

2.部署到Ganache

1.修改truffle-config.js文件

vimtruffle-config.js

module.exports={
networks:{
development:{
host:"192.168.1.30",//Localhost(default:none)
port:7545,//StandardEthereumport(default:none)
network_id:"*",//Anynetwork(default:none)
},
}};

2.部署到Ganache

truffleconsole

migrate

3.合约调用

varmyCoinExampleToken.deployed().then(function(instance){myCoin=instance})

3.部署到Ropsten

1.安装HDWalletProvider

npminstalltruffle-hdwallet-provider

2.获取Ropsten测试币

获取地址:

https://faucet.ropsten.be/


3.获取MetaMask助记词


4.注册Infura,获取测试网或主网的KEY

地址:

https://infura.io/


5.修改truffle-config.js文件

vimtruffle-config.js

varHDWalletProvider=require("truffle-hdwallet-provider");//导入模块varmnemonic="opposesaypreventravenmysteryfiberprogrampupilpovertyelsepillenact";//MetaMask的助记词。module.exports={
networks:{
ropsten:{
provider:function(){
//mnemonic表示MetaMask的助记词。"ropsten.infura.io/v3/33..."表示Infura上的项目id
returnnewHDWalletProvider(mnemonic,"https://ropsten.infura.io/v3/e1bb25c2b20b4b5383517028056c89a3",1);//0表示第二个账户(从0开始)
},
network_id:"*",//matchanynetwork
gas:3012388,
gasPrice:20000000000,
confirmations:2,//#ofconfstowaitbetweendeployments.(default:0)
timeoutBlocks:200,//#ofblocksbeforeadeploymenttimesout(minimum/default:50)
skipDryRun:true//Skipdryrunbeforemigrations?(default:falseforpublicnets)
},
}};

6.部署

trufflemigrate--networkropsten

7.合约调用

truffleconsole--networkropsten

varmyCoinExampleToken.deployed().then(function(instance){myCoin=instance})

4.部署到主网

1.修改truffle-config.js文件

vimtruffle-config.js

varHDWalletProvider=require("truffle-hdwallet-provider");//导入模块varmnemonic_mainnet="主网助记词";//MetaMask的助记词。module.exports={
networks:{
mainnet:{
provider:newHDWalletProvider(mnemonic_mainnet,"https://mainnet.infura.io/e1bb25c2b20b4b5383517028056c89a3"),
network_id:1,
gas:3012388,
gasPrice:20000000000,
confirmations:2,//#ofconfstowaitbetweendeployments.(default:0)
timeoutBlocks:200,//#ofblocksbeforeadeploymenttimesout(minimum/default:50)
skipDryRun:true//Skipdryrunbeforemigrations?(default:falseforpublicnets)
}
}};

2.部署

trufflemigrate--networkmainnet

3.合约调用

truffleconsole--networkmainnet

varmyCoinExampleToken.deployed().then(function(instance){myCoin=instance})




吹牛币

终生学习,共同进步



02

社区动态



●YAS会归零吗?


AP不这么认为



因为YAS是条公链,现在如果SET项目能成功,也会让它被资本拉一波,所以我也不认为它会归零。它还有无限种可能,只要有人愿意在它上面来开发。


就算是牛油果这么多年,其实也还没有归零。



一个没有了使命、愿景的牛油果,一个没有AP的牛油果也还没有归零,现在我们还有UBI的使命,还有开发更好的去中心化交易所愿景的YAS公链,在AP的领导下,一定会走出低谷,拥抱更好的明天。



谢谢您的阅读



文章中提到的都是高风险投资品种,我是以归零的心态在持有,请不要模仿。以上文章里的内容不作为投资建议,鉴于您赚了钱不会分给我,所以笔者也不会对您的投资亏损负责!


我是收集牛币的牛币,希望以上观点对您有所帮助。



了解区块链从这开始(新人入口)

椰子社区专用词速查(传送之门)




今后文章主要以“吹牛币、学投资”为主题。


想交流的加V (lengjing2007)



—-

编译者/作者:牛币集了

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...