读《程序员,你伤不起》杂感(附带分享两个项目源码)
眼看工作三年有余,过完今年25岁的生日一不小心都到奔三的行列了,转眼之间孩子都一岁了,眼角的鱼尾纹慢慢凸显出来。每年花费上千人民币购买IT相关书籍补充营养,最近陆续买了两本书,一本是吉日的《程序员,你伤不起》,还有一本就是《一个程序员的奋斗史》,其实吉日的《程序员,你伤不起》从还没有正式发售的时候就已经在等了,第一时间从淘宝上购买到了,买书后过了些天才知道吉日给大家发福利,到当地新华书店购买凭发票可以报销书费,只怪自己下手太快了,呵呵!
仔细想想这三年多的工作经历(一直在一家公司呆到现在),就是一条不正规的程序员之路,从公司招进来那天到现在,写过的项目就从来没有用过什么版本管理,甚至连文档都不规范,从需求分析到可行性到设计到编码到测试到售后,全部是一个人完成,每个项目保存下来的文档都是在自己不顾老总反对的情况下整理出来的,郁闷不!我们老总说来也怪,虽然程序员出生,但是曾经写过的项目没有任何文档,注释也是寥寥无几,命名更加惨不忍睹,UI更加残忍,他也一直说只要满足用户的基本功能就可以了,我勒个去,不过不得不佩服的是他的商务能力,一个连基本的输入合法性校验的程序,也能卖几千块一套给客户,用户使用过程中报错什么的,就叫用户要按照规范来输入,该输入编号的地方必须是数字等等,哎。来公司后接手的是一个VB.NET的项目,曾经学过VB,也用.NET写过一些小DEMO,所以这个项目接手还是比较顺利,XX半个月就给搞定,好了,又来一个VB6.0的项目,我擦,好吧,接着做吧,后面又来一个VC6.0的项目,晕,好吧,谁叫是老板给发工资呢,老老实实边学边做吧,因为个人一直用.NET多一些,所以后面索性用C#重写了以上所有项目,时间还是比较充裕的。
尽管不是一条正规的程序员路,但是这个过程还是充实的,自己也在一天天进步,工资也一点点加上去,我一直认为,只要愿意学,用心学,脑瓜子不是特别笨,一年下来的进步还是很可观的,今年陆续用上班之外的时间,一般是周末和晚上,做了三个私活项目,报酬3000,3000,5000,虽然不多,给老婆买个好点的手机还是可以了,嘿嘿!越做越快,其实最后这个项目用的是自己不熟悉的QT(C++)写的,功能还是挺多的,前后有效时间也就用了大概3*20=60小时的时间,关键是反复测试就占用了一半还多点的时间。
卧槽,一不小心又扯远了,怎么说的都是自己呢?开始说说读《程序员,你伤不起》的感觉吧,光看这封面,最醒目的出来程序员你伤不起这几个字外,估计就要属中间那个大大的头的帅哥了,和吉日确实有几分相似,呵呵,读过这本书的同学估计都会有感里面貌似就有自己的影子,雄心壮志、遭遇挫折、失恋颓废、东山再起!尤其是'2005年我的第一次软件行业创业,烧掉30万,两年时间打水漂的惨痛教训',看到后面心理一股莫名的悲伤随之而来,心爱的女朋友分手,公司被非常信任的人搞乱,仿佛看见的就是吉日一个人的战斗!最后的一段这样写道:钱很重要,但是身体健康,工作开心,更重要。今天我刮彩票不小心中了100元的奖,好开心,去杭州文三路华兴时代广场那边的地税局兑奖咯!如此淡然的心态,如此滑稽的结局,可以去拍一部电影了!
以下是从书中摘抄过来的部分段落,个人觉得很值得深思和回味!
做软件不是实现功能就可以了,做软件是一个工程,是一个商业活动,是一门艺术,更是一门经营管理的学问。
别太封建,别太国企,别太顽固,别太倔强,别太好胜,多为公司着想,多为整体着想,别老是太多借口,借口是发展前进的绊脚石。
通过这个项目我逐渐意识到,不要指望改变别人,别人不想提高或者进步,你也别管了,做好你自己的事情就可以了,想改变别人最终得到的是别人厌烦和排挤。
说白了管理系统搞来搞去都是搞这些,当你碰到了这样的项目千万学会珍惜,把成果沉淀下来,不断地在不同的项目里完善改进,你的工作效率会高很多,会变成这个行业的专家,平时开发管理软件也不累了,因为需求大同小异。
开发一个成熟的东西,经得起考验的东西,很不容易,要有巨大的付出,还需要惊人的毅力,有一定专家级的成熟思想指导,否则,搞不了半年就泄气了。
曾经有段时间,觉得与别人交流都是在浪费生命,天天看资料,天天写程序,有时候甚至通宵写程序,人满脑子都是程序、程序、系统,人变得越来越沉默寡言,只想着开发出客户满意的程序,能一鸣惊人的系统,接软件开发的单子,跟真心相爱多年的女友分手后,觉得啥也没有了,没房子也不知道跟谁住。
当时我也有些鄙视我的客户,总想着挖我的员工,为啥就不想挖我,挖了我,培养几十个人都可以,甚至几百个人也可以,挖几个小员工,其实没多大用的,所谓千军易得一将难求,可惜他们不懂这个道理。
我是有信心的,因为以前一个人也做过几票10多万的项目,我还不到30岁,应该还有机会。
你干了九件好事,但是在一件事情上发火了,你就相当于做了十件坏事的效果,别人只会记得你的坏,那些好事会抹得一干二净。
管理公司更多的不是玩技术,更多的是玩管理,玩人。
不能帮别人管理好公司的一个部门,自己也绝对管理不好整个公司,把公司的事情做好,将来才有希望把自己的事业做好。
两年时间很快就过去了,心也平静了下来,慢慢反省总结了一下,我只会一个IT工人,熟练的高级工人而已,不知道你听说过多少技术工人创业成功的传奇故事。
秉承开放分享的精神,将自己曾经做过的项目的早期版本源码奉上,欢迎初学者交流!一个是嵌入式报警系统,一个是嵌入式幼儿园刷卡系统,用VS2005+C#+SQLITE开发,必须用VS2005才可以打开。
嵌入式幼儿园刷卡系统:
嵌入式报警系统: