微波EDA网,见证研发工程师的成长! 2025婵犵數濮烽弫鍛婃叏閻戣棄鏋侀柛娑橈攻閸欏繘鏌熺紒銏犳灍闁稿骸顦…鍧楁嚋闂堟稑顫岀紓浣哄珡閸パ咁啇闁诲孩绋掕摫閻忓浚鍘奸湁婵犲﹤鎳庢禍鎯庨崶褝韬┑鈥崇埣瀹曠喖顢橀悙宸€撮梻鍌欑閹诧繝鎮烽妷褎宕叉慨妞诲亾鐎殿喖顭烽弫鎰緞婵犲嫷鍚呴梻浣瑰缁诲倸螞椤撶倣娑㈠礋椤撶姷锛滈梺缁樺姦閸撴瑩宕濋妶鍡欑缁绢參顥撶弧鈧悗娈垮枛椤兘骞冮姀銈呭窛濠电姴瀚倴闂傚倷绀侀幉锟犲箰閸℃稑宸濇い鏃傜摂閸熷懐绱撻崒姘偓鎼佸磹閻戣姤鍤勯柤鎼佹涧閸ㄦ梹銇勯幘鍗炵仼闁搞劌鍊块弻娑㈩敃閿濆棛顦ラ梺钘夊暟閸犳牠寮婚弴鐔虹闁绘劦鍓氶悵鏇㈡⒑缁嬫鍎忔俊顐g箞瀵鈽夊顐e媰闂佸憡鎸嗛埀顒€危閸繍娓婚柕鍫濇嚇閻涙粓鏌熼崙銈嗗04闂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾惧綊鏌熼梻瀵割槮缁炬儳缍婇弻鐔兼⒒鐎靛壊妲紒鎯у⒔閹虫捇鈥旈崘顏佸亾閿濆簼绨奸柟鐧哥秮閺岋綁顢橀悙鎼闂侀潧妫欑敮鎺楋綖濠靛鏅查柛娑卞墮椤ユ艾鈹戞幊閸婃鎱ㄩ悜钘夌;闁绘劗鍎ら崑瀣煟濡崵婀介柍褜鍏涚欢姘嚕閹绢喖顫呴柍鈺佸暞閻濇洟姊绘担钘壭撻柨姘亜閿旇鏋ょ紒杈ㄦ瀵挳濮€閳锯偓閹风粯绻涙潏鍓хК婵炲拑绲块弫顔尖槈閵忥紕鍘遍梺鍝勫暊閸嬫挻绻涢懠顒€鏋涢柣娑卞櫍瀵粙顢樿閺呮繈姊洪棃娑氬婵炶绲跨划顓熷緞婵犲孩瀵岄梺闈涚墕濡稒鏅堕柆宥嗙厱閻庯綆鍓欐禒閬嶆煙椤曞棛绡€濠碉紕鍏橀崺锟犲磼濠婂啫绠洪梻鍌欑閹碱偄煤閵娾晛纾绘繛鎴欏灩閻掑灚銇勯幒鍡椾壕濠电姭鍋撻梺顒€绉撮悞鍨亜閹哄秷鍏岄柛鐔哥叀閺岀喖宕欓妶鍡楊伓05闂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾惧綊鏌熼梻瀵割槮缁炬儳缍婇弻鐔兼⒒鐎靛壊妲紒鎯у⒔閹虫捇鈥旈崘顏佸亾閿濆簼绨奸柟鐧哥秮閺岋綁顢橀悙鎼闂侀潧妫欑敮鎺楋綖濠靛鏅查柛娑卞墮椤ユ艾鈹戞幊閸婃鎱ㄩ悜钘夌;闁绘劗鍎ら崑瀣煟濡崵婀介柍褜鍏涚欢姘嚕閹绢喖顫呴柍鈺佸暞閻濇牠姊绘笟鈧埀顒傚仜閼活垱鏅堕幍顔剧<妞ゆ洖妫涢崚浼存懚閺嶎灐褰掓晲閸噥浠╁銈嗘⒐濞茬喎顫忓ú顏呭仭闁规鍠楅幉濂告⒑閼姐倕鏋傞柛搴f暬楠炲啫顫滈埀顒勫春閿熺姴绀冩い蹇撴4缁辨煡姊绘担铏瑰笡闁荤喆鍨藉畷鎴﹀箻缂佹ḿ鍘遍梺闈浨归崕鎶藉春閿濆洠鍋撳▓鍨灈妞ゎ參鏀辨穱濠囧箹娴e摜鍘搁梺绋挎湰閻喚鑺辨禒瀣拻濞达絽鎳欒ぐ鎺戝珘妞ゆ帒鍊婚惌娆撴煙鏉堟儳鐦滈柡浣稿€块弻銊╂偆閸屾稑顏� 闂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾惧綊鏌熼梻瀵割槮缁炬儳缍婇弻鐔兼⒒鐎靛壊妲紒鎯у⒔閹虫捇鈥旈崘顏佸亾閿濆簼绨奸柟鐧哥秮閺岋綁顢橀悙鎼闂侀潧妫欑敮鎺楋綖濠靛鏅查柛娑卞墮椤ユ艾鈹戞幊閸婃鎱ㄩ悜钘夌;闁绘劗鍎ら崑瀣煟濡崵婀介柍褜鍏涚欢姘嚕閹绢喖顫呴柣妯荤垹閸ャ劎鍘遍柣蹇曞仜婢т粙鎮¢姘肩唵閻熸瑥瀚粈鈧梺瀹狀潐閸ㄥ潡銆佸▎鎴犵<闁规儳澧庣粣妤呮⒒娴e憡鍟炴い顓炴瀹曟﹢鏁愰崱娆屽亾濞差亝鍊垫鐐茬仢閸旀碍绻涢懠顒€鈻堢€规洘鍨块獮姗€鎳滈棃娑欑€梻浣告啞濞诧箓宕滃☉銏℃櫖婵炴垯鍨洪埛鎴︽煕濞戞ǚ鐪嬫繛鍫熸礀閳规垿鎮欑拠褑鍚梺璇″枙閸楁娊銆佸璺虹劦妞ゆ巻鍋撻柣锝囧厴瀹曞ジ寮撮妸锔芥珜濠电姰鍨煎▔娑㈩敄閸℃せ鏋嶉悘鐐缎掗弨浠嬫煟濡櫣浠涢柡鍡忔櫅閳规垿顢欓懞銉ュ攭濡ょ姷鍋涢敃銉ヮ嚗閸曨垰绠涙い鎺戝亰缁遍亶姊绘担绛嬫綈鐎规洘锕㈤、姘愁樄闁哄被鍔戞俊鍫曞幢閺囩姷鐣鹃梻渚€娼ч悧鍡欌偓姘煎灦瀹曟鐣濋崟顒傚幈濠电偛妫楃换鎴λ夐姀鈩冨弿濠电姴鎳忛鐘电磼鏉堛劌绗掗摶锝夋煠婵劕鈧倕危椤掑嫭鈷掑ù锝呮嚈瑜版帗鏅濋柕鍫濇嫅閼板潡姊洪鈧粔鎾倿閸偁浜滈柟鍝勭Х閸忓矂鏌涢悢鍝ュ弨闁哄瞼鍠栧畷娆撳Χ閸℃浼�闂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾惧綊鏌熼梻瀵割槮缁炬儳缍婇弻鐔兼⒒鐎靛壊妲紒鐐劤缂嶅﹪寮婚敐澶婄闁挎繂鎲涢幘缁樼厱闁靛牆鎳庨顓㈡煛鐏炶鈧繂鐣烽锕€唯闁挎棁濮ら惁搴♀攽閻愬樊鍤熷┑顔炬暬閹虫繃銈i崘銊у幋闂佺懓顕崑娑氱不閻樼粯鈷戠紒瀣皡閺€缁樸亜閵娿儲顥㈡鐐茬墦婵℃瓕顦柛瀣崌濡啫鈽夊▎蹇旀畼闁诲氦顫夊ú鏍ь嚕閸洖绠為柕濞垮労濞撳鎮归崶顏勭处濠㈣娲熷缁樻媴閾忕懓绗℃繛鎾寸椤ㄥ﹤鐣烽弶搴撴婵ê褰夌粭澶娾攽閻愭潙鐏﹂懣銈嗕繆閹绘帞澧涚紒缁樼洴瀹曞崬螣閸濆嫷娼旀俊鐐€曠换鎺楀窗閺嵮屾綎缂備焦蓱婵挳鏌ら幁鎺戝姢闁靛棗锕娲閳哄啰肖缂備胶濮甸幑鍥偘椤旇法鐤€婵炴垶鐟﹀▍銏ゆ⒑鐠恒劌娅愰柟鍑ゆ嫹
首页 > 研发问答 > 测试测量 > 虚拟仪器 > 用一生编写完美 ——专访“LabVIEW之父”Jeff Kodosky

