在日本写代码的日子(二十八)

一宿没睡,第二天一早我们通过手机得知地铁已经部分恢复,便各自坐车回家了。

在回家的路上,我在大脑中不断仿真着家里劫后余生的样子。电视机倒在地上,满地玻璃渣子。大橱即使没有散架(因为是我自己拼装起来的),估计门也开着,倒伏在床头,里面的东西散落一地。。。

然而,当我打开家门的时候,一切都似乎没有任何变化。仿佛昨日的地震,只是我的一个梦境。

我非常仔细地检查家里的每一样东西。唯有洗漱台上的口杯落入了洗面盆,牙膏牙刷掉了出来,向我述说着昨日的事情。

我打开电视,看着最新的地震新闻。一副东京湾的地图上鲜明地标注着:东京都江东区,震级8。

“也许是只有垂直方向的晃动,没有横向的摇动吧”

我尝试着向自己解释这一切。

咚,手机收到了一条短信。

“请大家注意安全,保持手机打开,等待公司进一步的通知。”

看来要在家里等待一段日子了。我决定到附近的超市里面去购买一些物资储备起来,因为交通大混乱,估计很快就要发生物资短缺问题了。超市离开家并不远,步行5分钟的样子。

然而显然我去晚了。超市的货架上已经稀稀拉拉,特别是饮用水、卫生纸已经被抢购一空。

于是我去了附近一家更大一点儿的减价店,那里还有一些饮用水和卫生纸,但是也不多了。

很快,电视里开始播报福岛核电站的核泄漏问题。这时公司已经通知大家恢复上班。中午大家坐在食堂里,看着事态不断升级,议论纷纷。

公司里有不少关西的人,他们开始议论是否要回到关西,通过VPN参加工作。

很快,公司批准了。

于是我也提出,回到国内,通过VPN参加工作。

很快,公司也批准了。

然而,回国的机票并不好买。东京至少有几十万华人,大部分现在都在买飞机票。

这时候我的一位好友通过MSN和我说,他有个姐姐在航空公司做,可以帮我问问是否可以买到机票。

很快,我接到一个电话,从东京到香港,再从香港到上海。2万RMB。

在平日里,从东京到上海往返的票,也就4万日元左右(3000左右)

我有些犹豫。“我现在在订票台,后面很多人排着。10秒钟内你不给我回复就被别人买走了”,她催促道。

“好吧”。特殊时期,没有办法。

就这样,我人生第一次去了香港,只是在机场逗留了几个小时。

回到国内以后,我每天通过电子邮件以及Skype从家里参加工作。但是福岛的事情迟迟不见收尾。1个多月后,回到关西的人渐渐回到了东京办公室,但是我的家人反对我回去。在和上司商量之后,同意我在家多留几个月,中间去南京跑了两趟,也算是出差。

大约3个月后,我回到了东京办公室。但是灾害导致公司很多项目拖延或者取消,公司的资金链进一步断裂。很快,公司发出召集令,表示要进一步大幅缩小公司规模,募集自愿退职者,公司给与一定的补偿(提前支付部分退休金)

看着福岛的事件迟迟不收场,老婆也不愿意再过来,我去找了部长,商量我是否可以报名。部长和我说,有没有别的办法可以不走。因为那个时候ACCESS实际上在上海也有一支小队,我就提出是否可以把我调到那里去,反正现在NFLC SDK的开发工作也是在南京,我从上海帮他们看着南京的开发工作,并且如果可以,还可以在上海组建一支队伍,接日本的项目。

部长觉得这个方案很好,就帮我去和社长争取了。但是因为实际那个时候公司已经决定要spin off中国国内的业务,所以社长没有同意。据说,部长甚至和社长说,如果他不同意,那么他(部长)也不干了。

最后,我和部长,还有狩野课长,都提交了自愿退职的申请。不过,狩野之后成立了自己的公司,仍然是从ACCESS接原来的活。只不过把自己从社员变成了外包。而部长,则回到他原来的单位(NTT Data),继续干着他喜爱的DLNA相关的工作。

2011年6月,我回到上海,结束了在日本8年的“抗战”。让我意外的是,房东将那2个月的押金退给我了。

(完)

在日本写代码的日子(二十七)

在所有灾害小队确认人已经到齐之后,总务开始了对办公楼的检查。然而就在这个时候,强烈的余震开始了。

我们的办公楼对面,是NTT的大楼。在余震当中,这栋楼好像一根面条,不仅左右前后摇摆,而且twist(扭动,就好像跳拉丁舞将上身和下身朝不同方向扭)。楼外悬挂的玻璃幕墙哗啦啦地如同麦浪那样滚动。

我本以为即使楼不塌,玻璃幕墙也会碎一地。然而这些并没有发生。余震过后,大楼还是一如既往地那样矗立在那里。

不得不赞叹日本的柔性建筑技术。简直NB得不行。当然,如果有人在上面,估计会被吓半死。

大约半个小时过去之后,余震不再明显了。公司总务在球场上用喇叭喊话,说已经检查过,楼无大碍,让大家回去上班。大家一片嘘声,没人移动。

