Wesley's profileWesley's blogPhotosBlogLists Tools Help
    May 31

    Status update - 很多事情都很让人无语

    1. 新来了一位MM,我们就称她MM甲吧,之前是在FBI工作的。来这儿的原因是“在FBI的工作不够刺激”。
     
    2. MM甲很苗条。于是Wesley同学在一次开会的时候,趁人还没来齐,问以前应该不认识MM甲的帅锅乙:“你说她苗条还是我苗条啊”? (我竟然会问这种问题,一定是最近忙晕了。)
    最近也很忙的帅锅乙的回答很诚实:“不太好比较,因为没见过Wesley同学不穿衣服的样子”。
     
    3. 今天是某个产品的demo day和sprint 1的postmortem。昨天晚上9点多还有很多show stopper bug。Developer都回家了。Manager都在加班,大概在忙着数bug。
     
    4. 我半夜临睡前忽然心血来潮就remote desktop到office的机器,然后从那台机器再remote desktop到另一台机器,再ssh到一台Linux机器,试着做了一个build,结果发现有100多个编译错误。于是我决定赶紧去睡觉并希望今天早上一觉醒来一切问题都自动解决了。缓解压力的一大秘诀是“有些事情不太对劲吗? 重启一下大概就好了。”
     
    5. 今天发现貌似问题真的都自动都解决了。过了一会儿,发现帅锅丙把女儿带来了,他的女儿很可爱。闲聊了一会儿,帅锅丙诉苦说他昨天晚上忙到半夜2点,然后今天早上6点起来继续忙,终于在9点45跟医生约好的送女儿去做routine check的时间前搞出了一个貌似可以work的build...
     
    6. 中午肚子饿了,准备去吃饭,去叫帅锅乙,帅锅乙说,才得知有个feature貌似下午要demo,但还没开始做,看来得赶紧做了,饭就不吃了。
     
    7. A同学说,多生几个小孩好,每次都可以休很长时间maternity leave... 这样就可以在有full time job的同时还做full time student读完一个master degree。(女超人啊............)
     
    8. 经常毁人不倦的A同学对Wesley同学谆谆教导:“要多锻炼,不要像那个国家来的人那样一个个都那么胖”。(这也太未雨绸缪了吧,哪怕按照火星标准,我离胖也还差十万八千里呢...)Wesley:“哪个国家?”A同学:“厨房里不就有一个吗。”Wesley同学扭头一看,某位来自南亚某国的重量级帅锅正郁闷地看着我们... (我忽然很寒... 其实,在加州,懂中文的人还是蛮多的...)
     
    9. 下午,demo很成功。然后,postmortem的时候,按照惯例,有一个议题是讨论what we've done well。J同学说,ah, let's skip this part.
     
    10. 按照惯例,下一个议题是讨论我们在过去的日子里哪些地方做得不够好。貌似大家都有很多话要说,这个议题无休无止,以至于WebEx的conference bridge都看不下去了,我有史以来第一次在WebEx会议中听到那个不属与任何与会者的声音:“很抱歉打断一下,已经超过了预定的会议时间,要继续会议,请按1..." (原声为英文,貌似是conference bridge的超时自动语音提示功能。)话音未落,说时迟那时快,只见J同学以迅雷不及掩耳盗铃之势按下了1...
     
    11. 晚上,还没吃午饭的帅锅乙饿得不行了,找我去吃饭,并且买单的时候很心安理得地说没带钱,让我结帐。
     
    12. 吃饭时竟然遇到L同学了...... 她刚从一个有雨林有雪山的地方度假归来................
     
    May 30

    信息社会的白银时代, part 2

    先让我们来复习一下本科计算机课程中关于操作系统的定义。其实定义有很多种,什么物理设备的抽象啦,资源管理者啦。不过我想大家都认可操作系统的一个主要功能是管理计算资源和储存资源(我们稍后再讨论带宽资源)。我们要做什么事情需要这些资源,操作系统会负责调度。单机版的操作系统就调度这一台计算机(或者其他有计算能力的设备)的资源,分布式操作系统则会统一调度很多计算机或者计算设备上的资源。

    上次写参加VMware Forum心得的时候提到,我们其实需要一个分布式操作系统。今天我要更正一下,其实我们至少需要两个不同的分布式操作系统。就如同单机操作系统Windows成就了微软一样,在这5年里这两个不同的分布式操作系统也将成就软件行业的新一代霸主(们)。

    我们先来说比较不重要的那个分布式操作系统:A Distributed Operating System For Datacenters。这个分布式操作系统负责管理一个或多个数据中心里面所有服务器上的储存资源和计算资源,以及服务器和数据中心的带宽资源。笼统的说,基本上没人会从头另起炉灶做,大家基本都是基于Linux做的。用Linux管理单机资源,然后自己改改加加写一些管理rack、管理data center的软件运行其上。整个系统,大家通常不用分布式操作系统这样的名号来称呼它。不过没关系,我们知道这是一个管理资源和提供infrastructure service的东西就行了,我觉着符合操作系统的定义。

    很多公司(比如Google和Amazon)都做了不少相关工作,我们可以从网上找到一些相关的论文。我还知道很多其他公司也在做这样的事情,还有的公司的做法很别具一格(这些都是内线情报,可能会涉及这些公司的商业机密,就不在这里说了,欢迎有关的同学和我私下讨论。)

    通常,第一步是做一个可以跨机器、跨rack、跨Data Center的支持storage hardware的分布式文件系统来管理储存资源,其次才是计算资源。因为计算总要以数据为材料的,数据总要有地方放的。

    Google做的GFS和Amazon做的S3是beta成熟度的(虽然S3曾经至少挂掉过一次),其中S3已经release to public了。GFS也快release to public了(还记得我上次在blog里提到的那个目前只支持Python的AppEngine吗)。其他公司大都还刚刚起步,有一些公司试图借助open source的力量,颇为借重Hadoop的HDFS(Java写的),但我个人觉得HDFS现在的成熟度只能算pre-alpha,离production use还差得远。好像扯得有点远了,以后可能会撰文分析各种分布式文件系统的设计。

    除了分布式文件系统,另一个很重要的分布式储存管理的组成部分是DHT(distributed hash table)或者类似的东西。这个基本上是放宽或者调整了一些需求约束的传统数据库的替代物。Amazon的Dynamo看起来长得有点像DHT。Google的BigTable不是DHT而是multidimentional sorted map,基本上是被Google当作传统数据库的替代品用的,大致也可归入这一类。Amazon有个SimpleDB现在在limited beta阶段或许也可归入这类。有个open source的实现叫HBase,用Java写的,基本是模仿BigTable的。HBase用HDFS做储存,这很类似BigTable用GFS做储存的关系。以后可能会撰文具体分析比较它们的设计。

    很多较早进入互联网行业的公司,原本做的那些靠它们吃饭的online application都是自带backend的。这不利于data mining,不利于各个application之间的整合。于是这些公司现在正在做一个事情就是要从头做(或者基于open source的东西做)一个真正适合这些Internet-scale application的backend(也就是我前面说的那个分布式操作系统)并且要把原先那些应用程序移植上去。这让我想起了DOS时代的很多应用程序都是自己画界面的自己管理窗口自己管理鼠标键盘消息循环的,后来微软做了个Windows,于是大家都要纷纷把自己的程序移植到Windows用它的统一界面和统一窗口管理事件管理。

    第二步是,基于分布式文件系统或者分布式散列表或者其他分布式储存服务,做一个分布式计算框架。目的在于统一管理很多机器上的计算资源。

    计算资源可以以不同的粒度来分配。有一种做法是以虚拟机为单位来分配。Amazon有提供EC2,就是以虚拟机为单位,跟VMware的VI3/ESX Server颇有异曲同工之妙,每个虚拟机可以对应于一台或者半台或者更少的物理机器。EMC也会推出类似的服务,当然是基于VMware技术的。

    这种做法的下一步发展是让每个虚拟机可以对应于超过一台的物理机器。其实让一个OS可以运行于多台物理机器并调度这些机器上的资源也可以达到同样的目的。这是一个老话题了。有一些厂商做到了实用化的程度(需要专用硬件),比如Crossbeam。

    通常只有对公众开放的计算服务采用虚拟机粒度来分配资源。这些企业自己内部用的应用程序通常是专门开发的,以应用程序粒度来分配计算资源。不过这种做法要求应用程序必须针对类似Google的MapReduce这样的框架来写。Hadoop中也有类似的实现。(其实Hadoop的HDFS基本就是照搬了GFS的设计,计算框架也基本是照搬MapReduce的。)这样写出来的应用程序,可以占用一台或者半台或者更少的物理机器,但通常是占用几十台甚至几百台或者更多的物理机器。

    这些应用程序都是特制的。更终极的目标是随便拿一个传统的应用程序过来,不需要做太多的修改(最好是原封不动),跑在这个分布式操作系统上,就可以占用从半台或者更少的机器一直到几百台几千台机器的计算资源。这个比较有难度,不过也有人在做这方面的尝试。

    其实上面说的都是老生常谈。这样的分布式操作系统,很多互联网企业自己做自己用。或许有人会想成为掘金者的铁铲供应商做一个比较通用一些的分布式操作系统卖给各个互联网企业,或许有人想做通用数据中心出租给各个互联网企业(Amazon大概就有这样的想法,恐怕EMC也有)。这里面有很多各类各层次的企业,从电信基础运营商到租电信机房提供机架管理增值服务的IDC厂商到Akamai这样提供CDN的厂商到Amazon这样提供EC2、S3、SimpleDB等等基本web service的厂商。数据中心可以自己建,可以租。同一副牌可以有很多种玩法。围绕着这种分布式操作系统有很多商机,这些都不错,或许会成就几个明星企业。

    但是,这些只是在讨论国家电网应该怎么建,自来水管应该怎么排,电力公司和自来水公司应该国有还是私有,诸如此类。最多再涉及一下什么电网管理智能化之类的话题。真正会在IT江湖中掀起惊涛骇浪并成就新一代霸主的,却是另一种截然不同的分布式操作系统。

    <to be continued>

    May 27

    信息社会的白银时代, part 1

    这篇“长篇blog”会谈论在信息技术领域“what matters in the coming 3 years”,为什么我认为某些领域有很大的商机,会解释为什么我认为目前很多厂商在这些领域做得还不够好,为什么我认为EMC年初收购的那家公司值那么多钱,为什么可能有些公司会握一手好牌却打不出好局。

    让我们先从一个古老的比喻开始:信息就是金钱。

    初中的时候大家就这样说了,而且貌似毫无争议的样子。时隔多年之后,让我们重新来审视一下信息和金钱的类似之处吧。

    【1】 I don't want to lose any of it
    数据的丢失和钱包丢了一样会让人不爽。不管是我辛苦写了半天的PPT还是出去旅行时拍的照片还是我刚刚写了1/5的blog。

    【2】 It creates more value when it moves faster
    学金融或者经济的同学都知道我在说什么。货币的价值要在流通中体现。信息也是一样。

    【3】 收益与风险
    投资的时候,我们都知道高风险往往和高回报形影相伴。很多人都原意冒一些在可承受范围内的风险去追求较高的回报。其实信息也是这样的。这个和【2】中提到的“在流通中创造价值”有关。约束信息的流通自然可以增加安全性(貌似现在在公司发邮件不可以用可执行文件做附件了,据说有的公司把笔记本发给员工时会把USB口禁用,诸如此类),但也会限制价值的创造,或者至少对效率有负面影响。

    【4】 谁来保管的问题。
    现在大概很少会有人在后院里挖个坑埋钱了,我们的很大一部分财富都会由银行保管。不过前提是银行要保证以下几点:
    a. reliability 我托管在银行的钱不会莫名其妙丢失
    b. availability 我需要花钱的时候就能很容易的花,银行要到处有分行到处有自动取款机并且最好24x7营业,我要取钱是能很容易取到。另外,最好在大多数需要花钱的场合可以不用取现直接刷卡就能消费。
    c. security 别人未经我的授权没法从我的账户上把钱取走
    d. sufficient bandwidth 其实这个应该归入availability,不过我想强调一下。没错,在ATM机是不能一下子取100万出来的。我出国之前好像大多数银行的每日提现限额是5000,听说现在有提高,不过还是有限额。刷卡也有个最高消费额度。但是只要这个额度足够日常使用,我就觉得perfectly OK。

    尽管现在的银行都做到了以上几点,大多数人还是不会把所有的钱都存在同一家银行。也不会只办一个银行的信用卡。我曾经有一次凌晨抵达上海浦东要入住酒店,结果我的招商银行信用卡刷不出来(后来问了一下招行,好像正好那天凌晨招行的设备在维护或者升级,我的人品啊...)。不过幸好我身上还带了其他银行的卡。

    另外,就算我们把钱存在好几个银行,办好几个银行的信用卡,我们通常还是会在口袋里揣一些现金。我记得在南京的时候我有一次去苏果超市买吃的东西,排队结账时忽然停电了(那么POS机当然也就不能刷卡了),幸好我还带了一些现金。

    那么,我们的数据也是一样:现在很多人都会通过online service来保存数据。比如我已经用了一阵微软的SkyDrive了。还有GoogleDocs,还有Gmail和Live Mail。自然我们也会希望
    a. reliability 我的数据不会莫名其妙丢失
    b. availability 我想访问自己的数据时可以随时随地访问,24x7,从地球的任何角落
    c. security 未经授权的人应该无法访问我的数据。陈冠希同学一定对这一点深有体会 :P
    d. sufficient bandwidth 我能理解所有的online service都有带宽限制,但带宽要足够使用。比如我旅行时拍的1080线的高清DV最好可以吃饭的时候顺便就传到online storage,几个G的数据最好几分钟传完,而不是传一个晚上后早上醒来发现一个页面提示传输失败。

    那么,显然,现在所有的online service vendor都做得不够好。

    存在网上的数据真的永远不会失去吗?自己的数据真的会不管何处不管何地都available吗?看看这个: http://storagezilla.typepad.com/storagezilla/2008/04/rain-making-clo.html
    HP是一家很大的公司,而且近来也没有破产或者经营不善的迹象。但是他们还是说suspend就suspend了那个HP Upline Service。当然他们给了那位同学通知,也给了他时间让他在永远无法访问自己的数据之前尽快把数据下载下来。不过如果那位同学去埃及度蜜月了几个月没上网没收到通知又会如何呢,如果他当时正好位于汶川,后来在医院一躺躺了几个月没及时看到Email通知去把数据下载下来又会如何呢,或者他只是每天都有很多Email碰巧忽略了这一封(或者被当作垃圾邮件给过滤掉了)又会如何呢,他会在稍后的某一天忽然发现访问不了自己托管在HP的数据了,可能是永远访问不了。

    还有一个风险是,就算HP没有suspend那个upline service,但是... 嗯大家都知道我们在地球的某个角落能不能访问wikipedia或者blogspot并不仅仅取决于wikipedia或者blogspot的网站有没有挂掉的... 如果有一天有些人忽然觉得HP Upline Service长得不像互联网良民的话...

    另外,顺带提一下,貌似去年年初海底光缆断裂了,抢修了好多天才恢复。不过这个不是啥大问题,因为可以mitigate,纯技术手段:到处建data center并把failover做好就行了。

    另外,可能有些同学知道,今年2月份,Amazon的S3 service挂掉了2个多小时。大家可以用Amazon S3 down这几个关键字来Google一下。这个影响非常大,因为不少知名网站都用S3来储存一部分内容的,尤其是很多startup。而在这之前我们都以为S3是不会挂的。我们写商业计划书写到reliability和availability的时候都会这样一句话带过:因为我们的backend用Amazon S3,所以reliability和availability不是问题。不过现在大家再这样写时底气大概不会那样足了。

    所以,大多数人选择在哪里存放自己的信息时,还是不会想“把所有鸡蛋都放在一个篮子里”的。可能会选择至少2个online storage vendor,这个和现在大家选择银行类似。或许在6、7家银行都开有账户的同学也不在少数吧。另外,然后还要在身边留至少一份copy(就像钱包里的现金,可能有些人还有家里的金条和某些地方的不动产)。

    ==============

    “信息就是金钱”是个非常powerful的metaphor。或许有心的同学看到这句话就想到很多商机了。比如“银联”啦,“VISA”啦,“个人理财”啦。不过stay tuned,我们还没有开始讨论计算呢。

    <to be continued>

    May 24

    火灾

    昨天听见L同学大喊oh my god然后旋风般冲回家了.一问,说看到新闻说她家住的那个小山上森林火灾,她要回去看看房子有没有烧掉.
    所以,同学们啊,住山上的豪宅也是有风险的,虽然推开门就是森林感觉很好... (同理,海边的豪宅推开门看见海很舒服,但是龙卷风来的时候... 所以beauty往往伴随着danger...)
    今天起床后觉得嗓子疼
    到公司后看到一封信说昨天Santa Cruz火灾了,连带Cupertino的空气也遭到污染,建议sillion valley的员工work from home
    那么我家也住在sillion valley啊,不是呼吸着同样的空气么...
    要么提前去度假算了... 我要去一个没有地震和火灾的地方...
    ========Update========
    今天看到了乌云和火红的晚霞。这在bay area还是蛮难得的。
    May 23

    如果那一天

    继不久前USD:CNY跌破1:7之后,又一个数字发生了历史性的突破:油价超过$4/gal大关。(指87号油。89和91号早过$4了。)

    其实油价一直在涨。一年里大约从$3.09涨到$3.99吧,不过反正都是3开头也没啥感觉。前几天跟Y同学carpool去开会时回来路上Y同学在Shell加的油还是3.999/gal呢,今天我在同一个地方加的就变成4.079了。

    回家路上特意留意了一下,看到的所有加油站(包括Shell、Chevron、Valero、Beacon、Union 76、RottenTomato)都超过$4了。

    1年前加一箱油经常只要$30多,如果超过$40那通常是油箱彻底空了告警灯亮了才去加。今天这一次,$65.04。不知道会不会有加一次油要$100的那一天。(美国开始打伊朗了估计就差不多了。)等到那时候我就天天work from home。
    May 20

    推荐一本书

    是Ian H Witten、Alistair Moffat和Timothy C Bell写的Managing Gigabytes: Compressing and Indexing Documents and Images。
    虽然没有讲在数据不断动态追加的情况下如何去compressing和indexing,但是也蛮有用的。
     
    L同学托我买,买了之后翻了一下觉得不错,于是自己也买了一本。
    May 16

    Back from VMware Forum

    今天参加了VMware forum。一些思绪:
    (1) 其实我们很需要一个分布式操作系统。不过现在主流的操作系统,包括Windows、Linux、Mac OS X,都不是分布式的。而分布式操作系统都停留在学术研究阶段,没有一个可以实用的。所以有各大厂商以各种各样的方式去试图实现部分分布式操作系统的功能。
    (2) data de-duplication技术真的很重要很重要很重要。我决定增持一些掌握比较好的data de-duplication技术(以及专利)的公司的股票。比如EMC的。
    (3) 下一个版本的VMware会提供初步的data de-duplication。这样比如所有以Windows XP SP2为guest OS的VM就可以共享Windows binaries了,相同的文件只是一个symbol link,做Windows Update也可以只做一次就更新所有VM。对个人用户来说这没什么。对企业用户来说这是一个飞跃。事实上这个idea去年L同学有跟我提过,显然VMware的同学们也都很清楚下一步该做什么。
    (4) VMware最近并购了Thinstall公司。大家可以Google一下Thinstall公司是做什么的。
    (5) 就像Java的VM一样,VMware的VM对于计算密集型的应用没啥问题,对I/O密集型的应用会有一些性能开销。不过对于磁盘I/O,ESX的VMFS已经是一个不错的解决方案了。而对于显示I/O(比如看电影、玩3D游戏),个人感觉不重要,因为VM主要的应用是服务器、数据中心、商用桌面,这些对显示I/O的要求并不高。对于个人用户的视频应用,WYSE给出了一个解决方案。至于游戏... 同学们可以装作不知道VM是什么。
    (6) 我越来越佩服EMC负责收购公司的同学的眼光了。RSA是一笔好买卖。VMware也是一笔好买卖。这些现在地球人都知道了。其实EMC最近还收购了一家小公司,这个现在大多数人还不知道是不是好买卖,但那些知道我去年年初都在做什么的同学一定会猜到我要说什么。这家公司至少值一打Google + 半打微软 + 20斤苹果 + 1筐橘子 + 3车皮黑莓的总和,再平方一下。
    (7) 其实这个是以前看社会行为学的著作的时候认识到的: unearned revenue = loss(或者cost). 可惜我们往往对后者很重视,对前者则经常忽视.
    (8) 偶发现自己很容易对某种类型的女生crush.

    May 06

    推荐一部电影

    名字叫《上海之吻》(Shanghai Kiss)。

    不是什么知名导演知名演员的大制作,事实上男主角长得不怎么样。但是,个人感觉这部电影要比某些所谓著名导演编导的拥有豪华演员阵容的所谓大手笔的电影要好100倍。

    对剧情不要太较真,这是一个寓言故事,寓言都是不拘小节的。

    这部电影有点难归类。或许应该算喜剧,但... 让人有时候想流泪的喜剧还是蛮不常见的,而且通常喜剧也不会涉及太深刻的主题。不过显然和人鬼情未了或者泰坦尼克那样的爱情片也不是一个类型的。

    BTW 一些心情转变:
    看了前5分钟,心想看来以后要少开车多坐公交车(超喜欢那个很cute的笑起来甜甜的女孩子)。
    看了前15分钟,TNND男主角长得看起来还没我帅,也不像很多金的样子,艳遇却比我多,而且那些MM都很PP,心中甚是忿忿不平。
    看了前20分钟,心想莫非he's playing hard to get? 现在流行男生玩这个吗?
    再看下去,就收起了这些玩笑心态。貌似...这是一部严肃的片子??!!
    看完之后,再想想,晕,把房子送人了,把车子卖掉了,然后就~!#¥%……&×了(避免剧透所以这里略去结局不说),那么这还是一部喜剧。

    看的时候一直不知道导演究竟想拍啥,看完了才明白,而且看完后还貌似觉得好像领悟了什么或者灵魂哪里被触动了的样子(其实可能也没领悟什么,睡一觉醒来就全忘了...)。没有看一些国内电影常有的“被当作小学生对待了”的失望感觉。这说明导演很成功。

    ============

    近期还看了《西西里的美丽传说》和《日本沉没》。前者据说是很经典的片子。看完后发现是讲一个小男孩暗恋一个少妇的故事,基本这个“美丽传说”很黄很暴力。后者是很著名的灾难片或者爱情片。男主角长得不怎么样(again!莫非影视圈缺乏帅锅...偶要不要考虑改行...)。灾难场面还是很好看的。在直升机起飞前相拥然后音乐响起那个场面也不错(虽然很老套)。

    May 03

    Getting things done

    工作中,我曾经提过一些想法,当时没有下文,还有人觉得我的想法很不靠谱。这也没什么,反正基本上我对提100个想法然后去尝试10个想法最终看到1个想法成功这样的事情已经习以为常了。不过,满意外的是,今天回头看看,当初那些想法现在逐渐都有了结局。

    故事1:我曾经写过一篇关于effort reuse的blog提倡virtual feature team。原帖在这里:http://wesleybao.spaces.live.com/Blog/cns!B8C72620C46CF4CA!2855.entry

    差不多时候,或者更早一些,我也曾经把这个想法用英文写了一遍email给公司内部一些相关的人。没有发All of XXXX 这样的distribution list,只是小范围讨论,抄送的人中最高级别也就director。收到一些feedback,不过貌似没有人支持这样做。

    现在,我们公司已经开始这样做了。我在Outlook的address book里看到了virtual team的email distribution list,在SharePoint portal上看到了相关的sub site和discussion thread。

    故事2:2006年3月,我写过这样一篇blog推崇virtual appliance: http://wesleybao.spaces.live.com/Blog/cns!B8C72620C46CF4CA!1158.entry 。 不过当时并没有跟自己公司的任何人提,除了有同事看到blog后跟我做纯技术的讨论。因为我觉得这个技术当时还处于早期市场阶段,还没有cross the chasm,还没到应该投入resource去做的时候。

    然后,到了2006年的年底,也可能是2007年的年初。反正那个时候我在波士顿忍受着暴风雪的肆虐。那时候我的唯一工作就是使劲写project proposal。除了一些其他的proposal之外,我觉得当时时间差不多了,就写了个PPT发给老板建议进入virtual appliance市场。当时我的老板是一位Senior Director of Engineering,我老板的老板是VP of Engineering。基本上所有的proposal都被转发给了那位VP of Engineering过目。不过一直没有下文。再后来我的老板辞职了,于是我就临时性地直接report给VP of Engineering,但这些proposal还都是石沉大海没有下文。再后来我离开东海岸来到加州做其他事情了,也就不再去关心了。然后有一次偶尔想起,就问了一下,得知我当时的proposal都被拿到due diligence team去做market & technical due diligence了。再后来,也就是今年年初,公司高层忽然在内部高调宣布我们要进入virtual appliance市场。哦,我在blog里写这个也不算泄露商业机密,因为Google了一下后发现有4月份的新闻提到这个事情了。

    关于现在进入这个市场时机是否正好,我就不评论了。我记得Gartner还是哪家analyst的report会有一个hype wave的图表,告诉大家哪项技术现在走到了哪个位置的,感兴趣的同学可以去找来看看。

    还有一些故事,现在还不好在这里公开说。

    那么,我在这里再提一个想法,看一下多久会变成现实。

    Problem:我看到R&D engineer基本都是每人有好几台电脑,一台电脑(很可能是Laptop)用来办公(上网和收信以及写文档写PPT),这台电脑可能装的Windows也可能是Mac OS X;一台电脑(多半是台式机)用来做Windows下面的开发;一台电脑用来做Linux下面的开发;可能还有一些电脑用来测试。有的软件还需要好几台机器来测试。每有一个新人加入这个team,就需要给他订购一堆电脑,然后告诉他怎么把开发环境搭起来,怎么样配置SCM工具的客户端,怎么样做local build,怎么样把测试环境搭起来。基本上光是装软件就需要一整天功夫。如果开发环境需要从头编译toolchain的话,可能要好几天时间。

    Solution:R&D engineer每人有一台laptop就够了。然后再给他们配2个19寸或者1个24寸的显示器放在办公桌上。其他所有的办公环境开发环境构建环境测试环境都做成VMware的image,host在公司的data center的virtual infrastructure上面,按需使用。办公环境和开发环境每人都基于标准image来personalize然后保存成自己的image。测试环境则可以是相同的image跑多个instance。

    好处是显而易见的。省了很多重复的装软件搭环境的时间,新人加入team后可以减少ramp up的时间,尽快开始投入工作。也避免了很多因为大家开发测试环境差别而导致的问题。还可以少买很多电脑,也就省了维护这些电脑的麻烦。大家的办公室也可以美观整洁很多。

    Let's see what will happen :)