全部动态

89 条动态
Leo

关于产品经理的执行力和做事方式

第一个是关于自愈力,一方面是个人情绪的自愈,自己能安顿和消化挫败和郁闷,另一方面是团队能够扛得住挑战,学习能力强,迭代和修正的速度快。

第二个内容是决断力,一方面是要养成敢拿主意的习惯,另一方面则是学会快速给出较优解,而不是花很多精力去找最优解。

决策收集到 70% 左右的信息就可以动手了,如果要等到 90% 以上的信息才做决定,就意味着太迟了。不要瞻前顾后,很容易错失良机

对于决策来说,难的不是把每个决策都做到一百分,而是能够在单位时间快速做出多个八十分的决策。尤其是对于刚才说到的第二类决策,当断则断是很重要的

https://time.geekbang.org/column/article/22838

Leo

好的测试工程师

我有一次有机会跟一位非常优秀的测试工程师聊天,我问他好的测试工程师和一般的有什么差别,他告诉我其实执行测试的时候其实没什么差别,好的测试工程师之所以能又快又稳,是因为他们更擅长找出可能出问题的用例和流程。

他给我举例子,同样一个产品流程,让一个好 QA 和一般的 QA 各选三个用例做测试,好 QA 挑的三个用例可能都能测出 Bug,而那个一般的 QA 选出来的用例测完可能都是好的。所以你看,优秀的QA 测一天测完了,上线也没什么问题,一般的 QA 得全覆盖测三天,测完上线还可能出问题。

Leo

产品增长的套路?

当你在博客或书上看到某一个增长策略的时候,它通常已经过时了。

要对策略的失败有预期。这一点不仅仅与增长相关,所有的产品功能迭代都有可能无法达成预期。即便是顶级的产品经理,也很难保证自己的每个设计都例无虚发。

Leo

比特币也有智能合约吗?(开启比特币智能合约的「三把锁」)

原文标题:《开启比特币智能合约的「三把锁」》
受访者:王渊命(微博:@jolestar)
采访 & 撰文:李画(币信研究院特约研究员)

随着新的指令和算法的引入,比特币的多签功能正在变得强大。多签不仅是指多个人共同签名,保管一笔比特币资产;它还可以是多个条件「共同签名」,通过这些条件锁定和解锁比特币。

用条件决定资产的使用,其实就是合约的功能。当这个合约可以被代码表达并无需信任地自动执行时,我们称其为智能合约。因此前比特币核心主管维护人员 Gavin Andresen 说:比特币的多签功能已经可以完成以太坊上大部分有用的功能。

那么,比特币是如何实现智能合约的?比特币与以太坊的智能合约又有何区别?我们采访了对区块链和智能合约有着深刻认知的技术写作者王渊命,他曾任新浪微博架构师、QingCloud 容器平台负责人,现为某公链项目的首席架构师,他也是 BFTF 区块链技术联盟的发起者。

智能合约

一、比特币是否需要智能合约

Q:比特币需要智能合约吗?

A:需要。智能合约能够为比特币系统带来逻辑可扩展性,在不改变现有基础设施、基础架构的情况下,为系统增加新的功能,从而增强系统的能力。扩展性不只是指 TPS、容量和存储等方面。

智能合约的另一个作用是它能实现具有约束力的合同功能。它是一个定义各方权利和义务关系的协议,只不过是数字化的,且它的执行机制不依赖于现有的法律体系。

Q:比特币作为一种加密货币,为什么需要合同功能?简单交易它不就可以吗?

A:并没有所谓的简单交易,你为什么给我转账?无论是购物,或者是发工资或其他,背后其实都依赖于一个合同。在现实生活中,这个合同的执行是依赖于司法体系的,一方违约,另外一方可以起诉。只有货币而没有司法体系的约束,是没办法完成任何交易的。

那么在全球化的加密货币世界里,该如何构建这种合同的约束力?依赖于智能合约。智能合约将规则 / 法律通过代码表达并执行,用代码构建出一套约束力体系。

Q:比特币需要 DeFi 吗?

