Misc

浏览模式: 标准 | 列表 | 图文
雷军:这样的程序员创业有戏

雷军:这样的程序员创业有戏

雷军的大名,不用我说大家应该都清楚吧。本文摘自雷军的博客,希望给大家(也包括我)一点启示:

这是我为12月4日开始的“2008软件开发2.0技术大会”准备的讲稿。到了现场,我发现这个讲稿对现场近千人的技术高手不适合,只好临时讲了移动互联网的趋势。

致刚入门的程序员五点建议

每个IT企业,尤其是初创企业,非常苦恼:找不到好的程序员。现在大学、软件学院及各种培训机构,每年培养几十万的程序员,毕业的每个人都有同样困恼:找 不到好的工作。问题出在哪里呢?其实,企业需要的是不是刚会写程序的人,需要来了就能干活的人,尤其能把活干好的人。而刚毕业的大学生多半刚学会如何写程 序,的确很难企业需求。

企业到底需要什么样的程序员,一个刚入门的程序员如何成为企业需要的高手呢?还有很多程序员问我,“我需要具备什么样的能力就可以去创业?”我一直在琢磨 类似的问题。我自己写过十年程序,也在金山管理过一千多人的研发队伍,最近也在做天使投资,仔细总结了如下五点建议与所有程序员分享。

建议一、只有真正喜欢才能写好程序

喜欢写程序,做程序员就是上天堂;

不喜欢写程序,做程序员就是下地狱。

程序员需要整天趴在电脑前,经常没日没夜的,非常辛苦,而且工作来不得半点虚假,少写一个标点符号都不行。喜欢的人,日子过得非常开心,每写一行代码,都 会有新的成就,尤其当自己的作品被广泛应用的时候,那种自豪感油然而起。不喜欢的人,坐在电脑前极端无聊,被进度压得喘不过气来,天天为找bug改bug 生气。

只有喜欢,只有热爱,才能把程序写好!

我建议不喜欢写程序的人早点转行,不要勉强自己,免得误人误己。

建议二、把程序当艺术品,象写诗一样来写代码

现在很少有公司做 codeview (对写好的程序做代码级检查),于是很多人在进度的压力下潦草应付,只要测试通过就算搞定。表面上看,开发速度很快,进度有保障;但实际上,这样的程序连开发者自己都很难读懂,一旦有bug,很难调试,将来维护升级都非常困难。这样的代码多半只能重写,浪费自然严重。

如果每个人写程序的时候当艺术品来写,写每行都认认真真、干干净净的,虽然速度略微慢了一点,但综合的开发成本会低很多。

如何写象诗一样美的代码呢?方法也很简单。

一、买几本经典的编程书,把书上所有例程全部重新写一遍,逐个比较和书上范例的差距,一步一步改善自己编程的风格和技巧。时间长了,自然就能写出象书上例程一样的代码,甚至可以比书上写得好。

二、基础扎实后,多看看Linux 等系统级的源代码,看看高手是如何写的,就有感觉了。

三、通读一下MSDN中所有的资料,这样,“读书破万卷,下笔如有神”。

还有,一定要牢记软件工程的铁律:可能出错的地方一定会出错。每个变量都做初始化,引用每个参数都会做有效性检查,在可能出错的每个地方都会做边界条件检 查,这样开发出来的程序一定会稳固很多,就是出错也会很容易修改。野路子出来的高手,一般开发速度很快,但做完后bug很多,经常需要很长时间修改。而真 正的高手,追求的境界是 bugfree code(零缺陷代码)。

建议三、必须写够十万行代码,不要心存侥幸

程序员象木工一样,熟能生巧。程序员必须写足够代码量的程序,才会有感觉,这是一个苦力活,没有任何捷径可走。

计算机是一门实践性的科学,没有动手能力做支撑,很难做出好的科研成果。我的一个学长是美国卡内基梅隆大学的博士,卡内基梅隆大学计算机系在全世界非常出 名,他说每个博士生必须写十万行代码才能毕业,卡内基梅隆大学博士进任何一个大企业基本不用面试。而国内培养大部分的研究生、博士生,动手能力都偏弱。

没有写过足够代码量的,想成为高手是不可能的,只能纸上谈兵!

建议四、时刻保持好奇心

