关闭

关闭

封号提示

内容

首页 程序员之路探究.pdf

程序员之路探究.pdf

程序员之路探究.pdf

上传者: 李亚兰 2014-02-15 评分 5 0 115 16 522 暂无简介 简介 举报

简介:本文档为《程序员之路探究pdf》,可适用于IT/计算机领域,主题内容包含程序员之路探究这是个人对程序员生涯的一孔之见只代表作者的个人想法其中疏漏甚至错误之处在所难免希望大家多提宝贵意见。前言丰厚的薪水高端的职位和有成就感符等。

程序员之路探究这是个人对程序员生涯的一孔之见只代表作者的个人想法其中疏漏甚至错误之处在所难免希望大家多提宝贵意见。前言丰厚的薪水高端的职位和有成就感的事业是人人都想要的而这些都取决于你每天的认真工作努力学习和灵活做人上。日子就像一块块砖你就像是一个泥瓦匠每天在堆砌着你的人生最终砌出一个宏伟的大厦或是一幢低矮的小屋甚至是堆成一堆瓦砾全取决于你自己。程序员是一碗青春饭吗?程序界和软硬件一样都要遵守摩尔定律也就是说当前的技术知识很快会被替代你需要不断学习新的东西否则就会面临着被淘汰的危险。然而一个人的学习动力和欲望都是有限的记忆力还会随着年龄的增长而衰退从这个道理上来说年龄大的迟早会被年龄小的超过成为鸡肋并最终将被无良的公司抛弃。难道程序员这个职业做不过三十五岁永远是一碗青春饭吗?根基是决定一个人会不会被淘汰的关键我刚进入IT业就听说过这种说法不过当时的年龄限度是岁当工作一段时间后这个限度上调了五岁而且还有陆续上调的趋势而在各个公司中超过的程序员并不罕见在外国做了一辈子软件的人也屡见不鲜。难道“程序员是吃青春饭的”是一个谬论吗?那么为什么很多人持有并宣扬此论调呢?其实这个结论既正确也不正确它的结果取决于要评判的人。一个人如果根基扎实他就更容易学习新的事物新的知识年轻和精力相对于扎实牢靠的根基是微不足道的对于别人是一座山的障碍对于他也许就是一张纸的隔阂这样的人是不会面临着被超越被淘汰的危机的青春饭的论调对他完全不适用而一个人如果根基不牢只是靠精力和年龄勉强立足每次新事物新知识出现都在和年轻人拼体力拼精力那么他迟早将被淘汰优胜劣汰的社会就是这样残酷无情但很公平。什么是程序员的根基面向对象的思想。MVC分层架构按接口编程依赖注入ORMapping,面向方面SOA等都是OO的发展不从根本上领会它程序员就难以把握程序发展进化的趋势永远停留在老窠臼中无法自拔自我提高升华进化当然更是一句空话。数据结构。程序的核心目的是收集整理和展示数据而数据的核心就是数据结构它的重要性不言而喻。线性表、栈队列、串、多维数组、广义表、树、图这些数据结构你都需要认真掌握掌握的程度越深日后学习的阻力就越小相对于他人将更有优势。算法。如果缺乏好的算法程序架构得再完美数据再贴切都无济于事犹如一台法拉利却用牛来拉一样。迭代法、穷举搜索法、递推法、贪婪法、回溯法、分治法、动态规划法都是你需要掌握的不要以为这很难读透一本算法导论就足够了。基础API。只有思想数据结构和算法只是一条腿要健步如飞还得两条腿走路。程序员的另一条腿就是基础API你需要认真掌握TCPIP协议详解Socket通信线程文件读写等每种语言和技术都需要的基础知识一个新事务即使再绚烂夺目也是利用这些基石搭建而成的如果你彻底了解了它们将永处不败的境地甚至觉得新技术也不过如此。如何打好根基多学。从项目中学从书本中学从别人哪里学从失败中学习掌握基础API就是需要多学习如果有已有的知识总结可以起到事半功倍的效果。多想。学习OO和算法都需要理解光是死记硬背毫无用处子曰“学而不思则罔”OO和算法的学习都需要一个理解消化的过程只有彻底理解了你才真正掌握了它们。多练。经过代码的历练程序员才能百炼成钢成功的项目能告诉你什么是正确的失败的项目会暗示它为什么会失败下次你就能更进退有据。更重要的一点是不做项目不做多个项目不做大项目程序员对“度”的把握总是缺乏经验不是过就是不及。真正亲手手写过万行代码的是成为一个成熟程序员的必要条件(但不是充分条件)。多见。眼光狭窄目光短浅固步自封只能造就一只井底之蛙你的眼光必须超越自己所在的环境才能取得真正的进步现在有许多开源社区和软件都是你应该涉足的地方和什么样的人在一起你自然也会成为什么样的人。“蓬生麻中不扶而直白沙在涅与之俱黑“说的就是这个道理。程序员的身价是由什么决定的?如果一个程序员有良好的根基充满智慧的头脑积极主动的精神和锲而不舍的毅力他就一定能有丰厚的薪水吗?答案是否定的。原因在于薪水不光取决于自身的水平还取决于周围的环境。程序员的身价首先决定于他能给雇主带来多大的利益如果带不来利益程序员再有本事也是白搭这就要求程序员一定要根据自己的特点寻找合适自己发展的公司在你的职业生涯之初就要研究自己和世界逐步选择一个合适自己的方向发展永远记住方向比努力更重要。其次程序员的身价也取决于他的不可替代性即使一个人能带来很多的利益但身后有大批的后备军资源干不好立即就有人顶替你这样的人薪水也不会高反正你不干有的是人干资本家就是这样无情。这告诉我们要使自己不可替代就要努力向高处走一定和众人拉开差距才能彰显自己的价值。程序员生涯能给我们带来什么IT是一个朝阳产业正处于蓬勃发展中选择这一行比其它行业拥有更多的发展机会。相对于其它职业程序员对自己命运的把握程度更大。”荣辱自取不求于人“这是一种非常好的感觉在别的职业中是难以找到的。只要人们还在使用计算机程序员这个职业就永远不会消亡因为计算机运行永远需要软件。在信息时代程序是一个非常有效的收集或发布信息的工具如果利用得当它能直接带来巨大的收益。程序员事业发展的方向架构师CIO。对于热衷于技术的程序员来说这是一个不错的方向架构师这个职位的必要条件是有优秀的技术功底和丰富的设计经验此外还需要有某个领域的深入知识。对于CIO要求更高他需要对未来五年内的技术走势把握得比较清楚。项目经理部门经理。人际关系处理良好语言能力出众的程序员适合走这条路。这也是大连大多数程序员的理想选择。做自己的网站当一个给自己发薪水的人。网站做好了收入颇丰低端如hao高端如google的例子都摆在眼前。其实做网站初期投入并不巨大但需要持之以恒的毅力尤其是敏锐的市场嗅觉它决定了你是否能从网站中盈利。此外拥有自己的网站对于自我宣传建立个人品牌有很大的好处。这条路适合于热衷于网络技术的程序员。开公司创业。制作软件并不难难得是是否能接到活能否接到长期的活如果能做到的话你就可以选择创业。拿工资致富是不可能的而一次项目的利润可能就等于你前期的工资总和。后语相对于永恒的宇宙我们确实非常渺小应该有谦卑之心但是跟别的任何生命相比我们的尊严我们的价值我们的可能性是一样的就算人家确实是牡丹玫瑰自己只是小小的角落里的一朵苔花也应该灿烂地绽放把自己涨圆并且自豪地仰望苍天说:“我也能!”建立你的商业意识程序员为什么需要商业意识几年前当我刚刚认识Fishman的时候听到他神奇的创业经历觉得非常不可思议。甚至还专门写了一篇报道发到《电脑报》上题目是《从程序员到CEO》。不久Fishman将创建的又一个新公司天夏科技卖给了丁磊的网易。丁磊以原来的天夏游戏开发团队为基础开发的《大话西游》系列的游戏给市场带来的冲击完全扭转了门户网站的竞争格局。尽管当时的网易股票处于极其底迷的状态Fishman放弃了很多股票而选择了现金但Fishman从中获取的收益不是一般人所能够想像到的。刘韧也曾经在不同的场合表示过对Fishman技术和商业结合能力的钦佩。记得有一次在Donews的聚会上我提到了一个想法Fishman立刻从不同的角度进行了一番分析并做出了他的判断尽管对于这些我仍然持一定的保留意见但他的分析思维和方式、方向给我很大的提醒。这提起了我对一个技术出身的程序员是如何逐渐拥有这些商业意识的关注。拼音加加的作者廖恒毅也是我很好的朋友。他曾经是《中文之星版》的开发者曾经担任过微软开发合作部经理对微软技术有着一种执著的热爱。直到他现在担任佳软公司的CTO都依然亲身编码他曾经说过“生命不止编码不休”的类似话语。然而当我三年前第一次去采访他的时候他曾经告诉我说已经停止了拼音加加的开发原因很简单尽管拥有了大量的用户尽管每月有上千元的注册费(这在当时的共享软件中已经算是不错的成绩了)但对于他来说这样的回报显然不能令人满意。于是将精力完全放在了搭建企业级软件架构方面。当时拼音加加做了一个非常奇怪的功能这便是将未注册用户的首页指向了新浪的新闻页面只有用户注册之后才能去掉这个令人感觉不爽的功能除了这个功能之外软件再也没有其它的限制了。尽管后来出了很多的破解版本但初期的破解往往治标不治本过一段时间进行某一个操作之后首页便有会被修改为新浪的首页。廖恒毅曾亲口对我说过其实他在防止这个功能被破解方面做了很多工作他在系统目录中保留了一个备份随机的过一段时间便会检测一下首页如果发现被篡改便会再次修改。这里充分体现了一个程序员的高明和狡猾。不过重点并不在这里而是拼音加加所指向的新浪新闻页面一直以来我认为新浪是需要为此向拼音加加附费的但廖恒毅后来才告诉我:“指向这个网页纯粹是因为他自己喜欢看新浪的新闻而已。”后来我认识了百度的一位朋友吴京川他是负责推广搜索引擎推广的他们有一种可以和软件产品合作的业务我介绍给了廖恒毅说不如将拼音加加的页面指向百度利用一些关键词挣钱。廖恒毅后来对我说:“他在与吴京川聊了一会之后便发现了另外的一块广阔天地。”事情的发展是这样的廖恒毅在将拼音加加的首页首先指向了自己的网页并把首页放置了一个与百度首页完全一样的搜索框。当然搜索框中的有一个隐含的参数这便是用来定义有多少搜索产生付费的功能。而后他又照抄了百度的网站导航页面后来被百度的使用者发现之后提出了抗议于是他又去抄了另外的一个网址站。现在当你再访问加加在线的时候你会发现这里已经成为了一个小小的门户每月廖恒毅从中获得的回报在万元左右而拼音加加的升级变得更加快速和频繁起来甚至他们在两个月之内用NET和C语言重写了软件。同样一个软件之前每月几千元现在是万元这之间的差距仅仅在于一个意识。这个意识便是商业意识。当然拥有这样意识的程序员也越来越多了超级魔法兔子的作者蔡旋便在最新推出的版本中修改用户的首页指向了自己的网址站Haokan。我曾经在网上与FlashGet的作者候延堂有过深入的交流作为一个在陕西地区的程序员他取得的成绩有目共睹。几乎一直是下载领域的明星。甚至在国外的下载站点FlashGet也一直是最强有力的竞争者。而他自己每年的收入也在百万级而这一切靠的仅仅是上门的一个大banner一个小banner和软件发放过程中对等插件的捆绑。然而当我与好朋友小林沟通的时候他告诉我说:“候延堂根本没有将FlashGet的能量利用起来其软件的价值也不仅于此。”为了更好的利用这个软件的价值他所在的公司在IDG投资后甚至曾考虑收购FlashGet软件。讲了这么多我的目的便是真的希望能够挖掘一下程序员的商业潜力有多大。而这又不得不将程序员与商业意识挂上钩。缺乏商业意识的程序员平时与众多的程序员或者技术人员沟通我都很羡慕他们拥有的技术你可以经常感受到他们内心深处那种对技术的狂热和执著。然而我们又非常遗憾的看到很多他们引以为傲的技术是国外的程序员开发的而且技术在不断的发展和进步有很多程序员在盲目的学习和追随中失去了自我进入了技术的漩涡。我曾经与一位程序员合租过房子那是我第一次见到一个人可以拥有如此多的书籍在床头上摆满了各种技术书籍高处顶到了屋顶。不过与我们经历过的大学生活一样会发现很多书籍都是新的让人感觉既敬佩又可笑。很多程序员可能会说:我们不想创业我们热爱技术我们希望能够在在公司中一直埋头技术钻研技术所以我们不需要有商业意识。当然可能大部分人不会说这句话但他的内心也会存在这样的想法。面对这样的观点我只能说表示同情。因为在中国整个大环境下能够给这些程序员提供如此的环境的地方不能说是蓬莱的海市蜃楼也差不多是屈指可数了。除了在高校中的研究机构外任何一个企业都会要求以市场为导向进行发展。四通打字机的发明人王辑志曾经写过一篇文章《软件不能在独木桥上走》讲了他自己的一个亲身经历。一位朋友托他到澳大利亚演示自己所写的一套软件然而到了目的地后他发现无论如此也无法成功的演示回来后向这位朋友报怨。这位朋友很不以为然的向他演示了应该“这样……这样……这样操作就不会出问题。”这让王辑志感受破深一个程序员规定好的步骤不能出丝毫差错的让普通的用户使用一遍不啻于让用户在独木桥上行走。这也是其缺乏商业意识的表现。现在就来参加一个小小的测验吧如果你具有一下症状中的两条以上估计就需要挖掘一下商业意识了。程序员缺乏商业意识表现为:*拍脑袋就编程做出决定*对解决了一个技术难题而得意洋洋最后发现用户对这个功能根本不关心*不经过充足的测试便发布软件*骂用户笨讨厌软件出来之后用户的报怨不喜欢与软件服务人员沟通商业意识对软件成功的重要性很长一段时间以来我们杂志跟踪微软亚洲研究院的发展也和几位院长和不同的员工进行的交流。在外界看来微软亚洲研究院是一个冰封的世界一群技术狂人在随心所欲的创造和发明他们完全是研究者的气质仿佛与微软在外界市场上厮杀没有多大的关系。然而当你真的走进微软亚洲研究院的内部了解了其发展的前前后后你便会改变你的认识。因为在这里院长的指导思想他们的商业意识无时无刻的不在指引着微软亚洲研究院的发展和前进。微软亚洲研究院每定一个技术方向都需要进行详细的论证包括市场上有没有需求与微软现有的产品如何的结合如何保证微软在未来的几年可以推出更具有竞争力的产品等等。从第一任李开复院长起他们的工业界经验让微软亚洲研究院就一直沿着商业的意识在不断前进。张亚勤博士曾经讲过尽管微软亚洲研究院要研究的可能是未来五-十年才会用到的技术但一定要结合微软公司的发展策略和方向要能够为微软的长期发展奠定基础。比如微软要在未来的人机交互界面方面需要很多新的技术于是微软亚洲研究院就在TabletPC技术上做出了很大的贡献同时还在智能数码笔方面做了很大的尝试这些技术研究都是在整个公司的大的发展策略下进行的也唯有如此微软亚洲研究院才获得了比尔盖茨和其它同事的认同。对于研究院的院长来说如何在大的框架下面选择好方向就是他们的职责。而现在随着微软亚洲工程院的出现更是将这种商业意识贯彻进了产品的开发中。我注意到在与已经工作超过五年的程序员尤其是曾经带领过一个产品或者项目的技术负责人沟通的时候他们所表现出来对商业意识的醒悟往往让你有深刻的领悟。尤其当做出的产品在市场上遇到挫折的时候他们却发现原来并不是自己的技术不行也不是产品开发周期的问题而是没有充分的考察市场的需求没有用商业的意识来指导自己做事。在我采访汉王科技的时候曾经与三位不同战线的技术和产品负责人一起畅谈有两位负责人在汉王工作了十年之久他们用亲身的经历验证了汉王发展中遇到的问题。最初汉王的核心技术是手写识别公司创始人总裁刘迎健也是一位非常出色的技术人员他曾经几十年钻研手写识别的核心技术。但在汉王创立的初期他们曾经度过了一段非常艰苦的日子后来曾经有一个非常好的机遇这就是PDA的兴起当时恒基伟业的老板力邀汉王加盟但汉王认为PDA这种产品实在没有什么技术含量根本不看好最终只拿到自己的技术授权使用费了事这与后来恒基伟业所取得丰硕成果相比差距巨大不过现在看来随着PDA市场的快速滑弱对当初的决定是否合适便成为了一个无法说清的话题。然而汉王后来的思路转变却在市场上取得了不错的回报。比如汉王在拥有手写识别技术之后开始考虑如何利用这些核心技术做出市场上用户需要的产品。“从核心技术到产品”这成为了汉王的跨越标志。名片通和文本王便是非常有代表性的两个例子其实OCR软件已经出现了很长的时间拥有这项技术的公司也不只汉王一家但汉王最早利用这些技术做出了一个在市场上销售火爆的产品。名片通就是为了解决现在大家交流频繁名片聚集过多但不易查找的问题。据说名片通的推销人员打电话给微软公司公关部门的人员的时候本来根本不愿意理会但后来听到介绍和看了演示之后当即购买了数台。一个成本不足百元的黑白扫描仪和一套软件销售的价格超过千元。对于文本王更是如此最初提出这个想法的是汉王的一位技术人员。他当时表示看到了很多单位中都有扫描仪但用的人很少经过研究发现原来OCR软件的使用是需要比较专业的首先需要配合扫描的分辨率而且扫描出来的图片还需要进行校正尽管这在程序员看来简直就是小菜一碟。但这些操作对于扫描仪潜在的消费人群办公室人员来说就是不小的使用障碍了。于是他提出了对OCR软件和扫描仪的改进意见这样汉王投入了一个团队进行开发将OCR软件与扫描仪更好的结合比如可以自动校正自动识别自动输出Word文档等公那过。上市之后取得的效果是令人震惊的用户的反馈也非常的热烈。这让我回想起PDA最初发明的故事一直以创新为理念的苹果公司创造了第一台掌上电脑Newton但由于体积庞大运算速度慢手写识别效果差等问题在市场上铩羽而归。但有一个人从中看到了问题的本质先从手写软件的识别着手由于速度慢识别用户不同的笔迹对CPU运算的速度要求很高于是他发明了一套输入法定义了一套“任何字符必须一笔写完”的规定尽管这对用户来说还需要学习但学习的成本并不大而且一旦学会识别的效果会非常好再加上其对电脑的功能进行了不断的裁减只集中到了几个必要的功能上这样在体积方面也达到了用户需要的地步这款产品上市后取得了意想不到的成功甚至从COM公司分拆上市这便是PALM。因此在一个公司中作为普通的一个程序员同样要具有自己的商业意识这些意识并非是为了考虑公司的经营并非是为了转向管理而是为了提升自己开发的价值。商业意识不如用BusinessSense我既不是“海龟”英语讲的也不好。不过我仍然在这里希望能够用一个英文单词来表明我的观点。因为在中文里面商业已经被人用的过烂了再加上国内的这些商业体系的不完善总是给人感觉不如Business的味道更加纯正。而对于“意识”一词我更加是认为一直以来被用作政治用词我们在这里拿来颇有些“挂羊头卖狗肉”的意味。而Sense一词却有一种不可言传的体会他讲究的是一种感觉一种感悟。因此BusinessSense可能更加适合作为我们希望宣扬的重点吧。微软曾经重金从美国邀请来一位著名的作家他写了一本书我们出版社也出了这本书的中文版其中他讲到一个重要的总结:他认为日本的软件做的是工程(Engineering)欧洲的软件是当作科学在做而在美国之所以他的软件产业发展的很好这是因为他们一直是将软件当作商业(Business)在做。这也成为我写这本书的重要论据。看到了这样三种模式中国将要采取那种模式呢?就像公有制、私有制共存一样中国存在的也是一种混合的体制既有希望自己开发产品做商业的美国模式公司也有热衷与外包服务的工程公司而在各大专院校中软件不也同样被当作科学在搞吗?如果不是这样同样开始进行开发的青鸟UML软件怎会落得这样的下场。打破技术误区拥抱商业意识一直以来中国的软件产业都没有按照正规的商业市场化进行操作这一方面与国情有密切的关系。但同时我们发现很多成功的软件企业无一不是钻了某些政策方面的漏洞或者是利用了某个时期的政策而发展起来的。这一方面造成中国的软件产业没有按照商业的规模发展同时也给很多程序员带来了很多误解。误解之一是只要埋头写一个好的软件自己就能够成为百万富翁。从一开始塑造的一系列类似求伯军这样的软件英雄开始尽管激励了一大批高手进入了软件领域但这时恰逢整个软件开发的技术进行更新换代同时软件的开发规模和质量要求也更加高了起来在这样的大背景下一个程序员缔造出辉煌显得是那么的无助。成功的归结于机遇失败的归罪于大环境的恶劣而恰恰没有考虑的是否一开始就按照市场的规则做事是否拥有了商业的意识和经验。误解之二就是中国的市场很大不必考虑国际市场。直到现在仍然有一大批人鼓吹中国的市场很大先把国内的市场作好就可以了。我认为这简直就像“攘外必先安内”的语调。在中国唯一几个成功的将软件产品在全球行销很好的就是几个台湾的公司包括趋势和友立科技。我在与友立科技董事长采访的时候他很明确的表示当初开始做产品行销就考虑到了全球为什么?就是因为台湾的市场很小所以不得不把眼光放到全球市场。当友立科技还很小的时候曾经因为触动了Adobe公司的市场备受打压活的非常的艰难而一旦Adobe发现这种打压很难真的消灭到Ulead的时候他们又祭起了领悟一个法宝:收购。尽管这次收购让Ulead没有机会成为与Adobe那样规模的公司但付给Ulead的这笔钱让友立科技更好的发展了其它的产品。如果没有在全球上的这种拼杀Ulead又怎能在图像处理市场上占据这样的地位呢。公司小不可怕怕的是缩在家里不愿意也不敢出去。而程件开发工程的思想已经在美国传播开来甚至还诞生了Rational这样的工具厂商。因此我想说中国的市场大对中国的程序员来说是个好事还是个坏事真的是需要好好思量的。我觉得后者的可能性还是要大一些。误解之三:利用最先进的开发工具就可以做出更好的产品。中国的程序员生活很艰苦是他们手中的武器:开发工具。伴随着盗版在开发人员报怨自己开发的软件被破解的同时自己也在使用者被破解的开发工具一个新的版本出来立刻便会尝试使用开发人员的机器上安装的永远都是最新的开发工具。于是中国一批又一批的程序员都变成了脱离某些RAID工具不会编程的“开发高手”。这首先就是他们缺乏商业意识对知识产权的不尊重在这种情况下你能够要求他们深入学习和掌握手中的工具吗?我在采访一些美国的程序员时他们很多人还习惯直接用最简单的开发工具写代码因为公司没有那么多资金用来升级开发环境但这也造就了他们扎实的编程基本功。而国内的很多程序员只能够被牢牢的捆绑到一个平台上当Linux出现的时候又有多少人可以迅速的从Windows平台转变到过来呢尽管在很多人看来这两个平台的开发在底层上其实并不多大的区别。其实程序员拥有商业意识并非理解公司发展的策略做产品可以更好的做出成功的产品自己创业可以更好的走向成功。技术发展背后的商业驱动力在技术的产生和发展过程中应该说互联网技术的产生是军方发展过程中的产物但是一旦这项技术民用化之后便大大促进了商业的进展那个时期技术是商业的驱动力。看看当时硅谷的发展就可以明显感到这种现象。最初被追捧的互联网公司往往都是技术型的公司这类公司的股票成长速度快的出奇。Netscape就是一个特别著名的例子当硅谷投资人吉姆克拉克看到浏览器这一个市场的时候便收罗了Netscape的开发团队并力图使之上市。当时吉姆克拉克简直就成立硅谷风险投资商的太上皇运行谁投资这都是要排着队的。当时曾经因为第一次给吉姆克拉克投资占据太多股份的一家风险投资商因为被克拉克拒绝对网景的投资而心理崩溃进而走向了自杀。这时技术是指路灯。而华人陈丕宏创建的互联网企在技术上的投资逐渐衰减。已经成为商业对技术进行反作用了。现在很多公司也表示最近没有什么特别激动人心的技术出而是真的问到到底这些技术能够给自己的业务带来一些怎样的改变能够如何提高公司的盈利。通过IBM这家大公司的转变我们也能够从中管窥到技术和商业之间的驱动交互过程。IBM在五元研发大型机技术当时IBM就代表着技术和实力公司在研发方面的投资超过了其它所有公司的总和而且所有的商业都在随着IBM的新技术不断向前发展。然而随着PC机器和小型工作站的兴起IBM的大型机策略遭受到了挫折而且他们的技术已经序员也在这个过程中失去了与全球软件开发思想同步的机会当我们还乐衷与几个人埋头开发小软件的时候大规模软但有一点他们永远都不会最差这便让他们脱离技术的轨道而是对其人生的更好补充。有了这些商业意识在公司可以更好的它与商业的关系属于相互作用而且在一定阶段要么技术占据主导要么商业占据主导。业最初也是以技术为核心在上市初期备受股市追捧然而随着互联网技术的普及随着客户现而且越来越多的企业不再仅仅注重几个IT技术的新名词六十年代投入了几十亿美不再成为控制客户的法宝。在各种外忧内患的干扰下IBM的市值一度下挫至谷底。这时他们请来了卖饼干的郭士纳郭士纳在考察了客户的需求之后提出了整合IBM的技术资源给客户提供整体解决方案的策略这时已经开始由完全有IBM主导技术发展开始走向给客户提供适当的技术解决方案。而且当时恰逢互联网的热潮伴随着电子商务技术提供商角色的宣传IBM展现了一个技术供应商的地位。逐渐走出了低谷并创造了一系列的辉煌。在郭士纳离职之后新任CEO将他的策略再次推进了一步这次不再说其它的而是修改为“随需应变”。其实这也就是按照客户的要求做事了。IBM第一次将满足客户需求而不是技术领先作为公司的整体策略。也间接证明了现在这个社会已经由原来的技术驱动转变为了商业驱动。而且很多商业需求在主导了某些技术的产生和发展比如软件外包和需要的网格技术就是一类客户已经不导IT而只是希望关注自己的核心业务于是IBM看到了这点将很多IT技术支持服务接手了下来同时为了更好的支持这种业务类型IBM将自己的研发方向放在网格技术上做了很多工作和努力然而在执行了一段策略之后IBM又发现其实要满足用户的这种需求并不是一件容易的事情。在技术上需要跨越的障碍远远超过老板的想像于是不得不重新整理自己的思路提出了踏踏实实整合自己产品和技术线按照行业进行资讯和技术服务的策略。不过IBM还是看到了一点客户的需求这就是在国外大部分的系统之间开始需要进行整合于是IBM将“随需应变”转变为了更加实际的“整合策略”这样收购的产品线统统都为这个统一的目的而服务了。对于微软这样的公司来说也所提供的技术进步让所有的用户感觉到了一种鼓舞。每个新版本都有那么多的新技术新特性目不暇接。然而现在Windows产品虽然也经常可以看到很多新技术的宣传但用户已经好像对此麻木了许多就像比尔盖茨如此看重的Longhorn也不能勾起大部分用户的胃口。没办法时代已经不同了。用户已经厌倦了跟随在这些技术厂商的屁股后面前进了。类似苹果这样的公司虽然也在技术上有很大的技术但在宣传方面好像更热衷于用外在的设计来吸引用户的关注。要说唯一对技术保持热情的群体可能就要算开源社区了。在思想精神上的刺激下很多软件展但最近一段时间这样的步伐也开始慢了下来更多的人开始关注如何利用开源来做出自己的商业模式诸如Jboss这样的团队就更加希望按照客户的需求来定位自己产品未来的发展这样的产品是在一个商业人员的带领下发展而不再是在一群技术狂人的掌握下飞奔。我采访过很多家国似点击科技这样的公司在创立之初相信王志东认为凭借自己的影响力和对技术的把握肯定可以吸引一大批客户跟随自己的协同软件平台但事实上商业前景并不清晰的点击科技在技术推广方面遇到了很大的挑战于是不得不投入了很多的精力在自己的平台上先打造出一系列能够满足用户使用的解决方案出来至于以后这项技术的推广和发展实在不是一件容易的事情。我们经常使用某些共享软件其实好像这些软件整体的技术并不出色而且与很多大型软件相比更是弱不禁风但就是有很多应用可以通过这些小的软件更好的实现比如Photoshop其实理论上可以实现任何一种图形和图像的设计和处理但Ulead却对一些初学者和简单的图像操作提供另外的一种方式而类似图像转换这样的功能更是让一大批小软件在市场上获得了回报。MacroMedia的Flash制作产品可以制作各种各样的Flash无论是按钮和程序都是可行的。但仍然市场上有很多简易的flashbanner生成软件比如把文字直接转换为flash或者把Video转换为Flash这些技术其实Flash本身都内置但用户希望以更简单的方式来使用于是用户的需求就代表了商业的驱动力驱动着一些技术向前进步。如果无视这种变化而固执的坚持技术论有可能会遭遇到挫折。在国内与普元公司的CE其实国外很早便有公司做同样类似的产品也就是能够从软件初始开发的时候就用构件技术搭建但到现在为之很多公司最终失败了。谈及失败的原因黄柳青表示其实并不是他们的技术做的不好而是因为美国的主流客户应用不在这个领域大型系统已经发展多年要重新用一套新的技术和方法构建其中的难度是可想而知的而且开发这样一套系统需要投入巨大的人力和物力很多公司没有等待到那一天便支撑不下去了。但是在中国这样的系统是有其市场空间的因为中国的大型系统还处在发展的初期如果能够有一套提高开发效率的体系自然可以吸引用户同时国内开发这样的产品其投入比国外相比还是少了许多。总之综合这样很多因素我们可以看到商业对技术的反作用力现在占据主导地位。然而这并不能说明未来不会再重复技术推动商业的时代出现。如果未来出现了更好的开异的体系架构真的有可能再让我们技术人员感到骄傲的一天。有人说现在的硬件体系比十年前复杂了倍但软件比原来的复杂了倍这对于很多技术人员来说能够寻找到解决这个问题的技术方法无疑就是“银弹”。在这样的时期中程序员不要埋怨自己生不逢时也不要对满足客户的需求心存芥蒂充分的拥抱用我们有一天从用户的需求中又再次挖掘到了技术的新驱动力。再愿意自己主不例外在开始从Dos时代向Windows时代的转变以及Windows的发布对于全世界来说它产品保持着飞速的版本更新和发内的软件企业他们也开始将宣传的重点从原有的技术转向到满足客户的要求。趋势科技就是这样。而类O和CTO沟通的时候我们了解到发方法或者有人发明了更加优户的需求吧。或者当第二章与客户沟通建立商业意识创立威速科技的清华毕业生在开是他们认为自己的产品肯定会受到用户的喜爱带着这样的想法他们将自己的视频会议产品版本展示给客户。客户看了之后说:“你这个产品微软的NetMeeting不是都提供了吗?你们和他们的有什么不一样?NetMeeting是一个免费的产品我为什么要选择购买你们的产品?”这些问题当时曾经让总经理叶滨无言以对。后来我们终于理解了原因是一个技术和产品之间存在着如此大的差距让用户购买是需要提供足够的说服力。即便这样他们仍然在更新的几个小版本之后一套产品都没有销售出去。直到版本出来后提供了多方混音会议支持各种文件格式的白板功能等增强的功能这才获得了用户的初步首肯。到现在叶滨说:“这是我创业中的转折点。”而现在当你在创业之前就了解到为什么要使用你的服务?他们会为哪些服务付费?市场上有没有类似的产品?他们的功能怎样?缺少哪些客户需要的功能?未来的竞争态势如何?等等问题只有当你把这些因素统统考虑过一遍之后在返回头衡量一下自己的出发点或许那时你将对自己的产品有了更加清醒的认识。MagicC是两位程序员的信部门工作的时候便深受Unix开发环境不便之苦而另外一位创始人戴晓东同样也经历过这样的问题。于是两个人辞去了自己舒适的工作埋头到了广州一个城乡结合部开发软件。两个人做了将近两年在这过程中他们没有任何其它的娱乐和消遣写代码、吃饭、睡觉就成为了生活的全部到最后两个人的神经几乎在紧绷中崩溃。我们在这里的确是要为他们对技术的痴情而致敬但返回头了解一下他们当初所做的决定也比较容易发现其中存在一些冲动的成分。用周鸿的话说:“这个市场是一个窄众市场用户群很小而且中国的客户还没有为开发工具付费的习惯因此建议在国外销售。”当然现在MagicC也在稳步的发展但当初如果能够更好的考察一下市场或许可以取得更好的成功。开发的软件不是程序员自己用的曾经有人描述求伯军当时编程会产生这种冲动。然而当我们仔细衡量一些他们的动因时会发现原来他们是要给自己写软件而不是写给用户使用。记得当时金山推出“用户使用体验实验室”的时候还颇为骄傲的宣传了一把。因为从中可以观察用户的使用习惯。我可能是雷军从各种媒体的报道中发现了这样一点:有公司将用户使用软件的一举一动都记录下来然后分析用户的使用习惯进而改善用户的使用体验。在VB之父的书中也阐述重要性。然而对许多程序员来说仍然无法站在用户的角度看软件可以做出各种层次可以支持各种数据类型的调查。但令人伤心的是整个系统的安排和命名极其混乱我想也只有开发人员才能明白为什么要起那样的名字吧。当输入数据后如果出现错误也会返回一些令人丈二和尚摸不着头脑的提示。我每次使用都要极力的回忆其使用方法即便如此也不能保证一次成功。这让我对整个系统充满了恐惧感和不信任感。在CSDN的新闻后台中一个非常简单的功能但用户提交新闻后应该可以给出新闻的生成页面然而CSDN的新闻后台给出的却是一个修改页面要想查看需要到前台访问一个很长很长的动态地址才能够获得这样一个简单的修改竟然经过三年的时间才修正过来。因为每次提这个需求的时候开发人员总会说很忙既然能够实现整个功能干吗还要修改。现在担任瑞星高级副总裁的IT资深人士毛一丁也讲述过他的亲身经历。当时珠海金山在开去做最早的用户提建议毛一丁非常仔细的使用过后写了满满的一页意见但很多开发人员看后不以为然。比如毛一丁提出为什么没有很常用的“字数统计”功能开发人员拿过鼠标经过一番操作把结果显示在屏幕上然后说这不是可以实现嘛?而对另外一些功能开发人员认为自己很煞费苦心的做到了鼠标右键上但毛一丁很尖锐的指出大部分用户是不知道使用右键的。所以说尊重用户的使用习惯对于程序员来说这是必须要上的一课。玩技术与利用技术让程序员感到最为骄技术时整个世界都为之疯狂这是一个技术人员能够达到的最终幻想。不过对大部分程序员来说这样的高度是无法企及的但这并不妨碍他们来show一下自己学会的技巧。我认识一位在Dos时代的技术人员他在别人只可以解密WPS文件在别人会用CCED的时候他可以拿着打印的长长的用C语言写的Menu的实现代码炫耀。然而到了今天仍然对自己掌握了某一个技术感到沾沾自喜。其实这样的技术人员应该也不在少数甚至有些人只不过五十步笑百步罢了。始的时候一个设计的方案获得了香港某投资机构的青睐获得了一定的天使投资基金。于了这些必要的决定因素的时候再去衡量一下自己的方案。你所面对的客户群是谁?他们作品它是一款在Windows平台可以多人开发Unix程序的开发环境当初创始人之一的张涛在电水平的厉害看到一个软件觉得不好用于是自己动手写了一个。估计很多编程高手都经常想这的使用。我曾经使用过一套网上调查系统系统的功能颇为强大发WPS的产品请毛一丁前傲的事情是什么?那肯定是自己做出的技术在别人的面前进行炫耀。就像当初卡马克做出新的三维游戏会用拼音输入法的时候学会了五笔输入法在别人只会用UCDOS的时候他这并不能怪他们因为在最初软件开发进入中国的时候各方面的技术资料少的可怜尤其是当Dos向Windows编程过渡的时候微曾经讲过金山词霸的开发其实只不过是因为他们直到如何利用一个钩子机制从程序中截获信息并进行翻译的处理但就是这个技术事实上造就了如此大的一个产业也造就了几位的百万富翁。而对王志东来说也是靠剖析了Windows系统中的DLL文件实现了对Windows平台的汉化并由此诞生了一个畅销的中文之星软件。而瑞星的崛起也是因为刘旭将流行的Word宏病毒的查杀机制做了出来便一下子打开了市场。那个时候这些人被称为高手因为他们掌握着某些关键性的技术。甚至可以说不一定是技术有可能只是技巧。然而现在随着互联网的兴起技巧的价值变得越来越小遇到一个难题用搜索引擎搜索一下一般都可以找到答案。实在不行到论坛中发一个请求也经以讲一个小插曲这便是微软最早评选MVP(社区最有价值专家)的时候在CSDN上根据专家分来进行判断也就是谁回答的问题最多谁就是专家。当CSDN通过检索把名单给微软之后在第一次见面会上令大家跌破眼镜的是第一名是一个女生而且她不太编程。当询问她经验的时候她说每次看到问题她就会先用搜索引擎搜索一下如果中文找不到那她就用选择一些关键词搜索英文的网站这样一般都会有人回答这样答案就出来了而且很多都是英文的答案这也让很多网友感觉这的确是一个高人因为这些问题都是用英语回答的。了解了这一切令人恍然大悟除了看到一些程序员的懒惰之外也可以感受到技巧已经不在称为衡量一个程序员水平高低的门槛了。这个时候考察一个程序员的价值除了其技术的深度和广度之外是否能够看到技术之上的商业价值是否能够拥有商业的意识便变得更为重要。这时如果作为一个程序员仍然玩技术还有一层含义就是迷恋最新出现的技术一旦有了新的进展就要下载尝试一下或者安装一下玩玩。曾经有一次我们被某公司邀请参加他们的一个技术研讨会。会上有两组开发的团队一组是原有的技术开发团队另外一组是最新组建的而且要准备以NET技术进行开发当时NET还是一个新兴的技术有人给戴习为老师推荐了一位工程师这位工程师号称对NET技术很精通。然而当在会议上这位工程师讲述了自己准备用NET做产品的构想时原有的开发团队问到了很多系统设计层面的内容这位工程师几乎无法应对因为他只是玩了NET技术对于这样的技术在商业上的应用却没有经验。会后戴习为老师也表示:“尽管他对微软的NET技术有一定的了解但的确经验还缺乏很多。”后来这位工程师发展的还不错进入了微软开发合作部专门用来讲述微软最新出现的技术想来这也与他自己的爱好挂上了钩也是一个不错的选择。不过这样的职位毕竟只是少数对大多数程序员来说玩技术并不能给他带来更高的价值。前两天这位工程师又在自己的blog上提到他用微软最新开发平台内置的屏保程序制作了一个自己的屏保演示给同事看同事感觉很新奇。当我看到这条Blog感到一丝苦笑:玩技术而已!玩技术的另外一个后果便是容易迷失方向。在Dos时代技术的种类很少程序员面前的技术方向也很少玩也容易玩出深度。但随着Windows平台尤其是网络出现后各种技术层出不穷即能够对技术发展的来龙去脉有深入的了解就很容易限于技术的表面理解也就很容易造成程序员不知道如何选择要继续下去的技术丢了西瓜拣了芝麻。于是会出现论坛中“到底是什么技术好到底应该选择那种语言的疑问。”按照大部分过来人的解释其实只要选准一条技术路线真正的钻进去自然会取得好的效果因为不同的技术之间是相通的。微软工程师孙展波在回答程序员“做技术到底应该做深还是做广?”的疑问时毫不犹豫的表示:“应该做深而在广度的方面每周抽出一些时间了解一下就足够了。尤其是在现在互联网如此方便网上信息量如此庞大专业类网站密布检索极其方便的情况下想要获得任何资源都是一件并不复杂的事情。”而且玩技术还有一个结果就是容易忽略用户的需求。技术酷是一件很棒的事情但这并不能保证持续的生存。尽管硅谷曾经以看哪个公司做的技术最人感觉技术很酷随后SUN公司推出Java语言的兴起Java技术变得很酷但现在Google搜索引擎成为了最酷的技术。因此技术本身仅仅注重酷的感觉是远远不够的。趋势科技的创始人张明正和陈怡蓁女士合著的《软有很多API并没有公布在那个时候可能一个产品的核心依靠的就是比别人多了解一个API或者一个钩子的机制。蒋涛常会有高手告诉你答案。一个人掌握某种技术技巧变得越来越不重要了。说到这里我们可整天为了获得了某个技巧而炫耀的话相信无法取得更大的成绩。便是水平再高的程序员也很难兼顾几种技术领域。如果不酷而吸引程序员的关注。比如最初的是苹果的技术最酷后来出现了Netscape这种做浏览器的公司给碍他们互相接受对方的某些观点和主张事实上挡不住的趋势》一书中便提到开始趋势的文化是要做最酷的技术和产品但随着公司发展到一定的阶段他们发现仅仅这些并不能保证公司的持续发展和客户的认同而真正了解和分析用户的需求才是更重要的。“我们公司将从一个酷技术的公司转变为满足客户需求的公司。”这是他们十多年做公司的总结而处在软件公司中的程序员自然应该从中得到某些启示。避免坐井观天美国的民主党和共和党两大党派双方竞争的时候相互攻击乎但这并不妨在执政的时候这两是Java程序员便鄙视NET的一切我在微软平台上开发便不了解任何Java技术的发展。程序员对技术的爱狠本来是一件非常常见的事情但如果硬要把这种感情夸大的表示出来或许将来给自己的也是难堪。曾经以一篇《大政党的很多作法也都是一样的。但对于技术领域的程序员来说很多人却将不同的技术看做势如水火:我Java坚定的支持者在他《Java夜未验和知识的缺乏在讲述的过程被批驳了一番这让这位专家十分恼不是最好的技术。在这里他的评判标准是因为术好谁的技术不好的作法是需要不断修正的。写程序不如卖鸡排》短文备受瞩目的台湾地区著名的技术作家蔡学镛最初是一位眠》中便对NET技术进行了一遍又一遍的讥讽诸如“Java是NET的爹”等语言表明了作者的鲜明态度。然而就在书发表不到一年蔡学镛表示“了解NET越多越觉得这也是一项了不起的技术它有很多的独创和更高明之处”这样的观点逐渐的他转向了NET平台成为了这个平台上的技术作家。如果我们说一个人的世界观可以改变的话程序员的技术观当然可以改变但这种改变中最好不要给人留下很多“坐井观天”的言论。国内某Java网站的站长也是一位Java的死党有一次我们组织了不同领域的专家一起座谈一位是NET的专家一位是做NET移植Java技术的专家这位站长也参加了但可能是由于经火于是回去后在自己的一亩三分地上大骂那位NET的专家。我也认为这是一种坐井观天被揭露后的恼怒。而且后来这位专家还发生过另外一件事情这就是为了显示自己支持开源于是也在SourceForge上提交了一个自己做的项目但却遭到了一堆人的狂骂原因是他开源的项目竟然是用Jbuilder写成的在国内可以盗版Jbuilder但在国外这是需要很大一笔钱购买的开发工具一个不懂得开源内涵的人来做开源的事情是不是坐井观天?即便在我们编辑部内部也发生过这样的事情当时杂志曾采访了一家做中文分词技术的公司写了一篇报道但一位技术编辑以自己认识在做分词技术的人员为理由坚决认为这个采访是夸大的他做的并原来他接触过一个做这样技术的人感觉做的很棒了已经不可能再超过这种技术了。岂不是在市场环境下这家做中文分词的公司早已经超越了单纯的中文分词算法技术他们已经在用工程化的手段提高分词的效果了单纯的技术层面的比较在这家公司的眼中只是产品化的一个方面而已更重要的是以面向市场客户为导向的方式来做技术。连IBM原软件中心的总经理现任中兴公司技术副总裁都承认这家公司在中文分词技术上是最领先的作为一个普通的技术编辑又怎能拿着自己坐井观天的想法来评判呢。技术是互通的但同时又是有疆界的面对自己不熟悉不了解的技术谦虚的听是最好的方法。而凭借自己模棱两可的了解便做出谁的技

类似资料

编辑推荐

顺其自然,让心不再摇摆.pdf

钱学森文集.pdf

Learn to Read Latin student's book.pdf

林黛玉 进贾府.ppt

金融心理学(拉斯.特维德).pdf

职业精品

精彩专题

上传我的资料

精选资料

热门资料排行换一换

  • 随机控制理论导论_Astrom.…

  • 內觀禪修的探討.pdf

  • 中国文学编年史 元代卷.pdf

  • 灵性炼金术.pdf

  • [历史学理论与方法].朱本源..…

  • [天下没有怀才不遇这回事].包益…

  • 有效睡眠Powerful_sle…

  • 第06章 基质与内膜.ppt

  • 美国国家地理八月版Nationa…

  • 资料评价:

    / 9
    所需积分:1 立即下载

    意见
    反馈

    返回
    顶部