用一生编写完美 ——专访“LabVIEW之父”Jeff Kodosky

时间:12-13 整理:3721RD 点击:
用一生编写完美
——专访“LabVIEW之父”Jeff Kodosky

eefocus 记者 王晓丹

        鹤发童颜,矮胖身材,谦和而腼腆的笑容,还有鸽子一般低沉温柔的语调——11月8日上午,NI创始人之一、被人们尊称为“LabVIEW之父”的Jeff Kodosky站在30周年公司庆典的上海会场上,开始了他的主题演讲。没有笑话,没有即兴发挥,没有美国高管都很擅长的演说技巧,他低着头,近乎匀速地念着手中准备好的英文讲稿。这让台下的听众都很庆幸自己提早拿到了一份中文翻译——否则,自己将会错过一个精彩而厚重的演说。没有什么比这种出场更符合“LabVIEW之父”的本来面目了。这就是Jeff,一个用一生的时间钻研一种技术的人。


从天真和运气开始
80年代初,当NI提出“虚拟仪器技术”的概念时,这个想法遭到很多同行的哂笑。所谓“虚拟仪器技术”,就是利用在个人计算机上运行的软件平台,将以往依靠专用仪器完成的测控任务改由软件和模块化硬件集成的平台来实现。因为这种方式打破了专用台式仪器在行业的垄断,突出了软件的强大功能和优势,而且能够让用户灵活的自定义不同任务要求,NI公司认准这将是未来测控行业的大势所趋。然而,那时最先进的个人计算机主频不过4.77MHz,内存也仅仅64KB,如此低下的计算能力使得稍微复杂的测试测量任务都无法用软件方式去实现。