其实这个时候,我并没有感到太多的恐怖。我还和狩野开玩笑,问他是否有遇到过那么大的地震。

“有生之年系列,这个肯定是。”狩野回答到。

大家都打开手机,查看着电车的运行状况。电车已经全面停止了。正在考虑如何办的时候,总务再次喊话,说如果想要回家的,可以在汇报给所属长之后离开了。

就这样,很多家离开公司在30公里之内的,开始尝试寻找方法回家。在球场等待的时候,公司里的十来个中国人聚在了一起。我们决定先走到车站去看看情况。

出了公司,眼前的景象虽然不能说惊呆,但是绝对是意想不到。之前平坦的马路变得凹凹凸凸,很多地方出现了过膝的积水潭。而原本柏油石子路面变得和烂泥地一样软绵绵。

我一开始以为是自来水管破裂。然而旁边一起步行的日本人听到我们的讨论,告诉我们这是管涌。原来因为海滨幕张靠近东京湾,地面下土质松软,地震之后形成很多空洞,将海水倒吸过来,从路面塌陷的坑涌出。整个地盘出现了“液状化”。

也就是说,现在路面下面已经变成了沼泽。

大家都很小心地绕开塌陷的路面向前走。可能花了2个多小时,才走完了通常只需要30多分钟的路程。到了车站的时候,已经是傍晚。

我们几个中国人一路上有说有笑,倒也没有特别的忧心。而且我几个高中的同学居然很快知道了消息,通过MSN发来问候,很是感动。听他们说,成都和上海居然也有震感。我也给家里发了一条信息,说情况虽然挺糟糕但是没有受伤一切很好,不必担心。

当我们到达幕张本乡站(公司虽然离开海滨幕张站最近,但是那条线路因为靠近海边,平常风稍大就会停运,所以我们直接去了内陆的总武线车站),这里早已经人山人海,无论车站内外,地上都坐满了人。但是大家都很安静,没有任何喧哗。

车站前的公用电话门口排起了长队,我这才意识到电话可能不通了。拿出手机试着拨了一下,果然不行。但是互联网仍然可以上,很神奇。于是我们又开始讨论为什么会发生这样的“bug”

这时大家感觉到肚子饿了。我提议到,反正也回不去了,不如先吃个饭。车站里有一家松屋,这时人却意外地少。于是我们几个进去先解决温饱问题。

吃饭时,有一个中国人同事提出他家离开这里最近,不如都去他家。于是当晚我们就决定到他家去睡。

他家有一间榻榻米的房间,大家就在那里席地坐下。这时我想起了富士山的那个小屋。

灾害的时候获取情报是最为重要的一件事情。这是我从多次的灾害培训当中学到的。所以我打开了电视,看到了日本东北地方直升机的航拍。一个人开车躲避海啸,却很快被海啸追上吞入海中。而在气仙沼,因为海啸,一个炼油厂的原油泄露,海水载着冲天火焰冲入气仙沼住宅区,那里多为木头房子,很快燃起了熊熊大火。宛如东京大轰炸再现。

这时的我,意识到事情远比我想象得可怕。折腾了一天,虽然身体已经很乏了,但是我没感觉到一丝睡意,全身直冒冷汗。

我们将啤酒瓶倒立,制作了一个简单的地震仪。

半夜,一个同事不小心碰倒了它,惊起一片“鸥鹭”。

在日本写代码的日子(二十六)

也许是公司的创始人荒川和镰田认为ALP的失败是他们的过于冒进的投资决策给社员带来了麻烦,又或许是本着对员工负责的态度,在荒川先生死后荒川的家人主动捐出了一部分股份,将其变卖支持公司的运营。

除了释放更多的资金,公司也全力压缩人力成本之外的成本,并且想一些其它的方法获得收入。比如,因为技术中心的楼原来是宝马的大楼,地面上地下都有很大的停车空间。之前公司将这些地方改造为篮球场和乒乓球场,现在又改了回来,出租给旁边公司的员工作为停车场,来回笼一些资金。

产品方面,公司进一步开拓市场,将服务的客户范围拓展到诸如电子广告牌,电子书排版出版等新的领域。

但是所有这些努力在ALP所造成的数百亿损失面前都显得有些力不从心,快速缩小企业规模,重新回到精英化经营才能过冬。

我被公司列入了精英的队伍,公司为我准备了一系列的培训。比如PMP(国际项目管理)课程、创新课程、管理课程、企业经营课程等等。

并且,我被调回NFLC的开发团队,准备接手课长的职务。不过这个时候NFLC团队的课长已经不是原来那位“老糊涂”,而是另外一位,专门来在我能够接手之前,代职的“傀儡”课长。

然而谁都没有想到的是,2011年3月11日下午,日本东海发生了史无前例的李氏9级地震。公司所在的海滨幕张的震级在6到7之间。这次地震虽然波峰震级很高,但是能量衰减较快,房屋受损的情况并不是很严重。但是,就如大家知道的,福岛核电站“漏油”了。