A:广义来说,所有的加密货币都属于 DeFi 的应用领域,因为 DeFi 的第一步是有货币。有了货币后,可以围绕货币定义怎么跟其它资产或者货币交换,如何借贷等等,加密货币里的金融相对法币体系的金融还比较早期,可探索的路还很长。

二、比特币如何实现智能合约

Q:为什么说比特币系统是支持智能合约的?

A:合约就是当我跟你做一个交易时,它能保证这个交易达成,也就是说它能表达某种条件,当条件满足时我才给你付款。能把这个条件表达出来,就可以认为它有智能合约表达能力。比特币的脚本(Script)是有智能合约表达能力的,可以把比特币的脚本理解成是一种智能合约。

那为什么比特币要通过脚本而不是把功能固化在链上?因为如果固化在链上,当用户 / 开发者需要某个功能时,就需要比特币开发团队去实现,然后再发布,然后推动整个链的升级,但区块链升级是个复杂的事情,弄不好就分叉了。

所以比特币只提供最基础的一些素材,相当于给你提供面粉,但菜怎么做留给你自己,你可以利用这些素材,根据自己的场景组合出新的东西,不需要依赖于主链的升级。这也就是我前边讲过的通过智能合约来实现逻辑可扩展性。未来是不确定的,智能合约可以看成是一种应对不确定性的策略。

上边是比特币系统本身对智能合约的支持,它是通过脚本实现的;还有另一类支持 / 实现智能合约的方式,就是通过比特币系统的侧链,在侧链上实现智能合约的方法跟在以太坊上类似。

Q:比特币系统是如何通过脚本实现智能合约的?

A:以太坊上的智能合约是直接用代码表达清楚的,什么条件下执行 A,什么条件下执行 B 等等,比特币上的智能合约不像以太坊那样直白。

比特币上所有的智能合约都要被转换成加锁、解锁的机制来实现,也就是说在脚本中,通过「key」或者是「哈希条件」把资产锁定,再加上一个「时间锁」(TimeLock)。无论是闪电网络还是 Arwen 协议,都是这样的机制,比特币将会推出的 Schnoor 签名之类的,也都是为了更好地去表达这个机制。

因此,实现比特币智能合约的核心就是怎么去加锁和解锁资产。

如果合约中所有的条件都能转换成 key、哈希条件、时间锁这三者来加锁和解锁,那么这个合约就可以用比特币系统实现。我把这三者分别称为签名锁,哈希锁,时间锁,比特币智能合约基本就是用这「三把锁」来实现的。

比如你从我这儿买一个音乐,这个音乐通过密码访问,那么在交易合约中,我把音乐的访问密码也变成其中的一个 key,如果要达成交易,这个 key 必须让你知道;而一旦你知道(你拿到音乐),钱就支付给我了。

Q:哈希条件和 key 有什么不同?

A:你可以理解成一个东西,它们的作用是一样的。哈希条件是我知道一个 value,把 value 哈希之后得到一个哈希结果。那么在合约中,就是设置一个条件,谁能在写交易的时候把这个哈希结果打进来,这钱就归谁。只要我有这个 value,就有哈希结果,也可以理解成有一个 key。

Q:简单而言,可不可以认为比特币的智能合约是通过多签加上时间锁来实现的?

A:可以,前边讲过用 key、哈希条件 、时间锁实现智能合约,哈希条件也可以当作多重签名中的一个 key 来看待;时间锁则是一个关于区块高度的条件。

Q:时间锁在实现智能合约中的重要性是什么?

A:时间锁很重要,如果没有时间约束的话,很多协议是没法实现的。正是因为现在有了哈希条件、时间锁,闪电网络这种合约才能跑起来。

比如说闪电网络,我们两个人共同出钱,把钱冻结到一个共管的账号里,然后在链下互相支付,当要去结算时一方不合作了怎么办?假设我们吵架了,你的钱你不要了,但我的钱我也拿不到。有了时间锁就好处理了,我设一个超时时间,过了超时时间钱就是我的,我就可以拿走了。

三、比特币与以太坊智能合约的差别

Q:对应于比特币用脚本实现智能合约,以太坊是用什么实现智能合约的?