困难还不仅仅是计算机性能带来的局限。在看到1984年面世的、128k内存的Macintosh计算机之后,Jeff被其图形化特性深深打动——“我那时就认定,相对于输入一串串命令,人们一定更喜欢鼠标和图形化界面。因为任何工具都应该适应人的习惯,而不是相反。”因此,他决定要开发一种图形化、人性化的软件平台,把工程师从繁琐、艰深的Basic和Fortran编程之中解放出来。

1985年的夏天,Jeff开始组织研发人马。因为有经验的程序员都拒绝加入这个异想天开的计划,他只好召了一批对Macintosh无比着迷的年轻学生,在德州大学一间狭窄的办公室里开始封闭式开发,向着他们的梦想——一套运行于Macintosh之上的、具有直观人机交互面板的仪器控制程序——奋力跋涉。

“当时我们当中没有任何人有过图形化编程经验。但是因为我们足够天真,所以亲手创造一套伟大语言的理想将我们鼓舞得热血沸腾。我们不停的遇到难题,不停的尝试和否定,不停的激烈争论,最终确定了软件的核心理念——并行的数据流结构。感谢上帝,在确立了这一原则之后,一切问题就容易多了。”

为了向公司同仁和充满怀疑的外界交代,Jeff意识到自己必须不时用一些研发成果证明自己的梦想并非幻想。于是,他给自己的团队制定了一个严格的时间进程表。当年的万圣节,即研发开始后的第四个月,Jeff和他的年轻团队进行了第一次成果演示。他们展示了图形化软件的架构,让程序和仪器进行了对话,收集了数据,并在屏幕上展示出结果。每个人都为了这一成功欣喜若狂。1986年1月,他们又进行了第二次成果演示。但是这次则是一次彻底的失败:因为代码太多,128K的Macintosh无法支持,编译器罢工了。

万幸的是,此时此刻天使降临:苹果公司新推出了内存达1M的Macintosh plus 1。Jeff长出一口气,因为他的程序代码完全可以在新机型上奔跑了。


Jeff心中的里程碑
1986年,NI公司正式发布LabVIEW 1.0版。然而出乎意料,他们的客户并非来自他们事先瞄准的仪器控制行业,而是涵盖了测试测量、监控、建模到仿真的各个领域。Jeff在备受鼓舞之余也感受到巨大的压力,因为他明白1.0版的性能并不能完全满足客户的需要。于是,他立即投入了LabVIEW2.0的开发。这次,难度之高、历时之久,又超乎了他的想象:直到1990年,2.0版本才顺利发布。这三年多的时间成为Jeff最难忘的回忆——“为了达到更高的软件性能,我们必须要发明一个用于LabVIEW结构化数据流语言的编译器。而在重新开发编译器的过程中,我们又意识到编辑器、图形显示以及几乎所有的细节都要重新编写。”