发生地震的时候,我正在技术中心13楼的办公室与课长谈话。我们感觉到楼板开始晃动,很快反应过来是地震了。但是地震在日本十分普遍,我们也是见怪不怪了,所以大家只是停下手头的工作,扶着眼前的桌子。

然而,晃动并没有如同往常那样很快结束。相反,楼板晃动的幅度越来越大,地平线在窗户外起起伏伏。甚至,我能从位于办公室中央的位置上,透过窗户看到篮球场上的白线。

这不是一场普通的地震。我环顾了一下四周,大家表情都变得紧张。但是并没有混乱。

“请大家藏到桌子底下。”不知道谁喊了一嗓子。应该是灾害委员。在日本,每个课或者部都会有灾害小队,由社员轮流担当。小队里有明确的分工,有的负责引导,有的负责抢救,有的负责灭火,等等。定期还会有灾害演习。

所以,这样的命令我并不是第一次听到,但是这次是真的。

我迅速地藏进了桌子底下。桌子是全钢板的,很结实。

然而,很快桌子也开始移动起来了。我只好跟着桌子跑,心里开始担心楼是不是会拦腰折断,并且是不是可以开始在手机上写点遗言了。

大地震发生的时候,会有一种十分诡异的声音。可能是建筑物当中钢筋和混凝土摩擦的声音,也可能是来自地球内部的声音。

就在我胡思乱想的时候,这个声音开始变小了,桌子也慢慢停下不动了。

在确认楼面确实不再晃动之后,我从桌子下探出了脑袋。此时楼里面的灾害警报已经响起,灾害小队的引导员在示意大家原地保持不动之后,去取了安装在墙上的应急物品,举起了小旗,打开紧急出口,引导大家按顺序撤离。

在沿着逃生楼梯下楼的过程当中,听到后面的人说,墙这里有裂缝,那里有裂缝。我没有抬头看,只是一心下楼。

很快,所有人集中到了地面停车场改造的篮球场。我打开手机,发现还有信号,能上网,也能看地上波(日本的非智能手机可以直接收看数字电视,称为One Seg,就是只接收数字电波当中一部分的信号解码播放。原理和交错编码的png类似)。放心了不少。

在日本写代码的日子(二十五)

通过1个多小时的梳理,我大致定位了问题所在:

  1. 现场的工程师基本上是我以前组里资历比较浅的。对NFLC SDK自身的认识不够,不能一针见血地指出问题所在,导致客户怀疑我们的专业能力,这是客观基本问题;
  2. 现场的PGM在汇报问题的时候,没有明显区分客观事实、推理、提案这三个部分,导致客户在不信任的情况下,很容易抓住把柄,进行反攻,将所有问题推卸到我们这边;
  3. 上面这些问题在过去的几个月当中反反复复,导致了双方的决裂;

针对这些问题,我制定了解决方案:

  1. 将问题的真正所在,以及问题产生的机理告诉组里的工程师,并让他们修改代码进行实际的验证,将验证结果做成报告;
  2. 由我暂时接管现场的项目管理工作,让可怜的PGM回酒店好好洗个澡,刮个胡子理个发,然后美美睡上一觉;
  3. 将汇报内容按照客观事实、逻辑推理(问题原因的推测)、修正方法的提案这三个模块进行重新组织;
  4. 与客户沟通的时候做到对于客观事实双方必须一致确认,对于逻辑推理双方进行逻辑上的互攻、对于解决方案提供多种方案供用户选择

凌晨3点钟,对方的部长带着几名资深工程师下来了。课长首先向他们介绍了我,说我是DLNA方面最好的专家,并且在skapa实验室作为主要技术人员与日本的各大电器制造商成功完成了对接,目的是让对方认识到我们很重视这个项目,也为我添加谈判的砝码。

接下来我首先代表公司对项目的进展情况表示由衷的道歉,同时指出当前的首要任务应该是尽快解决问题,而要解决问题必须保持高效正向的沟通,对话的决裂会使得项目停滞不前。

然后,我按照前面的叙述框架,将目前所有没有解决的问题一个一个梳理了一遍。每讲完一个客观事实(对问题的定义),我都会询问客户是否承认这个客观事实,描述是否完整。这样做的好处是避免由于对问题的不同定义而引起的分歧,而且其实也是将问题的范围锁定住,避免客户那里因为测试不充分在后面不断地扩大问题的定义。

在客户的部长表示对问题的客观事实认同之后,我具体阐述我们对问题发生机理的逻辑分析。这个时候需要注意的是,因为客户并不保有和我们一样的底层知识,所以仅仅用我们具体实现的现状去说服客户是不可取的。因为这里有个信息不平等的问题。

所以,在说明的时候不仅要说明我们目前是怎么做的,而且要说明为什么这么做,是否有其他的替代办法,各有什么利弊。要做到客观通俗,逻辑清晰。

