发布在即!企业 AIGC 应用程度测评,3 步定制专属评估报告。抢首批测评权益>>> 了解详情
写点什么

程序员的自白:我如何让失败项目起死回生,变成价值 270 亿美元的应用程序?

  • 2022-04-25
  • 本文字数:5053 字

    阅读完需:约 17 分钟

程序员的自白:我如何让失败项目起死回生,变成价值 270亿美元的应用程序?

Slack 是颇受欢迎的企业沟通和协作工具,目前有 63 万企业在使用。2014 年初拿到了 4000 多万美元融资之后又完成 1.2 亿美元的融资,其估值达到了 11.2 亿美元。2015 年 2 月,slack 成立一周年日活跃用户就达到 50 万人。2019 年 6 月 20 日,创业公司 Slack 正式登陆纽交所。


这个应用起源于一个几乎已经宣告失败的游戏项目,发展成今天一家价值 270 亿美元的公司实属不易。今天,我们来听听 Flicr 与 Slack 的联合创始人 Stewart Butterfield 的轶闻趣事。


1973 年,Stewart Butterfield 在加拿大不列颠哥伦比亚省隆德市出生。在 Stewart 看来,他性格和行为方式的养成跟家庭不无关系。



Stewart 的母亲极具同理心。16 岁那年,Stewart 开着父亲的车出了一场大车祸。Stewart 的母亲却意外的没有责备年轻的 Stewart,只是告诫他出了事故并不可怕,只要能从中吸取教训就好。


Stewart 的父亲是一位房地产开发商。房地产行业有个特点:从业者会在每个项目中建立相应的管理实体,像一遍又一遍地建立新企业。房地产公司每两到三年就会面临一个筹款周期,需要从业者把发展愿景跟具体计划结合起来,在未来十年左右,愿景和计划将共同推动项目从竞标到落地的整个过程。


父亲的职业对 Stewart 产生了不可思议的影响。五、六个项目的起承转合陪伴他度过了懵懂的少年时光,他也由此学会了以商业思维看待世界,不再以纯本能式的朴素逻辑理解人和物。


计算机启蒙,但主修哲学


在 Stewart 看来,计算机这东西真的酷。


计算机屏幕上显示的东西不是电视那样的单向传播,使用者可以控制其中的对象,简直神奇!于是在 1979 还是 1980 年,Stewart 家里买了第一台 Apple II。另外,学校的教室里也安装了一台电脑。


Stewart 曾买过一本叫 Byte 的杂志,这本杂志封底上总会刊登一些写好的程序。Stewart 最初的编程启蒙,就是在 Apple 上尝试运行这些程序。这个过程中,他还总爱改变一些程序内容,看看会发生什么。不知不觉中,七岁时的 Stewart 就已经对编程有所了解。


“但等到上高中的时候,计算机对我来说已经不那么有趣了。好在进入大学之后,我在学校的 Unix 机器上得到一个账户,并首次接触到了互联网。当时是 1992 年,网络这东西真的令人眼前一亮……我几乎不敢相信自己看到的一切。”


而 Stewart 随后的职业生涯也始终秉持着以探索计算机技术为手段、以服务人类交互为目的的基本观念。当时,最吸引 Stewart 的有两件事:


  • 通过执行代码尽量把人类的想象力转化成现实。

  • 把这些成果整合起来,服务于人类的交互活动。


他解释道:“这是一种非常值得深入挖掘的体验,就像把重要的事情拆分成多个连续性的层级。首先通过执行代码尽量把人类的想象力转化成现实……之后把这些成果整合起来,服务于人类的交互活动。”


其实,Stewart 当初想学的是认知科学,但他们学校并没有认知科学课程。认知科学的本质,就是计算机科学、心理学、语言学和哲学的综合体。既然没有专门的认知学课程,那分别学这四门课不就行了。但他没有选择心理学,因为要想攻读这个专业,他还得接触很多自己并不感兴趣的课业内容。


但哲学不一样,要求不多、课业要求也比较轻松。于是,他果断选择攻读哲学学位。Stewart 很快发现,哲学中的基础知识如同一场迷人的精神冒险,原来这世界上还有那么多悬而未决的重要问题。


不用理工科背景,照样投身 Web 开发


1992 年,Stewart 的大学生活开始了。新晋大学生 Stewart 意识到,Web 当时正在快速兴起并迅猛增长。越来越多的人纷纷开始了自己的“网上冲浪”之旅。


