DevOps实战: RingCentral Glip持续集成最佳实践
随着移动互联网的这么多年的发展,App的开发也越来越成熟,长期维护一款App成了新的常态,快速稳定的迭代发布成为了衡量产品开发团队的重要指标。 这也导致了平时1,2个月才提交一次App Store的事情,变成了1,2周就需要做一次。产品团队甚至每天都需要看一下研发的daily build是不是符合期望值,做出及时的设计调整。 这让研发团队中,平时时间占比很小的编译,unit test, 准备build,上传build,分发给PM,QA,监控产品各项数据指标,修复crash report中的bug,等等变得占比非常大。 以上的工作我简称DevOps,说白了是为开发者服务,让开发者很投入的专注在代码工作中,其余的交给Team Lead。用魔兽的语言来说,就是光环,加攻加防。 那么怎么做好DevOps呢? 首先在心中要有一点,加攻加防要考虑投入回报比,只有划算的投入才值得投入。 还是以魔兽塔防来举例,一个塔默认攻击100点;摆在面前的选择是升级攻击300块,可以增长100点攻击; 旁边盖一个光环加攻加防也是投入300块,可以每个塔增加10%攻击,那你只会获得10的收益。显然这300块用来直接升级比较好。 如果你有30个塔,那么300块的光环塔的投入就可以带来300的攻击总收益,显然这300块用来盖光环塔更加划算。 那么研发工作中哪些有共性的投入很划算呢? 1.硬件升级 如果你的team member还在使用过时的电脑作为开发机器,编译时间超过10分钟,checkout代码需要10来分钟以上,配置证书每个人都花费大半天琢磨,debug需要更长的时间,甚至机器卡死,当年作为team lead发现这样的事情的时候,你就要警惕了。这是研发效率低下的显著影响因素,你有责任向老板说清楚升级的必要性。 这里向老板汇报,其实也是有技巧的。 一个不善于沟通的team lead会怨气很大的说,你看,编译时间这么长,我也没办法啊!老板心里其实想的是,这Team Lead只知道抱怨,不知道多加加班么? 一个聪明的team lead会拿出事实数据来说话,譬如你看经过我观察,每个开发每天debug 20次,每次要花费5分钟时间干等,或者去喝杯茶,10人的研发团队就是1000分钟,整整2人天的时间白白浪费了,每个月你会浪费40人天,如果你能节省下来这个时间,你就省下来2个程序员的工资。而这部分的固定资产的投入可能是非常少的,譬如每个人8GB内存升级到16GB,也就几百块而已。 2.jenkins持续化集成 这个概念以前叫Continue Integration,现在Jenkins...
生命是一种进行时状态
最近的一个项目真是毕生的经历的集大成发挥。各种吊炸天! 用到了c++11,用到了Swift,jenkins CI配置,用到了跨平台架构,各种牛逼自动化加智能的方案。 最关键是一群10多年工作经验的人凑在一起,组成的王牌团队,秒杀其他各种创业团队。 大家没日没夜的commit代码,凑在一个小窝的工作地方,大家每天叽叽喳喳,沟通几乎0成本。 我们这一代人,好像说起来只有“屌丝”和“高富帅”。程序员只有大牛和菜鸟。其实很多很多跟我一样的处于中间普通人吧,他们有各自一样的,或是特殊的问题。 我们懒,想省事,我们爱享受,我们热爱各种美好的事物,却不愿意为美好的事物努力那么一点点。我们喃喃自语着,疯狂的浪费着生命。 其实我们很平凡。 每天早上醒来处理邮件,然后被儿子吵醒,接着洗脸刷牙根孩子温习昨晚教的知识,然后还要哄着上幼儿园; 顺路坐班车一路带着我的身体到公司,其间象棋,小说不断。 早上晨会了解进度,沟通问题,然后10点多开始一对一了解各个蛋疼的问题,协助解决各种诡异问题。 然后才是我coding时间,听着apple music直至11点半吃饭。吹着牛,骂着房价,讨论着未来。 中午12点开始table football,人少就乒乓球,输了就认怂回去BB会儿,看看朋友圈。 不知道怎地,现在中午开始睡不着。满脑子想的都是事情,突然的片刻的宁静,都感觉大脑嗡嗡的作响。 有一点像Bloodstream那种感觉,平时脑子都在想着一件事,什么事都无法阻止自己走神,一直死死的思索着那件事,直至一切思绪如泉涌般涌来,淹没自己,干点什么! 最近英语课老师,跟我们讲一种思维的方式。说人类思考比说话快4倍,所以别人说什么,自己往往早已经知道接下来要说什么,于是开始失神。他说这是不礼貌的,专心听,专心回复,或者干脆告诉他我走神了,有其他事要做。这算是prejudge吧。 有的码农技术好,有的沟通好,有的英语好,有的爱学习,有的留恋家庭,有的爱看美女。 总之,大家都一样,人有七情六欲,再高大上的代码,回到社会本质上,大家不过是技术工程师,都是人。 当然国家要割韭菜的时候,大家都被割一次。谁也无法幸免。 习大大说好了降价去库存,没想到涨价去库存更现实。 东凑西凑,厦门又买了一套房,七七八八算来算去,好像可以买,还得起贷款。这么一来,心态突然从之前的小家子气转变过来了,财务上好像不再像以前一样,守着一套房天天抠这点公交费来攒钱。 天天打车上下班也没耗几个钱,生活质量倒是显著提高。 买完房后的虚脱感和压力负重感又浓浓的袭来,每天一醒来,就有一个心理暗示,哥不能倒下,要不这房子就没了。 Glip项目中人员管理的压力也陡增,项目启动的时候,大家添feature都干得热火朝天,真正遇到crash/bug的时候,都大眼瞪小眼,只顾着自扫门前雪了。 管理一群有阶梯的团队,想来过去还是挺好管的。管理一帮都是有头脑,有想法,很聪明的团队的时候,这压力就陡增了。 你加班了,他技术牛逼,他功劳最大,这解决了关键性问题,那提出了建设性意见。 这时候最头痛的就是到底听谁的?发奖金的时候,到底谁该拿最多?按贡献来算的维度是什么? 或许,可以慰藉的是领导似乎都替我考虑过这些问题了,说好了大家都有得吃,不要怕粥少。...
生命是什么
已经好久没有这样疯狂的爱上一首歌,甚至决定写下来现在的感受,而且是一首不算主流大众的摇滚乐。 草莓音乐节,其实我只是冲着DJ Trance/Electrical Music去的,不过无意间看到一个特立独行的全身红衣的女主唱,肤色洁白,脸庞有一种幽默又古灵精怪的感觉。 虽然听不清是什么歌词,但是节奏好听,全场气氛带动的好好。 回来一百度,从此一发不可收拾的连续听了一天一夜《后海大鲨鱼》的专辑。 猛犸,是大爱。 梦是什么 是白色的泡沫 是啤酒花里我们吐出的野马 带我在这世界 闪电般的奔跑 我们像野马一样在这世界上 你看到了什么 在8英里的空中 放浪的时光总显匆忙 爱只永恒在电视上 仍然放任自流 勇敢到没有了方向 勇敢的像一只野马 它正在闪闪发光 我们像只野马一样在这城市里流淌 浪费了太阳也从不感到悲伤 想起当初在北京的岁月,天地那么大,躲在宿舍拼命的熬代码,冻得哆哆嗦嗦在路边刷关东煮, 路上每个人似乎都在忙些什么,贩卖碟子的,跑动中的快递小哥,乐忠于玩摩托车的游戏主程,到处递烟的业务员 他们每个人都有梦想吧 是什么呢 赚个几百万?娶个漂亮老婆? 仰望星空,我什么都看不到,雾霾笼罩之下,我只能看到远处霓虹灯光闪动下的暗红的天空 没有属于自己的地方...
80后这一代
今天看了逻辑思维有关80后是挺倒霉的一代的说法,挺有感触,拿出来说说。 80后普遍爸妈是50,60后,50,60后那一代经历过文化大革命,77年恢复高考基本都没赶上,所以5,60后爸妈这一代人的境遇是尴尬的,普遍的面临机会的缺失,他们往往都在工厂、单位里做一名螺丝钉。 相比之下70后普遍的有机会参加高考,有不少人考上了大学,获得较好的社会地位和资源。 就算差一点的,迎上了90年代改革开放变化最大的些年,那时候5,60后往往有了孩子,家庭为重,不便出去闯。70后才20多岁,正当出去闯的时代,很多人首先成为了个体户,万元户。 5,60后在90年代的时候,30多岁了,也没玩过电脑,彻底的脱离了机遇,70后是在自己年轻阶段经历的电脑,也是自己有能力购买电脑的时候享受了信息改变,这一点70后再次抓住了机遇。 说完了爸妈这一辈人之间的差距,就明白了,50,60后偏穷,缺乏资源,60,70后这一批人资源多,机遇多。 80后作为50,60后的孩子,一直说起来前不着村,后不着落。 按理说,基本都有能力接触互联网了,都是随着互联网成长起来的,应该能力不算差。偏偏,到了职场发现70后正当权做主呢。 「你也不过就年轻人家10岁,人家也不差你几点,你怎么破?领导不给你机会,你就有可能白蹉跎几年。」 这也是我最近的一个感受,有的员工就是比较背,进了公司一直没遇到好项目,好领导,没人罩的娃儿就一直受到冷遇,得不到提拔。 那么是不是80后就一定比90后强呢?还真不一定。 70后爸妈往往给90后配好了存款、房子、车子。玩过股市的都知道,一直都是撑死胆大的,饿死胆小的。存过余额宝的都知道,土豪家孩子只需要存钱、收房租就能衣食无忧,而屌丝拼命打工一年还不如人家的利息多。 说完了这些现象,再说一个具体的个例。 以前的一个同事,也是85年,我06年毕业工作,他选择了06年读研。我08年的时候,已经工作两年,有还贷的能力,他才读研2,压根就没有考虑买房。 08年,经济危机,房价大跌,我买了房,首付也就10来万,贷款了40多万慢慢还。 2年后,我的房价翻倍140W卖了,而他刚毕业就要面对翻倍的房价,约150W。 这背后发生的故事便是温家宝的30万亿投资计划,房价泡沫虚生,物价飞涨,在物价飞涨的年代,把所有的资产和未来押宝在保值增值的房产,则是瞬间跟同龄人拉开了差距。他无论如何打工,都难追回这个差距。 这便是机遇,这便是超越其他人的机会,完全不需要智商,不需要聪明过人,只需要你恰好的出现在机会窗口面前。 这个机遇显然不是公平的,即便是同龄人,不同的选择也会导致不同的结果。但是从大范围的普遍的来看,70后是这几代人中,机会收割机。 他们赶上了高考,赶上了分房,赶上了90后下海,赶上了互联网发展的机遇,坐稳了位置,孩子敢打敢冲,享受了房价暴涨的机会。 如果这个国家能对80后进行补偿性措施就好了。 那么逻辑思维里支了个招,80后,实在不行你就做个手艺人,让你在市场节点中给一个自身的价格定位吧?有回头客,自然就能勤劳致富。 我感觉这只是一个中策,干手艺活儿的或许能这样,办公室白领可不行。 首先,跳槽能解决问题吗?你还是只能获得市场价,要想扳回本,仅靠市场价,杯水车薪。 其次,做一个单独的手艺人节点,是违背了团队协作效益最大化的原则的。没错,有了电脑,你的确可以一个人干了所有事情,但是你效率低啊。分工协作才能产生最大效益的,忘了不?如果大家都去做手艺人,显然会有人成立团队作战。 假定今天要做一个事情,可以100%分工协作交给其他人,然后约定好价值分工体系,约定好回报,做完之后,下一个人一样可以接包。这样的,猪八戒,freelance,已经证明不成功,只能小型接包,不能形成的系统的协作模式。 那么80后该怎么办呢? 首先,80后在工作能力、态度,都是比70后有优势的。80后经历了强制英语4级,大学教育普及度更高,对世界公平、平等的理解更深刻,他们缺乏的只是机会。 那么哪里70后的竞争压力最小呢? 外企,说白了,国内有70后压力,外企没有,外国没有70后,80后这一说,他们不像我们这么显著的差别,或者错开了高峰。...
动物世界
赵忠祥的《动物世界》节目曾经一度是我好奇心徒长时代的最爱。除了看灌篮高手,CCTV能看的节目,也就这个了。 那时候,我常常惊讶于豹、狮的残忍,血腥的弱肉强食,也发现牛并不是想象中的弱小,一群犀牛顶着角奔跑中戳得狮子肚肠直流都是常有的事。 狗喜欢到处撒尿,并且到处闻其他狗留下的痕迹。 等等等等。 长大后,我其实觉得,人类跟他们本质行为动机没什么两样。 公司里办公室政治斗争的时候,起先两个人都是彼此互相观望,离一定的距离,看对方的行为有没有露出破绽。谁先耐不住,站个队,表个态,站错了,你完了,对方会毫不犹豫的扑过来把你吃了。 作为IT人士,我一直觉得发微博、发朋友圈、GITHUB技术博客,CSDN,TWITTER,STACKOVERFLOW,种种留言,发状态,其实就跟狗狗尿尿一样。爷今天就是要在这里撒泡尿,代表我来过,这个技术我研究过,你们要是也来过,你可以百度谷歌搜到我,咱们能成为好基友。 跟狗狗社交,是不是一样一样的?这也是很多兴趣交友的方式。大家都寻寻觅觅自己喜欢的兴趣的地方,努力的嗅闻,找到后如获新生。 再譬如,有的男生在把妹之前,都喜欢扭头四周围观察,看看有没有其他人。这样的场景,很像斑鬣狗进食,总四周时刻观察着,生怕别人抢了自己的猎物。 不过小偷开始行动前也都鬼鬼祟祟。一般人都习惯于扭头看人,但是小偷做贼心虚,头扭不动,只有眼睛贼溜溜的,或者眼睛只盯着一个地方。 有同事说,如果注意观察新闻网站,经常有些什么『鳄鱼与狮子、河马』,『蛤蟆』,『老虎』大战之类的。譬如某某某敏感关键字人物,被新闻网站用来试图隐喻一些政治事件。 总的来说,时刻记得人类跟动物区别并不大,他们的表现并不会差异于人类多少。