最后,我提出问题的解决方案。这里常见的问题是,往往双方都会倾向于选择不需要自己动手的方案,也就是将工作量推给对方。但是由于双方在合同关系上存在着委托关系,所以被委托方往往会被欺负。这在工程师这个层级可能是无解的,所以就要充分给站在更高角度,对项目全体负责的人讲明白,哪种方案是对项目整体最好最自然的。这样就可以得到对方管理职的帮助,对方的工程师也就难以将工作完全推过来了。

这个会议一直开到天明,对方的部长终于理解了当前问题的全貌,也意识到很多问题是需要双方共同解决的。会议之后双方工程师立马开始了解决方案的执行,而我被对方的部长叫到了3楼,与他们的技术负责人再次开会,将所有open的问题都过了一遍。

临近中午,我才终于有时间回到酒店,但是酒店已经帮我调换了房间,我的总统套房就这么样没有了。

为了帮助现场年轻的工程师解决问题,我继续在神户呆了一个月左右。但是因为我手上还有自己的项目,所以我没等项目完全结束就回东京了。走之前客户请我们吃了神户牛肉,非常美味。

在日本写代码的日子(二十四)

荒川先生死后,二把手镰田先生接任社长,ACCESS进入镰田时代。

在免费的Android的巨大阴影下,ALP显然已经没有太大的商机。不过好在公司银行上还有不少存款,暂时还不会面临倒产威胁。

但是随着动态网页技术的广泛运用,嵌入式硬件性能的飞速提升,以及移动设备屏幕的不断精细化,对嵌入式浏览器的需求越来越小。特别是Android的出现使得在移动设备上提供与PC一样的浏览器体验变成了大家的普遍期待。所以采用Netfront浏览器的项目越来越少。为了应对这种局面,公司决定将Netfront的排版渲染引擎替换为开源的WebKit,然后集中力量优化Javascript引擎,使其能够更好地支持动态内容。

另一方面,随着4G网络的展开以及通信资费的快速下调,无论是网络运营商还是用户对于多媒体内容特别是视频串流的需求越来越大。所以这个时候NetFront Browser和NetFront Living Connect的地位开始发生了微妙的变化。越来越多的项目,变成了后者搭售前者的情况。

为了尽可能抢占市场,补偿ALP造成的巨大损失,镰田开始大规模改组ACCESS,将其由原来的按照产品划分的组织结构,转变为以产品为纵线,以项目为横线组织的复合结构。每个人都有两条汇报线:产品经理,项目经理。同时大幅缩减ALP的开发人员。

这个时候,很多南京来的同事,都被要求回国了。小张也在其列。但是小张不想回去,想留在日本。

我和课长都觉得他业务能力很强。所以课长专门去找了新社长,将他特别留了下来,转成东京的员工。据我所知,这应该是唯一一例。

当然也有一些别的南京来的员工,不愿意回去的,采用了跳槽的办法。

而我因为成功地完成了NFLC SDK商用化以及skapa项目,被作为项目经理,选拔到了一个称为项目管理课(PGM课)的组织里面。

PGM课的主要任务就是要确保项目在预定的时间内按照预定的成本完成,并达到预定的目标。但是事实上,任何项目都是包含着无数的确定性的。所以,各种技术要素或者人员并不是固定不变的,而是流动的。

PGM的课长,也就是我的新课长,叫狩野,是一个项目经验十分丰富的人。他原本是在日本航天项目当中做数模模数转换相关工作的,后来因为他十分热爱数码产品,就来了ACCESS,负责了很多客户项目,而且一般都是那种烂尾的项目。

所以他自称911救护队长,而PGM课自然就是救火队。

由于双汇报这种形式在管理上比较复杂,公司用C#开发了一套项目管理系统,包括项目的报备、审批、预算、立项、开发进度管理、验收、交付等等整个项目到生命周期。每个PGM(项目经理)都会使用这套系统管理好几个项目,而所有的人每天的工作时间都需要按照项目分割报到这个系统当中。也就是说,每个人每天的工资,都是要从参与的各个项目当中去领取的。这样就形成了一条条的项目管理线。

2009年我们从NEC System Technologies接了一部手机(型号名:N-02C)的DLNA开发任务。因为当时我手里已经有3个其它项目,所以这个项目指派给了课里另外一名PGM。

当时日本的手机市场十分封闭,完全处于运营商的控制之下。运营商每年会制定2次规格,春季一次秋季一次。规格里面精确到手机的各个参数,软件功能,甚至是大部分的系统界面。各个厂商据此设计生产手机,然后运营商包销。其实基本上和代工没啥区别。

所以,虽然NEC是大厂,但是在这个项目里并不是甲方。N-02C是为NTT docomo 2010年春季定制的型号,采用了ALP作为OS,所以也自然地采用了NetFront Browser和NetFront Living Connect。而NEC ST则主要是担当硬件和GUI部分。

然而项目进行得并不顺利。到了2009年年底,DLNA相关的功能依然有很多问题,整个项目团队被NEC关在神户,甚至日本的新年都没能够回来。

在这种紧急的事态下,该项目升级为红色项目,狩野课长在圣诞节之前便去救火了。然而不久我就得到课长的传唤,说现场情况很糟,需要我去帮忙。