那时候,Mosaic 已经诞生,只是还未广泛普及。互联网的构成主体就是电子邮件、网上聊天(IRC),再加上一款名叫 Talk 的 Unix 程序。在他进入大学一、两个学期之后,网络真正完成了飞跃,成为世界上最受欢迎的媒体之一。


“……从这时候开始,网络成为一种极具人气的媒体,并孕育出 Gopher、Wais 等颠覆性的成果。而我有幸见证了这一切。”


那些年里,HTML 还非常简单。只要有兴趣,任何人都能自学掌握 HTML。好奇心旺盛的 Stewart 自然不甘落后,于是在 1993 年,他成了老家那边五个最早掌握 HTML 的人之一。


在接下来的 94、95 和 96 年,他的假期和在校兼职的内容就是帮不懂技术的客户制作网站。


到了 1998 年,他决定申请哲学博士学位。这时候他的一位好友刚刚博士毕业,并在肯塔基州一所大学找到了工作。但他的朋友却并不满意,甚至压根不想留在肯塔基州。因为那里的工资水平太低,而且岗位本身也没什么存在感,基本不到一年人就跑了,单位需要重新招聘。


了解到残酷的现实之后,Stewart 开始认真思考自己的人生决定。


这时候的他有两个选择。要么就走好友的这条路,一路读博、进高校、混日子;要么紧跟 Web 掀起的技术浪潮,把握这波正在以指数速度增长的变革。另外,他也知道当初最早接触 Web 的朋友们都已经搬到了旧金山,拿到的工资是肯塔基州本地的两、三倍。


他觉得 Web 岗位在那个时代算是最令人兴奋、最有活力、也最具变革性的方向。他也得到了不少教授的支持,这些老学术人们也纷纷吐槽,觉得在学界工作真的相当难熬。


“我跟几位教授聊过该怎么规划职业生涯这事,他们基本都给出了类似的结论……搞学术是种相当糟糕的生活体验,能不选就别选。如果还抱有幻想,不妨订几份期刊、参加几次学术会议,看有没有「疗效」。”


Stewart 把教授们的建议牢牢记在了心里。


作为网页设计师,他仍然不“安分”


在做了几年 Web 设计之后,Stewart 建立了自己的第一家游戏公司。


他的第一款游戏作品,名叫《Neverending》。当时是 2002 年,他的团队已经完成了原型设计、并开始测试这款游戏。


但是 2002 年着实不是什么好年头:新世纪初互联网泡沫开始破裂、行业巨头也纷纷曝出财务丑闻,金融市场的至暗时刻由此来临,纳斯达克也从最高点直跌近 80%。


那时候没人愿意投互联网,也没人愿意投什么互联网多人游戏。于是乎,《Neverending》也成了被嫌弃的对象。最终,因为资金难以为继,这款游戏没能顺利做完。


但做不完的游戏中,仍然有不少剩余价值。开发团队决定把制作游戏时开发出的技术用来构建其他产品,这就是后来的 Flickr。


正所谓东边不亮西边亮,游戏意外夭折,但它留下的遗产却让 Flickr 发展成极具商业可行性的惊喜产品。


有那么几个月,开发团队一边做游戏,一边还得搞 Flickr。所以最终决定放弃游戏开发时,Stewart 觉得很沮丧,参与过游戏测试的人们也很失望。


“我们让大家失望了,很多参与测试的朋友都很喜欢这款游戏,觉得它很酷。但好在 Flickr 也不错,很有前途,所以大家也不算是深受打击。”


Flickr 也确实受到大家的青睐,用户基础逐步积累了起来。通过 Flickr,用户可以免费上传和存储照片。至于怎么赚钱的问题,用户可以选择购买专业账户、把照片上传量提升到 200 多张,而且还能享受到分析服务。


2005 年,雅虎决定用 2000 万美元买下 Flickr。


游戏之路,再糟滑铁卢


Stewart 一生中最成功的决定,就是推出一款没能成功的游戏。


2012 年,头铁的 Stewart 偏不信邪,又成立了一家名叫 Tiny Speck 的游戏公司。这家公司出品了另一款游戏,叫作《Glitch》。


一次失败还不够,Stewart 哪来的自信?因为 2002 年到 2009 年之间,互联网经历了一段不可思议的爆发式增长期。突然之间,似乎每个人都能接入网络了。于是,网络用户总量开始呈指数级增长,成千上万家企业登陆互联网平台,人们也由此接触到不同企业提供的不同服务。


很快,手机上网时代来临,人们终于能够随时随地享受到高速网络连接了。与此同时,支持互联网开发的开源软件世界,同样迎来一波爆炸式发展。