计算机技术更新换代非常快,每年都有各种各样的新技术出现。在我过去的职业生涯中,仅编程语言,我就用过 basic, masm, pascal, c++, vba, Delphi, java 等。需要时刻保持好奇心,不断学习各种新的东西,才能在未来的几十年职业生涯中不落伍。你要理解为什么 iPhone 出来很多高手用iPhone,现在一天到晚惦记着换部 gPhone 玩玩。

人的精力有效,高手往往工作压力也比较大,如何在有限的时间内掌握整个行业动态,的确是一个不简单的事情。我的经验是经常看业内的各种技术杂志,参加各种聚会,可以节约很多时间。最重要的是,交几个博学的技术高手,多和他们交流,一定获益匪浅!

建议五、不要局限在技术本身,多花点精力关注用户

做到前面几条,就已经是千金难求的高手了。但一个真正的高手需要知道用户需要什么,如何做出让用户满意的产品。

现在的软件研发越来越强烈团队协作,不少团队都配置了专门的需求分析的工程师、用户界面及用户体验的设计师,软件研发的分工越来越细。很多程序员以为只要 把技术搞好,不用管用户需求和用户体验。实际上,需求方案及界面方案不可能写得非常细,具体的实施还是程序员自己来实现的。这个时候,好坏的差距很快就体 现出来了。

我们写程序的最终目的是满足用户需求,不是简单完成需求规划方案中的功能。所以,程序员一定要认真揣摩用户心理,能明白用户的真实需求。

其次,怎么设计交互界面,让用户觉得好用,用起来舒服,这里面学问很大。我举一个小例子,每个程序窗口右上角都有三个按钮,如最小化、关闭等。乔布斯觉得不好看,不易用,他提出改用红绿蓝的交通灯。这样修改后,果然 Mac OS 漂亮和易用了很多。

目前互联网和手机上的应用开发,都非常强调小团队研发。这样研发模式速度会快很多,但对程序员的综合素质的要求也就更高了。

我强烈建议程序员不要仅仅局限在技术本事,还需要多点精力考虑和用户相关的问题,学会洞察用户的需求,并努力设计好用易用的产品。做着这点的程序高手,创业成算就很大了。

这些就是我说的《创业十大标准》中提到的“技术过硬”要求。

这样的技术高手,如果捕捉到合适的产品方向,并且具备一定带团队的能力,创业成功机会很大!事实上,绝大部分创业的技术公司,创始人都是这样的人!比如迅雷的邹胜龙和程浩,UCWEB的何小鹏和梁捷等。

程序员系列:

《我十年的程序员生涯》

《我写BITLOK那七年》

《阳光灿烂的日子》

《致刚入门的程序员五点建议》

叫卖fans123..com和fans123.net

这两个域名在我身边很久了,当初的一些想法最后都没有做。在征得团队成员的同意后,决定出售这两个域名。

有需要的可以在此留言,或者加我QQ或者MSN等 。。。
QQ:19129540
msn:goukixiao@hotmail.com,学学坏人,用全角,呵呵

下午突然不能访问

下午突然不能访问

下午四五点钟的时候,网站突然不能访问,很紧张,呵呵,PING了一下网址,不通,再PING IP地址仍然不通,不知道怎么回事,可能是机房那边出了问题吧。
看来,我真的是得了那种精神病了,对于网络的故障明显比其他人紧张的多。
不过也难怪,毕竟是自己在做的网站,虽然仅仅是博客,但也是自己的一番心血,总归是显得比别人担心的。。。

晚上回到家访问一下,正常了。oh yeah,很开心啊

短信价格下来了

短信价格下来了

12月3日消息,据中国新闻网报道,工业和信息化部通知,长期被消费者和业界诟病的短信网间差别定价将被取消,在2009 年1月15日前基于就低不就高原则实行内外网间统一定价。届时起,移动、联通和电信三大运营商的6亿多手机用户间互发国内短信将享有统一的0.1元/条的 价格。

据工信部10月份通信统计月报数据显示,截至10月31日,中国手机用户总数为6.27亿户。目前,除了小灵通外,我国手机用户在同一家运营商的网 络内互发国内短信,费用是0.1元/条,而在不同运营商的网络间发送国内短信时,一般费用为 0.15元/条(移动神州行用户为:网内0.15元/条,网外0.2元/条),实行的是“异网异价”政策。


不过我还是觉得挺为电信惋惜的,刚刚把CDMA搞过来。就给他定下来价格一致了。连价格优势都被扼杀了。真可怜

保存的一封邮件

保存的一封邮件

