UML软件工程组织

透明原则(软件业务)
Eric Sink SourceGear 软件工程师
 摘要:Eric 声称如果 ISV 不愿意信任其客户的话,它们将没有任何客户。(本文包含一些指向英文站点的链接。)

亲爱的读者们,再一次提请你们注意,我并不是 Microsoft 的员工,我是在过去一两年察觉到这一点的,世界已经从 Microsoft 开发工具组看到了一种不同的姿态。它们已经开放。这一运动的时髦叫法就是“透明”。有人告诉我促进这一观念的领导直接来自负责服务器和工具的高级副总裁 Eric Rudder。

从许多不同途径都可以看到这一透明观念,包括他们的社区技术预览和产品反馈中心。但最明显的变化也许要数各种 Microsoft 迷们无处不在的网络日志了。在那不久以前我习惯性地每天阅读一位 Microsoft 员工写的每一篇网络日志。今天的 Microsoft 网络日志竟然如此之多,我根本没法全部阅读。只有 Scoble 能阅读那么多材料。 :-)

在本专栏中,我想仔细研究一下透明这一概念,讨论为何即使是对一个小的 ISV 来说它也是很重要。

 本页内容
  卖软件的魔术
 1. 拥有网络日志
 2. 提供基于 Web 的论坛
 3. 不要隐藏产品的问题
 4. 不要惹怒诚实的人们
 5. 提供轻松的演示版下载
 6. 提供退款保证
 7. 共享一点您的财务状况信息
 8. 谈谈您的未来规划
  您可能想保持不透明的方式
  实践我所鼓吹的东西
  实质问题

卖软件的魔术
 如果您认真思考 ISV 的本质,您会发现卖软件是多么神奇的一件事。纵观有记录的历史,大多数产品都是有形的。当我买土地的时候,我可以在上面种植谷物。当我买台锯的时候,我可以使用它将木板锯短。当我买一件橙色的衬衫时,我可能是穿戴整齐,要去观看伊利诺伊州篮球比赛。这些产品都是有形的。

相反,软件则是数字形式的知识产权产品,不过是一串刚好按某种正确顺序排列的字节而已。实际上,在 SourceGear,我们的大部分销售根本不涉及任何物理的东西。金钱流入我们的 T-1 线路,产品则从其中流出。有时看起来就像魔术。客户买了一些完全无形的东西,而付给了我们真正的钱。

然而,正如谚语所说,树上不会长钱。无论客户是买软件、枪支还是黄油,所有产品购买者在做出离别他们的金钱的痛苦决定前都需要对产品拥有一定程度的信任。作为客户来讲,对不同种类的产品需要感受到不同的信任程度。买汽车是一件信任度很高的交易。买纸夹呢?不需要多少。

我注意到,买软件靠近这个区间中的“高信任度”一端。当人们从您的 ISV 买软件时,他们期望于您的东西很多,既有对现在的也有对将来的:

  • 他们相信您的产品会在他们的计算机上工作。
  • 他们相信如果他们遇到问题您会帮助他们。
  • 他们相信您会继续改进您的产品。
  • 他们相信您会向他们提供一个合理而公平的价格,以获得那些改进的版本。
  • 他们相信您不会很快终止业务。

    因此,通过要求客户为您的软件付钱,您会要求很多东西。您希望他们信任您。但是您对他们信任多少呢?

为了表明我的意图不是要将此比喻引申太远,我将 ISV/客户关系与两个人之间的关系进行比较。如果没有“相互”信任,关系就没有作用。如果一方希望得到信任但却不想给予信任,关系自然会失败。

因此,我经常会看到一些软件企业家根本不想信任他们的客户。的确,信任别人会使我们易受攻击。就像人际关系一样,信任是一种风险。我们可能受到伤害。但如果没有信任,关系就根本不会起作用。

透明是一种 ISV 对客户的信任方式。通过让客户看到公司面纱的背后,您扩大了对他们的信任,也使他们更容易反过来信任您。

在美国中西部地区有一个名叫 Steak-n-Shake 的连锁餐馆,看上去似乎理解了透明的含义。它的标语是“In Sight It Must Be Right”。其理念是如果您让顾客观看您准备饭菜的过程,你就不会不慎将一些奇怪的东西掉到饭菜里了。

如果觉得这还是没什么意义,请忍耐一下。在下面几节中,我将讨论 ISV 可以通过透明来信任其客户的八种途径。

返回页首

 1. 拥有网络日志
 当我作为另一家 ISV 的客户时,我希望查看网络日志:

  • 我不想听那些传统的经过处理的营销声音。我想听真实的人们以第一人称讲述他们的公司及其产品。
  • 我对引用一小段 CEO 的话的新闻稿件没有兴趣。我希望整件事都引用 CEO 的话。
  • 我不想听那些其工作就是向我介绍的人们的话。我想阅读由产品的实际开发者写的材料。
 网络日志给我提供了一个看到产品背后的人们的途径。

网络日志并不总是合口味 - 这是我需要澄清的。很多网络日志是那些因生活所迫需要向世界倾诉的个人写的。其他人保持写网络日志则是谈论他们的宗教或政治观点,或通过张贴他们家孩子的日常照片形成一个延伸的家庭。这些不是我心目中的那种“日志”。

我在这里推荐的是大多数人称为“公司网络日志”的风格。目的是向外界提供对产品背后的人们的一种个人一瞥,但不要“过于”个人化。可以让人们知道您是谁,但大部分仍停留在主题上。主要是写您的公司和您的产品,而不是您的生活的秘密细节。

如果您是在一家小型 ISV 工作,请考虑写一篇网络日志,但请一定按您自己的观点写。写好网络日志比看起来要难得多。它需要付出大量时间和努力。但当它完成时,一篇网络日志可以成为使您的公司更透明一点的优越途径。

返回页首

2. 提供基于 Web 的论坛
 您和您的客户一道构成了一个社区。您想要什么样的社区?您想居住在一个每个人都呆在家里观看《法律与秩序》重播的环境里吗?或者您还是愿意来到户外,享受一下空气,称赞一下邻居的草坪,然后再同情一下燃气价格呢?

您可以为您的客户做的最容易、最好的事就是为他们提供一个让他们说话的场所。人们喜欢说话,特别是当他们有某种共同感受的时候。一个简单的基于 Web 的论坛就可以提供一个这样的场所。

这种论坛的伟大之处在于它允许出现两种沟通:

  • 首先,您的客户可以向您说话。当他们需要帮助时他们可以向您提问。他们可以告诉您缺陷。他们可以请求新特性。恼怒时他们可以抱怨。
  • 其次,您的客户可以相互交谈。当您的产品使他们烦恼时他们可以得到同情。他们可以互相帮助。
  • 当一切正常进行时,结果会对您和您的客户都有很大好处。活跃的社区将提高您的产品的整体吸引力。
  • 但是,实际的社区是一个奇怪的东西。您无法强迫使它出现,但您无疑可以防止它发生。基本原则是提供基础设施并清除障碍:
  • 让人们易于张贴评论或请求。使用不会阻碍每个人的好的论坛软件。
  • 鼓励您的公司内的每个人积极参与。如果您的开发人员积极参与讨论,社区运转状况就会更好。
  • 做一个温和的调解人。删除个人攻击或者离题万里的材料,但不要仅仅因为抱怨您的产品而删除帖子。(如果他们抱怨,那是因为他们关心,您也许确实存在那样的不足。让他们抱怨,并将您的产品做得更好。)

顺便为我在 Telligent Systems 的好友做一下免费广告。如果您需要好的网络日志或论坛软件,他们就有。(我没有连接到该公司。)

为您的客户提供一个谈论您的产品的场所,即使您并不总是喜欢他们所谈论的内容。这是向他们展示您的信任的好方法。

返回页首

