怀念 Stormix
回忆起我在 Progeny 的日子,让我想起了更早的 Stormix Technologies。作为一家商业企业,Stormix 是一场灾难,每个人都感染了一种特别恶性的互联网泡沫热。尽管如此,我将永远记住它,它是我职业生涯中第一次接触自由软件和一般管理实践,也是技术史上一个超现实时代的快照。
在 20 世纪 90 年代中期,我是一位忠实的 OS/2 用户。到 1999 年,我知道 OS/2 已经走到了尽头,我不得不放弃它,但我只是短暂地尝试过 GNU/Linux,并记录了一个 Slackware 系统,但对其内部运作知之甚少。在家里,我使用的是 Windows,并感受到了限制。
当我得知当时世界上最大的虚拟主机服务提供商之一 NetNation 正在创办一家子公司,计划将 GNU/Linux 商业化时,我的兴奋之情溢于言表,以至于我给出了我一生中最好的面试,并当场被录用。我可能不太清楚 Debian 是什么,但我觉得 Stormix 代表着创新和重要意义。事实上,我当时非常兴奋,以至于我立即出去购买了一块新的硬盘,以便我可以设置一个双启动系统。
Stormix 办公室位于温哥华海港中心 20 楼,俯瞰海港和会议中心——这是整个城市最令人惊叹的景观之一,这也没有什么坏处。在接下来的一年里,有时景色太分散注意力,以至于我不得不故意将办公桌转离窗户,以便完成一些工作。
在加拿大国庆日后的第二天,我与 Kevin Lindsay、Garth Wood 和 Atsushi Ikeda 一起加入了 Stormix 的工资单。Kevin 是开发人员的工头,他是 Stormix 想法的提出者,并将其推销给了 NetNation 的所有者 David Talmor 和 Joseph Kibur。
在那个夏天,我愉快地沉浸在学习 GNU/Linux 和整理手册的基本知识中,公司也在不断发展壮大。刚刚结束了为期两年的记录不断变化的人力资源软件的工作,我简直不敢相信我竟然能因为享受如此多的乐趣而获得报酬。仅 BASH shell 就已经是一个奇迹,更不用说当时存在的 KDE 和 GNOME 的基本版本了。
由于我渴望证明自己,并且是第一个签约的非开发人员,我很快就开始对 Storm Linux 发布计划的模糊之处发表评论。我评论的次数如此频繁,细节如此详尽,以至于到 8 月中旬,当 Garth 返回滑铁卢大学完成他的计算机科学学位时(我认为他放弃 Stormix 这样蒸蒸日上的公司简直是疯了),Dean Wadsworth 和 Randall Donald 也加入了公司,David Talmor 要求我担任公司的业务经理。
经过一个周末的自我辩论,我得出结论,我不是一个推销员。我可以做宣传,但如果有人不同意我的观点,我更可能耸耸肩,嘟囔几句关于意见分歧合理性的话,而不是试图说服他们。因此,在周一,我提出了一个反建议:我将担任产品经理,并指导发行版的开发。实际上,这意味着我将负责非编程方面的所有工作,随着需求的增长,工作将从我这里分流出去,并在公司的技术人员和非技术人员之间充当中间人。
在我意识到之前,我已经在做各种各样的事情:编写手册和新闻稿,回答投资者的尽职调查问题,协商杂志上的广告位,设计广告活动,为 Storm Linux 零售盒设置捆绑交易,协助招聘面试,并让合伙人了解情况。起初,我严重依赖楼下六层的 NetNation 的人才来完成工作和提供建议,但随着我们逐渐接近 12 月的发布,Stormix 开始逐渐壮大,增加了开发人员和非技术人员。
我是一个正在康复的学者,也是一个兼职技术作家,所以大多数时候我都在争分夺秒地学习,以便及时完成工作。但是学习的兴奋和责任感令人陶醉,在 1999 年秋天,我对我的工作感到前所未有的满意。
早期,我在我们的广告中确立了“禁止企鹅”的政策,禁止所有使用企鹅商标的行为。我认为我们想要推广的是 Stormix,而不是一般的 GNU/Linux——许多开发人员对此乐此不疲,难以理解。受到 Absolut 伏特加广告的启发,我还确立了一个广告活动的基本原则,该活动围绕我能想到的所有关于“风暴”的不同引用展开:风暴警报、风暴眼、风暴观察——我毫无羞耻之心,如果我有时间,我会使用所有这些。
此外,我花费了大量时间思考 Storm Linux 需要哪些功能和第三方软件才能吸引普通用户。例如,在 1999 年,某种 Windows 模拟器对于商业市场来说似乎是必不可少的。某种成熟的办公程序也是如此。当然,现在这两者都不成问题了。
对我来说,一项特别有用的练习是与 NetNation 和 Stormix 的总法律顾问 Jagan Gill 一起仔细研究许可证和捆绑条款。我不仅第一次接触到了自由软件世界的人们,而且在学习如何向 Stormix 的所有者解释自由许可证的过程中——我不认为我完全成功地完成了这项任务——我对它们的工作原理有了深刻的理解,并且对他们的理想主义和实用主义的结合钦佩不已。这两种结果对我来说都一直很有用,即使只是因为我是少数几个能够阅读许可协议而不会立即睡着的人之一。
与此同时,在我周围,互联网泡沫热正在席卷每个人。我第一次看到症状是在一批文件柜运到后的第二天早上,当时一位年轻的程序员从一个他过夜的空箱子里爬了出来。当我询问他时,他承认他并没有在赶编码——他只是读到有人在硅谷的办公室里露营,并认为这是一件很酷的事情。
不久之后,随着毛绒企鹅和其他玩具开始堆满办公室——包括一系列名称中带有“风暴”的不相关产品——Kevin Lindsay 安装了一个网络摄像头。显然,这是另一件很酷的事情。过了一段时间,当一位所有者在星期六晚上 11:30 登录网络摄像头时,他很高兴看到所有程序员都在努力工作。他对他们的奉献精神大加赞赏,以至于我不忍心告诉他,他们一直在利用办公室的高速连接进行一场非常棒的 Quake 游戏。
这些泡沫热的迹象很多都是无害的,但另一些则直接影响了 Stormix 建立自身并实现盈利的能力。公司网站开发人员兼平面设计师 Kevin Teague 很难理解为什么企鹅不应该成为公司形象的一部分,或者为什么广告不应该带有“由 Zope 提供支持”的字样。当我试图解释时,我赢得了扫兴者的名声。
更严重的是,所有者们正在大力推动在 2000 年春季之前上市。他们恰好在正确的时间进入了虚拟网络托管领域,并希望重蹈覆辙。但是,由于他们渴望股票发行以及他们专有的商业背景,他们很难理解他们正在做什么。
要么他们过于保守,例如坚持要求转让版权以换取 GNU parted 开发人员 Andrew Clausen 的实习机会,要么他们过于鲁莽,像 Red Hat 甚至 IBM 那样赞助行业贸易展览会。他们没有时间仔细研究像 Corel 或 Libranet 这样的竞争对手在做什么,甚至没有时间研究 Stormix 自身产品的开发情况(尽管我们仓促地复制了 Corel 的图形引导管理器,但这完全是程序员的主动行为)。
因此,互联网泡沫热不受现实的约束地蔓延开来,公司常常更像是一个聚会而不是一家企业。并不是说有人喝醉了或吸毒了,你明白的,但是,他们太兴奋了,以至于不需要那样做。我也不是例外——真的只是一个谨慎的醉汉。
问题的第一个迹象出现在 Stormix 2000 发布时。通过大量的加班——所有程序员都沉浸其中——我们把 Storm Linux 的商业包装箱送到了制造商手中。我们的时间对于可能帮助我们的圣诞节市场来说太晚了,但对于让投资者满意来说足够早了(在一个令人难忘的工作星期六,当我溜出去在游戏商店购买一些圣诞礼物时,我差点错过了 John Cleese,但这又是另一个故事了)。
但是后来我们发现,我们的分销商从中压制一万份副本的主 CD 是从代码仓库的错误分支中提取的,因为一位程序员一直在尝试不睡觉,并且头脑发昏,不知道自己在做什么。在当时的互联网泡沫时代,解决方案是显而易见的:用正确的母 CD 将同一位程序员空运到分销商处。这就是那些患有互联网泡沫热的人花钱的方式。
然后,在圣诞节后的第二天,当我四处查看发行版时,我发现安装程序的内核中没有编译对 FAT32 系统的支持。程序员们自己并不关心这一点,所以他们没有意识到,在当时双启动系统是常态的情况下,如果用户想要在他们的操作系统之间轻松通信,开箱即用的 FAT32 支持是必不可少的。雪上加霜的是,质量保证测试员是在发货前一周才被雇佣的,根本无法发现这个错误。
我发现自己在程序员和所有者之间奔波,就像北欧神话中世界树上的松鼠一样,一方面试图阻止所有者进行大规模解雇,另一方面试图协调补救工作。在这个过程中,我坚持要求每小时报告,结果激怒了程序员——这个错误表明我真的有多么缺乏经验。
最终,发行版得到了修补,但代价是由于延迟而失去了一些关键评论。再加上延迟、缺乏宣传以及一月份通常的销售缓慢,很快就变得显而易见,Stormix 很快就会陷入困境。公司在存储其商业包装箱上的支出远远超过了销售收入,并且挥霍数十万美元以提高知名度。
在查看了商业包装箱惨淡的销售数据后,我向所有者建议公司考虑其他收入来源。我建议专业服务似乎是一条可行的道路,我想起了《大教堂与集市》。但是所有者认为,对于一家希望通过首次公开募股掀起波澜的公司来说,这太缺乏吸引力了。
我的下一个建议是利用收购预算来购买盈利能力,或者至少让公司发展壮大,直到它变得足够盈利,能够被更大的鱼吞并。我花了一个多月的时间与 BlackHoleSun 公司达成协议,这是一家开发了自己的 3D 游戏引擎的游戏公司——结果却眼睁睁地看着这笔交易在一瞬间泡汤,因为所有者犯了一个错误,宁愿指责另一家公司不诚实,也不愿承认错误。
在那时,我已经受够了。我正面临一些严重的个人危机,而且由于交易破裂,我颜面扫地。此外,随着我的职责被分配给新员工,Stormix 在某个时候已经不再那么令人愉快了。另外,我的年龄也比大多数二十几岁的员工大得多,这也没有帮助。
我感到越来越孤立,而且有点像卡桑德拉,因为我对厄运的预言被忽视了,所以我请了几个星期的假来思考。我得出的结论是,公司永远没有盈利的机会,于是我辞职了。
我从未行使我的股票期权,在接下来的几个月里,我很高兴做了这个决定。Stormix 步履蹒跚,涉足机架式服务器,变得绝望到尝试专业服务(后来我得知,带着一丝幸灾乐祸的满足感,专业服务占了 Stormix 实际收入的大部分)。
然而,一切都无济于事——至少,为时已晚。在我辞职七个月后,剩下的员工开始领取半薪。又挤出了另一个版本的 Storm Linux,然后在 2001 年 1 月,公司倒闭了。在不到两年的时间里,它花费了数百万美元,而收入只有几十万美元。
最终,Stormix 给自由软件社区留下的遗产寥寥无几。它从来没有像 Corel Linux 那样完善,它的安装程序、管理工具和软件包管理器在几年后就过时了,因为更优秀的替代品出现了。它唯一真正的遗产是程序员之间的亲密关系,即使在今天,这种关系在某种程度上仍然存在。
回顾过去,我认为 Stormix 从头到尾都是一家幻想公司。然而,在一段时间内生活在幻想中对心理健康是有益的,对我来说,Stormix 既是一次教育,也是一次在职职业咨询。
因为 Stormix,我了解了从事自由软件工作的吸引力,并且——在当时很少有人这样做的情况下——发现了与社区和商业利益合作的微妙平衡。我发现了自由软件领域的参与者是谁,以及在哪里可以找到他们,他们中的一些人也认识了我。最重要的是,我发现我需要类似(如果更清醒)的参与程度,才能让我对我的工作保持兴趣。在我离开 Stormix 不到六周的时间里,我开始为Maximum Linux 撰稿,并在 Progeny 找到了工作,做着与我在 Stormix 所做的事情非常相似的工作,但薪水却高得多。
如果我回顾一下直接引导我走向目前作为自由撰稿记者的道路,我看到 Stormix 站在了这条道路的起点。甚至我现在早上登录电脑时的日常习惯也是在 Stormix 开始形成的。在那里工作是令人着迷的、令人振奋的、令人沮丧的,而且通常这三者同时存在。
几个月前,我在温哥华 PHP 会议上遇到了一位 Stormix 程序员,我很高兴能和他一起回忆几分钟——但是,如果可以的话,我宁愿不回到那些日子,就像我不会回到高中一样。
Bruce Byfield 是一位计算机记者,定期为 Linux.com 和 Linux Journal 网站撰稿。