于是我很荣幸地得到了去吃正宗神户牛肉的机会。

前面也提到了,在被关在skapa实验室里面的时候,有另外一位负责DTCP-IP的日本人员工和我在一起。他的老家就在神户。

神户在1995年1月17日早层5时46分曾发生大地震,7.2级,5400多人死亡,3.4万人受伤,整个神户市基本上被摧毁殆尽。而我的那位的同事,他那个时候就在那里。他说早上正在睡觉,突然被摇醒,人摔到了床底下。后来推门出去,发现家被拱到了半山坡。好在人没事。

所以这次我去的是其实是后来再建的新神户。

NEC ST的办公室并不在神户市内,而是要从神户站坐地铁,基本坐到头。我到达那里的时候,天基本上已经黑了。

我先去宾馆check in。由于太晚,房间已经全满了,宾馆给我升级了总统套房。这也是我人生头一次住总统套房。套房很大,落地窗就有4个。浴室里安装的是很大的按摩浴缸,旁边放着二十几个小瓶,看起来是各种香型的香油。

然而我并没有机会享受。在简单的刷洗之后,我就直接赶去了NEC ST的办公室。那个时候,已经是凌晨1点。

NEC ST的一楼和三楼灯火通明。我们的人在一楼,他们的办公室在三楼。

我首先去了一楼会议室,也就是我们的人进行作业的地方。

推门进去,首先看到的就是我的课长,他正在白板上写着什么。旁边,坐着这个项目的PGM,胡子已经长到盖住了嘴唇,头发乱作一团,眼窝凹陷。其它几个成员看到我来了,和我打起了招呼。

“你们辛苦了”,我说。

“真是不好意思,把你也牵连进来了”,一个工程师说。

我走到那个PGM旁边,拍了拍他的肩膀:“多久没回去了?”

“好几个月了,我都记不清楚了”,他苦笑着。

“还活着就好”,我朝他笑了笑,他也苦笑了一下,趴在桌子上不动了。

我走到课长那里。“您好。现在什么情况?”

“很不好,很危险。客户对我们的信任跌倒谷底,我们说什么他们都觉得是在找借口,推托责任而已。”课长对我说。

“几小时汇报一次?”我问到。

“3小时。每3小时他们会来检查进度。”趴在桌子上的PGM抬起头来说到。

“上一次是几点?”我继续问到。

“12点。”

“那好,距离下一次还有1个多小时,让我们首先来整理现在的情况,形成内部意见的统一。然后,由我来和他们汇报。”

在日本写代码的日子(二十三)

当时ACCESS的业务套路就是,任何嵌入式设备,如果触网了(搭载wifi模块了),那么如果有屏幕或者可以接屏幕,那基本上总是要上网的。上网,就需要浏览器,那么我们就可以将NetFront浏览器移植上去。

另外一方面,不管是不是有屏幕,只要有wifi,想要串流媒体的,不管传入还是传出,那么你就需要DLNA,那么我们可以讲NetFront Living Connect移植上去。

随着设备搭载wifi变得原来越普遍,来ACCESS商谈的企业和项目也越来越多。即使像索尼这样的企业,虽然它内部有一个DLNA团队,也慢慢应付不了那么多的项目了。于是,无论是cybershot,还是handycam,亦或是cocoon(索尼的录像机品牌),都来找我们了。

如此多的项目不仅对人员产生了巨大压力,对管理也提出了前所未有的挑战。

公司进行了大规模的扩招,包括从南京吸收越来越多的人员。很快,公司从400多人膨胀到1400多人。水道桥已经坐不下了,公司在海滨幕张,也就是每年开东京游戏展的地方,从宝马手里面买了一栋办公楼,将所有技术人员搬迁到那里,冠名技术中心。

而水道桥只保留商务和行政功能。

小张上班的路,突然近了很多。

其实这个时候的ACCESS,还有一个及其具有野心的项目在秘密开发:ACCESS Linux Platform,简称ALP。

早在2005年,ACCESS便已经嗅到智能手机时代的味道。这时候的ACCESS垄断了日本几乎所有传统手机的浏览器市场,并且创造了一种独特的手机互联网模式,i-mode,股票市值高达每股5、60万日元。

组里的老员工,包括我的老课长、老专家、以及一名专门负责单元测试的员工,都在那个时候一夜暴富。那个负责单元测试的员工,仅仅出售了手上1、2百股的股票,就在东京大田区买了房子结了婚。

也正是因为这样,ACCESS才以200多亿日元全现金的方式,收购了palm source,一家随着PDA时代谢幕而离场的公司。

但是后来证明,这是一笔因为年轻而付出的巨大代价。具体到收购过程我没有亲历并不知道,只是听说palm source幕后与摩托罗拉携手,摩托罗拉佯装也要收购palm source,于是与ACCESS形成竞拍关系,将收购价一路抬高,并且要使用全现金的方式。

最后,在ACCESS竞拍胜出之后,palm source将大部分核心人员都转移到了摩托罗拉,而ACCESS只得到了一堆没有完整文档的操作系统代码。