A:以太坊有一个智能合约语言。其实比特币的脚本也可以理解成一种语言,只不过比较简单;比特币脚本执行也可以理解成有一个虚拟机,只不过虚拟机的实现比较简单。既然都是虚拟机执行指令,那么以太坊的改变在哪里?

我总结以太坊带来的主要改变有三点:

1. 以太坊虚拟机指令的表达能力更强。简单理解的话,可以认为以太坊提供的指令更低级,用低级的指令组合成高级指令,而比特币是直接提供高级指令,其指令是有限的。另外,以太坊支持跳转等指令,能表达出循环等逻辑,也就是大家常说的图灵完备。

2. 以太坊引入了 gas 机制。在以太坊上可以随意写合约逻辑,gas 机制保证最后执行的时候有一个上限限制,这除了解决停机问题外,还能限制浪费资源,让脚本的执行成本跟付出的费用间有个关系。

3. 以太坊上的合约有状态,而比特币上的合约不能有自己的状态。这代表着:第一,比特币上的合约是不能自己生成自己的状态的,比如说在这次脚本里输出一个东西,在下次脚本中使用是不行的,比特币的脚本都是一次性的,只对这个交易起作用;第二,比特币上的脚本是不能直接读取链上已有的状态的,比如时间锁依赖链上的区块高度,需要特殊指令支持,嵌入到脚本里的其他状态(通过 op_return 指令实现)更无法读取。

Q:图灵完备会带来什么差别?

A:其实以太坊也不是说真图灵完备,因为它有 gas 的限制,不可能用太复杂的逻辑。

图灵完备的好处是它的扩展能力更强,表达能力更强。因此以太坊提供的实验的自由度要远大于比特币,这也是以太坊上各种实验项目多的原因。

比特币是一种保守策略。我就这么多指令,我在别的地方先实验,实验好了,觉得需要支持这个指令,就增加这个指令。比如说为了支持原子交换以及支付通道,增加了哈希时间锁定协议,可以锁定一个时间段。

比特币为什么不扩充那么多指令?因为不同指令的资源消耗是不一样的,如果表达很复杂的脚本,执行这个交易的成本就会很高,会消耗资源、影响整个网络。

Q:合约状态会带来什么差别?

A:比特币的状态全是在链下生成的,就是说生成交易的时候就要把这个状态写好,链上只承载交易的数据,其它额外的数据写不进去。

比如你很难在比特币上发自己的币。在比特币上发的币都是染色币,染色币是在脚本里嵌入一些自己的数据结构,但脚本不能读嵌入的这个数据结构,所以也不能通过脚本对这个数据结构做验证,需要再做一个网络校验,看写进去的这个数据是不是合法的。

所有的染色币都是基于这个机制实现的,它不是像以太坊那样直接发一个 token,然后通过合约来校验。

比特币之所以采用这种设计,本质在于它是不欢迎其他的数据写上去的,因为对比特币网络来说,承载额外的数据是有成本的,这种数据还得永久保存,而用户只付费一次。所以比特币不提供自定义状态的存储,这不是它的路线,通过 op_return 嵌入自定义数据可以理解为一种 hack 行为,并不是比特币提供 op_return 的本来目标。

其实这能够看出比特币和以太坊在设计思路上的区别:你可以把比特币理解成一个中立的银行,它只提供资产加锁、解锁的机制,谁有钥匙资产归谁,它对其他的条件都不关心;并且每一笔资产都是独立的锁,它也不关心资产之间的关系。比特币的智能合约并不是一段代码,而是一系列操作锁的协议。

而以太坊的的设计思路是任何合约都可以表现为一系列的交易,后面的交易和前置交易的状态是有关联的,所以它提供一种通用的追踪和更新历史状态的机制,而更新状态的逻辑和条件就由用户自己去创造。以太坊黄皮书里的世界状态的公式很好的表达了这种思路。

这两种思路其实各有优劣,和设计者的目标以及对世界的抽象有关系。

Q:比特币和以太坊的智能合约还有其他不同吗?

A:UTXO 模型(未花费交易输出)与 Account 模型(账户)的不同,也会给两者智能合约的实现带来差异。

在 UTXO 模型中,每一笔钱都有一个标记,使用的时候需要明确知道使用的是哪一笔钱;Account 模型则相当于把用户所有的 UTXO 合并成一个大的 UTXO,使用的是这个默认的 UTXO。这带来几点不同:

1. 在 Account 模型下写合约比较简单,只需要说转多少钱,不需要指明转的是哪一笔钱;

2. Account 模型可以提前对未来的收益进行约束,也就说这笔钱还没到合约账户,但可以部署合约去约束它该怎么花;

3. 由于 Account 模型相当于合并 UTXO,所以转账时不能直接设置解锁条件,必须先部署一个合约。

当然,UTXO 模型和 Account 模型都是在演化的,有一些项目会对它们做出改变,有机会我会写文章详细分析。

四、比特币智能合约案例

Q:怎么理解闪电网络本身就是一种智能合约?

A:你可以说闪电网络是一个协议,也可以说它是比特币上的一种智能合约。闪电网络的合约主要解决两个人如何共同锁钱,以及如果一方作弊、不合作等等情况下怎么办的问题,它是通过前边说的三把锁来实现的。

Q:在闪电网络上实现智能合约又是怎样的一个过程?

A:闪电网络实际上是两个人之间的支付通道,现在只支持互相转账。我们尝试在支付通道之上嵌入了一个虚拟机,就可以执行比较完备的智能合约,比如游戏。(注:王渊命在闪电网络上 实现的 智能合约)

通道双方可以压一笔 BTC,然后去玩游戏,赢的一方得 BTC;如果玩的有分歧,可通过仲裁系统去仲裁。仲裁系统相当于一个法院,可以是一个侧链,或是一个双方信任的机构运行的节点,或者是仲裁者市场等等。仲裁系统保留了双方的解锁钥匙(哈希的 value),它仲裁之后把钥匙给赢的一方。

由于闪电网络的资产是定向的,所以仲裁者只能决定哪个用户得到 BTC,但自己不能拿走用户的 BTC,即便是有联合作弊的可能,但作弊成本要比托管模式高。

Q:通过闪电网络实现智能合约,与通过类似 Liquid 的侧链实现智能合约,有什么不同?

A:闪电网络上的智能合约是通道双方的链下节点执行的,互相校验,产生分歧时需要有一个仲裁系统来仲裁。而侧链本身就有共识机制,有多个节点来执行和校验合约,所以两者在执行机制上是不一样的。

在侧链实现智能合约的方式与在以太坊上实现智能合约的方式类似,但当它与主链协同的时候,需要通过比特币的加锁、解锁的机制。

结束语

作为加密货币,比特币似乎有能力为 DeFi 的发展提供一个更好的空间,因为它凝聚了最多的共识,也承载着最高的价值和流动性,它是最受信任的加密资产。

那么作为一种系统,比特币是否支持 DeFi 的实施?在本文中我们探讨了比特币智能合约的实现机制,并把它与以太坊智能合约进行了一些比较。比特币上的 DeFi 不仅是可能的,而且会随着多签功能的强大变得更加完备。

也许我们可以期待以比特币为核心元素的去中心化金融服务的到来。

来源链接:

mp.weixin.qq.com

https://www.chainnews.com/articles/770958451305.htm

Leo

转载:一篇文章让你了解什么是智能合约

当人们在讨论智能合约的时候他们到底在说什么?

在区块链和加密货币的语境中,智能合约的定义是:

  • 在分布式存储平台(例如区块链)上存储并复制的,
  • 在计算机网络(通常是运行区块链的同一个网络)上执行 / 运行的,
  • 并且可能引发账本更新(用加密货币付款等等)的,
  • 预写入的逻辑(计算机代码)。

……换句话说,智能合约是执行“如果发生这种情况就执行那种结果”的小程序,由大量计算机运行并验证以确保可信。

如果说区块链为我们提供了分布式的可信存储,那么智能合约就为我们提供了分布式的可信计算。

智能合约是将以太坊与其他区块链区分开来的功能之一。

这里我给出在现实生活中有效应用智能合约的以下三种典型场景:

1. 具有嵌入式指令的银行账户
2. 用计算机代码取代法律术语
3. 一个真实的智能合约示例

1 具有嵌入式指令的银行账户

