说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

从南极之争谈软件架构十个技巧,及成功团队具备的气质

HTML文档下载 WORD文档下载 PDF文档下载
低门槛让更多的人参与创业,同时也带来了更多的创业失败。近日Tod Hoff结合南极穿越之争分享了软件架构的10个经验,并总结了成功团队需具备的一些特性。

随着云计算带来的低创业门槛、大数据潮流的盛行,越来越多的人加入了这场创业风暴。然而众多的淘金者中,真正满载而归的却是少之又少。这里为大家分享HighScalabilty创始人Tod Hoff结合南极穿越之争带来的成功软件架构经验,及成功团队需具备的一些特性。以下为译文:


每个软件打造的核心都存在一次漫长的探险,或许你会觉得夸张,但是在 皇家卑诗省博物馆参观 Race to End of Earth(罗威探险家 Roald Amundsen和英国海军官员 Robert Scott于1911年-1992年完成的 穿越南极之战)展览时,两支队伍采用的不同途径让我备受启发——那些同样存在于软件开发过程中决定成败原则。

我希望我可以重现 参观时的体验。随着参观的进行,我不断的对Scott的选择产生质疑,并叹服于Amundsen的老道,其中核心直指开发的两个极端Agile(Amundsen)与Waterfall (Scott)。

首先我们看两个比赛的背景知识

简而言之,率先抵达南极的队伍获胜。两个领队以完全不同的途径去完成这一目标,方法源于他们不同的目标、经验以及气质。比赛的结果是Amundsen比Scott早33天抵达,同样队伍的状态上Amundsen更是远胜Scott。归途中,Amundsen队伍无损,而Scott小队全军覆没。

更多的细节可以参考:

  • Comparison of the Amundsen and Scott Expeditions
  • 10 Mistakes That Caused the Most Punishing Nature Expedition in History
  • The South Pole Fifty Years After

我们的重点则是可以运用于软件打造中的知识:

1. 单一的目标,这点让我感受颇深:Amundsen唯一的目标就是以最快的速度抵达目标,而Scott则要兼顾科学研究。

对于Scott来说,科学研究这个使命甚至优于资源与人员配备。而Amundsen的所有目的都是赢得比赛,还有平安归来。

想比之下Scott的双重目标存在很多矛盾。不错,那时确实不乏悠久的帆船科学研究历史(比如达尔文),然而达尔文并不是进行比赛,他们的船很大,同时科学研究只是附加目标,而环境也远没有南极那么恶劣及荒无人烟。

Fred Wilson在谈专注的力量时 经常引Steve Jobs为例——“我们专注于打造一个适合所有场景电脑的生产线,然后逐渐关闭其它的生产线”。专注是类似Minimal Viable Products及 time box scheduling产品背后的原动力,Amundsen专注在比赛上,所以一切策略都以这个为目标展开。

2. 使用简单,已被验证的技术。比赛中最难以接受的就是Scott的计划选择了一组复杂且未经验证的运输技术。

Amundsen的计划是简单的,他们选用狗拉雪橇;而在那时,狗拉雪橇的这个技术无疑是得到论证的,因此奇怪的应该是不选用狗的人。

然而在早先的旅行中Scott对狗有着非常不好的体验,所以他并未选用这个运输途径。取而代之的是,Scott选用了motor-sledge,这是机动雪橇的早期版本。在那个时候,这还是个试验中的技术,最终3架motor-sledge都在途中损坏。然而当下的问题不是讨论他们为什么有那么差的体验,而土著人民却非常善于用狗,而是缺乏对事物的详细了解并往下定论。

小马的任务是搬运补给,但是很小的蹄子让其不能胜任工作,因为它很容易受到潮湿和冰冻的侵害。9匹小马在旅行开始时就失去了作用,然而马和motor-sledge的补给只能储存在船上。对比而言,狗无疑更适应战场,它们可以吃南极洲捕获的企鹅和海豹肉。