“……2002 年那会,开源资源还很有限。但到了 2009 年,Apache 的基础已经强大且成熟,种种伟大的网络科技再辅以性能更强的计算机设备,开始让更多人享受到「网上冲浪」的快感。”


跟当初开发《Neverending》的团队相比,《Glitch》的开发阵容就显得豪华多了。“如果满分十分,那我们的开发阵营已经从之前的两分,增加到后来的八分、九分甚至是接近满分。”


游戏本身同样获得了资本市场的关注。本以为有这样的影响力,他们就可以拿到充裕的资金、提高团队待遇,最终再拿出款名利双收的游戏大作。但很遗憾,他们只是从风投那里拿到 1750 万美元。


“风投是很不好打交道的,我们某种程度上成了「包身工」、得按他们的意志做项目,所以事情再次偏离了预期轨道。”


事情到了这一步,Stewart 决定及时止损。《Neverending》的悲剧再次发生,Stewart 的游戏开发梦不得不戛然而止。


这一次队伍规模更大,Stewart 也面临着前所未有的新难题。


当时公司共有 45 名员工,涉及动画师、音乐家、作家、插画家和关注设计师等专业人士,这些专业人士无法把技能平移到其他项目,所以开发中止会导致他们直接失业。45 人的团队中,有 35 人面临着解雇危机。他们更新并发布的这款游戏,也没能建立起预想中的强大社区。所以,冲突就变得更加激烈。


作为团队带头人,Stewart 自然也为困境而深感痛心。Stewart 讲了个故事。两个月之前,他刚刚劝说一位员工带着老婆和两岁的女儿从老家搬出来,跟着自己一起创业。到了新城镇买下新房子,也远离了熟悉的亲朋故友。但现在 Stewart 突然又要告诉对方,你被辞退了。


Stewart 知道这个决定很难做、也很难说出口。一语既出,队友们的生活也将彻底毁灭。


“在内部正式宣布这个消息那天之前,公司里已经弥漫起一股担忧的氛围。有人觉得项目已经到了生死存亡的关头,再没进展就肯定要出问题了。”


灵光一闪,Slack 诞生


但好在 Stewart 决定及时止损,提前关停了开发工作。所以公司账户里还剩了一笔钱。这笔钱还不小,足足有 550 万美元。在这笔钱的帮助下,Stewart 团队能够以比较体面的方式完成停运。他们还专门上线一个网站,帮助每位员工整理出详尽的求职简历。


公司还写了不少推荐信,做了些职业咨询,并帮助每位成员成功找到了新工作。大多数专业人士都因此拿到了比 Tiny Speck 时更好的职位。


“我们把欠客户的钱还掉……又做了些跟慈善相关的事情。一年之后,Tim Leffler 最终加入了 Slack,意味着整个变轨流程的最终结束。但是,那一刻我完全没有任何轻松的感觉。”


Stewart 怀着沉重的心情关停了《Glitch》。这位联合创始人开始回顾自己的经历,整理在游戏运营中学到的重要知识。


在《Glitch》开发和运营期间,多个不同团队一直在持续参与项目工作。其中,一个团队负责音乐创作,一个团队主导动画制作,一个团队提供美术设计,另一个团队负责编程开发。为了提高协作效率,编程团队还编写了一套内部聊天系统,帮助人们在线开展交流。跟电子邮件相比,这套聊天系统的效率要高得多。而跟游戏本身相比,很多玩家似乎更喜欢这种内置聊天方式。


其中一位联合创始人分析称,这样的即时通讯工具即使是在商业领域也还完全没出现过。原来机会在这儿啊!


最初,《Glitch》游戏打算使用互联网中继聊天(IRC)网络工具实现在线交流。跟现在我们熟悉的大部分消息收发系统一样,其中都涉及所谓“存储与转发”的概念。


例如,当 Bob 向 Angela 发出一条消息,但当时 Angela 并不在线,所以可能暂时收不到,这时消息内容就需要暂时存储。当下一次 Angela 上线时,保留下来的消息就会被及时转发给她。然而,互联网中继聊天(IRC)并不具备存储与转发功能。也就是说,只要使用 IRC,那么只要 Bob 发出消息的时候 Angela 不在线,那她就永远收不到这条消息。


为此,整个 8 人团队决定开发一套系统进行消息记录。数据库会收到消息,团队成员希望能搜索到这些消息,所以又据此建立了搜索功能。


“随着时间推移,我们不断向其中添加新功能。最终,他们创建出能够与文件服务器相集成的新成果。这样只要有用户上传文件,IRC 端也将有所体现。”Stewart 说道,“慢慢地,我们开发出这套系统,成为公司内部的首选交流方式。出色的体验让我们意识到,如果没有这套系统,我们好像不知道该怎么工作了。”


