Hsiao-Wei Wang:明明颜值在线,偏靠一手代码行走江湖

虽然久闻大名,但第一次见到Hsiao-Wei Wang却是在不久前的香港。

西铁线驶过人群鼎沸的尖东一路向西,在另一个大的人流交汇处荃湾的一个不大不小的会议酒店。以太坊核心开发者汇集于此,人们仰望的技术大牛,或者说精神支柱,依次上台。

Hsiao-Wei Wang也在其中,如果不算致辞,Hsiao-Wei Wang应该是第三位出场的嘉宾,与Karl Floersch同为「以太坊核心研究者」。

熟悉以太坊开发的人都知道,这些年只要以太坊开发者聚集的地方总能看到这样一道倩影。她声音不高,看上去甚至有些柔弱,但一谈起那些连开发者看到都眼晕的技术话题和公式,总会让人感受到她的坚定和爆发力。

她所研究的Sharding技术是以太坊目前最看重的方向之一,连V神也曾说这个会长远来做,这么重的单子交给Hsiao-Wei Wang可谓任重而道远。但她又有程序员的那种独有的轻松与个性,比如在决定是否接受我采访的时候,她提出的唯一要求是「不要谈两岸关系」。

那么,Hsiao-Wei Wang究竟是个怎样的人?她的技术之路又是怎样的?这个明明可以靠脸却偏偏要拼实力的妹子背后,又有哪些不为人知的故事呢

今天,就让我们走近Hsiao-Wei Wang,听她聊聊自己与以太坊及区块链的那些事。

以下内容根据与Hsiao-Wei Wang对话整理。

“我很勇敢也很熊”

Q:请介绍一下你的个人背景及经历。

A:我原本是后端工程师,大概两年前一头栽进区块链。在去年看到Vitalik 在找对以太坊研究有兴趣的 contributor(贡献者)后自告奋勇,目前持续在sharding(分片技术)的研究与开发。

Q:如果用几个关键词来形容你自己,会是哪几个?

A:出乎意料的勇敢、诚恳、熊。(黑人问号……)

在有限的范围内,我觉得「人生只有一次啊」,所以会做出一些相对冒险的选择;

而诚恳比较像是一个目标,不知道达到了没,但真的有在努力中(笑);

熊则是一个不知道帐号要取什么而加的symbol(特点),棕熊猫熊白熊都很美丽。

Q:最近的主要工作有哪些?目前最关心的技术有哪些?

A:主要有:Casper/Shading/Beacon chain Spec的review与PoC实作,以及Sharding P2P networking 的研究,还有一些Devcon4的事务,喔,Devcon 4会很有趣的。

至于最关心的技术,当然还是Sharding,然后因为最近Sharding与Casper从好朋友变成超级好朋友了所以也很关心Casper。还有在补足Algorithmic Game Theory(算法博弈论)的知识。

美女开发者眼中的以太坊

Q:你从什么时候开始接触区块链?当时对这门技术有怎样的看法?

A:好几年前听过比特币的存在,但实际研究技术是大约两年多前。至于看法,只能说相见恨晚。看过比特币白皮书后觉得自己被中本聪的协议设计巧思震慑,第一次感受到到能够用工作量证明来达到机率性的共识时很惊艳。

Q:区块链技术最让你着迷的地方是什么?从事区块链开发对你有哪些影响?

A:最着迷的是去中心化应用的可能性!听起来很梦幻,但真正有turning the world upside down(改变世界)的潜力。

对于个人影响的话嘛,很高兴认识了很多世界各地有趣的人!要学着从不同的角度思考问题才能理解不同角色的行为。然后英文应该变好了一点点,吧(笑)。

Q:你从什么时候开始研究以太坊?你所研究的分片技术会有哪些改变?

A:我大约一年半前拜读以太坊的黄皮书,开始熟悉EVM 架构和撰写智能合约。后来对可扩展性问题有兴趣,开始专注在以太坊分片(Sharding)研究上。

当时我看到的第一个版本是Vitalik 写的basic sharding(基础分片),这个版本很简短,但其中已经有异步跨分片交易的轮廓。之后 Vitalik 把这个版本再简化成另一个版本,并加上了无状态客户端(stateless client)与账户抽象层(account abstraction)的设计。

今年的第一个重大路线改变是第一阶段改为只有数据层,此一改变使得我们专注在可行的扩展方案的设计。在过往的设计中,shard chain 类似于目前 Ethereum PoW的侧链。

今年的第二个重大改变则是以全新的一条类似Dfinity beacon chain 作为 sharding 设计的核心,也大幅改善了随机数产生器的设计。当然,最重要的进展是 Casper 与 Sharding 的路线合并,这点对 Sharding 路线的影响较没有对于 Casper 那么剧烈。但对我们来说,新路线整合了同一个 PoS 设计是相当合理的,同时也减少了目前大家正在使用的 PoW主链的向后兼容。

我认为,以太坊作为公链的领头羊之一,若要同时顾虑现有生态的经济议题、治理议题(governance)、扩容议题等。大幅更新的步调不易加快,但社区的活跃度和精神文化是以太坊的资产,社区的支持是最大的动能。