银行账户的一些表现就像智能合约一样。每个月,我的银行账户都会自动从余额中扣除固定金额转给我的房东。如果我的银行账户中没有足够的金额,那么付款则会失败,我将会被罚款并触发另一套工作流程。

这是因为我对银行账户预先设置了指令。

这和智能合约所能做到的类似,除了区块链上的智能合约是由多方运行而不是由单方控制。

2 用计算机代码代替法律术语

智能合约是可以自动执行传统合约中的“如果发生这种情况就执行那种结果”的代码。计算机代码总是以预期的方式运行,而没有人类语言中的歧义。代码很少会有潜在的争议点,因此在这一点上比人类语言更好。代码被复制到分布式 / 去中心化的区块链(详见后文)网络中的大量计算机上并由这些计算机运行,这些计算机就代码的执行结果达成一致。

本场景中的想法是,你可以签订一般的纸质合同,在律师们喜欢的“鉴于”条款的最后加上一条,指出区块链上的智能合约,并说“双方同意运行并遵守代码执行的结果。”。

3 一个真实的智能合约示例

以下是在以太坊区块链上应用的简单智能合约代码:

以太坊智能合约示例。

Ethereum.org 解释了它的作用:

这个合约为合约的创建者生成一万个代币,然后允许有足够余额的人将其发送给其他人。这些代币是不能细分的最小可交易单位,但最终用户可以被赠予 100 个可细分为 100 个子单位的单位,因此拥有单个代币代表拥有总数的 0.01%。

这与银行自动支付有什么区别?

1 控制

银行是银行账户的最终维护者。它拥有完全的控制权,可以随意地向我的账户添加资金(哈哈)或者扣除资金(有趣的是,这确实发生了,我要申诉回来)。

在正确设置的区块链生态系统中,不应有单一的控制来源。具有共识机制的分布式架构意味着多方参与者不断地反复检验并更新账本,任何不符合预先约定规则的情况都会被其他参与方拒绝。

2 代码

对于银行账户,每月进行自动交易的逻辑代码位于一台计算机上,由单方(银行)执行。虽然存在着内部控制和对账,但却没有外部验证。

对于运行在区块链上的智能合约,逻辑代码在所有参与的计算机上并行运行,结果由所有参与者进行比对。只有当参与者都同意结果,他们才会更新自己的账本版本。理论上没有人可以欺骗区块链。

3 透明性

对于区块链生态系统中运行相同代码的所有参与者,每个参与者都参与验证,智能合约的逻辑必须对所有人都可见。这意味着任何人都可以查看智能合约,如果你喜欢这个逻辑,你就可以使用它。如果你不喜欢,你就不去用它。有一般用途的智能合约,也有专门用途的智能合约。透明性具有两面性。让合约的所有利益相关者对所发生的事情达成一致是很有必要的;但另一方面,不光是利益相关者能够看到发生了什么——而是网络上的每个人。区块链中的隐私是一个富有争议的问题。有很多关于解决隐私与验证之间矛盾的讨论,有些解决方案使用了零知识证明;这将是另一篇文章的主题。

4 灵活性

在银行账户中我能运行的逻辑仅限于定期付款,或者其他一些基本的事情——虽然我并没有完全调查清楚。例如,不能自动在晴天的时候从我的工资帐户转账到我的存款帐户,然后在暴雨天全部转回(“雨天存款”智能合约)。

所谓“图灵完备”的智能合约可以完成一般计算机可以执行的任何操作,尽管区块链版本的运行速度要慢得多,而且比一般计算机的运行成本更高(取决于区块链的设置),因为最终你需要为网络上所有并行运行代码的计算机付钱。

为什么智能合约这么有用?

正如我在关于区块链的文章中所讨论的那样,共享账本在存在多方的时候很有用,他们可能完全不信任彼此,各方都会对事件版本进行互相比对。

例如,当两家银行不经过结算所进行复杂的衍生交易时,这被称为“场外交易”或 OTC 交易。这是两家银行之间的协议,而没有第三方验证。这些交易通常是赌局——即类似于“如果年底之前发生这种情况,那么你付款给我,否则我付款给你”。

