Posts in Category "一年又一年"

一年又一年(2010年之一 搬家)

子上学已经快一年了,每天早上都是我开车送他。因为家离学校比较远,即使开车也需要大概40-50分钟,所以每天早上6:40就要出发,下午放学的时候,因为交通状况更差,所以有的时候路上不得不用1个多小时,孩子大人都感到很辛苦。于是我们决定搬家了。

上个周末在北大医院附近,找到一个两居室,面积不大,对于我们一家三口来讲正好。房子紧邻马路,不过那条路上车并不多,所以也不吵,旁边就是著名的西什库天主教堂,凭添了一份幽静,北海公园就在大概一站地的附近,银行、超市、菜市场一应俱全,环境非常适合居住。最重要的是,距离孩子上学的学校只要步行 15分钟,每天可以让他安安静静地睡到7点,再也不用早上匆匆忙忙地催他赶紧起床、洗漱、吃早饭,而且,放学后可以赶快回家,写完作业,还可以有时间出去活动一下。我在路上的时间也会大大缩短,附近的地铁4号线可以直接到达公司附近,这样下班后也终于可以和一家人一起吃晚饭了。原来,因为下班路上要花一个半小时,等我到家的时候,老婆孩子通常都先吃完饭了。

经过了简单的粉刷和布置,这个周末就可以搬过去住了。

So long, Old friend …

过将近半年的等待,Oracle-Sun收购案终于落下帷幕,欧盟无条件通过了。Java之父James Gosling在自己的博客上贴了一幅画,表达了自己对Sun的无限怀念。

RIP-Sun.jpg

 

现在,当我们回过头来看看这家伟大的公司的时候,不禁为之在短短的28年里创造出的一个又一个不朽的产品和技术,以及如此多的优秀的工程师而惊叹!

  • Bill Joy:Sun联合创始人,加州大学伯克利分校的博士,是公认的计算机领域的天才级人物。Bill Joy领导了UNIX的一个重要分支BSD (Berkley Software Distribution) 的开发,并为UNIX系统贡献了多个经典的实用程序,包括csh、vi、等等。vi是UNIX系统中第一个全屏幕编辑器,一直以来也是我最喜欢的编辑器。vi 编辑器被认为是最”环保”的编辑器,就是说完成同样的编辑工作,在vi下,手指移动的距离是最短的,所以,所消耗的能量也是最小的。Bill Joy还设计了第一代的SPARC芯片,可以说是一个软硬件的通才。2003年,Bill Joy 离开 Sun,投入风险投资领域,后来又加入了美国前副总统戈尔创立的环保公司,据说Bill Joy对纳米技术也有着深入的研究。
  • Andy Bechtolsheim:Sun的另一位联合创始人,被称为”硬件诗人”,多款著名的Sun工作站和服务器就是这位大师的杰作。后来,Andy离开Sun,从事风险投资,现在如日中天的Google,就是从Andy那里得到了第一笔投资。
  • Ivan Sutherland:图灵奖得主。
  • Bryan Cantrill:DTrace之父。DTrace是一种能够对操作系统进行动态跟踪的工具,对于分析程序动态执行的效率具有极大的帮助。
  • Steve Bourne:Bourne shell之父。Bourne Shell 无需多说,每个使用过UNIX系统的人对它都绝不陌生。
  • Jeff Bonwick:ZFS之父。ZFS是Sun开发的一种文件系统,它完全颠覆了传统文件系统的概念,可以把多个廉价的独立存储硬件组成一个的存储池,文件系统可以通过分配
  • Joshua Bloch:Java教父,学Java的人没有不知道这个名字的。
  • James Golsing:这个就不用说了吧。
  • Guy L. Steele, Jr.:Scheme之父。
  • Whitfield Diffie:公钥算法之父。
  • James Duncan Davidson:Tomcat之父,这个有点意外吧。
  • Craig McClanahan:Struts之父,这个恐怕更意外了。记得,2005年Java One在中国举行的时候,我有幸在那次大会上做个Presentation,我的Presentation就被安排在Craig的后面,结果,因为Craig的巨大号召力,我的那个Presentation参加的人数也是非常多。 
  • Ian Murdock:Debian之父,Ian将Solaris一手带进了OpenSolaris。
  • Jakob Nielsen:可用性权威。
  • Radia Perlman:Internet之母。
  • Marc Tremblay:主持设计了UltraSPARC处理器。
  • Marc Fleury:JBoss之父。
  • Tim Bray:XML的几个主要设计者之一。
  • John Ousterhout:Tcl之父。