3. 不要隐藏产品的问题
 正如我在上面提到的那样,软件客户一般都想知道产品在将来会得到稳步改进。

当然此规则也存在一些例外。上周,我花了 20 美元买了一个计算机拼字游戏。对于这种情形,未来升级对我并不重要。我只想按现在的形式玩这个游戏。除非我发现某种可怕的缺陷,否则我不会真正希望该供应商会在什么时候给我提供升级。

但大多数软件产品不是这样。人们从我们这里购买 Vault 时,一般都会询问有关该产品未来情况的问题。他们打算将我们的产品使用很长时间,他们只是想知道我们将一直改进该产品。

但用户并不只是希望您保持改进产品,他们通常还特别关心产品将“如何”成长和成熟。他们希望得到保证,即产品将会越来越“深”,而不只是越来越“广”。我如下定义这些术语:

1.产品吸引新用户,就是变“广”。

 2.产品更好地为现有用户服务,就是变“深”。

 使产品变广的一般途径是添加更多功能。达到一个全新的客户领域通常意味着产品添加了全新的功能。例如,我们目前正在为 Vault 添加 Eclipse 集成特性。尽管确实有些已有客户要求过该功能,但它的主要动机却是要吸引新客户。

问题在于 ISV 很容易陷入总是使其产品越来越广而没有越来越深的恶习。“新功能”和“新利润”之间的联系很容易看到,但只是要使现有客户高兴而做事却很难成为一种商业案例。

然而,我们直觉地知道,如果我们的客户不高兴,我们就会遇到麻烦。因此您一定要在您的小型 ISV 中挤出时间,做一些使当前客户保持高兴的事:

  • 您产品完善程度如何?只是可以使用吗,还是光泽而又简洁?
  • 您找时间修正低优先级和中优先级的缺陷了吗?或者您修正紧急和高优先级的缺陷而无视其他问题吗?
  • 您花费开发时间使产品对当前用户更优雅、更快、更容易使用了吗?或者您是不是一拿到他们的钱就忘记他们了?

那么我的观点是什么?就是:试图隐藏其产品的问题的公司通常就是那些从不修正这些问题的公司。

没有完美的软件产品。所有产品都有问题。唯一的问题是供应商是不是去修正它们。通过公开您产品中的问题,您将自己确定为愿意承担责任修正那些问题的公司。这才是客户可以信任的那种公司。

返回页首

4. 不要惹怒诚实的人们
 首先让我说清楚,我的确相信,实现某种机制帮助用户遵循产品的许可条款对于大多数 ISV 来说十分重要。我将这种机制称为“许可强制代码”。

但是,让我们不要在此隐藏什么。许可强制代码是一种可怕的浪费。我们花费时间和金钱进行设计、实现和测试,就像产品的任何其他特性一样。但是这种“特性”没有给用户增加任何好处。

因此我相信千万不要在包含许可强制代码方面走得太远。目的应当只是“使诚实的人保持诚实”。如果我们远远超过这一点,只会出现两种情况:

1.我们在进行一场不可能取胜的战斗。那些想欺骗的人将胜利。

 2.我们由于使产品难于使用而伤害了诚实的用户。

一定要针对诚实的用户优化您的产品,他们才是最普遍的情况。许可证强制代码应简单并设定最低限度。通过包含许可强制代码,您告诉客户您不信任他们。不要对此消息大声嚷嚷,小声说。由于这对诚实用户毫无价值,因此您能做的最好的事就是不伤害他们。

所有 SourceGear 产品均使用一种简单的序列号方案作为基本许可强制。我们试图使这一功能完全无痛苦。但我得承认我们只能迂回前进才能达到目标。

当我们发布 Vault 1.0 时,我们包含了一种“产品激活”系统,用于防止人们在两台服务器上使用同一 Vault 序列号。我们想就算每个人都痛恨产品激活,我们也能心安理得,因为 Microsoft 正在这样做。(“这不是我们的错!是 Microsoft 发起的!”)