功能越来越多、稳定性越来越高,他们终于搞出了能够实现全通信内容、全知识条目搜索的成果——Slack。


2021 年,Salesforce 用 277 亿美元买下了 Slack。一个失败的游戏项目换来了一个影响全世界的通讯平台,Stewart 和他的合伙人们赚得盆满钵满。


原文链接:


https://javascript.plainenglish.io/a-programmer-turned-a-failed-game-with-almost-zero-traction-into-a-27-000-000-000-app-55e054715b47

好文推荐


保卫腾讯云,专访云鼎实验室董志强(Killer)团队 | 卓越技术团队访谈录


GitHub热榜项目“程序员延寿指南”一周获上万Star;快手前副总裁巨额受贿案宣判;小红书辟谣大裁员:正常人员汰换 | Q资讯


五年官司终败诉,万亿爬虫大军蠢蠢欲动


自由软件之父抨击苹果电脑变成“监狱”,不建议用Ubuntu


2022-04-25 16:457584

评论

发布
暂无评论
发现更多内容

爱情,婚姻,与AI

脑极体

钻石01:明心见性-如何由表及里精通线程池设计与原理

MetaThoughts

Java 多线程 并发

队列Queue:任务间的消息读写,安排起来~

华为云开发者联盟

鸿蒙 数据结构 队列 Queue 消息

爬虫入门到放弃04:爬虫=犯罪?对不起,我对钱没有兴趣

叫我阿柒啊

爬虫 robots.txt

Axie区块链宠物游戏系统开发搭建

薇電13242772558

区块链

2021 挚物·AIoT产业领袖峰会召开,EMQ 映云科技喜获双料荣誉

EMQ映云科技

百度 华为 工业互联网 AIOT 边云协同

生产上数据库死锁,是该程序员祭天了

skow

Java MySQL 面试

Python开发篇——构建虚拟Python开发环境(Conda+Poetry)

DisonTangor

Python Anaconda

云图说|ROMA演进史:一个ROMA与应用之间不得不说的故事

华为云开发者联盟

华为云 应用 ROMA 云图说 应用使能

三十岁,像培养孩子一样培养自己。

南冥

当女性撰写科技新闻,她在报道什么?

脑极体

微软亚研院:如何看待计算机视觉未来的走向?

百度开发者中心

最佳实践 方法论 计算机视觉 语言 & 开发 文化 & 方法

架构之:REST和HATEOAS

程序那些事

架构 系统架构 Rest 软件架构

应聘高级Android工程师历程感言,你不懂还不学?

欢喜学安卓

android 程序员 面试 移动开发

灵活运用分布式锁解决数据重复插入问题

vivo互联网技术

分布式锁 服务器 并发

Optional 的使用会导致性能下降吗

小技术君

性能优化 Optional

聊聊数据仓库建设

水滴

数据仓库 数仓 数仓架构 主数据管理 标签体系

数据,流通在没有船的港口

白洞计划

英特尔陈伟:AIoT时代的新思维

E科讯

《MySQL是怎样运行的》读后思考

MySQL

花费近一年时间整理的Android核心知识清单,面试篇

欢喜学安卓

android 程序员 面试 移动开发

Linux安装与常用命令

IT视界

Linux linux命令 Linux安装

《全国移动App第二季度安全研究报告》

InfoQ_11eaedef67e9

网络安全 移动安全 个人信息安全 APP安全

Go语言:SliceHeader,slice 如何高效处理数据?

微客鸟窝

Go 语言

关于线程的执行顺序,可能真的只是你以为的你以为

华为云开发者联盟

Java 线程 多线程 Thread 任务调度

教你如何将二进制文件导入到数据库

华为云开发者联盟

数据库 数据 二进制 GaussDB(DWS) 二进制文件

异常是怎么被处理的?这题的答案不在源码里面。

why技术

面试 JVM 字节码

阿里大佬的「算法界Offer收割机」火爆Github,一夜获上万star

Java 编程 程序员 架构师 计算机

基于Jena的知识推理

华为云开发者联盟

推理 知识推理 Jena 推理引擎 RDF图

如何包容他人的多样性

escray

学习 极客时间 朱赟的技术管理课 7月日更

架构实战营模块三作业

maybe

程序员的自白:我如何让失败项目起死回生,变成价值 270亿美元的应用程序?_文化 & 方法_Sanjay Priyadarshi_InfoQ精选文章