双方都有一份原始贸易文件(贸易条款和条件)的副本,也都有着对贸易外部依赖关系的各自视角。因此,他们都应该就交易的结果达成一致,即谁赢得了赌局。然而,事情并非总是如此。

当参与方不同意交易结果时可能会出现不匹配或“中断”,这是出于以下多种因素:

  • 对原始贸易条款的相互误解
  • 由于原始交易条款的多个副本导致的混乱(由于双方的内部律师都试图保护他们的利益,文件中通常会存在反复出现的措辞)
  • 或者对外部依赖关系中实际发生的事情产生分歧

利用智能合约,只会存在一套用计算机代码编写的贸易条款,这比法律术语轻量得多,并且事先达成了一致。外部依赖关系(石油价格、苹果公司股价等)可以由双方都同意的来源提供。合约将存在于区块链中,并在事件发生或赌局到期时运行。

赌注可以储存在智能合约本身之中:双方将他们的最大可能损失金额“装载”到合约中,然后在事件发生时进行支付。这可能比现有的流程更简洁,但仍然存在着隐私问题,其他区块链参与者可以阅读本合约并能够查看两个竞争对手之间的赌注条款。目前金融服务业的大部分交易都是通过信贷和保证金或者抵押进行的;需要以货币 / 资产的方式预先全额支付潜在支出并不具有吸引力。

目前的智能合约产品

现有的区块链可不同程度地运行智能合约。具体系列如下。

比特币平台非常适合处理比特币交易,但在计算能力方面非常有限。在比特币交易的脚本中实现富逻辑的能力非常有限。比特币可能实现的一个逻辑是需要多个签名者在支付前签署交易,例如支票中需要两个签名人。然而,要在比特币区块链上实现智能合约,需要对挖矿方式和挖矿激励方案进行重大改变。具体请参阅比特币简介。

侧链,即连接到比特币主区块链上的区块链,它可以实现智能合约功能:通过让不同的区块链与比特币并行运行,并支持在比特币的主链和侧链之间跳转,侧链可用于执行逻辑。

NXT 是一个公有区块链平台,其中包括一系列目前正在运行的智能合约。然而它不是图灵完备的,这意味着你不能为所欲为,而必须使用现有的模板。

以太坊是一个公有区块链平台,是目前最先进的支持智能合约的区块链。以太坊采用“图灵完备”的编码系统,理论上你可以将任何逻辑放入以太坊智能合约中,并由整个网络运行。以太坊有防止滥用的机制,你需要通过支付“ETH”代币来支付算力,这些代币用于支付给运行代码的矿工。具体请参阅以太坊简介。

疑问

去中心化是十分昂贵的。运行代码的计算机越多,实现最终目的就越昂贵。去中心化并不是免费的。如果你使用的系统具有 10000 台运行代码的计算机,则需要支付这些计算成本:计算机操作者不会免费提供这些服务。

在公共网络中,用户必须付钱才能运行网络上的机器。让系统中的每台计算机(“节点”)存储数据(例如区块链)并运行嵌入其中的智能合约代码要比只有一两个参与者运行代码要昂贵得多。目前,即使节点不试图挖掘区块,节点也必须计算所有内容,因为验证区块的唯一方法是自己运行代码并将你的结果与已挖掘的区块进行比较。

将代码写在区块链上无疑是非常好的,这样各参与方就可以确定他们承诺的智能合约是什么样子,然后可以各自运行代码,也许由交易的各方运行?这将节省计算成本。代码可以被矿工和节点视为普通文本,而不是需要执行的指令。

作为业内人士,我们需要能够阐明为什么去中心化数据存储和计算系统是有价值的。一个更高效更便宜的替代方案是由一个组织集中充当存储和计算平台的中心,用户 / 参与者可以登录并上传他们的智能合约,让交易双方签署这些合约,然后双方会信赖运行的结果。当然,这失去了去中心化的保证(包括不可篡改性等)。

智能合约的未来

这个行业还有另外一个秘密没有被提及:人们喜欢风险。在许多合约中,有些条款都是有意写入的,以便留有仲裁的渠道。例如,在一份房屋租赁合同中,租户造成的磨损是可以接受的,但是重大损坏需要赔偿修复。代码如何定义这些东西?不可抗力一词出现在许多合同中,以便为有关各方提供摇摆空间。在一个智能合约环境中,一方如何描述这一含义而不对其进行滥用或交由仲裁人员。这么多的灰色地带,需要弄清楚的东西如此之多……

最后,我丝毫不怀疑共享账本将在消除多方协议之间的信任需求方面发挥作用。智能合约降低操作风险对各方都是有意义的,并可被认为是没有特定的中心协调者而实现各方之间自动信任的一套工作流程。然而,使用方面还存在着一些障碍,就像一般的区块链一样。

怎样利用智能合约?具有前瞻性的律师事务所应该通过加强和建立内部的智能合约编码能力以在这方面走得更远。与法律相关的学生应该学习法律和计算机编程的双重技能。那些能够缩小法律与计算机科学之间差距的人将在不久的将来备受追捧。

本文转载自公众号云加社区(ID:QcloudCommunity)。

原文链接:

https://mp.weixin.qq.com/s/uL_fGwSZSRr-FOI6fPl_2g

Leo

用户增长 – 产品的 “啊哈”时刻

所谓的“啊哈”时刻,这是指用户在使用产品的过程中,在某一个情境和体验点上,突然意识到这个产品的价值所在,发现其中的奥妙,并为之眼前一亮的那个时刻。

这是一个感性和理性互相交织的顿悟时刻。很多产品会通过数据分析来定义这一时刻,比如在《增长黑客》一书中提到了 Twitter 发现用户关注 30 个人会成为留存的拐点,是因为 30 个人恰好提供了持续更新的信息,从而成为用户发现 Twitter 价值的“啊哈”时刻。

去观察用户怎样描述你的产品,可以帮助理解你究竟创造了什么价值。这一价值不是你定义出来的,而应当是从用户那里发现的。这一过程除了可以帮助我们更好地设计传播渠道和运营活动之外,还可以反过来帮我们重新定义产品范围。很可能你最终会做出一个跟初衷完全不同的产品形态出来。

虽然是我们设计的产品,但它活在用户的世界里,它是以用户的认知存在的。当我们从用户认知中重新认识自己的产品,并围绕着用户的核心动机去完善产品时,它便获得了生命力,这也是增长的前提和基础。

把产品比作帆船,其中帆可能是它品牌的名气、运营的手段或拉新的能力,而船体则是产品价值本身。船小而帆大则航行不稳甚至可能倾覆,船大而帆小则步履维艰甚至止步不前,增长的手段也一样,不要舍本逐末,把刷屏当做目标,它只是手段,产品价值本身才是目标。

Leo

关于产品调查问卷

调研中,尽量少提假设性问题
“如果能更有效地计算投资的风险与收益,你会委托我们管理你的一部分资产吗?”
“如果能保证你所购买的商品的真货率,你是否会更愿意在这样的平台购物?”
“如果我们做了一个新的(具体的)功能,你会愿意为此付费吗?”
类似问题的统计数据或许会给你一个还不错的数据,但事实上,结果可能不会是这样。

不要套路你的用户
比如,如果我们问“在当前房地产市场整体不景气的预期下,你是否认为买房是优质投资手段”,就是在描述中夹带了强烈的立场倾向。

《调查问卷的设计与评估》书中有个很有趣的例子,是讲酗酒问题的,调查者发现如果直接询问受访者他平时酒量的话,得到的数字会明显低于实际情况。因为用户会担心负面评价,所以会倾向于修饰自己的答案。
但如果在这个问题之前增加问题,先询问他身边最能喝酒的朋友的酒量,然后再问他自己的酒量。因为有了朋友的铺垫,受访者会感受到轻松(因为有喝得更多的人垫底),从而倾向于说出更接近实际情况的数字。

用户很可能会倾向于修饰自己的答案,以避免负面评价,或确认自己的身份认同,也可能单纯地不希望让研究者感到失望。这并不是受访者在有意撒谎,我觉得自己有时也是这样,回答问题的时候我真的是那样想的,但身体很诚实,不一定会像说的一样去行动,所以有时观察用户的行为会比单纯地询问他的想法更准确。

搜索回忆

输入关键词,找回某个瞬间。