但情况没有按我们的预期发展。首先,Microsoft 产品激活方案并不像我想像得那样差。原则上我仍然痛恨这种观念,但我不得不承认 Microsoft 的产品激活从来没有使我感到任何实际的不方便。几个月前我为我的家庭购置了一台新 PC。我买了新的 Windows 和 Office 拷贝,两种情况下,产品激活均起作用了。

另一方面,SourceGear 关于产品激活的经历却很不令人满意。这项“功能”大部分时间都能正常工作,但当它不工作的时候却真的很令人丧气。有好几次我在电话中试图帮助客户解决激活问题。由于愚蠢的配置而使客户无法安装产品是很糟糕的事。但由于我们许可强制代码的小故障而使客户无法安装产品要糟糕十倍。有时实在让人难堪。

产品激活提高了我们的技术支持负荷,惹恼了我们的客户,让我们维护更多的代码。如果说我们收到过任何产品激活带来的好处的话,那它们也是不可见的。我们在 Vault 3.0 版本中将其去掉了。不只是为了显得更加信任客户,而且的确减少了很多工作。

返回页首

5. 提供轻松的演示版下载
 现在这已经成了标准,提起来似乎有点无聊:提供一个演示版本下载,以便让人们在购买之前可以试用您的产品。我对目前任何严肃的 ISV 都会试图实行的一种政策持怀疑态度:即客户总是必须先付钱才能看到产品。

虽然对于“是否”提供演示版下载没有什么疑问,但是对于您“如何”对其进行管理则仍然有很多问题值得探讨。高信任的途径是这样:

1.使用有时间限制的演示版,而不是有功能限制的演示版。(将“残损软件”用作演示版的人们不愿意信任我,因此我也不信任他们。)

 2.不要要求人们进行注册才能看到演示版。(我想评估您的产品,而不是您的保密规则。)

 3.不要试图使人们同意不谈论您的产品。(试图阻止我谈论的人是想隐藏什么,不能信任。)

您处理在线演示版的方式是向您的客户展示信任的另一个机会。

返回页首

6. 提供退款保证
 也许对于一个 ISV 来说,最好的信任表示就是退款保证。如果出于某些原因,他们在决定购买后改变了想法,则他们停止使用产品,您将他们的钱退回。通常是给予他们售后 30 天时间作此决定,有时更长。这种政策的动机非常简单:您通过消除客户的所有风险使他们更容易进入与 ISV 的关系。

退款保证将显著提高您的公司的透明度。现在您的潜在客户将可以看到一个客户可以看到的一切。他们可以试用产品、咨询技术支持和感受购买过程。如果其中任何一点令他们不满意,他们只需点击“撤消”就可获得退款。

这种政策看上去风险很大,但实际证据始终显示情况并非如此。我曾与提供退款保证的不少 ISV 谈论,他们都表示:只有很少人要求退款,而大量的人们则体验到对其产品的更大的信任。

返回页首

7. 共享一点您的财务状况信息
 当我从一家小型 ISV 购买软件时,我通常希望能够了解有关该公司财务的所有情况:

  • 公司盈利吗?
  • 它有多少现金?多少债务?
  • 是什么类型的公司?业主是谁?
  • 他们有外部投资者吗?
  • 创始人还参与经营吗?她/他是否仍拥有适量的普通股?

    我想我比大多数人都要罗嗦。我了解 ISV 运营的情况,因此我总是发现自己想知道所有细节。

我不建议您暴露所有这种信息。但是,共享一些精心挑选出来的珍闻有时会提高客户对您公司的信任度。大量软件公司未能生存下来。客户想知道您的公司能否坚持一段时间。如果您的公司管理适当、运营盈利,请让人们了解。

返回页首

8. 谈谈您的未来规划
 传统智慧告诉我们千万不要做出无法保持的承诺。这是一条好的忠告,我 100% 同意。

