树哥带你学习以太坊先导课
您好。
我是向着天空成长的树—天空树。
熟悉我的朋友都叫我—树哥。
在区块链是全新的行业,我也是一个不断前行的学习者。
在我自身的学习前行过程中,会发现这个行业处处都是坑。
具体的坑表现有:
觉得炒币能赚钱就好,不知道学习区块链技术有什么用
对未来知识有恐惧感,时常会有用自己有限的知识判断一个未知的世界。
对区块链的未来不确定,想法飘忽不定。
被一时的表象所迷惑,看不到区块链世界发展的大方向。
概念纷繁复杂,但没有多少人把概念说的清楚明白的。
糅合的知识点太多,知识体系没有概念搭建。
对于新知识,没有思维工具去分析解剖他们。
这些大坑,我是挨个不剩的全掉进去过,然后又一个一个地爬出来。
由于爬的坑多了,经验自然就多了起来。
就会有越来越多的朋友找上门来进行咨询和讨论。
我发现,现在市面上讲区块链的书、培训课汗牛充栋。
但是,能把区块链的相关技术讲得通俗易懂,让小白都能看懂、听懂的还真没几个。
很多培训,要不就是把几个概念来回倒腾,其实这些概念是否精准、准确都做不到。
例如:区块链是去中心化、可溯源、不可篡改的公开账本。这广为引用话是正确的吗?
它说的明明是区块链的一些特征,但作为定义不够清晰与准确,就会影响我们之后的学习。
很多培训,教一下别人一些所谓实操的炒币技能就告诉对方,学会区块链了。
“练拳不练功,到老一场空”,这样学习区块链永远都是在门外,进不了区块链的世界。
还有一些确实不错的培训,不过却讲课的老师过于技术化,课程晦涩难懂,学员纷纷瞌睡难忍。
学进去了,理解了、应用了才是我们自己的知识。
如何帮助大家避免跌入这些大坑是我首先遇到的问题。
我发现,学习区块链的大多都是小白的级别。
便做了一个培训区块链小白到精通的体系。
立志要用最通俗的语言,给小白讲清楚最精准的区块链知识点。
“用中学生能懂的语言,说清博士后要懂的道理”!是这个体系的根本要求。
同时,我也在作为专栏作家也在写文章和写书来帮助区块链中的小白来学习区块链世界。
《区块链思维》是朋友和我共创的书,探讨区块链的九大思维。
《区块链从小白到精通》书籍是我对帮助的数千人的一个总结,还在不断的总结完善中。
《树哥带你学习以太坊》是这个体系中很重要的一个部分。
其实,每个大坑的存在都有其必然性。
例如:能炒币赚钱就好,还有必要学习区块链的技术吗?
这个坑之所以存在,是没有想清楚区块链世界中的因和果。币价只是一个结果,而它的因就是区块链的这个项目本身。项目的存在又是通过对以前已有项目技术改良来解决需求的。是的,对技术不了解,天天跟着币价跑就是“缘木求鱼”,只会离财富越来越远。
例如:对技术有恐惧感,用有限的知识来判断一个未知的世界。
这个坑的存在,其实就是人懒于思考。5%的人真正在思考,10%假装在思考,85%的人打死也不思考。
首先,对于区块链这样的新兴行业,没有把它看成一个世界是最大的原因。
其次,不知道理解一个陌生的世界需要搭建一个知识体系,需要学习很多的基础概念。
说白了,这个大坑就是傲慢导致的。
是的,这些大坑的存在是因为我们对一些事情的底层还看得不够清晰。
也是因为我们对区块链技术的知识体系也没有建立。
我们对区块链的概念还做不到清晰与准确。
这也是很多人早期买到比特币但又拿不住的原因。--由于不确定趋势所以才不够笃定!
而我们现在即将进行的,一起躲避开这些大坑,一起面对未来在区块链世界成长。
在此过程中:
我们需要笃定认知到:
1.区块链就是一个全新的未知世界。
2.区块链可以极大促进经济发展。
3.区块链的世界必将和现实世界融为一体。
我们也将学到:
1.建立一个个区块链世界中清晰准确的概念。
2.搭建区块链世界中的知识体系大厦。
3.掌握学习新知的思维方法。
我们需要笃定认知
1、区块链世界是一个全新的世界
区块链就是是一个全新的世界。
当我们还没有走入到这个世界的时,
当我们远远瞭望这个世界时,
当我们听到或看到只言片语来描述这个世界时,
我们最常做的一件事情就是:
用我们有限的知识来判断这个未知世界!
是什么让我们错过的?
不是无知,而是傲慢。
因为傲慢,所以才会用有限的认知来判断一个未知的事情!
我就是这样的人,我时常为自己的傲慢而羞愧、而后悔。
我在想:
如果一直用有限的认知来判断未来世界的习惯的话,那么我们将来还会错过更多。
为了避免错过更多,我们必须放弃傲慢的心理,避免听到或看到只言片语就着急下结论的习惯,而是认真的面对它、了解它、学习它。
这是一个全新的未知世界。
不要奢望通过只言片语,看几篇似是而非的文章,听几场鸡血腾腾的讲座就可以了解。
那些都只是假象,就像一个幼儿园的小孩子会认知的世界不是一个全面的世界。
一个更加全面一点的世界是需要知识体系,基础的概念来进行支撑。
如果没有这些知识体系,基础概念,这个世界内外的人甚至是没有办法进行沟通与交流。
就像,你没有办法给一个幼儿园的小朋友讲清楚什么是方程,什么是函数一样,因为缺乏太多的底层概念了。
面对区块链这个全新的世界,难道我们愿意一直做这个世界的“幼儿园的小朋友”吗?
2、区块链可极大促进经济发展
很多人会问,区块链到底有什么用?
为什么说我们笃定区块链是未来的世界?
回答这两个问题之前,首先要回答:
促进社会经济发展的底层因素是什么?
我认为:促进社会经济发展底层因素就是“商品的流通效率”。
也就是说:由于“商品流通效率”的高低与否,决定了社会经济发展的速度。
我们看一下例证:
农业社会---物资有限,交通不便,商品流通效率极低。 发展用大概了2000多年。
工业社会—蒸汽机出现,商品大规模生产,火车轮船出现交通大幅度改善。发展大概用了200多年。
信息化社会—互联网出现,商品交易买卖达到秒级。发展大概用了20多年。
而其中,在互联网时代的一个极其伟大的发明就是资产证券化。
资产证券化的意思就是把公司的资产变成股票,其实买卖股票就是买卖资产。由于通过这样的手段,把资产进行了电子化,所以这个买卖资产、资产的转移就达到了瞬间的地步,这样极大节省物流、极大提升了经济的活力。
那么现在到了区块链的时代,它将如何提升商品交易速度?它将如何促进社会经济的发展?
我们先看一下互联网这么多年做了什么事情?
把信息搬迁到互联网——出现了新浪、头条;
把商业搬迁到互联网——出现了淘宝、京东;
把社交搬迁到互联网—--出现微信、QQ;
但由于互联的一个特点:
边际成本几乎为0。
也就是说,可以复制出无数份相同的电子产品出来。
所以虚拟世界中的电子资产没有办法实现唯一性,就相当于没有办法把物理世界的资产唯一性的对照到互联网世界。
而区块链恰好可以解决这样的一个问题。
区块链世界中的每个通证都是唯一性的,所以将物理世界的资产都可以想办法一一对应从而搬迁到互联网上。
实现了这一点,就代表全世界的实体资产和虚拟资产都可以在互联网进行交易、进行转让。
那么会多大的促进整个社会的经济发展啊?
3、区块链的世界必然和现实世界融为一体
笑来老师说:区块链必将吞噬掉整个世界。我非常赞同。
就像上文所说:我们互联网这么多年就是在把现实世界往虚拟世界进行搬迁。
我们搬迁了信息、搬迁了社交、搬迁了商业。
而区块链让我们真正能实现把资产搬迁到虚拟世界中。
让我们彻底将虚拟世界和现实世界融合。
目前的区块链与97年、98年的互联网非常相似!
那个时候,互联网还只是一个小水塘,很少有人在意。里面的BAT都也只是一些小虾米,无人在意。
然而,通过这些年的发展,互联网已经成长为整个世界了,里面的小虾米BAT也已经成长为巨无霸大鲸鱼了。
现在,区块链也只是小水塘而已,里面的项目和机遇也只是小虾米一样。
很多人都是不会在意的。
但是,区块链必将成长为整个世界。
里面的一些存活下来的小虾米也必将成长为像BAT那样级别的大鲸鱼!
在这门课中,您将学到什么?
1、建立一个一个清晰准确的概念
笑来老师说过:
如果脑子里的一个概念不不准确,或者没有准确、正确的定义,那么我们必然没有办法准确、正确地持续思考下去。进而产生的连锁反应是,因为定义不准确,所以思考范围模糊,选择依据缺失,进而行动错误,进而影响到我们的整个生活。
而在这个区块链的世界中,由于区块链是一个还在发展中的技术,很多方面还没有一个足够权威的定义,也就存在着众多似是而非的概念。
就以大家认知最广泛、引用最多的一个区块链的定义为例:
区块链是一个去中心化的、可溯源的、不可篡改的、公开的账本。
这个概念一个是足够广泛、足够深入人心吧?
不过在树哥看来,去中心化、可以溯源、不可篡改等都是区块链的显著特征,而非其本质。
比如:去中心化这个点,其实近两年是争论挺多的一个话题,开始会有非常多的人会对去中心化有执念,不过逐渐到了现在,这样的争论也越来越少,因为越来越多的人意识到,去不去中心化,需要看实际的应用需求,不是为去中心化而去中心化。如果将来某国央行利用区块链技术发行自己的电子货币,最大的可能还是中心化。难道在这种情况下,部署在区块链上的中心化的电子货币系统难道就不是区块链了吗?当然还是区块链。
也比如:可溯源这个点,是的比特币和很多的电子货币都是可以溯源的,可溯源也是区块链的一个大的特征、很多项目例如:艺术品的交易追踪、疫苗的生命周期的追踪等都是利用区块链的这个特征。但也会有像匿名币(大零币、门罗币)等的出现,它们最大的特点是不可追踪,可以隐藏交易双方信息、地址信息、交易数量等信息。
再比如:公开的这个点。其实也只是很多区块链的一些特征,例如一些公链项目,是需要把很多信息都要全网公开,但是一些联盟链和私有链那只能是有限的公开了,只给相应权限的人公开合适的信息这也是一个比较大的趋势。例如比特币的闪电网络、以太坊的雷电网络,都是要将一些小额交易信息直接链外处理,避免把所有的交易详情都公布出去。在我们当今的社会,泄露信息的地方比比皆是,如果我们的身份证信息上链之后,通过区块链的技术可以实现各个宾馆服务员只能看到她该看到的信息,而不会看到身份证号、家庭住址等这些敏感的信息。
最后,由于这个概念中会有“账本”这个词,所以很多案例都会以“账本”说事。由于区块链最早的应用比特币网络是一个账本,也是因为金融是比较容易区块链化的一个领域,所以很多人张口闭口都是账本。事实是,区域链将是一个底层的工具,必将和各个行业结合和改变各个行业,如果只强调它是一个账本,对于很多小白来讲就会弄不明白,“一个账本是如何解决疫苗跟踪的问题?” 就像互联网早期的时候,EMAIL是最广为人知的应用,但EMAIL也确实不是互联的全部一样,“账本”确实是区块链最广为人知的应用,当前也是最多的一个应用,但“账本”确实不是区块链的全部,并且随着时间的发展,“账本”应用的比重也会越来越小。所以,定义为“账本”可能会让小白在理解上会有误导。
一个清晰准确的概念是我们理解这个世界的前提。
当一个概念不够清晰、准确的时候,还需要附加很多额外的解释说明的时候,就不是一个好的概念。可能会对很多小白同学造成理解上的误解,会引入歧途。
而我认为的区块链的定义是:
最小单元的唯一标识化的分布式网络系统。
最小单元:也就是这个区块链网络token的最小单位,例如比特币中是聪。
唯一标识:区块链数据库和传统数据库中的最大区别,假设是以货币为例:区块链中的每一分钱都是有唯一标识的,就算是只有10分钱,每一分钱都是独立的个体,有着其自己的生命周期和流动体系。而传统的数据库中,每分钱和其它钱并没有任何区别,所以数据库中只会记载总数。由于有了这个标识,所以每分钱都成了独立的个体,都有了生命的周期,才是可以溯源的根本。当做不到每个最小单元成为唯一标识的时候,那么可以溯源就成了“缘木求鱼”,根本谈不到。
分布式:这又是区块链和中心化的网络本质的区别了。由于是分布式的,所以区块链就会具备很多分布式网络具备的特点了:全网的节点如何同步数据、多长时间同步数据、谁来为主广播要同步的数据?这才引申出了区块链中最重要的几个参数:区块大小、出块时间、记账共识等等。
当我使用这个定义后:最小单元的唯一标识化的分布式网络系统。
我发现整个区块链的世界都清晰了很多。
遇到一个区块链项目,我第一时间想到是,这个项目的用了什么东西,它的最小单位是什么?
例如:
有用积分,把每个积分变成了唯一标识(Token)然后把它的生命周期、流转过程都记录在区块链网络上,这就是一个积分的区块链项目。
把每一只疫苗,都做唯一的标识(token),然后把它的生命周期、流转过程都记录在区块链网络上,这就是疫苗的区块链项目。
把每一分钱,都做唯一的标识(token),然后把它的生命周期、流转过程都记录在银行间区块链网络上,那么银行间的对账就会简单轻松,这是一个货币电子化的区块链项目。
把每一只猫,都做唯一的标识(token),然后把它的生命周期、流转过程都记录在以太坊区块链网络上,这就是曾经火爆到堵塞以太坊网络的迷恋猫游戏区块链项目。
为了说明概念含混的是普遍的现象,我另外举个案例:“智能合约”。
时常有小白来问树哥,这个智能合约是怎么实现的智能? 这个区块链项目不是合约啊?能不能叫“智能合约”呢? 首先,我们先看一下百度百科和维基百科里关于“智能合约”的解释。
百度百科:“智能合约”(smart contract):是一套以数字形式定义的承诺(promises) ,包括合约参与方可以在上面执行这些承诺的协议。---1994年尼克·萨博(Nick Szabo)(跨领域法律学者)
维基百科:A smart contract is a computer protocol intended to digitally facilitate, verify, or enforce the negotiation or performance of a contract. Smart contracts allow the performance of credible transactions without third parties. These transactions are trackable and irreversible.[1] Smart contracts were first proposed by Nick Szabo, who coined the term, in 1994.
请注意两个关键点:
1、这是1995年提出来的,那会儿还只是互联网的早期阶段,区块链的概念远未诞生。
2、提出的人是一个跨领域法律学者,是想通过计算机解决法律问题。
可以看出,当初“智能合约”的概念是通过计算机解决法律合约执行的问题。
那么,当前大家谈的“智能合约”还是当初的这些含义吗?
当区块链世界引入了“智能合约”这个概念时,它的概念已经发生了种种变化!
当前谈的**“智能合约”,都在区块链范畴内讨论。
“智能合约”已经不局限在“合约”本身了,其它类的应用都可以称之为“智能合约”!
谈到第一点,我们现在“智能合约”因为是部署到区块链上,所以需要很具有“区块链特色”。
谈到第二点,“智能合约”可以是合约,当然也可以不是合约。当前很多描述“智能合约”的文章还把“智能合约”局限在“合约”上,是不准确的。
当前的定义是:
“智能合约”:是区块链系统上的应用,是可执行的代码。
当我们这样重新定义后,就会发现,其实只要部署在区块链上的程序都可以称之为“智能合约”,而不再纠结于其是否是合约本身。
既然其就是区块链上的一个应用,一个代码而已,那么它就一定具备这一些程序代码的特征,这个代码加上一个壳(UI:用户交互界面)就是一个APP。
既然是区块链上的,那么它也一定具有区块链本身的特点,区块链是分布式的、去中心化的,所以智能合约就是去中心化的、分布式的APP。所以它的英文是:Decentralized application。(去中心化的应用)。
我们阅读的众多文档中,也会发现其它的似是而非的概念没有梳理清楚了,例如:
图灵完备:在可计算性理论里,如果一系列操作数据的规则(如指令集、编程语言、细胞自动机)可以用来模拟单带图灵机,那么它是图灵完备的。
拜占庭将军问题:含义是在存在消息丢失的不可靠信道上试图通过消息传递的方式达到一致性是不可能的。因此对一致性的研究一般假设信道是可靠的,或不存在本问题。
当我们直接看这些定义时,我们会无所适从,不知所云。
树哥会带领大家通过分析以太坊,来不断帮助大家厘清区块链世界中的一个个概念,它们是区块链世界的基本元素,正是这些元素组成了整个区块链的世界,所以当我们真正理解他们之后,我们就真正地踏入到了区块链的世界之中了。
2、搭建区块链世界中的知识体系
碎片化的知识是没有价值的,只相当于知识的小饼干。
碎片的知识最多是一些知识的小饼干,吃了它们的那个刹那可以让我们有一种获取营养的感觉;当别人谈到这个话题的时候,我们也可以说出几个“金句”,让大家为之赞叹,获得小小的虚荣心。除此之外,没有太多实际的价值。真正有价值的东西,是我们成体系的知识体系,当我们的体系搭建好了之后,我们才相当于具备了储备知识的容器。
就像我们一开始提到的,到区块链的世界中,我们必须搭建自己的知识体系大厦,否则只能流离失所,四处流浪。
当我们有了这样的骨架之后,新学习的所有的知识才能逐渐挂上去,但如果我们没有自己的区块链知识骨架,而只
是热衷于四处的获取知识的小饼干,那么对我们自身学习不仅无益,反而极其有害。
要想接水,我们至少必须先有个盆子。而我们用筛子是接不了水的。
是的,我这里的盆子就是我们的知识骨架,而我们的知识就是我们的水。如果没有知识骨架,最终这些知识是留不下什么的,很快便会流走的。
而我们是通过如下的手段来搭建知识体系的:
总分总的结构,来介绍搭建我们的知识体系。
第一部分,我们会介绍区块链的底层的概念。
在这个部分中,我们介绍区块链世界中最基础、最核心的概念
介绍区块链的发展简史,介绍区块链的生态。
介绍一下区块链世界中最最核心的底层:P2P网络。
第二部分,我们会介绍以太坊网络的核心部件。
在这个部分,我们会大量的提及比特币网络,通过与比特币网络的对比,
让学员更加深刻的了解区块链的基本参数:区块大小、出块时间、共识机制等等。
更重要的是深刻了解每个参数出现的原因,和产生的结果。
其中,在这个块内容中,我们也会提及为什么以太坊采用账户体系,而比特币采用的是私钥、公钥、地址的这种体系,原因在哪里?
从而也会引出以太坊的虚拟机的概念,告诉大家为什么说比特币网络是图灵不完备,而以太坊网络确实图灵完备的?
第三部分,我们会分析以太坊的商业模式。
以太坊通过以太币和GAS来维系以太坊的发展,我们会详细分析以太坊运行的商业模式。
不仅如此,在以太坊上运行着上千款的应用,我们会帮助大家来分析这些应用的商业逻辑,帮助大家来分析如何通过以太坊搭建自己的商业应用。
挖矿行业是一个巨大的产业,以太坊的专用矿机也越来越多。在第三部分,我们会讲解一下挖矿的原理,挖矿行业的生态、以太坊的挖矿情况。在这一块您可以了解到:当前的各种挖矿哪些是真、哪些是假,靠谱还是不靠谱等等。
第四部分,我们分析以太坊的智能合约。
近两年是底层公链爆发之年,而这些底层公链就相当于区块链世界的操作系统。
以太坊作为最早提供“智能合约”的底层公链,是非常具有研究意义的。
鉴于大多数读者不懂编程,我们将不涉及任何的代码,全部都关于功能上的分析。
在这个部分,将分析智能合约、在以太坊上的发币的功能分析、游戏部署的分析等,还有具体的智能合约部署过程。
第五部分,将做一定的查漏补缺和问题答复。
以太坊最为诟病的拥堵是什么原因?
介绍几次以太坊拥堵的过程。
介绍几种不同的解决以太坊拥堵的相关方案。
3、学习掌握学习新知的思路和方法
学习了解思维方式和方法,是在今后智能时代赢得胜利的唯一方式。—吴军
吴军老师曾今说过,思维的方式和方法比知识点本身更加重要。在我们的这次以太坊的讲解中,我们也会把遇到新知识的的学习、分解的方法告诉大家。
任何一个技术都不是凭空出现的,都是为解决一定的问题而出现,而且大多数情况下,这个技术出现后也会往往也会是解决旧的问题带来新的问题。这也是大多数技术不断出现,不断优化的根本原因。
而真正要想了解到为什么出现这么多的技术流派,每个技术流派之间的差别,就需要把自身置换到技术产生时候的场景中,了解当时真正的痛点,就会了解这个技术的前世今生。
就像我们之前提到过的图灵完备,如果单从“实现图灵机的所有功能”这个概念,也会困惑于什么是图灵机。
但是,如果你了解如下的故事,可能就会更加深刻的理解“图灵完备”!
1900年,数学家希尔伯特提出了数学方面的二十三个问题,其中第十个问题是“数学是否所有问题都是可计算的吗?”
一个叫图灵的科学家回答了这个问题:“数学问题中只有一小部分是可计算的,而这一小部分中可计算的问题中,又只有一小部分用一种机器通过有限次的运算可以计算出来”。
其实,这个机器就是我们现在使用计算机的抽象模型,简称图灵机。
计算机之父冯诺依曼就是受到图灵的这个启发而归纳出计算机的模型:输入、输出、运算、控制、存储的。
而能实现图灵机所有的功能的语言、集合或者设备都可以称之为“图灵完备”,而像比特币网络那样为了保证网络的安全而限制掉一些功能的系统,就可以称之为“图灵不完备”。
接下来,就让我们结成战队,了解各种概念、掌握各种工具,踏入到区块链的世界,来建立起我们自己的城堡。
祝:学有所成
附录:课表(由于课程时常不同,会灵活调整每部分所占课时)
网友评论