性格倔强的ACCESS社长,决定用人海战术来啃这块硬骨头。然而他没有想到的是,这时的摩托罗拉已经开始死亡,将人员又转手卖给了谷歌。

谷歌的android是否是这个时候开始开发的,没有确证。但是可以肯定的是,在谷歌2008年底开源释放了第一个android版本的时候,ALP的员工在其代码里找到了许多,与从palm source收购来的代码一模一样的地方。

谷歌的android不仅抢占了市场,其开源策略使得ACCESS为ALP投资的数百亿日元资产没有了任何回收的希望。

2009年10月23日,ACCESS的社长荒川亨死于胰腺癌,享年50岁。这是我在日本首次参加葬礼,也是迄今为止的唯一一次。

在葬礼上我望着他的遗照想,也许他当时和我说那样的话的时候,已经知道自己的病情了。

 

在日本写代码的日子(二十二)

机顶盒完工了,成为了skapa新网络录像功能的参考设备,其它设备厂家纷纷来对接。

skapa在自己电视台的一间设备房当中设置了对接实验室,开放给所有有意向进行对接的厂商使用。

这种协议级别的开发的特点就是,虽然有规格书,但是源于自然语言的不精确性,以及规格本身的完备性问题,很容易发生各种解读。加上各家企业的code base原本就各自有其特点,因此在实现的时候会有很多偏差。

所以在对接的时候发生了很多很多问题。与HUMAX项目不同,那个虽然扯皮但是大家还是合力做的一个项目。现在,是不同的厂家不同的产品,其中大部分还是在各个领域竞争多年的老朋友。

所以非常有幸能参与这样的项目。我离开了初台的小黑屋,关进了位于目黑的skapa实验室。

在这里,我和我司另外一位负责DTCP-IP,也就是一种数字版权保护网络协议的日本人一起,与索尼、松下的老工程师PK,与老竞争对手DIXIM促膝攀谈。各公司都派出了该领域最好的专家,每天过得犹如华山论剑,不亦乐乎。每天都是天蒙蒙亮进去,深夜出来。

有的时候,实在是累得不行了,就跑到隔壁的导播室去看看,上百个屏幕闪烁skapa各个频道的精彩节目,其中左上角一块都是18禁,还无码。😈后来于是知道码是电视台加的。效果很好,马上满血复活。

skapa负责这个实验室的叫山口,也是skapa规格的撰写人(当然基本的技术方案其实是我写给他的)。我们一直怀疑他是不是山口组的(●—●)。所以虽然很年轻,我们一直都对他很客气。当然,这是对甲方应有的礼貌。

后来先锋(pioneer)也有一款录像机要加入。他们想了个更好的法子,直接让我们到他们办公室去做支持,对接好了,再拿到实验室去评测。

很巧的是,pioneer的办公室就在新川崎,我们刚到日本住的地方。所以我一口就答应了。

pioneer的门禁非常严格,每一道门都需要刷卡,进去要刷,出来要刷,而且还要配对。更绝的是,电脑也要将这张卡插在上面,才能启动。拔出卡立马锁屏。访客卡刷不了门,所以上厕所成了一件必须有人陪同才能完成的事情。

pioneer也是弄了个小仓库把我们关了起来,旁边堆满了各种仪器设备,而他们的工程师轮番进来和我们对接讨论,直到完成。

公司的营业经常会来看我们,带我们去吃饭。在那些日子里,我们看到营业就像囚犯看到探监的一样,很是高兴。

一个真正能够实用化的开放协议栈的开发,真的不是那么容易的。而没有参与过这个过程的公司,即使给你规格书,也会碰到许多问题。这就是开放协议的技术壁垒。

在日本写代码的日子(二十一)

当然,其实我也并不是没有问题。

事实上,在2008年4月底,也就是我刚刚过完27岁生日的时候,我开始了第一段感情生活。

其实从2007年左右开始,可能和很多人一样,我的父母就不断地敦促我谈对象。那个时候,我每周都会和父母在网上视频通话。最夸张的一段时间里,他们每周都会给我介绍一个女孩子。有的时候国内的,有的是国外的。

我也试着见过几个,但是国内的基本都不太愿意和我去日本,而国外的我都不怎么看得上。

后来,在我27岁生日前后,索尼的一个同期,北京帮的,给我介绍了一个女孩子。是东大的留学生,学物理的,正在攻读博士学位。

我上班的地方在水道桥,走路去东大也就大约20分钟的路程。所以我很感兴趣。

在朋友的牵线下,我们首先在MSN上面聊了聊,感觉不错,于是我约她晚上7点钟在东大正门口见面。

晚上6点多,我就离开公司过去了。到了东大正门口,离开7点还有小半个小时。

我原本以为她会从学校内走来,然而事实上那天她是从宿舍过来的(日本的大学宿舍基本上都在学校校园外面)

她人不高。可能还没有1米6。但是看起来挺招人喜欢的。她带我到东大校园里面转了转,然后到安田讲堂下面的食堂吃了顿饭。天已经很黑了,我们就各自回家了。