但有些人将这个忠告解释为千万不要做任何承诺。我相信我们可以做得更好。客户真的很“想”知道您的未来规划。他们想知道下一个版本中会有哪些新的改进,新版本将在什么时候推出。当他们询问这些问题时,确信有“东西”可讲吗?

请谨记承诺始终要低而兑现要高。只要您小心把握好这个原则,就可以与客户谈论您对未来版本的规划。

返回页首

您可能想保持不透明的方式
 至此,我所论述的信任和脆弱程度看上去似乎很荒谬。作为对那些可能(也许可以理解)将我诊断为一个疯话连篇的白痴的人的回应,我将说两件事:

第一,我无需希望每个 ISV 都实行我在上面列出的每项建议。和往常一样,请利用常识评判一下我的建议对“您的”情况的适合程度。

第二,我不希望任何 ISV“完全”透明。即使您实行了所有上述各点,仍会有大量事情您可能想保持私密。

例如,客户无需知道您的实际盈利和收入数字。他们不需要访问您用来跟踪工作项目或技术支持票据的内部数据库。他们不需要听取您的团队关于将他们报告的缺陷置于何种优先级的讨论。

就像没有相互信任关系就不能起作用一样,没有适当的限度,它们也不会有什么作用。

返回页首

实践我所鼓吹的东西
 在我写这篇文章的时候,我感到一种良心的危机。我可以真诚地说,现在 SourceGear 在以上 8 点中有 7 点都做得很好。但是,在我写本文的时候另一点在折磨我。

自从 1997 年创立公司以来,我们一直在按照声明的“不退款”政策销售软件产品。我们鼓励潜在客户充分利用我们设定的 30 天演示时间,在他们需要时慷慨地延长时间。我们希望人们在购买之前花费大量时间进行评估,从而避免退款之争。

总体而言,这种方法是有效的,但不是最好的。我们偶而也会为要求退款的人办理退款,虽然我们的网站上清楚地说明了我们的“不退款”政策。真正的原因在于,虽然我们有明确严格的政策,但我们不想接受不喜欢我们的产品的人的钱。我们没有收到很多退款要求,但我无法想象我们拒绝客户要求在一段合理时间内退款的情形。

因此我们的政策与我们的实践是不一致的,而当退款真的发生时,没有任何标准程序按照一致的方式进行处理。此外,我们声明的“不退款”政策也使我们看上去不太友好。我怀疑,对有些人来说,这增加了他们对我们的可信度的疑问。

现在是我们改变的时候了。SourceGear 的政策将提供 30 天退款保证,而且立即生效。我不想在此用细节来烦扰读者,所有内幕均可在我们公司网站上找到。我将此则故事与大家共享只是因为我自己关于透明的经历也许对读者有些启示。

返回页首

实质问题
 每次文章发表后,我通常都会倾听人们的意见,他们想跟我探讨问题。这一次我想尝试并将讨论引导到正确的地点:

  • 如果您想谈论 SourceGear 产品,请访问我们的公开论坛。
  • 如果您想讨论本文中的原则和建议,请加入 Joel Spolsky 的论坛站点,我在这里主持一个名为 The Business of Software 的论坛。
  • 如果您想讨论伊利诺伊州篮球队今年表现如何“伟大”,有时我会去 IlliniBoard.com 逛逛。 :-)

我将以最后一条建议结束本文。如果您喜欢,您可以围绕细节进行诡辩,但不要避开本文的主题:如果您不愿意信任您的客户,您就不能期望他们信任您。您可能不喜欢我的建议。没关系。但您仍然必须考虑清楚这一原则对您的情形的适合程度。

软件业务

Eric Sink 是 SourceGear 的非传奇性创始人。该公司位于伊利诺伊州,是一家经营开发工具的 ISV。Eric 对自己成为获得观看本年度伊利诺伊州篮球赛季票的为数不多的人之一感觉非常幸运,虽然他的座位非常靠后。有关 Eric 的更多作品和激昂演说,请访问他的网络日志:http://software.ericsink.com/。


版权所有:UML软件工程组织