<p><span style="font-family: 宋体;">任 何人,只要选择了投身于一项事业或者一门职业,客观上就要求该人必须采取一种正确的入世的态度,不论路途多么艰险,环境如何恶劣,都应该始终如一。我自独 立思考以来,纵览...

什么是D2,写在D2参加之后

D2前端技术论坛(Designer & Developer Frontend Technology Forum),简称 D2 ,为国内前端开发者提供一个交流的机会,一起分享技术的乐趣,探讨行业的发展,以技术会友。它是中国所有前端开发者的节日。D2 将努力营造一种轻松自由的交流氛围,没有任何商业色彩,以纯粹的技术交流为根本,共同推动国内前端技术的发展,发掘前端技术可以创造的更大价值。

授课人介绍:

      • 马鉴 (Zerlot Ma, 七月)
        Platform Technology Evangelist
        Adobe
        Blog:www.7yue.com
      • 史珉头像 史珉 (Aspirin)
        高级Flash工程师
        土豆网
      • 王超群头像 王超群
        互联网策略顾问
        微软(中国)有限公司
        Blog:blogs.msdn.com/cqwang
      • 许湛头像 许湛 (Justin)
        前端开发主管
        阿里巴巴(国际站)
        Blog:www.alldone.cn
      • 李戎头像 李戎 (小麦)
        资深前端开发工程师
        土豆网
        Blog:www.mikkolee.com
      • 郑叶飞头像 郑叶飞 (怿飞)
        资深前端开发工程师
        淘宝网
        Blog:www.planabc.net


D2参加随感

D2参加随感

今天在D2上海大会上呆了一天,作为一名web开发人员,对于前端技术总还是需要研究和追新的,虽然他们上的课中有一部分我已经了解或者永远不会用到。但并不代表我不能从中学习知识。

一大早和mpeg就往建工锦江大酒店赶,到了之后才发现,和上次ThinkSite(欣才)举办的一个小型沙龙是在同一个地方,由于我的号码已经是100多了,去的时候也是很紧张的,怕是他们开始了不让俺进。

进去时,正是adobe的马鉴在介绍flash10的一些新特性,感觉flash可做的事情真多呀。好恐怖呀。印象最深的是一块画布在被采用各种 技术进行渲染,性能实在恐怖(不过他是用mac的,我不知道windows下,是否还有同样的性能)
接下来就是土豆网的大麦?介绍了flash的协作开发,可惜由于adobe的朋友讲的太优秀了,相比较而言,他讲的实在就有点。。。。
吃过饭后进行抽奖,象俺这么英俊潇洒的人一向遭人妒忌的,所以,奖项就离我远去了。
接着是alibaba的一位帅哥讲了敏捷开发,节奏把握的很好,确实很有水平。在他讲完之后,接着是微软的王超奇介绍IE8的一些新特性。说实话,他讲的内容没有什么特别的,毕竟这些都是可以看news list看得到的,但是演讲之前的那段广告视频却非常不错,没见过,也吸引了很多眼球 。淘 宝UED和土豆小麦在最后讲了一些内容,都是在赶时间了。。。

本次的亮点:1、叽歪互动 2、书
或许搞技术的都不太擅长直接语言交流,这个叽歪互动则让更多的人进行了参与,在以前的一些会议中,看起来是不可想像的,但如今却成了一种新的交流方式(依稀记得好象是某个年会上开始有叽歪参与,然后就一发不可收拾了,叽歪也随之出名)
书是第二个亮点,可惜我一本都没有拿到,好象是那本:悟透javascript还有adobe air开发(看到有人在送这本书给其他人时,那人感慨了一句:啊,是译本呀,唉我还以为是原版呢。)看来国内对于译本的质量都不太看好呀。

感受还是很深的,一直在搞后端的WEB开发,不料前端已经走的这么快了。再次感慨一下(听说,会上的资料会提供下载,不知道何时能够有的下载)

框架之随便谈谈

框架之随便谈谈

本文是我发在博客园的文章,原文地址是:http://www.cnblogs.com/neatstudio/archive/2008/11/28/1342894.html,如果对本文有啥意见的话,也可以去那里回复,目前已经有一部分朋友的回复了。

我不知道这篇文章会写成怎么样,但既然算是一个想法,我想也可以放到首页被大家鄙视或者怎么怎么一番吧。(很多新人发随笔的时候是否都选择了发首页?我是想到哪里写到哪里,可能会就显得乱了)