也正是经过了这次脱胎换骨,LabVIEW软件越来越臻于成熟。尤其让那些曾经轻视个人计算机和虚拟技术的同行感叹不已的是,20年来,微处理器性能和计算机存储容量经历了高达1万倍的增长——这让依托于PC技术的LabVIEW软件插上了一双冲天之翼。

回看LabVIEW系列的历程,几个里程碑式的产品发布在Jeff心中占有特殊的地位:

“除了LabVIEW2.0,1998年的LabVIEW 5.0是我认为最重要的发布之一。因为我们那时就为现在的多处理器设备提供了预先设置的多线程支持功能。”

“1999年的LabVIEW RT(实时)版本可以运行在实时操作系统上,这个创新的理念帮助我们进入了控制设计和仿真市场。”

“特别值得一提的是2003年推出的LabVIEW 7。它引入了波形数据类型,以及一些交互性更强的、基于配置的函数。它还实现了对PDA的支持,给很多便携电子领域的工程师提供了方便。更重要的创新在于,LabVIEW自此可以用在FPGA上了,这是我们一直以来的梦想,让不具备VHDL编程经验的人也可以同样进行硬件设计。”

当然,他提到了刚刚发布的20周年纪念版LabVIEW8.20。“这是第一个简体中文版,因为我们一直希望降低中国工程师学习和操作LabVIEW的语言门槛。同时,这也是我们第一次发布仿真框图和MathScript节点。我认为这将大大提升LabVIEW在设计工程师心目中地位。”

由于LabVIEW系列的普及和成功,这一软件还带动了NI的硬件产品销售:从数据采集、PXI到模块化仪器,NI成为让同行羡慕不已的“软硬通吃”的楷模。


汽车和椅子的定位
通常认为,编程语言的生命周期约为50年。这是否意味着刚刚过了20岁生日的LabVIEW软件也已经渐入中年?Jeff对此给与斩钉截铁的否定。他甚至拒绝别人把LabVIEW看作一种和C,C++一样的通用程序语言,因为这样会抹煞LabVIEW的其他重要特性——尽管,别人是把这种评价看成是对LabVIEW的褒扬。
Jeff曾经专门撰文指出:如果一辆汽车可以让你舒服地坐下,你并不会因此就叫汽车为“椅子”,因为显然它还有更大的用处;同样,如果你把LabVIEW看成一种和其他通用语言一样的东西,那么你就像把汽车叫成椅子一样,大大委屈了这辆汽车,以及使用和制造它的人。
这段话让人不禁莞尔:这是只有“LabVIEW之父”才能想到的类比。
迄今很难改变的看法是,人们认为基于文本的、顺序编程的语言才是通用程序的标准特征,而LabVIEW这种基于并行数据流的图形化软件,只是一种用在特别领域的软件——即使已经有不少人用它来设计游戏软件、管理软件、金融分析软件等等五花八门的应用程序之后,固有的观念依然难以改变。在Jeff看来,对LabVIEW最恰当的描述是:它可以用作通用语言,但是它比通用语言还要强大。“用过LabVIEW的人都知道,它不仅具备了通用语言的所有核心功能,而且它还必须应对更多的问题,比如物理接口问题,实时操作问题,硬件配置问题,以及更为苛刻的用户接口问题。”此番正名之后,他笑称,自己其实一点儿也不反对别人用LabVIEW开发那些与测控毫无关系的程序。“至少,越多人用它,那么关于编程语言的陈见就会越少!”
所有人都可以理解Jeff对LabVIEW的挚爱和执着;但是令人好奇的另一个问题,就是花甲之年的他是否还能保持一个高级软件工程师所需要的精力和脑力。显然,你我身边都极难找到这样的“银发程序员”——大家都在感叹技术发展过快,于是一旦进入35岁,国内大多数程序员都已经或者计划完成转型的过程。
“我现在和以前只有两点不同。第一,工作时间少了。现在我每天平均工作8小时,以前比这多得多。第二,我比以前爱忘事了。但是,我没觉得年纪对我的工作构成什么障碍。我和以前一样,还是挺机灵的……”Jeff脸上浮现出一个大大的笑容,“说实话,我只有和孙辈儿一起玩的时候,才觉得自己老了。因为我没办法像他们一样爬来爬去。”
对于很早就放弃技术生涯的同行,Jeff的建议是,如果你真对自己的新选择一往情深,那么就换吧,别耽误时间。“我也曾经尝试过商务方面的工作,但是我发现自己根本不适合,也得不到任何乐趣。但当我回归了技术角色之后,一切便又感觉良好。总之,不管你打算做什么,尽早确定下来,然后就是全心的投入。总有一天,好运气也会找上你的。”

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top