2014/08/29 第24期

git pre-commit的插件管理

来自Yelp的工具。其实重点不是要介绍这个yelp的工具,而是鼓励大家用好git pre-commit。 git pre-commit是提高团队代码质量的好东西。Code review的时候常常有人会挑代码风格的毛病(代码缩进,trailing white space,变量名等) -- 代码风格的毛病应该是机器来挑的,而不是人。用git pre-commit的话,可以装一些hook来检查各种代码规范(比如flake8 for python,gjslint for javascript等)。在commit代码之前,git pre-commit里装的各种hook能自动检查代码规范(也能自动在本地跑一下测试),确保code review的时候,都有一个统一的代码风格。

你不会面试码农

最同意这点:Don't hire for what they can remember in an interview room 凡是可以突击准备的面试题(就像考托福、考GRE一样),都不能考察出来面试的人的真实水平的。

做app,先做iOS最后再做Android

这篇文章也算代表了一种观点。比如最近的Instagram Hyperlapse也是只有iOS版。等火到一定程度了,再推出Android版。的确,很多公司同一产品的Android app会比iOS app的功能差很多。 不过也有公司是iOS和Android的app同时开发,同步开发,更能一致。比如Dropbox。上次在Dropbox听过一个talk,是他们mobile的一个工程师讲的他们如何保持iOS和Android app开发同步的。其实有点像pair programming,两个工程师做同一个功能,一个做在iOS上,一个做在Android上,开发的时候可以交流经验、心得;而且有时候还能从对方的平台得到灵感、启发。  

微软在移动市场放下身段

现在微软也开始在其他人的平台发布app了,比如Chrome, Android, iOS。。而且都还挺受欢迎的。微软新的ceo还是挺务实的,能赚钱就行,不用跑在windows上也行。 其实微软早年也是给Apple的电脑写程序的。有个1983年的视频为证:《Steve Jobs Hosts Macintosh Software Dating Game with Bill Gates》。  

Instagram挂了2小时

Instagram最近挺红火的,推出Hyperlapse app,声势浩大。今天下午(美国太平洋时间),网站和app全面访问不了。网站很快就恢复正常,但app挂了将近2个小时。他们官方twitter更新了消息,告诉用户他们出现技术问题(现在那条tweet已经删除了)。我的猜测:可能某个很关键的infrastructure component(比如memcached、postgres或者zookeeper之类的)出了问题,由于人为的操作失误或今天release新代码引入了bug之类的,才会同时影响到网站和app(api的部分)。 挂了2个小时是挺严重的事故。一般情况下,服务的SLA(service level agreement)都要求99.5%的时间服务是可以访问的(有的更严格会要求99.95%)。以99.5%算得话,这意味着一个月最多只能挂掉3.6个小时。今天挂了2个小时,那这个月其他时间就只有1.6个小时可以出问题了:) 碰巧的是,3天前,StackOverflow网站也挂了几分钟,我当时正好截图下来了(留做纪念?):https://nfil.es/a/tptynY.png/