最近一段时间园子里讨论框架算是比较热烈的,我是每天订阅首页更新的,所以也想着来说几句。

开头先表明,我正式的工作中用的并不是.net,看.net的书和一些简单的开发,是我在03、04年的时候吧。再往后几乎就没有用过了。但是我想编程的思想都一样的,说一点框架不算为过吧。

在工作中,很多公司、个人都选择了使用框架进行开发,大多数开发人员都会熟悉一到两个框架,并可能对某一个框架有着很深的了解,在看到别人解决不了的问题的时候,有时候也会冒上一句:你如果用XXX框架,只要用XXX方法就可以解决了,有必要那么烦吗?

是的,框架确实简化了很多开发工作,什么ORM啦,页面自动生成啦,(对于VS那种拖控件生成页面的方式,一向很感慨的),对于用户来说,他需要的 几乎只是一个业务实现和逻辑控制。很多公司也确实是这样工作的,但是我想说的是:在这样的环境下,你除了会使用这些框架,你对程序的一些底层,你还熟悉 吗?

<被神话的框架>http://www.cnblogs.com/birdshover/archive/2008/11/26/1341568.html,说的基本也是这样的问题。

企业应用框架,那是为的快速开发,个人应用框架,除了快速开发外,最重要的应该是学习实现框架所用的一些架构、思想,而不是为了用而用(接单除外)。

很郁闷的就是看到一些人(我们公司的另一部门的项目经理)在项目开发的时候居然用上了最新的框架,对于一些新的框架,虽然有部分技术是先进的,但是 BUG也是很多的,在项目一开始的时候,他自己就说了,我们要用XXX框架,然后手下一帮子人花了一个多月先学习这个框架,最后在开发的时候问题多多,可 是他在向领导介绍的时候说的是:我们采用了业界最领先的框架。结果在做关系映射的时候,数据库里的数据如果默认是0,创建外键的时候就会报错,但他从来没 有找自身的原因,而是把责任推到我们部门,说我们不会设计数据库,int字段默认不应该为0,应该用NULL,被雷倒了。[题外话:拿着那么高的工资,做 的却是一些不切实际的事情,怪不得去哪家公司哪家公司就差不多完蛋了(对不起,不能多说,我还要混饭吃,同时猜测我们公司会在什么时候被他们整跨)]

在开发的时候认识几个程序员,都在自己写着框架,然后开源发布了,不料在自己的论坛里,很多使用框架的人居然在问:这个框架带留言板吗?这个框架带XXX吗?一直被雷着。。。

整理一下思路先。

框架,我们是要用的,但是要看用的范围和用的度。在企业开发的时候,我们可以尝试采用框架,毕竟在使用框架的时候,有很大一部份被忽略掉的就是效率 (估计没有人会说框架的运行效率高的),可是在做WEB应用的时候,数据量并发很大的时候,如果你对框架底层并不熟悉,那么建议还是不要使用框架,而是寻 求一些简单的解决方案(比如在使用SQL的时候直接手写,这样调试起来也会方便一点,不要象我们公司那些人,用Hibernate查询,生成的SQL居然 横跨了31张表,太牛叉了)

对于个人,我们并不建议使用框架,但可以学习框架的设计思想,毕竟这些框架在实现的过程中,大都采用了一些很常用也很实用的设计模式,看完一个框架 (我说的看完是指仔细读完源码),那些设计模式也就几乎都了解了,当然看代码的时候也可以对应那些设计模式的书。几乎所有的框架都会有自己的特色,但同时 也会有自己的缺点,不可能会有完美的解决方法,否则目前就只会流行一种框架而不是框架满天飞了。

(看框架前,请先尝试自己写点代码,不要啥都没学就直接看、用框架,那只是一种白痴行为,不过现在很多培训点就是这样的。怪不得软件业越来越不 值钱了,创造力几乎都没有了,虽说要学印度,但也要教别人基础的吧。。。)

最后再放点屁:先学好基础,打实基础,再用框架,再学框架,否则到最后都是一场空。(如果你辛苦用的框架,作者不更新了,你怎么办?就象linux 的某个文件系统一样,业界认为这个文件系统很好,可是作者却因为杀死老婆坐牢去了,再好的东西没有维护,不再更新,你敢用吗?)

轉貼:李一男2003年在港湾给开发人员培训时的语录

轉貼:李一男2003年在港湾给开发人员培训时的语录

