快乐的程序员
你快乐吗?我很快乐!你幸福吗?我很幸福!看到这里,一定会有铺天盖地的砖头扔出来,一定会说我很矫情。且慢,请听庾澄庆的<<快乐颂>>,当你听完这首优美动听的旋律后,还会拍砖头吗?快乐与否并不遥远,其实就在你的一念之间,不必刻意去追求,只要用心去感受,不断调整快乐与不快乐的砝码,快乐的天平自然就会向你倾斜。忘掉所有的不快乐,就是快乐!
但是程序员---快乐,这之间似乎有一条难以逾越的鸿沟。程序员整天面对的都是电脑、网络、需求、进度、bug ,加班、加班、再加班的生活,让人无暇顾盼花花绿绿的大千世界,何谈快乐?可是别忘了, IT曾经是很多人梦寐以求的行业,是一个很令人骄傲的行业,每一个过程,都可以令人快乐。
在速度中求快乐。
奥运会100米短跑冠军博尔特,他快乐吗?为什么?因为他他跑得快啊。勇夺8块金牌的菲尔普斯,他快乐吗?为什么?因为他游得快啊。兵贵神速,自古以来就是兵家制胜之法宝。程序员也需要这样的速度吗?似乎没有那么严重,但是如果你有那个能耐,有那样的编程速度,那也真是宝贝一个啊。类似的功能,别人要两周或者三周才能完成,而你只需一周,不用赶工,不用加班,当别人还在埋头苦干时,你早已徜佯于杨柳岸边,花前月下,这不就是成就感吗?就是快乐吗?尤其是在这个高速发展的信息时代,抢先完成,抢先入市,第一桶金赚得盆满钵满的时候,看着追随者,还在你死我活地拼抢着,那不更快乐吗?
在品质中求快乐。
程序人生的最大苦恼,就是在bug中生存,在bug 中煎熬。bug 就象厕所的苍蝇,赶之不尽,杀之不绝,真是野火烧不尽,春风吹又生啊。选择了IT,选择了code ,也就选择了bug ,平常心吧,不要强求把bug 铲草除根,而是尽可能地减少显而易见的bug,面对bug 决不心慈手软,要一剑封喉,彻底解决。如果一个bug,三番五次缠着你,那可真是巨大的悲衷啊。消除一个bug ,就当杀死一只苍蝇;消除一批苍蝇,就可以为IT世界换来一片清洁、卫生,心快神爽啊。bug 就如马路上的障碍、坑洼,要想车儿跑得快,就去修吧、去除吧,想想一马平川,一日千里的感觉,那不就是修路工人梦寐以求的快乐吗?
马路上坑洼填平了,障碍物也扫除了,就够了吗?就可以一马平川、一日千里了吗?Error!!,别忘记,还要看那一“马”啊。这就正如我们应用系统的性能,系统做好了,bug 也清除了,可使用起来,如蜗牛在爬行,那也是一个“不爽”啊。现在用户对IT的依赖性越来越大,对性能的要求也越来越高了。作为一个优秀的程序员,对系统的性能,也是他的一大追求吧。用户的使用,用户的亲赖,就是我们工作的动力,把这种动力换成系统的性能,那就成功一半了。试想,如果一个SQL语句,由原来的执行10分钟,变成现在的10秒钟;打开一个网页,由原来的一分钟,变成几秒钟,点一个按钮,看着IE右上角的旗帜,飘啊飘啊,永不停止到一个象QQ隐聊天时,一个“ALT + S”键,消息迅速传遍全世界,等等这类,心中还没有感到快乐吗?这样,马路修好了,车也修好了,与“一马平川、一日千里”的距离还远吗?
虽然不远,但是还是有一段路要走,那就是安全。搭护栏杆,固沙固土,预防沉河掉崖的危险,扫除飞沙走石的干扰,那就可以把心放在肚子里,跑吧,追吧,应用系统莫不如此。黑客、病毒、木马,并不可怕,也并不可恶,是他们让我们的IT世界更精彩,也是他们让我们的IT软件更强壮。正面应对吧,所谓道高一尺,魔高一丈,与其相斗,其乐无穷啊。不要妄想一劳永逸,没有一种解决方案可以让系统永不可摧,永远安全。野火烧不尽,春风吹又生,他们是永远存在的,也会永远发展下去,也正是他们的这种存在与发展,才让我们时时刻刻保持旺盛的斗志,也才能永远笑到最后。
程序的品质,我想就是这几方面的要求:稳定、高速、安全,正如马路上的汽车和栏杆,每一步都是复杂的,每一步都是艰难的,但是只要坚持,过程都是快乐的,结果都是幸福的。
在困难中求快乐
没有遇到过困难的程序员,绝对称不上优秀的程序员,没有遇到过问题的程序员,也绝对谈不上真正的程序员,优秀的程序员,就是在遇到困难、战胜困难,发现问题、解决问题中一步一步地走出来的。试想,经过三天五天,三周五周甚至三年五载;经历过google 、baidu,1,2,3,4,5,6....页,一真翻到9999页;问遍同事、朋友、专家都不得其解的问题,而某一天,老天开眼,突然灵光一闪:“解了”,心中的喜悦、快乐,可以用言语来形容吗?那真是太肤浅、太贫乏了。每解决一个问题,就多一份经验,标志着你又前进了一大步,想想,你还不暗自庆幸吗?
在创意中求快乐
创意,是时下最流行的一个词语了,吃饭穿衣讲创意,说话走路讲创意。这不,本届奥运会上的菲尔普斯,还记得吗?他能在一届奥运会上,独揽8枚金牌,除了与他自身的实力有很大关系外,他身上的鲨鱼皮泳衣也功不可没啊,这种泳衣设计了一些粗糙的齿状突起,以有效地引导水流,并收紧身体,以避免皮肤和肌肉的颤动,同时,在其中也加入了一种叫作“弹性皮肤”的材料,这种材料弹性更好,在水中受到的阻力更小。此外,它还增加了两个附件:一是附在前臂上由钛硅树脂做成的一些缓冲器——使运动员拥有更好的水感,二是振动控制系统——附在胸前和肩后的一些护垫,作用是帮助引导水流。这可不得不说是一个伟大的创意。
IT本身就是一个非常讲创意的行业,所有的工作都是一个从无到有、从虚到实的过程。一个好的创意,小可以让一个项目成功,中可以让一个企业进步,大可以让整个行业进步。比如说:Ajax,这是近几年web 开发中最时髦的技术了,无论你是.net 、Java 、PHP,都概莫能外,其实它不是一个新的开发工具,也不是一门新技术,而仅仅是JavaScript 、CSS、DIV等几种技术综合灵活运用而已,就将统治互联网十多年时间的web1.0 推向了web2.0,可见创意的魅力。再说小一点,一个好的算法、一段好的代码、一个好的SQL,都可称得上是一个创意,不要以为它微不足道就不值一提,勿以善小而不为,只要你在意它,追求它,积少成多,积小成大,让追求创意、追求质量成为一种习惯,你就能持久地享受到创意的乐趣,你也就成了一个很有创意的人,也一定能干出很多有创意的事情来。
朋友们,在这个过程中,你感受到这些快乐吗?只要你调整一下心态,调整一下快乐的砝码,一个小小小小,都会让你快乐起来,就象庾澄庆的<<快乐颂>>中所唱的“快乐其实也没有什么道理,don't worry be happy ”。也有人说,快乐 = 现实 / 欲望,如果你欲望太大,再好的现实,快乐也很小,但反过来,如果欲望=0,无论现实情况怎么样,都快乐无穷啊。