Q:作为以太坊的研究者,你怎样看待这一平台?从技术上来说,你认为以太坊的优缺点各是什么?

A:我很喜欢以太坊的设计哲学中的「平台一般性」(Generalization)这点。以太坊的优点是兼容并蓄,但相对来说,若是使用智能合约自行开发提供特定功能,使用者付出的成本(这里是 gas)会比其他原生链就支援此功能的成本高,而且若要新增 precompile 指令也不易维护。

此外,目前多个client 端同时开发的特性也是把双刃剑,一方面要维护各个client端之间的共识,测试一定要够完整,才不会因为代码 bug 问题而导致分叉。但多client同时刺激产生更多元的生态系,更多人在检验EIP可使协议更完备,且降低了 single client fault 的风险。鉴于此,整体而言我相信是利大于弊

Q:作为以太坊核心开发者,在你看来以太坊的开发者最大的诉求有哪些?

A:主要有两个:扩容性和可用性

扩容性,是希望平台能支持高TPS且不堵车,这点由 Sharding 和Layer 2扩容解决方案,研发努力中。

而可用性目前要能开发优秀的智能合约应用,必须要通彻地理解EVM 才能彻底确定合约的安全性,这方面很多对于智能合约开发者的「陷阱」,希望有更好用的工具能降低门槛。

从3个阶段理解Sharding技术

Q:你如何看待「Sharding会牺牲掉部分的去中心化特性」这一现象?除了Sharding之外,还有哪些适用于以太坊的「扩容」技术方案?

A:假设一开始有1024 个 shard chains,虽然有投票权的验证节点(validators)会被随机取样去验证(attest)各个分片,即 Validator 无法自己选择为某个 shard chain 投票,但其他 full node 是可以选择只和某些 shard chain 同步,有可能一个特别火红的应用只在某一分片上有,导致有大分片和小分片的差异。

还有一点是成为PoS 验证者的门槛,这方面已从 deprecated Casper EIP 1011 的1500 ETH 降为新 spec 上的 32 ETH。 除了 Sharding 以外,Layer 2 的扩容方案有像是 state channels、Plasma 等。

说到其他解决方案,今年值得注意的是STARKs 在扩容上的应用研究更加深入,透过 STARKs 技术为链下的运算建立可快速验证的证明,它除了能作为 L2 扩容应用,在 Sharding 的研究上也有所帮助。

Q:Vitalik曾说Sharding是一项长期的技术改进,这一改进大致会分为几个阶段,不同阶段以那些进展为特征?

A:我们现在处在的是「第零阶段」,即Beacon chain实践,这一阶段的前提是加入与 Casper 的整合。Beacon chain 会是 Casper FFG PoS 与 Sharding 的核心链,以协议提供健全的链上随机数生成机制,作为选出 shard chains 验证者的 seed,达到足够的安全性。

从长远的计划来说,Sharding也可以被划分为几个阶段。

第一阶段是,只有数据层的分片达到扩容,此时shard chains 为PoS主链 (即 Beacon chain)的侧链。这时我们能做到类似「去中心化的Twitter」 之类的服务,但因为没有「transaction」的结构,Layer 1 应用有限,可能只能用 Layer 2 技术做复杂的应用。

第二阶段是,加上下一代状态执行引擎,例如eWASM 能改善一些现有 EVM 的缺点;后续会再加上「跨分片交易」,目前这个实现有多种方案,但尚未达成定论。

最终的目标是,PoS主链(Beacon chain)与shard chain能有完整的 tightly-coupling,即如果主链区块关联到的分片区快是非法的,则这个主链区块也是非法的。

除此之外,社群的意见也很重要,相信这会在第一阶段测试链上线后更加清晰,我们也会因应实际状况修正路线。

Q:你认为作为区块链开发者,最难的部分是什么?

A:是在「先求有再求好」和「设计到天衣无缝后再动工」这两件事上取得平衡。

一个是主链的大的升级只能靠硬分叉,如果没有在最初就精确地设计,硬分叉程序也会很丑很痛苦……甚至根本无从更新。比如说像是对目前 State Merkle Patricia Trie 的改进优化,如果要在已在主网上运行的链上大刀阔斧的改,想必是太刺激的事。

但另一方面,我们也亟欲了解社区用户对新设计的看法,况且纸上谈兵和现实世界还是有一段距离,因此,光是Casper FFG family 上就有许多版本的 proof-of-concept。

现在的Ethereum 2.0 也是,目前正一边完善设计一边开发中着。由于 shard chain 是全新的子链,我们有了重新设计基础协议的机会。正因为我们有信心 Ethereum 2.0 将会长远运行着,所以在初始阶段的设计决策很重要。

Q:你认为目前从事以太坊或Sharding相关的开发者普遍存在的思想误区有哪些?

A:嗯,之前有看过有人觉得Sharding 和 Layer 2 扩容方案是竞争关系,其实不然,Layer 1 和 Layer 2 方案可以互相学习,相辅相成。第二点,不是所有现在的应用加个「区块链」和「去中心化」就会变的好棒棒,很多时候是根本没有意义的,请不要这样!

转自微信公众平台:区块链大本营 阅读原文

为您推荐

发表评论

3条评论

  1. Pingback: i99 casino
  2. Pingback: ms88ca