李一男2003年在港湾给开发人员培训时的语录:

【1】好好规划自己的路,不要跟着感觉走!根据个人的理想决策安排,绝大部分人并不指望成为什么院士或教授,而是希望活得滋润一些,爽一些。那么, 就需要慎重安排自己的轨迹。从哪个行业入手,逐渐对该行业深入了解,不要频繁跳槽,特别是不要为了一点工资而转移阵地,从长远看,这点钱根本不算什么,当 你对一个行业有那么几年的体会,以后钱根本不是问题。频繁地动荡不是上策,最后你对哪个行业都没有摸透,永远是新手!

【2】可以做技术,切不可沉湎于技术。千万不可一门心思钻研技术!给自己很大压力,如果你的心思全部放在这上面,那么注定你将成为孔乙己一类的人物!适可而止为之,因为技术只不过是你今后前途的支柱之一,而且还不是最大的支柱,除非你只愿意到老还是个工程师!

【3】不要去做技术高手,只去做综合素质高手!在企业里混,我们时常瞧不起某人,说他“什么都不懂,凭啥拿那么多钱,凭啥升官!”这是普遍的典型的 工程师的迂腐之言。8051很牛吗?人家能上去必然有他的本事,而且是你没有的本事。你想想,老板搞经营那么多年,难道见识不如你这个新兵?人家或许善于 管理,善于领会老板意图,善于部门协调等等。因此务必培养自己多方面的能力,包括管理,亲和力,察言观色能力,攻关能力等,要成为综合素质的高手,则前途 无量,否则只能躲在角落看示波器!技术以外的技能才是更重要的本事!!从古到今,美国日本,一律如此!

【4】多交社会三教九流的朋友!不要只和工程师交往,认为有共同语言,其实更重要的是和其他类人物交往,如果你希望有朝一日当老板或高层管理,那么 你整日面对的就是这些人。了解他们的经历,思维习惯,爱好,学习他们处理问题的模式,了解社会各个角落的现象和问题,这是以后发展的巨大的本钱,没有这些 以后就会笨手笨脚,跌跌撞撞,遇到重重困难,交不少学费,成功的概率大大降低!

【5】知识涉猎不一定专,但一定要广!多看看其他方面的书,金融,财会,进出口,税务,法律等等,为以后做一些积累,以后的用处会更大!会少交许多学费!!

【6】抓住时机向技术管理或市场销售方面的转变!要想有前途就不能一直搞开发,适当时候要转变为管理或销售,前途会更大,以前搞技术也没有白搞,以 后还用得着。搞管理可以培养自己的领导能力,搞销售可以培养自己的市场概念和思维,同时为自己以后发展积累庞大的人 脉!应该说这才是前途的真正支柱。。?

【7】逐渐克服自己的心里弱点和性格缺陷!多疑,敏感,天真(贬义,并不可爱),犹豫不决,胆怯,多虑,脸皮太薄,心不够黑,教条式思维。。。这些 工程师普遍存在的性格弱点必须改变!很难吗?只在床上想一想当然不可能,去帮朋友守一个月地摊,包准有效果,去实践,而不要只想!不克服这些缺点,一切不 可能,甚至连项目经理都当不好--尽管你可能技术不错!

【8】工作的同时要为以后做准备!建立自己的工作环境!及早为自己配置一个工作环境,装备电脑,示波器(可以买个二手的),仿真器,编程器等,业余 可以接点活,一方面接触市场,培养市场感觉,同时也积累资金,更重要的是准备自己的产品,咱搞技术的没有钱,只有技术,技术的代表不是学历和证书,而是产 品,拿出象样的产品,就可技术转让或与人合作搞企业!先把东西准备好,等待机会,否则,有了机会也抓不住!

【9】要学会善于推销自己!不仅要能干,还要能说,能写,善于利用一切机会推销自己,树立自己的品牌形象,很必要!要创造条件让别人了解自己,不然 老板怎么知道你能干?外面的投资人怎么相信你?提早把自己推销出去,机会自然会来找你!搞个个人主页是个好注意!!特别是培养自己在行业的名气,有了名 气,高薪机会自不在话下,更重要的是有合作的机会...

原文來自:http://www.sanotes.net/html/y2008/229.html

突然輸出的就全是繁體字了。。感慨一下。

2003年的話到現在仍然有用啊。在這個寒冬里面,這些話,我們繼續溫習一下