‘随想’ 分类的存档
这一年,学习的心态也发生了很多变化,小小地总结一下一些心得: 不纠结 技术层面,这一年很长一段时间内,我基本都是扮演着“哪里需要去哪里”的角色,到下半年才慢慢稳定下来,专注与相对后端、数据分析和运维。和很多人一样,一开始我也对语言这种东西很看重,有一段时间,也很喜欢看各个语言支持者之间的骂仗,不过现在已经坦然,特别赞同Coolshell那一句话: “软件的精髓不在于你对系统底层有多了解,也不在语言层面,而是在于设计和架构,而设计和架构这种东西只能靠多想多看”(出处) 坦白说,相对于很多从高中慎重初中就开始接触计算机编程的人来说,很长一段时间,我是打心里自卑的,我初三开始接触计算机的时候,我们村拥有的PC机用手指就可以数出来,那个时候真是一个幸福快乐的小孩,没有人指导,书籍匮乏,就到二手书摊淘那些过期的计算机期刊,高考也就非常自然而然地选择了计算机相关的专业,那个时候也就是一个玩玩Linux、用Dreamweaver做做网页的小孩,进入大学,最先熟悉的语言是PHP,简单明了的语法让我印象深刻,并且最重要的是我可以用它去快速实现自己的想法,后来是Python,有一段时间都会很在意那些大家推崇的语言和技术,可能跟那份潜藏在心底的“自卑”有关,很幸运的是,这个阶段看了很多书,比如《Unix编程思想》,算是比较深入地学习了一个web框架(cakePHP),得益与那份自卑带来的对知识的渴望,订阅了很多博客,知识面得到了很大的拓展,也就不会纠结于语言和技术的问题,可以踏踏实实地去做事情。 这一年,由于性能方面的需要,用C写了一个Nginx模块,用C/Python写了一个任务分发系统(后来用Go进行了重写),在做这些工作的时候,写PHP的经验给我很大的帮助,很快地就可以完成另外一门语言的入门。 产品层面,不纠结竞争对手的节奏,不纠结竞争对手的抄袭或者干扰也是很重要的,跟随只会乱了自己的节奏,纠结也只是阻碍自己的进步,只有不纠结,坦然面对了,抓住自己的核心了,才能形成自己的节奏,一步一个脚印走下去。 只做核心的事情 对于技术型创业团队来说,采用成熟的技术方案还是自己开发,我们往往很容易陷入对这个问题的纠结。在构建我们系统的过程中,我们大量地采用开源或者其他现成的解决方案:Redis,MongoDB,AWS等等,将精力集中在最为重要的地方。我们也曾经纠结与是否构建自己的Hadoop集群,当时我和一位实习生研究了很久,尝试构建我们自己的集群,但是发现运维成本相当高,最后果断选择了AWS EMR。真的很感谢AMAZON这样一个伟大的公司,为我们创业者提供了一个伟大的平台。 技术选型要“只做核心的事情”,产品上面也是一样,最重要的是专注,最难的也是专注,我们也曾经头脑发热过,把大量的资源浪费在不应该的地方,但是没有磕碰过,也就不会知道专注的可贵。总结来说,做一件事情之前,一定要沉淀一下,不要头脑发热,可以把事情化解成一个个关键问题,解答好每一个关键问题,看看是否符合预期,是否符合大方向,再考虑做不做和怎么做。 停止抱怨,解决问题 在公司里面,对于低效的会议大家一定深恶痛绝,开会真的是一门艺术,组织得好则高效且富有成果,组织得不好不仅浪费时间且往往没有任何成果。我们也有这样一段开无效会议的时间,有讨论没结果,还好的是我们就是这样一群不安分的人,只要做的不对,就会有人站出来,提出解决方案,帮助大家改进,分享一下我们的例会经验: 每周都有人固定收集需求和反馈的问题,提炼问题,问题分为Q&A类,需求方案确定类,议题讨论类。 每周开会前提前收集内部和外部的讨论议题(比如晚上开会,则上午开始收集),议题要清楚且准确地要达到的目的。 开会前要提前把要讨论的问题整理成邮件发给所有参会人。 每次开会需要有一个主持人,会议顺序: Q&A问题开始:给出明确的答复。 需求方案确定类:给出各个方案的优势劣势,确定方案及实施方法。 议题讨论类:议题提出者需要阐述提出议题的目的,确立一些边界问题,最好是分解成具体的问题,再进行分问题解答。 会引起长时间争论或者暂时无法解决的问题则开邮件讨论。 总的原则是,对于Q&A,需求或者议题都好,描述一定要尽可能地清楚,讨论之后一定要给出总结,超过一定时间的问题都另开邮件讨论。 开完会之后主持人要把会议讨论的问题和达成的措施发邮件给所有参会人确认。 例会控制在一个小时内,可提前不可拖后。 这里以会议为例子,是想说明一个问题:对于存在的问题,除了抱怨,更应该想办法去解决它,很高兴能够在这样一个敏感的团队里面,在意思到开会的问题之后,大家就自觉的开始寻找方法去优化它,上面也算是我们的一点经验。所以“保持敏感”这一点我觉得很重要,当然,敏感之余,要做的是想想怎么去解决问题,而不是抱怨,抱怨是解决不了任何问题的。 ——————— 重读了一下,文字还是很稚嫩,希望大家见谅:)
距离我的上一篇博文已经是一年前的事情,这一年发生了很多事情,对我来说也是极为重要的一年(一辈子都不会忘记的那种),就在前天晚上的这个时候,我们部门还在为昨天的年后准备节目,小谢推荐我们唱《最初的梦想》,虽然最后没有唱成(对于我们这群技术宅来说,这歌难度不是一般高),虽然之前也听过很多次,但是这次认真地看了一下歌词,颇有感触(技术青年偶尔也会文艺一下): 如果骄傲没被现实大海冷能拍下 又怎会懂得要多努力才走得到远方 如果梦想不曾坠落悬崖千钧一发 又怎会晓得执着的人有隐形翅牓 沮丧时总会明显感到孤独的重量 多渴望懂得的人给些温暖借个肩膀 很高兴一路上我们的默契那么长 穿过风又绕个弯心还连着 像往常一样最初的梦想紧握在手上 抉择 – 艰难的选择 2010年9月份的时候,我从国内某大公司实习回到了有米,10月份是最令人纠结的一个月,想必跟我同届毕业的同学都深有感触,那一年的校园招聘相当火爆,也是开复老师到处宣传“电子商务、移动互联网、云计算”的日子,我们几个人刚刚实习归来,奋斗还是安逸,这是我(准确来说,是我们)当时要面对的最直接的问题,听多了太多大学生创业失败和工作得经验再创业的“理论”,说不犹豫不纠结那是假的,做了很久的思想斗争,最后我们还是决定留下。做出决定的那一个下午,刚好去参加学校的某交流会,当时一位刚从腾讯实习回来的同学聊到毕业抉择时,抛出了一个问题:“想想10年后你是否会为今天的决定而后悔”,这对我触动很大(直到后来跟几位犹豫要不要留下来的实习生交流的时候,我都会提出这个问题,这个是后话了),这让我几乎是立刻做了决定,回到公司的小会议室,如果没记错的话,刚坐下来我就说了我的决定,另外几个人当时也做了同样的决定,这让我大大地松了一个口气,真的很感激他们,这一辈子,能够跟几位志同道合的人一起奋斗成长,也算值了。 成长 – 快乐地奋斗 卸下心头的包袱之后,也就全身心投入到工作当中,当时公司十几个人挤在一个像网吧的小屋子里面,最幸福的事情就是看着网站上面的投放次数不断地再增长,从几百万到上亿,像一群天真的小孩,每个人身上所表现出来的坚定、执着和兴奋,不自觉地感染其他人。从一个程序员的角度来说,最幸福的事情莫过于看着系统从小到大,就像呵护着自己的小孩一样。我们经历了所有互联网系统必经的阶段,从简单的系统结构开始,分离数据库、数据缓存、任务队列、负载均衡到采用Hadoop、Hive做数据分析等等,学习和快速成长给我带来了很多在大公司无法得到的快乐。 毕业 – 迟到的感谢 6月,毕业季,想起来,这是让我略有遗憾的一段,但是我几乎把所有的时间都投入到了公司,也搬了出学校,虽然离学校不远,但是也极少回去,现在想想,有点愧对同宿舍的那帮好友:刀爷、杜毛、大建,非常感谢他们对我这样一个有段时间经常晚上跑到活动室写代码写到晚上两点吵到他们睡觉,或者经常要麻烦他们帮忙逃课,或者因为工作而推掉跟他们聚餐的人的支持和理解。还有波波、勇爷、JS、WS,感谢chandy和zk,能够让我在大学遇到他们,这是改变我一生的一次相遇,波波的责任心、勇爷的沉稳、JS的执着、WS的激情,都让我受益颇丰,非常感谢他们能够理解和支持我这样一个脾气火爆且又强势的人。 遗憾与祝福 最遗憾和最痛心的还是对于那些一起奋斗过但是最终无法一起继续共事的人,虽然无法共事,但是作为朋友,看到你们这一年的成长,也非常替你们高兴。我们曾经有一段时期,进行了比较大的扩张,招了实习生,很多我们看好的最终没有留下,这是让我非常遗撼的事情,这里面我要负很大一部分的责任,那个时候我们没有好好关注他们的成长,也只能在这里表示抱歉了。祝福你们能够成为你们所在领域的大能:),当然,最重要的还是快乐地享受生活。