那段时间正是她读博读得有些疲惫的时候,所以她为自己计划了一堆旅行。

于是我就在接下来的几个月里陪着她在日本各地四处旅行。

而这段时间,也正好是HUMAX项目的高峰期。所以,代码里一定是混进什么奇怪的东西。

也许是我热得太快了,很快,我就在考虑着结婚的事情了。我四处寻找合适的房源,然后询问她的意见。

但是她似乎没有做好准备。于是乎,在几次争吵之后,就没有什么于是乎了。

但是经过这么一次,我的经验值(脸皮)增加(增厚)了,也找到了一点儿方向。同年晚些的时候,我又在东大找到了一位女博士,学医的,成为了我终身的伴侣。

(好了,感情戏交代完了。看热闹的可以散了,这不是言情小说……╮(╯▽╰)╭)

但是不管怎么说,项目最终还是在10月底成功收尾,基本上达成了原定计划(worst case)。

11月,和我同一届来日本的索尼北京帮的一人,老王要回国了。他其实大约3个月前刚刚转来ACCESS,并且在志村三町目租了一套挺大的房子,也购置了不少家具和电器,准备接老婆来日本生活。但是突然发生了变故,所以只能匆匆回国。由于走的匆忙,很多东西都来不及处理掉,他就叫我们兄弟几个去他房间里面看看,有啥喜欢的东西拿走。

照片里有小张同学哦(^ ^)

在我们到了他家之后,来了一位中国留学生,用2万日元买走他厨房里所有的锅碗瓢盆。那个时候真切的感觉到,东西买进来的时候都是宝,卖出去的时候都是废铁。

我们看了一圈,看得上的搬不走或者没地方放,搬得走的看不上,所以最终也是基本什么都没拿。老王是个Hi-Fi发烧友,家里有一台60寸的索尼电视和一套超高级的功放音响,这个老王没舍得转让,所以虽然我们一位报社编辑半路出家码农的兄弟看上了,最终应该是老王咬牙哼哧哼哧弄回国了。

在日本写代码的日子(二十)

当然,我也识相地缩短了我的休假,提前赶到了初台。

那是一间从车站还要步行20多分钟,隐藏在十分冷清的居民楼里面的2室1厅1厨1卫的房子。

10多个男人歪七扭八地趴在桌子上,有一下没一下地敲着键盘。房间虽然有窗,但是因为离开旁边的房子很近,所以很昏暗。

而我的老科长,正趴在桌子上打瞌睡。看到我来了,他露出了十分兴奋的表情,说:“我们的超级Engineer来了”

我对他说“真的辛苦您了”

“也只有这种时候需要我”,老科长轻声回答到。“接下来拜托你了。有什么需要,比如送饭什么的,打电话给我”

“谢谢,您回去好好休息吧。这里我会搞定的”。

就这样,我完成了与老科长的交接。后来我才知道,他一直呆在这里,没回过家。

对方其实也是一个课长带了一群工程师。课长并不很了解细节,全听下面的人汇报。而下面的人,当然是甩锅甩锅再甩锅。

老实说我也早预想会是这样,而且我知道相对于日本,韩国民风要彪悍一些。所以我也就和他们的工程师正面刚,一个锅一个锅地甩回去。

很快,他们的课长发现这样搞不行,对我开始客气了很多。

“现在不是扯皮的时候,我们把问题解决了吧。”

我说到。

“我们这个是嵌入式软件,设计的时候就不支持多线程。这是写到文档里的,白纸黑字。你们的UI调用下来,要做线程的同步。否则就是现在这样。”

其实就是那么简单的问题。只是对方工程师死活不认,一定要这样正面对决才能解决。

趣事也是有的。(也许并不好笑)首先,10多个大老爷们在一屋呆了几天之后的后果就是,厕所基本进不去了。于是他们又从韩国调来一个测试,女的。由于他们在屋子里公然放着18禁调试,这个女生就一个人坐在厨房。我也没看到她做什么工作上的事情,就见她时不时打扫厕所了。

后来,项目搞定了,他们请我们吃饭。韩国烤肉。这个女孩子就非常主动地帮我们所有人烤,自己一块都没吃。

这时我就觉得,韩国的男尊女卑,看来远比日本严重。

在日本写代码的日子(十九)

在SDK开发维护工作交接给南京之后,我们将精力集中在了项目上面。

之前也提到过,日本(东京)的电视节目,免费的只有7个台。更为准确地来说的话,这是指通过电视天线可以直接接收的,由东京电视塔发出信号的台。也就是模拟信号时代就有的台。后来电视信号数字化,这些台也就原样转为数字信号(日语称为地上数字波,简称“地digi”,即地上digital的意思),仍然是由电视塔直接发送信号。只不过,数字信号的载波波长要远小于模拟信号,穿墙绕射能力差,所以不再是电视机自己的天线接收,而一般是由装在房顶的天线接收,再通过同轴电缆传送到电视。