使用人力拉沉重的雪橇,本来只作为应急,但是马和motor-sledge的缺失让这个方案执行了3/4的旅途。而雪橇还在不停变重,因为沿途他们不得不收集一些岩石以作科学研究。这样,问题就在于他们根本没有足够的食物以支撑整个过程。他们并不清楚,一天吃4000卡路里的他们却需要消耗6000到10000卡路里的能量。

3. 定制、测试、重复。Amundsen的计划很周密,不留任何漏洞。当他发现设备达不到需求时,会自己动手,他亲自做了防风镜、滑雪板、犬绳及肉干。这种自力更生正是开发者需要具备的品质:

所有Amundsen的工具都出自自己的工坊,并经过一次又一次的提炼。Amundsen在制造工具时使用了两个信条:第一,远甚于批量生产的设备;第二,参与制造,可以确保设备在比赛中的表现。

4. 冷静且无情的。捕获焦点,必须具备认知重点的能力,只做必要的事情。

Walter Sullivan在The South Pole Fifty Years After使用另一个方式完美的阐述了这个道理:

登月通过一连串的火箭完成,而在这个过程中这些火箭被逐一抛弃;那个挪威人使用了同样的策略,在旅途中不断抛弃虚弱的动物,并且作为其它动物和人的食物。

5. 灵活的。Amundsen原计划是去北极,但是在听说两个美国人已经抵达北极后,果断的将目标转向了南极,以获取世界第一这个奖励。

6. 从实际出发。Scott使用人拉雪橇不仅仅是为了运输,更加入了一种浪漫主义风格。Scott日记的背后甚至反射出Wagner的身影:

在我的记忆中,没有任何与狗有关的探险可以达到这样的高度——人们直面险阻,并用自己的双手达到目的……无可否认的是,在这种情况下,征服才是更高贵、更华丽的胜利。

7. 技巧让一切都变得不同。Amundsen招募了多个经验老道的滑雪人并组成团队,相比,Scott的队伍无疑都是一些门外汉,并未针对需求进行训练。

8. 选择正确的团队。Scott的团队有许多来自英国的绅士,而Amundsen则选择了一些具有户外经验并有不同技能的工匠。

9. 错误的叠加。Scott的团队注定无法赢得比赛,然而他们的死亡却是由一系列的错误叠加引起。天气比预期的更冷,这样导致他们返程时在预定时间并未到达下一个补给点,补给点存放了食物、燃料及其他物资。当Scott、Wilson和Bowers三人死亡时,离下一个补给点仅11英里远。马、motor-sledge及一个错误的补给点判断,让下一个补给点离他们遥遥无期。悲剧的铸成绝不因一个错误,而是由一系列错误叠加形成。

10. 后见之明。在事情开始时没有什么是清晰可见的,然而在结果产生时一切都已尘埃落定。Scott在开始时做了他认为最合适的决策,而其它人也同意他的观点。每一个项目也是如此,没有人会愚蠢到从开始就放弃;然而通往成功的路径总是很少,并且沿途充满了太多的岔路。所以我们有必要去吸取一些成功的经验,多了解一些最佳实践。

忆往昔,不难发现成功的团队总是具备一些共同的特性:规模小、良好的引导、专注、高技巧及具备丰富的经验,同时他们还有着健壮的计划、丰富的资源以及强大的战场适应能力。

原文链接: What can the Amazing Race to the South Pole Teach us About Startups?(编译/仲浩 审校/周小璐)

更多内容请关注CSDN云计算频道 及@CSDN云计算微博

