<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"><wml><card  id="index"  title="驽鸟公寓  &raquo; Blog Archive  这样的程序员创业有戏 | 驽鸟公寓"  ><p>
			标题：这样的程序员创业有戏<br/>
			时间：2008-12-08 (6:53 下午)<br/>
			分类：<a href="index-wap.php?cat=9" title="View all posts in 电脑网络" >电脑网络</a><br/>
            标签：<a href="index-wap.php?tag=%e5%88%9b%e4%b8%9a">创业</a>, <a href="index-wap.php?tag=%e7%a8%8b%e5%ba%8f%e5%91%98">程序员</a>, <a href="index-wap.php?tag=%e9%9b%b7%e5%86%9b">雷军</a><br/>
			作者：驽鸟<br/> 
            <br/>
            　　这是雷军为12月4日开始的&#8220;2008软件开发2.0技术大会&#8221;准备的讲稿。到了现场，雷军发现这个讲稿对现场近千人的技术高手不适合，只好临时讲了移动互联网的趋势。
　　致刚入门的程序员五点建议
　　每个IT企业，尤其是初创企业，非常苦恼：找不到好的程序员。现在大学、软件学院及各种培训机构，每年培养几十万的程序员，毕业的每个人都有同样困恼：找不到好的工作。问题出在哪里呢？其实，企业需要的是不是刚会写程序的人，需要来了就能干活的人，尤其能把活干好的人。而刚毕业的大学生多半刚学会如何写程序，的确很难企业需求。
　　企业到底需要什么样的程序员，一个刚入门的程序员如何成为企业需要的高手呢？还有很多程序员问雷军，&#8220;我需要具备什么样的能力就可以去创业？&#8221;我一直在琢磨类似的问题。我自己写过十年程序，也在金山管理过一千多人的研发队伍，最近也在做天使投资，仔细总结了如下五点建议与所有程序员分享。
建议一、只有真正喜欢才能写好程序
　　喜欢写程序，做程序员就是上天堂；
　　不喜欢写程序，做程序员就是下地狱。
　　程序员需要整天趴在电脑前，经常没日没夜的，非常辛苦，而且工作来不得半点虚假，少写一个标点符号都不行。喜欢的人，日子过得非常开心，每写一行代码，都会有新的成就，尤其当自己的作品被广泛应用的时候，那种自豪感油然而起。不喜欢的人，坐在电脑前极端无聊，被进度压得喘不过气来，天天为找bug改bug生气。
　　只有喜欢，只有热爱，才能把程序写好！
　　我建议不喜欢写程序的人早点转行，不要勉强自己，免得误人误己。
建议二、把程序当艺术品，象写诗一样来写代码
　　现在很少有公司做 codeview （对写好的程序做代码级检查），于是很多人在进度的压力下潦草应付，只要测试通过就算搞定。表面上看，开发速度很快，进度有保障；但实际上，这样的程序连开发者自己都很难读懂，一旦有bug，很难调试，将来维护升级都非常困难。这样的代码多半只能重写，浪费自然严重。
　　如果每个人写程序的时候当艺术品来写，写每行都认认真真、干干净净的，虽然速度略微慢了一点，但综合的开发成本会低很多。
　　如何写象诗一样美的代码呢？方法也很简单。
　　一、买几本经典的编程书，把书上所有例程全部重新写一遍，逐个比较和书上范例的差距，一步一步改善自己编程的风格和技巧。时间长了，自然就能写出象书上例程一样的代码，甚至可以比书上写得好。
　　二、基础扎实后，多看看Linux 等系统级的源代码，看看高手是如何写的，就有感觉了。
　　三、通读一下MSDN中所有的资料，这样，&#8220;读书破万卷，下笔如有神&#8221;。
　　还有，一定要牢记软件工程的铁律：可能出错的地方一定会出错。每个变量都做初始化，引用每个参数都会做有效性检查，在可能出错的每个地方都会做边界条件检查，这样开发出来的程序一定会稳固很多，就是出错也会很容易修改。野路子出来的高手，一般开发速度很快，但做完后bug很多，经常需要很长时间修改。而真正的高手，追求的境界是 bugfree code（零缺陷代码）。
建议三、必须写够十万行代码，不要心存侥幸
　　程序员象木工一样，熟能生巧。程序员必须写足够代码量的程序，才会有感觉，这是一个苦力活，没有任何捷径可走。
　　计算机是一门实践性的科学，没有动手能力做支撑，很难做出好的科研成果。我的一个学长是美国卡内基梅隆大学的博士，卡内基梅隆大学计算机系在全世界非常出名，他说每个博士生必须写十万行代码才能毕业，卡内基梅隆大学博士进任何一个大企业基本不用面试。而国内培养大部分的研究生、博士生，动手能力都偏弱。
　　没有写过足够代码量的，想成为高手是不可能的，只能纸上谈兵！
建议四、时刻保持好奇心
　　计算机技术更新换代非常快，每年都有各种各样的新技术出现。在我过去的职业生涯中，仅编程语言，我就用过 basic, masm, pascal, c++, vba, Delphi, java 等。需要时刻保持好奇心，不断学习各种新的东西，才能在未来的几十年职业生涯中不落伍。你要理解为什么 iPhone 出来很多高手用iPhone，现在一天到晚惦记着换部 gPhone 玩玩。
　　人的精力有效，高手往往工作压力也比较大，如何在有限的时间内掌握整个行业动态，的确是一个不简单的事情。我的经验是经常看业内的各种技术杂志，参加各种聚会，可以节约很多时间。最重要的是，交几个博学的技术高手，多和他们交流，一定获益匪浅！
建议五、不要局限在技术本身，多花点精力关注用户
　　做到前面几条，就已经是千金难求的高手了。但一个真正的高手需要知道用户需要什么，如何做出让用户满意的产品。
　　现在的软件研发越来越强烈团队协作，不少团队都配置了专门的需求分析的工程师、用户界面及用户体验的设计师，软件研发的分工越来越细。很多程序员以为只要把技术搞好，不用管用户需求和用户体验。实际上，需求方案及界面方案不可能写得非常细，具体的实施还是程序员自己来实现的。这个时候，好坏的差距很快就体现出来了。
　　我们写程序的最终目的是满足用户需求，不是简单完成需求规划方案中的功能。所以，程序员一定要认真揣摩用户心理，能明白用户的真实需求。
　　其次，怎么设计交互界面，让用户觉得好用，用起来舒服，这里面学问很大。我举一个小例子，每个程序窗口右上角都有三个按钮，如最小化、关闭等。乔布斯觉得不好看，不易用，他提出改用红绿蓝的交通灯。这样修改后，果然 Mac OS 漂亮和易用了很多。
　　目前互联网和手机上的应用开发，都非常强调小团队研发。这样研发模式速度会快很多，但对程序员的综合素质的要求也就更高了。
　　我强烈建议程序员不要仅仅局限在技术本事，还需要多点精力考虑和用户相关的问题，学会洞察用户的需求，并努力设计好用易用的产品。做着这点的程序高手，创业成算就很大了。
　　这些就是雷军说的《创业十大标准》中提到的&#8220;技术过硬&#8221;要求。
　　这样的技术高手，如果捕捉到合适的产品方向，并且具备一定带团队的能力，创业成功机会很大！事实上，绝大部分创业的技术公司，创始人都是这样的人！比如迅雷的邹胜龙和程浩，UCWEB的何小鹏和梁捷等。
            <br/>	
            <span class="stamp">上一篇：</span><a href="index-wap.php?p=675">国务院2009年放假通知</a><br/>            <span class="stamp">下一篇：</span><a href="index-wap.php?p=673">毛泽东40句经典语录</a><br/>    
                        
			<br/><a href="index-wap.php">返回首页</a>
<br/>切换访问：<a href="index-wap2.php">2.0版</a> | 1.1版
</p></card></wml>