除此之外,还有通过卫星传送的数字电视。常见的,有BS卫星传送的,称为BS的一波频道;还有CS卫星传送的,称为CS的一波频道。这些频道都是收费的。实际运用上,也同样是由装在房顶的天线接收,然后通过同轴电缆传送到电视。但是信号是加密的。在日本出售的数字电视机后面有一个插B-CAS卡的卡槽,卡的大小和国内的银行卡类似,里面有一块芯片记录权利状况。购买并将这张卡插入电视,就可以看BS/CS频道了。

由于BS/CS卫星在天空的方位角不太一样,且卫星通信的波长更小,一般房顶都会有三个天线:一个看上去比较传统的,类似蕨菜叶片的厘米波天线,这个是地上波的。还有两个小锅盖,各自朝向不同方位角的,这个就分别是BS和CS。三个天线出来的三路信号一般会进入一个混频器,合并在一路同轴电缆里传到电视。但也有房子墙上有分开的插口。我如果没记错,BS还是CS里面也包含对地上波的中继,而且没有加密,所以仅仅连接BS的那根线也是可以看地上波的,即使没有B-CAS卡。

一般消费者能够买到的B-CAS卡是红色的。而实际上还有别的颜色的卡,业务用的,可以免费收看很多节目。我在做开发的时候就是用的这种卡。

无论是地上波,还是BS/CS,都只提供普通的频道。所谓普通的频道是指,没有18禁的内容。虽然有些频道在深夜会有一些比较暧昧的内容,但是其实都还好。

但是日本是有成人频道的。要看这种频道,就需要买另外一个卫星电视,叫sky perfect,日语里简称skapa。它提供了几百个频道,包括比较新的电影大作,体育赛事的直播,以及18禁。

观看这个卫星电视是需要买单独的接收器,也就是天线+机顶盒的。一般来说,有两种方式获得这些设备。第一种方式是购买skapa的套装,包括一定时长的包月,就会免费借给你一套设备;第二种就是到电器商店去买。

正是因为这样的节目是付费的,所以有很多用户想要把它存储起来。所以,skapa的机顶盒一般都会自带录像功能。

但是,由于skapa的机顶盒一般是出借的模式,所以内置硬盘对于skapa来说就是一项很大的开支。硬盘既贵又不牢固,经常容易坏,因此时不时需要去更换。

这时有一个人从skapa跳槽到了我们公司做营业,在了解了DLNA之后,就向skapa推荐,用DLNA的方式,将节目通过网络直接录制到NAS。这样就可以将硬盘从机顶盒当中剥离出去,解决这个问题。

而日本的几家电器大厂,比如索尼、松下、先锋,以及一些PC周边厂家,如IO DATA、Bufflo,他们都对这个方案很感兴趣。因为这同样可以使得他们的产品不再需要根据不同的信号搭载不同的tunner(调谐器),而只要一个网口就可以实现各种视频源的录制。

大厂们一般都有自己的DLNA团队。所以我们首先担当了skapa机顶盒端的DLNA实现工作。事实上,因为机顶盒是片源提供方,所以其它机器都需要和它进行对接,也就是这个方案的核心。

老实说这个项目做得很苦。skapa为了节省开支,将机顶盒外包给一家名为HUMAX的韩国厂商。所以这个项目结构上就成为了委托方和委托方的合作开发,中间夹着一个需求方。况且还有语言上的问题。

有意思的是,公司的法务突然提出让外国人(我)参与这样的项目是不是会有问题,因为有18禁的内容。这种内容是要在普通包月的基础上单独收费的,所以在技术上是最难的,需要在DLNA的基础上作协议的扩展。也就是说,不可避免地要接触到。而且公司觉得,在办公室堂而皇之地播放这些内容似乎也不合适。

但是显然没有人比我更合适。所以后来我们决定使用假的18禁内容,就是节目其实是新闻播报,但是元数据(属性)是18禁。但是机顶盒的输入只能是电视信号,并不是播个mp4就OK的,所以我们甚至从电视台借来了一套小型的电视信号发生器,将事先录制好的特制视频转成地上波数字信号,再用机顶盒接收录制。

机器是借来了,但是没有任何说明书。我只能依赖谷歌,从广播电视系统的最基本开始学起,了解了MPEG-TS混流,信号调制等多个视频信号制作环节的知识。这个过程,我学到了很多。

但是由于与韩国方面的软件部门沟通不畅(中间夹了一个不懂软件开发的skapa),项目质量一直稳定不下来。最后skapa跑到韩国去臭骂了一顿HUMAX,HUMAX当然把锅往我们身上甩,skapa就让他们来东京,两家合一起解决问题。于是,HUMAX在东京初台附近借了一套民宅,来了十来个工程师在里面工作。当然,我也得陪着。

我们那个八面玲珑的课长,虽然是老糊涂,但是有他极为可爱的一面。HUMAX刚来的时候气势汹汹,正值我回国探亲之际。老课长为了保证我的假期,自己坐到初台的小黑屋里当“人质”。当然,他是解决不了任何技术问题的,所以他给我发了封信,说他会安抚HUMAX的情绪,不必担心,让我休好假再过去。