除了以上这些优秀的工程师,Sun还涌现了多名不仅在技术上成功,而且具有非凡管理才能的著名企业家:

  • Peter Norvig:Google 研发总监。
  • Eric Schmidt:前Sun CTO,现任Google CEO。
  • Alfred Chuang (庄思浩):前Sun CTO,后来创建了著名的BEA公司。
  • Chris Malachowsky:计算机图形领域的顶级专家,NVIDIA的联合创始人。

一年又一年(2009年之六 国庆)

1949-2009,今年是建国六十周年。

大概一年多前,网络上、报纸上就在热烈讨论如何庆祝的事情了,很多献礼片陆续地播出了,很多回顾祖国60年发展历程的展览也开始了,各个社区也在组织各种庆祝活动。六十周年大庆,阅兵式是必不可少的了,这个消息后来得到了官方的正式,一时间成为大家议论的焦点,都非常期待。

阅兵仪式非常壮观,更兴奋的是,在阅兵式结束后,所有的装备到通过京通快速返回,刚好从家门口经过,连忙找出相机,把经过的装备全都拍了下来。

住在高速公路旁边,每天深受噪音污染,这次总算得到了补偿。

一年又一年(2009年之五 买车)

不懈的努力和焦虑的等待后,儿子上学的事终于搞定了。7月10日,就在全市中小学放假前一天,终于接到学校通知,儿子被录取了。

为了给孩子选一所好学校,我们全家从年初就开始联系,现在终于如愿以偿了。学校不错,就是离家太远,为了接送方便,我们决定买辆车。

我对车不懂,也不感兴趣,家就住在地铁旁,上班的地方离地铁也不远,在加上北京让人无法忍耐的堵车,平时对车的需求真的不大。不过现在为了孩子,还是决定出手了。

先在网上搜了搜,选了几款比较适合自己的,又咨询了几个有车的朋友,终于选中了东风日产的骐达,一来日本车省油,二来这款车的车顶高、空间大,于是,到4S店就订了,4S店说一般不会超过30天提车。当时觉得也不错,正好有时间练练车,从驾校出来后还一直没摸过车呢。

可谁知这一等居然等了2个多月,直到快到国庆的时候,4S店打来电话,说临近建国60周年大庆,很多外地的大车不能进京了,必须等到十一长假后才能提车。想想反正也已经这样了,既然这么长时间都等了,也不在乎多等几天。

10月11日,是和4S店约好了提车的日子。一切都挺顺利,中午的时候就把车开走了。虽然保险还没有生效,不过自信应该没问题。之后的几天,基本上就是忙着上牌、选车位、买些车内必备的东西了。好在公司决定在那周关闭 (shutdown) 一周,所以这一切都办理得不紧不慢。

一年又一年(2009年之四 出差)

入Adobe不久,我就被告知要去美国出差,去和Flex的开发团队一起工作几周,一方面互相了解,同时也可以参加一些培训。

以前在Sun的时候也曾多次去美国出差,本来应该没有什么特别的,不过这次稍微有些不同:这次是去美国的大城市—-旧金山,而且就在市中心。

在启程之前,我在美国的一位同事就给我写了一封长长的email,为我介绍当地的情况,还为我预定了酒店,特别提醒我旧金山市内的治安不好,要注意安全。

出发之前,上map.google.com查了查,发现酒店到公司的距离并不远,大概2英里左右,一个非常适合骑自行车的距离,于是就联系了一个在旧金山附近的朋友,向他借了辆自行车,约好了在酒店大堂见面。等我到酒店后,朋友已经在大堂等我了,不过他很抱歉地告诉我,锁在酒店门口的自行车,在不到5分钟的时间里,已经被小偷偷走了。我真觉得不可思议,大白天的,在酒店门口,居然还会发生这种事,这也让我真正体会到了同事的提醒决不是危言耸听了。

由于没有了自行车,每天只好不行上下班,虽然路程不算近,但是可以走走看看也不错。

Adobe在旧金山的办公室很特别,是一栋很旧的红砖楼,估计怎么也有5、60年了。从外面看,根本无法想象这是一家世界级软件公司的办公楼,倒像是一座仓库。走进公司大楼,发现里面的装修也非常特别,为了加固整栋大楼,楼内架起了很多木头的和钢的梁,这些加固用的梁没有任何装饰的暴露在外面,感觉非常不同,完全不同于北京的高档写字楼。整座大楼被分割成三层,之所以说是”被分割成”,是因为楼板感觉不像是原来就有的,而是后来加上去的,走在上面,脚步稍微重一些,这个楼板都在颤动。而就在这里,正在开发着世界上一些最著名的软件产品,比如FlashPlayer、Flex等等。

与同事们逐渐熟悉了之后才知道,原来Flex team中有很多人是来自于Sun的Java开发团队了,甚至包括像Hans Muller、Chaet Haas这样在Java领域的领军人物。

通过与Flex team共同工作的几周时间,我不仅对Flex的开发流程有了初步的了解,也和很多人建立了良好的关系,使我更加觉得,能够有机会参与这样一个项目是多么的自豪。

一年又一年(2009年之三 Flex)

开始参与Flex产品之后,才对Flex有了个基本了解。

Flex其实是一个产品家族的名称,包括Flex SDK、FlashBuilder和FlashCatalyst,Flex SDK是一个开源的产品,FlashBuilder和FlashCatalyst也是基于著名的开源平台Eclipse,这对于我这个开源拥护者无疑是非常有吸引力的,而且更大的惊喜是Flex中大量的使用了Java技术,且不说FlashBuilder是采用Eclipse作为平台,Flex SDK的编译器就是用Java语言写的。

Flex应用经过编译,可以成为ActionScript的字节码,在FlashPlayer虚拟机上运行,这个概念对于熟悉Java或.NET技术的人来讲并不陌生。

相比于Java的虚拟机,FlashPlayer要简单很多,同时大小上也小很多。Flex的组件库也没有Java Swing那么庞大而复杂,但这可能恰恰是Flex的优势吧—-没有了Java 2D复杂的组件,使开发者易于学习,据说大多数的Flex开发者都不知计算机专业的。

Flex的核心是ActionScript,一种非常类似Java的语言。虽然名字看上去像一种脚本语言,其实ActionScript是需要编译的,不过并不是编译成真正的机器代码,而是一种可以运行在FlashPlayer虚拟机上的字节码。不过,Adobe觉得直接使用ActionScript开发Flex应用还是不够简单快捷,所以有提供了一种称之为MXML的语言来描述用户界面。MXML完全采用XML的语法定义,开发者可以根据自己的设计,描述用户界面的结构,MXML中可以嵌入ActionScript语句,用来描述事物逻辑和事件响应。在编译的时候,MXML先被转成ActionScript程序,而后再被编译。

FlashBuilder则是一个基于Eclipse的集成开发环境,提供了可视化的界面设计、方便的代码跟踪和调试等功能,最大限度的提高了开发者的生产率。

FlashCatalyst是个非常有特色的产品,它并不是给程序员使用的,而是给UI设计者使用的。设计人员可以把一些预先在Photoshop中编辑好的图形导入到Catalyst中,使用这些图形生成或定制一些个性化的UI控件,并对这些控件的效果进行设计。Catalyst并不提供代码的编写和调试功能(实际上也不需要),经Catalyst设计的项目可以被导入到FlashBuilder中,有程序员来定义和实现具体的业务逻辑。Catalyst有机地把Flex和Adobe其他的产品进行了连接,为Flex应用的设计和开发提供了全面的解决方案,使得Photoshop、Illustrator等产品可以被应用到Flex应用开发上,建立了一套Flex开发的生态系统,这一点是Flex的竞争产品(Silverlight和JavaFX)所不具备的。

Flex最吸引人的地方无疑是它丰富的控件库和绚丽的视觉效果,而作为一个普通的开发人员又根本不用去深入了解如何去实现它,只需要通过一些简单的描述 (使用MXML的语法) 就可以做出非常漂亮的应用,比我以前用Java 2D写不知道要简单多少倍。

随着对Flex的深入了解,我进一步体会到Flex对Internet应用的支持。Flex非常好的封装了访问HTTP和web服务的接口,使得访问Internet上的应用就像从一个变量上读取数据那么简单,你根本不需要知道一个web service是如何被调用的。

通过半年左右的学习,我对Flex已经有了一个比较全面的认识,我相信每一个使用过Flex的人都会喜欢上它。想想也是,现在99%以上的PC都已经预装了FlashPlayer,对于这样一个如此容易获得的平台,哪个程序员会不动心呢?

一年又一年(2009年之二 加入Adobe)

休息了一个月之后,开始找工作。很多同事都很帮忙,介绍了一些很好的机会,Adobe就是其中之一。在加入Adobe之前,我还收到了几个offer,其中一个是一家事业单位的软件部主任(正处级),是工业和信息化部下负责电子政务和国产软件评测、推广工作的,当时非常犹豫,不知道该如何决定。事业单位,虽然收入上无法和外资企业相比,但非常稳定,而且职位不错,后来还是考虑再三,觉得自己还是无法适应国营企事业单位的种种规章制度和很好地处理各种错综复杂的关系,决定去Adobe。

在此之前,对Adobe这家公司了解不多,只知道几个有名的产品,像Acorbat,Photoshop, Dreamwaver等,这次的机会是Flex QE Lead。Flex对于我来说是个全新的产品,之前虽有耳闻,但从没有真正使用过。为此,我在网上查找了一些资料,发现这个产品不错,和我原来熟悉的Java技术非常类似,更重要的是Flex是目前流行的RIA(Rich Internet Application)的解决方案,在Cloud Computing时代下Client端的解决方案,很高兴能有机会继续工作在这样一个前沿的产品上,所以就决定加入Adobe。

在到Adobe上班后,才发觉Adobe的工作环境是非常好的,每个人的工位面积都很大,和原来在Sun的一样,办公室内提供了丰富的食品和饮料,每天上下午各有一次水果的时间,设备的配置也是很先进,包括有连接VPN的Token,视频会议系统等等,不过有些不适应的地方,最大的一个就是Adobe的全部工作环境都是基于 Microsoft Windows 的,这对于我这个用惯了UNIX的”Windows盲”来说感到很不方便,不过好在还有Mac可以用,最后还是在网上搜到了unixkit tiny这个开源产品,算是在Windows上建立了个简单得不能再简单的UNIX环境。

一年又一年(2009年之一 裁员)

知不觉,又到了年底。回想起来,2009年对于我还是很不平常的,有些事情还是应该记录一下。

在这一年里,我”终于”离开了自己服务了12年的Sun Microsystems公司,不是自愿的。回想起来,自己自1997年加入Sun,伴随她的成长、辉煌和衰退,能有机会亲身见证和经历这样一段历史,可以说我是幸运的。Sun自2000年开始,一直在走下坡路,业务收缩,市场份额下降,其中也经历了几次裁员,还更换了CEO,但一直未见起色,而始于2008年底的金融危机,毫无疑问的使Sun更加雪上加霜。

其实在公司正式通知之前,我已经有了预感,或是说猜到了。在此之前,有一些猎头公司一直在和我联系,介绍一些外边的机会,但我始终都不感兴趣,因为Sun的文化和技术深深吸引着我,Sun的”网络就是计算机”的理念,让我认识到Sun在创立之初就敏锐地预示了几十年后计算机发展的方向。今天,”云计算”的概念对于大家已经不再遥远,当我们再次回头来看Sun几十年前提出的这个口号的时候,不得不由衷地感到钦佩。

在离开Sun之后,Sun提供了一个非常好的服务,聘请了一家专业的咨询公司为受到影响的员工提供”再就业”培训,培训非常细致,从心态调整、职业规划、自我潜能的开发、简历撰写到面试指导,都非常专业。这些年来,一直到忙于产品和技术,自己很少有时间去考虑这些问题,也很少认识到以前的工作的真正价值。通过这次裁员和培训,发现自己还有不少潜质、优点和不足,感觉自己成长了不少,自己的心态也调整了很多,从某种程度上,开始感到自己很幸运,感激这次被裁了。