2016年的最后一天,朋友圈里都是对2016年的各种总结和对2017年的各种期许,时间确如白驹过隙,从互联网跨界进入酒店业已近2年,从最初的各种美好构想到今天日趋理性,深刻领悟到了,太多的情怀做不了生意,太过于生意做不大生意,略带情怀的做生意才有机会做出一点对社会有价值的东西,以此勉励自己的2017.
分类:心路历程
心路历程
我对优秀程序员的理解
虽然自己也写了十几年代码,做了十几年的程序员,从最初级程序员,一步步走来,但是我自认自己算不上优秀的程序员,只能说是一个合格的程序员,但是非常有幸的是在我工作的十几年时间里,经历过的6,7家公司中我结交和认识了很多优秀的程序员,从他们身上我总结了一些我对于优秀程序员的理解。
1.扎实的基础知识,这点相信大部分人都会认可的,没有一个坚实的基础就不可能构建摩天大楼
2.对于问题的深究不放,优秀的程序员对于在工作中出现的一个bug,不会仅仅停留在解决bug的层面上,他们还会深入的发掘这个bug后面的知识,会深挖这个问题背后的原因,这样他们不但能够掌握更多的知识,而且对于已有的知识也是个巩固和加强
3.超强的查错调试能力,原则上来说,我们都是追求保证自己写出的代码不出现问题,但是现实是,很少有人可以做到自己的代码写完后,肯定不出问题,因为有太多的可能性导致出问题,特别是客户端程序,一千台机器就有一种环境,就可能会出现你意想不到的问题,服务器的程序相对来说,环境的问题要小些,但是服务器程序可能面对的大负荷带来的问题也是意想不到的,这个时候就非常考验一个程序员的查错和调试能力,优秀的程序员能够利用其调试手段准确的定位问题并解决问题,所以Troubleshooting能力是优秀程序员的一个最主要的特征
4.优秀的程序员在对待新技术的使用上,都会采取非常谨慎的态度,他们对于新技术都是非常敏感的,会第一时间的去学习新技术,但是如果在实际工作中需要用到某种新技术的时候,他们一定会判断自己对于这种新技术是否能够完全把控住,出现问题后自己是否有能力找到问题解决问题,如果不能,那么就不会采用
5.优秀的程序员一定都是具有天赋的,这种天赋就是作为优秀程序员应该具备的才干,这点也非常关键,优秀有时候真的不是你花时间花功夫就能做到的,真的需要具有天赋
6.优秀的程序员,至少我遇到的都非常低调,从来不会认为自己比别人有多强,也非常愿意和别人交流自己所掌握的知识
看完《黑客与画家》后,我觉得我原来认为的优秀程序员就可以理解为黑客——专家级的程序员。
《黑客与画家》读后感
读《黑客与画家》缘于微博上有好几个“大牛”级的人物推荐,按耐不住好奇心,先在豆瓣上看了看书评,确实不错,因为是好书,所以第一个反应就是上China-pub上把书买了,虽然已经很少买书了,如果是好书还是必须买下来看纸质的,电子书真的还没完全达到那种阅读的享受。
《黑客与画家》的作者是硅谷创业之父,Y Combinator合伙人Paul Graham,同时是一个忠实的Lisp使用者,对Lisp语言推崇备至。先说一下整体感觉,这本书是Paul的一个文集,是之前他发布在各种场合的内容的一个整理,所以文章中的每一章节没有必然的前后联系,无需按照顺序阅读,这里面提到的很多内容,在其个人网站http://www.paulgraham.com/多少也都能找到。本书的原版是由O'Reilly出版,一个Paul非常推崇的出版社,而我看的中文版则有人民邮电出版,应该说译者总体上翻译的还是比较不错,但是读的过程中还是感觉某些地方译者翻译的很让人费解,这里面涉及到Lisp部分,也由国内非常著名的一个Lisp使用者“网易冰河”来校译。
下面简单谈谈自己读了这本书后的几点感受:
1.对黑客有了一个新的认识,在没有读这本书之前,我对黑客的理解,就是那些利用电脑技术侵入网络,或者出于爱好,或者出于谋取私利的人,但是在这本书里,对于黑客的注解是完全不同于传统对于黑客的定义,黑客真正的意义是指专家级的程序员,而能称得上黑客的都是在软件领域或者说计算机领域的“书呆子”-是技术领域的艺术家,是能够使用自己无与伦比的技术改变自己影响世界的人。
2.关于互联网软件,Paul认为互联网软件带来的最大变化就是改变了原来桌面软件那种灾难性的发布方式,互联网软件可以随时发布,因此淡化了版本的概念,互联网软件是连续渐变的,我们在互联网创业时候,需要做的就是尽快拿出原型,把你的产品推向目标用户,关注用户数据,根据用户数据不断修正你的产品,使自己的产品做的更好,做到80分,90分。
3.关于什么是好的设计,Paul总结了以下几点:
1)好设计是简单的设计
2)好设计是永不过时的设计
3)好设计是解决主要问题的设计
4)好设计是启发性的设计
5)好设计是艰苦的设计
6)好设计是看似容易的设计
7)好设计是堆成的设计
8)好设计是模仿大自然的设计
9)好设计是一种再设计
10)好设计是能够复制的设计
11)好设计常常是奇特的设计
12)好设计是成批出现的
13)好设计往往是大胆的设计
4.最接近数学的语言是最优秀的语言,这方面,Paul认为直到今天,最高级的主流语言也只是刚刚接近Lisp的水平,至于Lisp语言有多么强大多么美好,有兴趣的可以自己去学习和领悟,Common Lisp的官网是http://clisp.org。
5.Paul是一个伟大的黑客,同是他又是一个画家,这使得他对于技术的理解更多的融进了很多艺术的理念,优美的程序就如同一幅优美的画卷,他对于技术的执着,对于Lisp语言的热爱,多少已经带有一点偏执了,这也导致他对于像微软这样的企业,Windows这样的操作系统以及JAVA,C#这样的编程语言,都非常的不认可甚至有点蔑视。但是Paul对于财富、对于工作、对于创业、对于产品的很多理念还是非常值得我们去深思和学习。
我相信每个人看完这本书,自己的内心都会有一个Paul Graham。
创业那点事
前几天在微博上看见了一则消息
这个感知网所倡导的模式就是我和几个朋友曾经做过并打算自己创业去做的事情,而感知网所属的北京星谷科技有限公司,之前也曾经有过接触。08年的12月份,我和几个公司同事启动了基于Jabber架构的互联网实时监控系统的开发,历时8个多月,我们都是利用周末双休来进行,这其中的甘苦只有自己知道,整整8个月,我们都没有了双休日,但是值得欣慰的是,我们完成了整个系统所涉及的所有开发,从前端摄像头的控制程序,到后台的存储服务、转发服务、后台管理系统等等。也因为这个系统的完成,激发起了大家内心早就蠢蠢欲动的创业念头。然后就像很多第一次创业的人一样,大家群情激奋,本该冷静的心不冷静了,脑海中都是创业后的美好前途,却没有平静下来,真正思考下创业可能遇到的问题,这也为后来的创业失败埋下伏笔。
而我自己本身就是属于感性大于理性的人,在几个创业朋友中属于最亢奋的,当时只是觉得只要能出来做什么都好说,因为我和几个同事都是做技术的,我们没有市场资源,也不太懂如何启动和经营一家公司,所以找了其中一个同事认识的朋友作为合伙人,正是由于我们几个太想出来了,因此第一,对于合伙人的选择,完全没有冷静的判断一下,当时只是觉得既然是其中一个的朋友,那肯定就没问题,后来证明当时的选择是错误的,我们几个跟后来加入的合伙人在公司战略和公司经营思路上有很大分歧,第二,当时在股份的配置上,我们也没有据理力争,我们几个带着自己开发的产品和技术,仅仅只占了40%股份,而后加入的两个合伙人却占有了60%,这又导致了在后面的公司经营上,我们失去了话语权,但是当时的心态导致了只想尽快出来把公司搞起来再说。因为这两个原因,最终导致了公司在整体战略和经营思路上并不是我们构想的,我们自己花了8个月时间的产品也就束之高阁了,反而做起来外包项目,我自己在10年4月份结束了自己为期8个月的创业生涯,事后自己也是感触颇多,总结了几点:
1.创始人最好不要都是搞技术,最好能有一名市场和销售出身的哥们,最佳配置个人认为技术1个,产品1个,市场销售1个
2.合伙人一定要找自己熟悉的,因为如果不熟悉,很可能在今后的公司经营中在沟通交流上出现大问题
3.合伙人的年龄相差不能太大,我们原来后期加入的合伙人都接近我们父母辈了,真的是存在代沟了,他们更适合的角色应该是投资方而不是合伙人
4.创业之前一定要把股份分配搞清楚了,俗话说亲兄弟明算账,自己及核心创始人团队所占股份一定要超过50%
5.认准的产品方向,一定要坚持做下去,至少要推到市场上去接受一下市场的考验
6.公司创始股东人数不宜过多,最多不超过3人,我们当初股东6人,也是很有问题
每个人内心都有一颗期待创业的心,如果你准备好了,那就毫不犹豫的去干吧!
读《高效能人士的七个习惯》之积极主动
史蒂芬•柯维的《高效能人士的七个习惯》被誉为在美国,此书的影响仅次于《圣经》,源源于这一点,也因为PMBAR创始人冯国馨的推荐,又激发了我的阅读欲望,算算自己已经有多年没有购买过书籍了,可能是因为工作的缘故,现在更多的都是阅读技术方面的电子书籍,慢慢的淡化了自己的阅读纸质非技术书籍的习惯了,自己也算是个好读书之人,所读书籍也比较杂,通俗易懂的武侠类、演艺类非常爱读,哲学类、文史类的书籍也有涉猎。
高效能人士的第一个习惯就是积极主动,这是一个经常会被很多人挂在嘴边的话,其本意就是做事情一定不要被动,要发挥主观能动性;很多成功哲学里也经常会提到类似观点,即机会是需要你自己主动去寻找的。看了史蒂芬的这本书,对积极主动有了新的认识和理解,积极主动体现的是一种自我管理能力,每个人都希望自己能成为管理者,但是我们扪心自问没有,在成为别人的管理者之前,你是否已经做到了成为自己的优秀管理者。自己以前也经常会抱怨一些外部环境,认为自己的不成功多因此而起,总喜欢怨天尤人,读完本书后,我明白了,如果你不能改变外部环境,但你一定能够改变自己,与其怨天尤人,不如做好自己的管理者,成为自己的旁观者。
我的项目管理历程
细数下来,自己来北京已经近10年了,从事软件研发工作近12年了,中间也是颇多曲折,起起伏伏。去年的7,8月份有幸加入了PMBAR一个项目管理实践社区,认识了不少项目管理方面的专家和朋友,也使自己对项目管理有了更深的认识,逐渐也成为了一个项目管理实践者。
自己对项目管理目前还是一个初级阶段,项目管理的理论知识还非常欠缺,虽然自己从事研发已近12年,期间担任各级研发领导职位也有6,7年的样子了,期间还在中科院报读了软件工程硕士,总体感觉还是不够系统。自己的一点体会是,在中国的大部分企业里面,特别是互联网企业(因为自己在互联网企业待了近6年样子),大家虽然都知道项目管理,很多公司也会采取项目制来研发产品,但是实际效果并不明显,或许有时候往往还会产生反作用。这是为什么呢?当时自己也很疑惑,记得我曾经服务过的一家规模较大的互联网企业,研发和产品队伍规模最大时候,近500人的团队,曾经也采取过项目形式进行产品研发,为此成立一个专门的项目管理办公室,有专人负责,但是在实际实施过程中,发现远不是那回事,项目管理办公室最后沦为了一个摆设,其负责人也仅仅充当了一个传达员的作用,负责把最高领导的旨意下发下来。当时自己担任的是部门leader,对采用项目管理形式抱有了很大的热情,当时自己正好软件工程在读期间,也学了些许项目管理的专业理论课,希望能理论结合实践一把,可惜最终未能如愿。现在想来,当时失败的一大原因就是,虽有项目形式,实务项目体制,也就是整个团队的组织结构还是职能型的,在实际过程中,没有真正意义上的懂项目管理的项目经理,而更多的只是部门leader在充当整个角色,而大部分的部门leader并不具备担任一个合格项目经理的诸多素质,这也导致了在实际操作过程中,这些项目经理还是完全按照自己的想法在做事情,也导致了最终的整体项目管理的流产。
这家公司出来后,自己创业,期间因为诸多因素,最终创业失败,后进入一个熟人所在公司负责项目管理,也就是这个时候,自己开始真正进入了项目管理的职业生涯,并有缘结识了PMBAR的诸多项目管理专家,在和他们的交流中获益良多,并且也适时的学习了一些理论知识,目前比较关注敏捷管理,记得04年的时候,当时第一次接触XP编程,对这种形式非常感兴趣,自己也曾经做过一些实践,只是最终没有坚持。
自己的项目管理之路颇为幸运,除了结识了很多同道的朋友,也有了目前公司的一个比较好的机会,公司的技术负责人想对目前的团队实施全面的项目管理改革,让我来的主要目的也是希望我能帮助他完成这项工作,我内心有很强烈的愿望,希望藉此机会完成我项目管理的高阶修炼。
最后借一句,路漫漫其修远矣吾将上下而求索。