我的程序员生涯(6)

Creative(新加坡创新)算得上是我心目中的伟大的公司之一,它让计算机能发出美妙动听的声音,而不再是嘀嘀哔哔。在上世纪90年代的中关村,卖声霸卡有如卖奔驰宝马的感觉,可惜如今早已经日薄西山了。

我遇见Creative的创始人之一GOH的时候,他已经离开Creative又执掌EA北亚(北京办事处)几年了。办公地点就在新世纪饭店,曾与杜家滨先生的微软中国(早年也叫北京办事处)是邻居。2001年他又离开EA与另两位追随他多年的下属一起开了一家软件公司,于是他们成了我第二任老板,我成了他们的第一个员工。

鉴于老板和Creative的渊源,公司的第一个项目就是为Creative开发一套声卡产品的追溯系统,也就是管理每一片SB AWE32/64的整个Life Cycle,从哪颗电容哪颗芯片是谁供应的到最后卖给了谁又返修了几次,说来简单做来麻烦。作为第一号员工,理所当然地我成了项目经理也是Senior Programmer,尽管我还是非常的Junior。

那个时候还不流行RFID,我们讨论后就决定采用了一维码(CODE128)方案,数据采集设备选用CASIO的DT900。DT900是可编程的,当年在大陆的物流领域还没有过应用。最麻烦的是没有任何开发文档,我只晓得使用的是一个C语言的变种和一个HITACHI的编译器。后来辗转找到台湾的一位开发者,给了一份非常简单的繁体文档。接下来的一个月里我就埋头鼓捣这个玩意儿,再没有人能为我提供一丁点帮助。

这是我第一次为嵌入式设备编程序,其实也可以说是我第一次做商业软件。当第一个版本写出来烧进去调试通过之后,那种轻松的感觉难以言表。记得那天晚上下着大雨,地上漫淌着水,我从西直门375路车站脱了鞋子光脚淋着雨慢悠悠地走回到西内南小街的住处,仍难掩兴奋。

此后陆续在DT900上开发了多个数据采集程序,这段开发经历给我留下了一个“后遗症”,就是极端在意内存的使用效率,见不得浪费内存的做法。在RAM以K为单位的设备里,代码中随意浪费一点字节,就意味着少存储几个产品条码,操作人员可能就要多往返跑一趟去上传数据。这个习惯至今还保留着,纵然如今的内存都以G计,依然无法忍受小朋友们不管三七一十九上来就开个大数组的干法。

在我们那代程序员的印象里,ASP就用来是做网站的、JSP是另一种用来做网站的,在浏览器里显示的网页根本不能叫软件,编网页的也不是真正的程序员。毫无悬念地,追溯系统选用了VC++/MFC来开发,那时候叫做C/S 模式。可是,十年河东十年河西,2005年之后B/S就大行其道,MFC一类的桌面技术在新生代的程序员眼里俨然古董了。技术潮流是无法抗拒的,就连我在前一篇文章中所提及的那位好友,也于2004年开始陆续将全线产品转到Microsoft .Net平台上来了,不惜放弃积累了十余年的核心业务组件、私有通信协议乃至私有的数据库引擎,用WebService重新架构核心服务,提供WinForm和Web两套客户端界面。

你可能感兴趣的:(我的程序员生涯(6))