缓了一个星期,终于恢复过来了。于是写一些我在MEDC上看到的事情。因为这次是我动手实验室的讲师之一,所以没有机会听技术讲座。但是长达一个半月的准备期,也让我知道了,灿烂背后的辛苦。
参展商
6月23号,我到会场比较早,不过上午动手实验室不开张。我用这个难得的空间,去里边的会场看了下参展商展位。大家可能不太注意这些参展商,但是有时候和看摊的技术人员聊聊,了解一下他们在做什么,还是很有收获的。和MEDC2004一水的硬件厂商所不同的是,今年MEDC的厂商也开始多源化。MOTO、联想、多普达、TCL这些硬件厂商还是占据了最显眼的位置,不过展位前的人并不是很多,可能是因为Windows Mobile 5的设备还没有出来,而他们展示的机型大家都已经看过了吧。想想去年N多人在MOTO的展位前争睹MPx芳容的盛况相比,今年MOTO的展位显然冷清了很多,特意请来的两位模特也显得有些寂寞。毕竟这是开发者大会,传统的行销手段看来还是有些问题的。
一些上游厂商这次也有专门的展位,比如TI,他们就展示了Windows Mobile 5的工程样机和开发板。原以为他们的开发板和我们是一样的,结果翻过来一看才发现,他们的开发板完全是按实际设备设计的,强。只可惜他们只派了销售人员过来,好多技术问题都没办法探讨。另外还有家日本公司,展示的是XP Embedded的设备,主要是针对医疗设备,他们还加了个RTOS的核,尽管没听明白他们的核如何和XPE通讯。
在ISV方面,这次可以说是集合了国内所有比较有名气的ISV,比如联合电信、工大科软几家,碰到了好多熟人。还有家台湾的“行动智慧”,看了一下他们的eForm展示,开发这个系统的工程师是我的朋友,一直是通过网上联系,第一次能看到他的系统的演示,很不错,可惜他本人没有过来。
体验区这次没有设置专人进行讲解,不过设备比上次多了很多,大家也可以自己体验一下了。体验区的Media Center很吸引眼球,加上keynote也有演示,我想Media Center也是微软寄希望很大的一个产品吧。有人传说,Media Center的视频效果并不是很好,这次本来打算体验一下,可是因为没有视频输出,而没有看到。哈,还是有时间自己DIY一个Media Center来玩吧:)
主题演讲
9点钟,主题演讲正式开始,这次的会场也宽敞了很多,设置了两个演讲席,张亚勤博士用一个,负责DEMO的人用另外一个。张博士的演讲内容和BillG5月9号的演讲完全不一样,更多的是结合了中国的实际来谈Windows Mobile的发展。因为主题演讲是给所有人听的,所以真正有价值的东西不是很多。倒是DEMO让人觉得很COOL。
首先是James演示的那个头戴式设备,是为了汽车修理准备的,可是帮助修理工更好的检查汽车内部结构、查询备件的信息等等,中间有段听得不是很明白。比起产品的可用性来说,我觉得创意更为重要。中国缺少的可能不是创意,而是把创意变为产品的土壤。
另外,亚洲研究院的演示也很COOL,第一个是通过Windows Mobile设备获取远程机器上的照片,然后显示到Media Center上。这个可能我们在前边已经说过了。另外一个是通过Windows Mobile设备控制Power Point的演示。这个东西很COOL,而且很有用。在此之前,我自己写过一个类似的东西,但是没能获取大屏幕上演示的图象信息,只是把里边的文字信息显示在Windows Mobile设备上了。而亚洲研究院的这个演示,却能够把图象信息显示在设备上,不知道他们是用什么来传输图片的,可能是Socket吧。
下面的两场商业性质的演讲,我都没有听,因为要准备下午动手实验室的事情,所以早早去吃饭了。
动手实验室
动手实验室是这次MEDC的一个亮点,对于美国的MEDC来说,Hands on lab已经是一个很重要的部分了,而且规模也相当大。这次是第一次在MEDC里加入动手实验室,所以规模自然比不了美国那边,不过受到的关注程度却着实让我没有想到。
一点正式开门后,25个座位瞬间被占满了,还有很多人站在旁边等。我身上的汗一下子就出来了,加上实验有点小的BUG,开始的一个小时,我们几乎都是处于四处救火的状态。等到大家都开始做实验的时候,开心又一下子带进来几十个人,把实验室后边的空间全都占满了。事先好象是说,讲师讲完课后,要来动手实验室和大家进行交流,就像TechEd那样。谁也没想到大家的热情那么高,不但开心四周都是人,连也有很多人找我们两个聊天。多亏实验室的工作人员都很专业,帮我们协调了好多问题。
后来回想起来,才觉得其实大家未必都有很要命的问题需要问,只是想多和同行进行一个交流。从这个方面看,动手实验室也起到了一个很好的作用,让大家有一种找到组织的感觉。想想也是,现在做Windows Mobile开发的人本来就很少,很多技术问题还都没有一个标准的答案,很多知识还需要大家一起去讨论。这样的情况下,给开发者一个交流的空间,其实就是最大的成功。当然很多问题我也回答不了,比如控制打印机的问题,因为Windows Mobile不支持标准打印设备,所以只能由开发者自己去解决,或者告诉微软在下一代产品里去解决。可是由于语言的问题,国内的开发者不是很善于反馈。其实从我和产品组的人有限的几次交流上来看,他们也十分渴望得到各种反馈。比如新加坡MVP峰会的时候,我们和一个.NET CF产品组的Programme Manager一起吃饭时,偶尔说起VS.NET 2005的一个BUG,他很紧张地问,你feedback了没有?后来我通过MSDN feedback center报告了这个BUG后,他们两周后就Fix了这个BUG。
不同的开发者
尽管没机会去听技术讲座,但是在动手实验室的一天半中,也让我认识了很多不同的开发者。看他们解决同一个问题时的情况,也是一件蛮有意思的事情。这次动手实验室大概接待了不到200人,其中有经验和没有经验的开发者大概各占一半,当然这种划分也不绝对,因为这次实验的开发工具是Visual Studio 2005 Beta 2,一些用EVC的开发者不是很熟悉,而一些.NET的程序员尽管没写过移动应用,但是对开发环境还是比较熟悉的。
我的第一个感觉是来自大学的开发者很多,这里给我印象最深的是北航。很多北航的学生都在第一时间光顾了动手实验室。其中我印象最深的是,一个北航的学生发现他的老师也在,老师说,是啊,下学期要看这门课,所以来看看。保持对新技术的好奇和探索,这才是大学创新的动力和源泉。这点很让人敬佩。另外,北邮的学生也不少,可能因为我参与过他们学校的移动挑战赛,所以和我打招呼的人比较多。总体感觉,这些来自大学的开发者水平都很高,甚至要超过一些有工作经验的开发者。
另外一个感觉就是,大家的接受能力的确不一样,这里没有任何教育背景和行业背景的差距,只是个人能力的区别而已。有一个实验,手册上的路径和实际环境的路径有点差别,大部分人都跳过去了,但还是有十几个人来问,的确是“尽信书不如无书”。但是有一个开发者就很让我敬佩,其中有一个关于SQL Mobile的实验,由于用的是CTP版本,所以合并复制总是失败,而这位开发者居然来问我那个步骤后边的一个问题,我问他,合并复制那步过去了吗?他说,没有啊,我在目录下找到一个back-up的文件,就继续做下边的实验了。聪明!其实开发者最重要的一个能力不是会多少门语言、算法如何精通、熟悉多少API,而是独立思考、独立解决问题的能力。尤其是DEBUG的时候,没人能帮得了你,因为自己写的代码只有自己最熟悉。而DEBUG的能力是学不来的,只能在实际过程中自己积累。
另外也有一些实验者缺乏这方面的能力,写完后没有得到预期结果,第一个反应不是Review代码,而是举手问讲师。我曾经被一个实验者在两分钟内叫过去三回,可每回过去就没有问题了。原因是系统有延时,而人家看着不对就马上问。我觉得这首先说明,是经验不足,其次呢,可能依赖性也稍微大了一些。如果想成为一个好的开发者,除了写更多的代码外,在碰到问题时,还需要多压抑一下问别人的冲动。
未来的动力
第二天中午忙里偷闲,和两个朋友又在MEDC会场里转了一圈。在一个展位前,被人叫住了,是北邮的一位同学,听过我给他们做的Windows Mobile开发课程,所以问我打个招呼(有人认识的感觉还不错)。原来他们在展示微软创业大赛的作品,除了他们,还有北理工、北航、北大几个学校学生的作品。北邮的作品是一个智能购物车,功能蛮多,可以根据用户的购物清单,把客户直接带到物品所在的货架,一看就是超懒人的想法。还可以查询货品的价格,快速结帐等等。另外的几个作品是,电子盲杖和基于Windows Mobile的会展地图。
如果从产品的眼光来看,问题还是很多,但是这不妨碍他们作品中的亮点。中国的IT产业现在太缺乏原创的精神,或许是中国人太聪明了吧,只愿意把别人的核心技术拿过来做一些增值的应用,好放到市场上赚大钱。可是一些真正的核心技术,还是需要大家耐得住性子。也希望这些大学里的开发者,在将来进入公司后,还能保持自己的想象力和动手的冲动。这才是未来的动力。
在一个闷热的下午,MEDC 2005结束了。天下没有不散的宴席,明天大家又要投入到自己的工作中去了。也许每天只是很小的一点进步,但是一点点的积累,才造就了一个个成功的软件。不知下次的MEDC,会有哪些激动人心的软件出现。
北京的夜晚依旧很热……