网络和通讯编程-Delphi资料 WebBrowser流程讲解及如何判断下载网页成功-Delphi资料 用Delphi 3.0实现运行于浏览器内的客户 用Delphi编写ASP的ActiveX 用Delphi编写CGI程序(五) 用Delphi编写CGI程序返回图象 用Delphi程序获取拨号连接的动态IP地址 用Delphi创建Internet快捷方式 用Delphi实现NetBIOS广播收发 用Delphi实现网络驱动器的映射和断开 用Delphi实现远程屏幕抓取 用DELPHI制作留言板 再谈用Delphi程序获取拨号连接的动态IP地址 在DELPHI程序中拨号上网 在DELPHI程序中获取网络资源信息 在Delphi程序中应用IE浏览器控件 在Delphi中调用NetscapeNavigator 在Delphi中使用flash控件 在Delphi中使用IP控件 在程序中动态取得Win95/98网络邻居中工作组及计算机名-Delphi资料 在程序中获取网络资源信息-Delphi资料 自制THyperLink组件-Delphi资料 报表制作技巧(三)-Delphi资料 Delphi数据库开发及统计表格设计 Delphi文本和图形的打印方法 Delphi应用程序中中国式报表的制作 Windows环境下实时列表输出的实现方法-Delphi资料 报表制作技巧(二)-Delphi资料 Delphi编制的程序运行中动态制作报表 报表制作技巧(一)-Delphi资料 如何在WINDOWS中控制打印字体的长宽,而不受限于SIZE 的限制-Delphi资料 对象的handle,hwnd和指向此对象的指针之间是什么关系??? JavaBean+jsp+Tomcat4.0?把我搞醉了 一个非常棘手的问题,都吃不下,睡不着了,帮忙啊,分不够的话,再开数贴。 高分请问:会跳舞(有音乐)的圣诞老人(玩具,大约有电脑显示屏一般高度)在上海买多少钱,急急急 已有CBitmap m_Bitmap,如何求对应的HDIB 在音乐文件中加入一个代码…… 这种情况下如何用进程条控件? 看了一通sps的sdk,看的我头大的不得了,看来英语还是不过关阿 我要把格林威治平时转换成当地时间用什么函数呢???? 用SQL语句显示记录集中的倒数200条记录,及显示从第几条到第几到的记录?? 问:vb.net采用的是c#,那么在ms.net里面到底有没有visual c#.net??? 高手请进!ADO问题 给我已给在javabean里面使用HttpServletRequest对象的例子好吗?谢谢你了,具体到里面看看可以吗? 在office2000中打印来自matlab53的图形,总是提示word内存不足,word自行关闭。请问为何? 开开关关的窗口 用VC编写操纵数据库方面的COM组件有前途吗? 请问如何将CString中的字符串赋给char* ADODB.Connection问题,急!! 急急! 在javabean里面使用HttpServletRequest对象的例子好吗?谢谢你了,具体到里面看看可以吗? 河南的程序员考试成绩出来了没有?都快把大家急疯了! 一个类的四个问题?this指针等等,欢迎大家的光临。 请大家帮个忙!我的PARADOX数据库有660M,但是在读取的时候出现‘BLOB HAS BEEN MODIFIED‘!! 请问哪里有ado数据库引擎下载,谢谢~! BDE错误$2109 如何得到“我的文档”里的IShellView指针? SOS!各位帮帮我呀!“实现汉诺塔” 幫忙看一下下面這段代碼有什么問題? 改进后的开开关关窗口特别酷 请问在VB6与VB.NET在数据库方面有多大的区别呀?? 关于C语言 寻找将 AUTOCAD 文件格式转换成 PDF 格式的软件 谁有包含开发接口的OCR软件? 求助:没有紧急修复软盘,怎样恢复win2kserver的双启菜单。 请问怎么得到DATAGRID1中记录的总条数! 转发:一粒沙子的爱情故事 公司發過年禮物了 ,哎 ,原來是一塊石英表 ,雖然是情侶表 ,卻只發一塊 ,不是一對 ,你們呢!..... ??有解密高手吗?或者哪里有这样的论坛?? 怎样用多线程显示多个form? VB串口发送大数据量时其他程序没有反应? 这句sql语句怎么写?低手请教! 数据库高手请进,报表问题!!! 请介绍VC测试内存泄漏的好工具. select number from table需要分别得到所有的值,如果做? 请问如何将下载的控件加到delphi的控件面板上?先谢谢了!!! 一个form里面如何将6个radiobottom 分成两组? 开开关关IE窗口的小程序 请各位高手介绍一下win2K,wingate,sygate这些做上网服务器各使用什么技术?NAT?SOCK5? WIN2000 PRO. 怎样才能通过 NT4+MSPROXY 上网? ASP中如何实现等待几秒再执行下一步的功能? 数据库的烦恼之二 一水,用7个大瓶和5个小瓶装共8.8克,用5个大瓶和3个小瓶共5.4克,用3个大瓶和1个小瓶共多少?最好不列方程 张师傅把150千克的青菜运到集市上去卖,其中的5分之3按每千克2.40元卖出,剩下的按原价的75%卖出这些张师傅把150千克的青菜运到集市上去卖,其中的5分之3按每千克2.40元卖出,剩下的按原价 64人订ABC三种杂志,订A种杂志的28人,订B种杂志的41人,订C种杂志的20人,订A和B的10人,B和C的12人,C和A的12人,三种杂志都订的有几人? 孵化场该怎么和种鸡厂和养鸡场合作?我们是开孵化场的!一直都是采购种蛋加工孵化出来送到经销商或者养殖户,谁有更好的方法让我们和种鸡厂能合作起来? 蛇的天敌是什么?什么吃它,他怕什么植物嗯 某班有41人都订阅了中学生天地或中学生作文,已知订中学生天地的人数比订中学生作文的人数少5人,两种杂志都订的有20人.订中学生作文的有多少人 养鸡场计划购买甲,乙鸡苗共2000只,甲每只2元,乙每只三元相关资料表明:甲 乙两种小鸡苗的成活率分别为百分之94和百分之99,若要使这批小鸡苗的成活率不低于百分之96且买小鸡的总费用最小 如何在报纸或杂志上发表文章?想在报纸或杂志上发表文章,但不知道如何投稿,教教我吧,我很笨.最好投稿(寄信),邮件勉强.注意事项也要写.提供点地址有没有 “城市快报”我还是比较喜欢 某班有41人都订阅了《中学生天地》或《中学生作文》,已知订《中学生天地》的人数比订《中学生作文》的人 数少5人,两种杂志都订的有20人,问:订《中学生作文》的有多少人?用一元一次方 养鸡场发生过新城育病毒空鸡场该怎么消毒才能进鸡苗? 在期刊上发表文章想在期刊上面发表一篇文章,可是,自己对这个也不是特别了解,这个是怎么个顺序呢 今年某班有56人订阅中学生天地,其中上半年有25名男生,15名女生订阅了该杂志,下半年有26名男生25名女生顶阅了该杂志,有23名男生是全年订阅的,只在上半年订阅的女生有多少名快,今天晚上为 蛇的天敌是什么动物 蛇的天敌是什么? 新手在杂志或报刊上发表文章~请问新手想在杂志或报刊上发表文章需要什么条件?帮忙推荐一下致力于培养新手的报刊杂志~那个,能不能推荐一下报纸、杂志…… 怎么样办一个养鸡场山区养殖草鸡!按10000只的规模,大概投资多少钱?前景如何?请高手和专家指点指点!感谢! 蛇的天敌是? 请问,在《萌芽》杂志上发表文章有稿费吗? 客货车两辆车同时从上海和南京相对开出.客车每小时行62km,货车每小时行60km,精工2.5小时两车还相距4.5km相遇.铁路长? 大、小两瓶油共重2.7千克.大瓶用去0.3千克后,剩下的油与小瓶的油比为3:1,大、大、小两瓶油共重2.7千克.大瓶用去0.3千克后,剩下的油与小瓶的油重量比为3:1,大、小瓶原来各有油多少千克? 生物防治害虫的新途径,请举例说明一下 客车和货车同时从相距438km的两地相对开出,客车每小时行60km,货车的速度是客车速度的4/5,几小时后两车相距6km? 蛇的天敌如果有是什么呢? 生物防治害虫的例子 客车与货车同时从相距430km的两地相对开出.客车每小时行60km,货车速度是客车速度的五分之四.几小时后两车相距70千米? 蛇的天敌有哪些?(详细点) 生物防治害虫的途径y6586 客、货两辆车同时从上海和南京相对开出.客车每小时行62千米,货车每小时行60千米,经过2.5小时两车还距4.5千米相遇.上海到南京的铁路长多少千米? 某养鸡场可同时饲养肉食鸡和蛋鸡两种鸡,由于条件限制,若单纯饲养肉食鸡最多饲养9000只,若单纯饲养蛋鸡最多饲养6000只.(1)若饲养蛋鸡x只,则最多还能饲养肉食鸡y只,直接写出y关于x的函数 你能想到生物防治害虫的例子吗就是哪些虫子是哪些虫子的天敌之类 客车与货车从AB两地相对开出,客车每小时行60KM,货车每小时行全程的1/15,相遇时客车所行的路程是货车的5/4,求AB的距离 怎样区分饲料鸡生的蛋和家养鸡所生蛋很难呢 害虫生物防治的途径和方法包括哪些? 狼的三大天敌是什么 某一实验室有大小玻璃瓶五十个,每个大瓶可装水三千克,每个小瓶可装水一千克 ,大瓶比小瓶多装30千水,问大小瓶各有多少个? 作文 我马上要一篇 请问狼有没有天敌,是什么?我好象没有看到过有什么动物吃狼的,请问狼有没有天敌,有的话是什么? 有大小两个玻璃瓶,小瓶能盛6千克的水,如果小瓶的水全倒入大瓶,则只能倒大瓶的三分之二,如果把大瓶盛二分之一的水倒入小瓶,则能倒小瓶的几分之几? 小说杂志 最天使 201010月刊书的文章有哪些? 狼和狗是不是天敌? 养鸡厂一天能收获鸡蛋200个,但养鸡厂仅有一台最多能称5千克物品的盘称,你能想办法帮养鸡厂估算一下一天大约能收获鸡蛋多少千克吗? 有关人生经历的作文不要太多文字,300多就行,还要5篇 办养鸡场需要什么条件 土鸡蛋,比饲料养鸡鸡蛋价格高~营养也高? 发愤识遍天下字 立志读尽人间书出自哪篇文章?哪个作者写的文章中引用了这句话? 客货车同时从AB两地相向开出客车每时行60km货车每时行全程的1/15相遇时客货两车路程比4;5两地相距多少KM 三(1)班有30人订语文报有20人订数学天地有8人这两种报纸都订了订报纸的同学共 科学家从食物链和食物网中得到启发,想出了利用农林害虫的天敌防治害虫的方法,叫做什么? 从甲到乙地客车需12小时,货车需18小时.客货车同时相对开出,相遇时客车距终点还有176km.两地相距多少km?Quickiy! 蛇的天敌有哪些? 利用天敌控制农林病虫害的防治方法成为生物防治吗? 熊的天敌除了人类,还有什么? 李师师把120千克青菜运到超市去买,其中3分之2按每千克2.4元卖出,剩下的打8折卖出.这些青菜一共卖出?元 买五分之四千克鸡蛋用去4元,买四分之三千克猪肉用去10元,买二分之一千克青菜用去1元.你知道这三种东西每千克的价钱吗? 狼为什么会是人们的天敌 张伯伯把120千克青菜运到集市上卖,其中三分之二按每千克2.4元卖出,剩下的打八折,一共卖了多少元? 常见害虫的危害哪些植物的哪些部位.以及 一般 利用天敌害虫都有哪些,最好 特请经验丰富者帮我总结一下 常见害虫的危害哪些植物的哪些部位.以及 一般 利用天敌害虫都有哪些,最好 特别 一个小瓶,装满水时总质量为32克,装满酒精时质量为28克,求这个小瓶的质量和体积.()酒精的密度为0.8乘10*3千克/立方米 120千克青菜运到集市上,2/3按每千克2.4元卖出,剩下的打八折出卖,这些菜一共卖了多少元 小明买五分之四千克鸡蛋用去8元,买四分之三千克猪肉用去20元,买二分之一千克青菜用去2元.算出三种物品的单价.快
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn