湾区日报 2017 年 2 季度汇总

2017/04/01 第 878 期

Stories 是做广告的利器

聪明的 Snapchat 普及了 Stories(全屏幻灯片),在用户翻阅幻灯片时插入全屏广告,这真是广告商们梦寐以求的广告格式:全屏图片或视频。要不然在聊天软件里怎么做广告?聊天过程中插入广告的话用户会疯掉的。

美国各种与聊天、社交沾边的 app 们也都在陆续推出自己的山寨版 Stories。不是为了让用户更好的沟通、自我表达、拯救人类、让世界变得更好,很简单,这种 Stories 格式能来钱!

How“engagement”made the web a less engaging place (archive)

在 Google Reader 的时代,媒体网站、博客网站关心的不是具体那篇文章浏览量,而是有多少人订阅(间接的所有文章浏览量),没必要搞标题党骗点击。如今社交媒体里每篇文章的表现比以前重要了。

十三年来我写的糟糕的游戏代码 (archive)

作者用风趣幽默的口吻点评了自己从 2004 年以来做游戏时写的代码,有 Java、C++、Python。经过十几年打怪练级,最近终于完整地做完并推出了自己的第一套游戏。他今年 26 岁。

人生就是电子游戏 (archive)

五个等级:

  1. 有饭吃有地方睡;
  2. 远离危险的环境;
  3. 有人爱且有人爱你;
  4. 为世界带来一点点价值;
  5. 流芳百世。投胎运气不太差的话,直接从第 3 级开始游戏。

游戏过程主要是解决问题。

有很多事先预料到的问题,但困难的问题都是事先预料不到的。

面对问题,玩家可以去解决,也可以直接忽略;

解决的问题多了就比较有可能进阶到下一等级,忽略的问题多了就比较可能一直停留在目前的等级。

而且,不能读取进度。

冯诺依曼 (archive)

这是维基百科里冯诺依曼的英文词条。从 Child prodigy 这一节开始读,有很多以前不知道的奇闻异事,真是天才中的天才。他不只是计算机系入门课程里讲的“计算机之父”。

六岁时能心算 8 位数乘除法。十五岁时师从匈牙利数学家 Gábor Szegő,第一次见面,Szegő 被冯诺依曼的数学天赋震惊到、然后流下了眼泪。被问到为何那个时代的匈牙利能出那么多天才时,诺贝尔物理学奖获得者 Wigner 说:冯诺依曼是唯一的天才。

冯诺依曼喜欢在吵杂环境里工作;在办公室放德国的进行曲吵到隔壁的爱因斯坦。喜欢开车,但开得不好;常常边看书边开车。带着数学问题入睡,醒来的时候得到答案。穿衣讲究,博士答辩的时候,教授问旁人:给这个博士生做衣服的裁缝是谁?从没见过这么有型的衣服。普林斯顿研究拜占庭历史的教授说,冯诺依曼在拜占庭史方面的知识比他更精通。

2017/04/03 第 879 期

Software on the Cheap

“什么都不缺就缺程序员”的人都以为编程很简单,为了省钱都会招很便宜的刚看完编程入门书的“程序员”。贪小便宜肯定会付出惨痛代价的。文中提供了一个价格,仅供参考:一行有测试的代码值至少 $12。

一行代码 $12?这么贵!你得想啊,为了保证代码质量,也得写非程序员们认为没用的测试代码;生产工具(IDE、电脑)出问题了还得停下来折腾一下;还得开会、说话、打乒乓球啥的。一天下来,程序员有效工作时间也就 3、4 小时,一天能写出小几百行有测试的 production ready 的代码就不错了。

Brands need to fire adtech (archive)

作为公司、品牌、广告主,你不知道所谓 adtech 这样的中间人把你的广告投放到哪个网站、哪个视频、哪篇文章,如果投放到恐怖分子的网站,你品牌名誉就差了、你助纣为虐啊。

作者认为“真的广告”是作为广告主,你知道你的广告出现在哪个明确的、信誉好的网站(如湾区日报,哈哈),而不是买浏览量的“库存”(中间人手头有 5 万个网站,大约有几十亿浏览量库存,你买 1 千万浏览量,我就给你投放到这 5 万个网站里的某几个网站上,你不用管哪个网站,总之凑足浏览量就是了)。

Amazon 上的“高频交易” (archive)

亚马逊从 2000 年开始允许商家进驻到他们网站。现在近 50% 的发货量是来自这些商家。同类产品会有不同商家在卖,产品定价是动态变化的,有时提价是为了试探看看竞争对手是否也会跟着提价。

为何看似廉价的旅游订票网站一点也不廉价 (archive)

旅游订票网站相当于中间人,层层收费;大网站直接与航空公司、旅馆谈价格,小网站则用大网站的数据库,再加一层费用;各航空公司与大型旅馆都有自己的会员积分项目,也都想直接与顾客打交道。

越来越多的情况是,直接到航空公司或旅馆的网站(或打电话到前台)预订会比较便宜。旅游订票网站看到的 deal,未必是真 deal,往往都有隐藏费用。真正的 deal 是淡季出行或最后时刻订那种没卖出的票 / 空房间。

文中提到 Orbitz 会检测访问者是否是 Mac 用户;他们假设 Mac 用户比 PC 用户有钱,所以会给 Mac 用户推荐贵的旅馆。

Algolia 极快的搜索速度背后的架构与运维经验 (archive)

Algolia 提供 API 给开发者们做索引、搜索。搜索引擎是用 C ++ 写的 Nginx 模块,自建数据中心。若某次查询超过一秒,Slack 上会有警报,然后他们就不遗余力地 debug 为何这么慢,每天 0 或 1 个这样的“慢”查询。

他们查询的 API 没有 load balancer,API 客户端直接连到特定机器。部署代码的流程:先部署到 testing 机器、然后 staging、然后 1 / 3 的 production、然后 1 / 3 的 production、最后 1 / 3 的 production。

2017/04/04 第 880 期

Uber 如何鸡贼地让司机不断加班 (archive)

司机不是 Uber 的员工,Uber 不能命令他们加班;

怎么才能让司机们心甘情愿地加班加点呢?

在司机用的 app 里使用各种鸡贼的 growth hacking 暗黑模式,诱使司机们不间断地工作。

大家系好安全带了:

  1. 司机不想接客了,按下退出按钮,弹出确认信息:你今天还差 $10 就赚到 $300 了,不再努力一把吗?
  2. 视频网站一个视频看完了后会自动跳到下一个视频,Uber 司机在放下当前乘客前又立刻有了新一单的生意;
  3. 发给司机的信息以女性名称署名,互动性比较强。

Growth hacking 的鸡贼暗黑模式哪家强?几年前看 LinkedIn,现如今看 Uber:)

Every attempt to manage academia makes it worse (archive)

学术圈用发论文数量作为评估“学术成果”的重要手段,影响博士毕业、评终身教职、申研究经费;于是大家追求数量,发那种“最小可发布成果”的论文。

如果有一个可以量化的指标,这个指标直接影响由人做出的决策(评奖、晋升、加薪等),那必定会有很多人投机取巧走捷径去最大化这个指标,渐渐地,这个指标就变得没用了。学术圈如此,工业界也是,人类社会就是这样。

在过去一年,聊天机器人的发展令人失望 (archive)

感觉从去年 Facebook 的 F8 开发者会议后,聊天机器人着实火了起来;

但老百姓期望的是真的能聊天的那种 bot,而开发者们给出的要嘛是婴幼儿般智商的 bot,要嘛是选择题式的菜单界面。

在聊天界面里放选择题,我还不如打电话呢:中文请按 1,英文请按 2,人工服务请挂机:)

Ping 的故事 (archive)

Ping 程序的作者 Mike Muuss 撰文回顾这个“装机必备”的网络工具的起源(好吧,任何桌面操作系统都有)。作者于 2000 年底因车祸去世了,从饭店回家路上遇连环车祸。RIP……

一人一首成名曲,Ping 是写进他的讣告里的:Mr. Muuss is most widely known in computing circles for being the author of a software program called "Ping." 每个人一辈子都要有个代表作。

Scaling your API with rate limiters (archive)

提供 REST API 给开发者们用是很麻烦的一件事,为了避免某些害群之马 DDoS 你的 API,你得有一套限速的机制,而且能在关键时刻掐掉某些不重要的 API 的访问。Stripe 的这篇博文总结得不错。

文章末尾提供了代码范例。要求不高的话,其实有个快糙猛的方案:用 nginx 的 ngx_http_limit_req_module 模块,几行配置就能简单保护你的线上服务、限制单个 IP 单位时间内对某路径的请求数;这用来对付小毛贼问题不大,但要真碰上江洋大盗,只能恭喜你中奖了。

2017/04/05 第 881 期

这不是晋升,这是职业转型 (archive)

从工程师到 manager 不是晋升,而是职业转型。管人、政治斗争、主持会议、招聘、开除员工、传递上级指示等,如果你认为这些事情都不是“真的工作”,只有写代码才是“真的工作”,那还是老老实实做工程师吧。

在世界上最繁忙的博彩网站做运维学到的东西 (archive)

关键词:Process、Documentation、Culture、Politics。文档的规范与维护至关重要。

在印度农村地区用 WhatsApp 报道当地新闻

招了几个记者制作内容,专注于本地新闻,通过 WhatsApp 作为内容分发渠道,1.1 万订阅者,其中 8 千人付费订阅,每人每年 $1.5 美金。印度农村的自媒体。

虚荣的指标 (archive)

专家都建议要有 data-driven 的公司文化,要测量一些关键的指标、然后全公司上下为了优化这些指标而努力。问题是,很多公司都是跟风,测量了毫无意义的“虚荣”的指标。

Can we save the open web (archive)

Drupal 缔造者 Dries Buytaert 表达了自己对互联网现状的担忧:把持信息入口的巨型互联网公司致力于打造封闭的平台,可以很方便地胡作非为

数以百万的 facebook 用户不知道他们正在使用互联网,他们唯一的上网体验就是 facebook;把 facebook 换成微信也同样适用。

湾区日报的所有内容分发渠道里,微信公众号的表现算是非常差的。图文里没法放链接,而湾区日报是推荐链接的,就没法用图文了;只能用普通的文本消息,上面的链接可点击。但这几个月来,湾区日报的链接似乎已被微信加入黑名单了。打算要放弃微信了,真的想看湾区日报的读者们会找到其他合适的订阅途径的。

2017/04/06 第 882 期

What We Look for in Founders (archive)

Paul Graham 认为的好的创始人的特质:Determination、Flexibility、Imagination(Airbnb 早期卖麦片的故事)、Friendship(几个联合创始人关系要好)

Warby Parker 的第一个员工

Warby Parker 是网上配眼镜的独角兽公司。当年她看到创始人写的招人广告后与他们联系、聊了一下就加入了,那时啥都还没有,只是个 idea。靠几个创始人自己的存款发工资。

Product Discovery: Pitfalls and Anti-Patterns

本文细数了在找产品 idea 的时候一些自欺欺人的路数。比如花大力气做了个原型,号称是 MVP,想方设法验证这个 idea 是有市场的,毕竟都已经做出来了,不能浪费啊。

Hackathon 专业户 (archive)

讲述了一个群体的故事:放弃去大公司、名公司工作的机会,自由地做自己想做的项目。那钱从哪里来?缺钱了就去 Hackathon,熬个通宵、拿个奖,然后有钱了,休息两天后还是条好汉。

哪有那么好拿奖的?多参加,摸到门路了就好办了;可以抢跑,把自己平时做一半的项目拿去凑数,或者平时准备了些可复用的代码模板、加快开发速度;presentation 时深谙套路,懂得如何讨评委的欢心。日子实在过不下去了怎么办?只好乖乖去找一份工作了;反正平时已经练就一身本领,不挑的话、很好找到工作的。

被假的客服钓鱼了

当代公司、银行在社交媒体上会有客服的账号,便于与客户沟通。在 Twitter 上能看到真客服与客户的互动,然后假的客服账号加入讨论、留下钓鱼的网址,客户一不留神就上当、交出个人敏感信息。

2017/04/07 第 883 期

为何我不会买下我的 GitLab 的股权 (archive)

作者是 GitLab 第 9 号员工,后来被开除了。文中指出看似凡事公开透明的 GitLab 其实是一言堂,公司文化很差,CEO 刚愎自用。他也不看好这个前东家,索性就不行权了。

那到底是有多少股票、要花多少钱啊?他有 GitLab 的 45,000 股的股权,占 0.25%;按照他在公司的时间,这 45,000 股里能 exercise 15,000 股,一股要花 $0.27,他总共要花 $4050;还不如用这笔钱投资自己与家庭,带老婆好好去日本旅游一下,这也比投资一家没前途的公司强。

有兴趣的可以 Google 一下“GitLab CEO here”,感受一下 GitLab CEO 的气场吧。

Why You Can't Say (archive)

好像挺有道理:网上大家都在抱怨白板面试,但为何大大小小各公司都在用这种方式招程序员?哦,明白了,被白板面试刷下来的人比通过面试的人要多得多,被刷下来的抱怨,通过的不会去反驳,所以造成假象仿佛大家都在抱怨。

就跟网上看到点评餐厅、点评各种东西的网站里,差评往往比好评多得多;不爽的人会去给差评,爽了的人未必会去给好评;给好评的阈值太高了,你的服务、产品得好到什么程度才会让顾客心甘情愿花时间给你好评?

如何做一个文明礼貌的开源项目维护者 (archive)

参与开源项目主要是文字沟通,容易产生误会进而掐架。开源项目维护者们从我做起,讲文明懂礼貌:快速回复、多说谢谢、多说 yes、多表扬别人、敢于承认自己错误、语言俏皮(用表情)。

开源项目维护者真不容易,在全职工作之余花时间免费维护项目,免费为伸手党们解答疑难杂症,忍受网友百般辱骂,同时还要一边赔笑、一边严格要求自己的言行举止。不容易。

Designing, Fast or Slow

在产品里突出展示图片、视频(各社交媒体的趋势),用户不用动脑子就能吸取许多无用的信息,互动性强,数据漂亮;或者在产品里堆砌文字(Quora、Hacker News),用户得用心去读然后吸取比较有用的信息,互动性差。怎么平衡这两种内容?

声音 UI 在什么场景里是真的有用的 (archive)

作为输入方式,声音比打字要快得多,可惜语音识别技术还不够好,鸡肋;作为输出,听声音比阅读文字要慢得多,鸡肋。在手和眼十分忙碌时(如开车),声音作为输出是有用的(听广播)

2017/04/08 第 884 期

Coinbase 第一号员工 (archive)

他是 Coinbase 第 30 号用户,把自己写的关于比特币的本科论文发到 Coinbase 招人的邮箱,邮件发出 5 分钟后创始人发邮件要求视频通话,这就是硅谷效率。最终得到客服的职位。

客服这份工作不好做,尤其是你提供的服务近似于银行,关系到用户的财产的(比特币)。他忙活不过来了,得招人来帮忙了;于是他到 Reddit 上贴出关于比特币的考题,共 250 人参与“笔试”,4 个月后他就有 43 个远程工作的下属了。

Coinbase 能撑到今天也算是不容易的,早年也是一团糟,幸亏没被黑、没有丢失比特币。

Ditch the elevator pitch

如果对方(如投资人、客户)真有兴趣,根本不用急;先听听他们怎么说,再解释。现在都要求创业者一句话得讲清自己做的是啥,力求一句话就引起别人的兴趣,不实际。

文中提到一个惊悚的传闻(谣言):某些 Apple 员工倒霉地与 Steve Jobs 同在电梯里,这些倒霉的人没法在电梯里简明扼要地解释清楚自己为 Apple 做了哪些贡献,然后就得被开除了。不错的段子。

百分之百正确的代码风格 (deleted)

很多程序员喜欢争论代码风格。其实只要整个团队代码风格统一就行了,没有绝对的对错。比较安全的做法:

  1. 通过工具自动规范代码风格;
  2. 参照名声好的大公司使用的代码风格。

教小布什画油画的人

退休干部小布什同志兴趣广泛,打高尔夫、骑自行车之余还学画油画。老师每周星期一教学 3 小时,教了两年。“他不是我的学生里最有天赋的,但却是最坚持的”。文中有小布什同志的作品赏析。

Twitter 是如何做他们新版的手机网站的 (archive)

很时髦,所谓的 Progressive Web App,用 service worker 缓存 html 与静态资源,reactjs + redux,用 ES2015。优化在网络状况不好的场景的使用。

2017/04/10 第 885 期

The Simpsons 每一集的制作流程 (archive)

The Simpsons 是美国播出时间最长的卡通、情景喜剧,从 1989 年底到现在 28 季、600 多集。看了这篇制作流程,他们制作一集真的很费功夫、精益求精,很大开眼界。

Why you should release early and often (archive)

互联网产品早点上线能暴露出很多问题,了解到很多 unknown unknowns,了解到很多上线以前没法了解到的东西。所以没必要太完美主义、怕丢面子,非得做到极致才推出。

The Elon Musk problem

很多创业者的偶像是 Elon Musk。其实坦白点说,他们的偶像是现在顶着各种光环的神一般的 Elon Musk,而不是 90 年代从非洲移民到北美努力创业睡办公桌底下的那个 Elon Musk。

我们崇拜偶像,都以为他们生下来就达到了那么一个高度,忽略他们达到现在这个高度的过程。

"Becoming the Tesla Elon Musk doesn’t work without first becoming the x.com Elon Musk and then PayPal Elon Musk."

如何让创业公司里的程序员一周工作 60 到 80 小时 (archive)

对于脑力工作者而言,一周工作 40 或 80 小时的产出其实差别不大,甚至比工作 20 小时的产出多不了多少。你规定了这么多小时,底下的人就会想方设法消磨时间。为别人打工的程序员一天能真心地高效工作 4 小时就很不错了。

八小时工作日是十九世纪工业革命的产物,为体力劳动者设计的,现在是否依然适用于各种行业?

2017/04/11 第 886 期

投资人对前来融资的创业者失去信任的几种原因

创业者扔下几个业内知名人士的名字:“他们都是我哥们”,其实你们不熟;混淆关键指标;守口如瓶,啥都不愿透露;容易情绪激动地为自己辩护;说话前后不一致。

The Joel Test for 2017 (archive)

著名的 Joel Test 是 Joel Spolsky 于 2000 年提出的 12 个问题,用于检验一个团队是否是好的开发团队。17 年过去了,本文作者重新审视了这 12 个问题,并与时俱进地提出修改建议。

教科书宣言 (archive)

理想状态下的教科书应该是学生能读得懂的书。现实是,作者、出版社、选用教科书的教授都没有动机去把便宜、精简、易懂的教科书呈现在学生面前。

要警惕那些漂亮的简历

创业公司招人难,但招错了人的代价尤为惨重。两种人:一种是名校、知名大公司完美简历,要价高、爱搞政治、爱争头衔、爱碾压同事;另一种是草根出身、名不见经传的创业公司摸爬滚打、使命感强。

"Big-company people care a lot about their relative status and security. Having power within the organization is key to their comfort. They focus on things like titles …… This type of person wants to feel confident that they are better than their peers. They don’t like to make mistakes, especially if the mistakes are visible to others."

在科技圈里搞好人际关系还是很有必要的 (deleted)

所谓 networking。不要以为在美国科技圈混就不用搞好人际关系了,除非你牛逼到自带地心引力;当然这里 networking 的规则比较简单,多数情况不用花大钱送大礼,定时联系一下、消息互通有无、互帮互助(如产品上线互相转推之类的)就行了。

就像重庆森林里金城武的台词:“秋刀鱼会过期,肉罐头会过期,连保鲜纸都会过期,我开始怀疑,在这个世界上,还有什么东西是不会过期的?”人际关系、友情、感情都会过期的。小学时候是铁哥们,30 年没联系了,突然找你借钱,你借不?我有一个不靠谱的 idea:做一个朋友关系会过期的聊天 app,一段时间(如半年、1 年)没联系、自动解除朋友关系。有人做这个 idea 吗?哈哈

2017/04/12 第 887 期

你若只给四颗星,你的 Uber 司机会失去工作的

Yelp、Uber 以及各领域的 Uber 们都有满分五颗星的打分系统,不同人不同的服务对五颗星的理解不同,四颗星在 Yelp 的评分体系里是很不错,但若 Uber 司机得到一堆四颗星就算很差的了。

YouTube 很早以前也是用五颗星的评分系统,后来改成了同意(拇指向上)与不同意(拇指向下);Netflix 最近也将五星评分系统改成同意与不同意。

Uber 的评分体系里:五星,司机顺利把我送到目的地;四星,司机很糟糕,过一阵子再开了他吧;三星,糟透了,不想再见到他;二星,不只是糟透了,很危险,严重超速;一星,这是个犯罪分子吧。

Niche Networks

现在还有没有可能出现一个新的社交 app?每个人都只用那么几个社交 app,腾不出时间再去尝试新的社交 app 了。若真要做新的社交 app,不要做大众化的,专注于垂直领域。

有多少人觉得 Snapchat(或微信?)是人类历史上最后一个成功的社交 app 了?手机平台太拥挤了,再做一个老少咸宜大众化的社交 app 很难杀出一条血路,大家现实生活中都那么忙,没空用你的新 app。专注垂直领域,用户虽不多,但 targeting 强,广告可以卖贵一点,或者尝试付费订阅等广告以外的盈利手段。

再宣传一次啊,我昨天胡说的那个“一段时间不联系、朋友关系会过期的聊天 app”,有没有人要做啊~

Google 图书搜索的迷失 (archive)

Google 图书搜索是一个有情怀的项目,要将所有纸介质书数字化,2004 年上线。因为这个项目 Google 被出版社、书的作者们告得一塌糊涂。但最近几年似乎该项目没啥动静了?

图书搜索团队在公司政治斗争中失利了?与核心广告业务关系不大进而被边缘化了?战略调整、资源整合、腾不出手来维护这个 10 几年的项目?项目优先级在公司所有项目里太低了争取不到资源?

为何 Slack 之类的群聊工具不适合用于开源项目的协同开发 (archive)

软件开发是团体运动,开源项目更是如此,公开透明的沟通很重要。Slack 之类的聊天工具是封闭的,聊天内容外人看不到、搜不到;开源项目的开发跨时区很正常,实时聊天不切实际。

最好还是异步沟通,老土的邮件列表其实就挺好的,也很方便公开出来。

创业初期的大客户会毁了你的创业公司的 (archive)

大公司给你抛出橄榄枝,成为你的创业公司的潜在用户,还只是潜在;然而大公司手续繁琐、事儿多,拖了大半年还不想付钱、还要再试用看看,结果你的创业耗不起,钱很快烧完了,卒。

而且这种大公司潜在用户会提很多功能需求,这些功能只适用于他们这种大公司,你花时间开发了其他小公司客户也用不了,白白浪费时间。SaaS 创业公司最好一开始拉一堆同样是创业公司的客户,一起成长;慢慢拉来中型公司客户、最后大型公司客户,循序渐进。

2017/04/14 第 888 期

Jeff Bezos 写给 Amazon 股东的信(2017 年与 1997 年) (archive)

写得真不错,相隔 20 年,不忘初心啊。贯彻 Day 1 精神,即使公司已有 30 多万员工了,但仍要像创业之初那样坚持用户至上、及时顺应科技发展趋势、高效果断地做决策。

“…… most decisions should probably be made with somewhere around 70% of the information you wish you had. If you wait for 90%, in most cases, you’re probably being slow.”

On-call at any size (deleted)

不同大小的公司的工程师轮岗 oncall 的最佳实践。只有几个人的公司可能只有创始人 CTO 一个人在 oncall,反正用户少无所谓;公司大了、用户多了后就得规范起来有一套流程了。

在代码里记录 tech debt 的简单方法 (archive)

就是在走捷径、(可能)有坑的那些代码附近加 TODO 的注释,很多 IDE 都对 TODO 注释特殊关照、能很方便地展示出来。

Facebook, The App Store, And The Sound Of Inevitability

这篇 2010 年的老文章认为,Facebook 与 App Store 这种封闭式的系统(walled garden)若不顺应历史潮流、开放起来,将不可避免地沦为 AOL 之辈。7 年后再看,变得更封闭了……

写代码自动群发短信喜帖 (archive)

作者在筹划自己婚礼的时候,将打算邀请来参加自己婚礼的亲友的电话输入到 Google 电子表格里,然后写 Python 代码调用 Twilio API 群发短信,亲友可回复 yes 或 no、后代代码自动统计人数。

Twilio 的这篇内容营销写得不错。编程的部分很简单,都是调 api、就像搭积木一样,但写一下简单的程序让自己的个人生活变得更便捷,很不错。

2017/04/15 第 889 期

Three Quotes from Early GitHubbers

存活时间不算太短的公司一般都有一个文档或 wiki 页面记录同事们说过的“名言警句“,身边的人往往能说出发人深思的、有趣的话,用文字记录下来,新员工加入公司后看看也挺不错的。

为什么没有出现新的社交网络了 (archive)

新的社交 app 其实层出不穷,只是作为一个普通人,我实在没有理由再去下载一个可能下个月就烧完钱而下线了的社交 app。

难道真的没法再出现一个新的大规模社交网络了吗?其实还是有可能的。从垂直领域做起、再慢慢做成大众化的平台;或者从有用的个人工具做起、再做成网络(如 Instagram 先以滤镜成名,用滤镜的人多了,就成了网络)。

多年后出现的新的大规模社交网络说不定现在已经在慢慢积累用户了,只是他们在茫茫 app 海洋中还没被人注意到;老掉牙的故事:LinkedIn 是 2003 年上线的,它花了多长时间才让你听说到它的名字?

为何 Twitter 新版的手机网站那么快 (archive)

Twitter 的前端工程师写的图文并茂的技术文章,堪称高性能 React + Redux + progressive web 的实战教程。

最近几天我特意把 Twitter 的 app 删了,只使用 Twitter 网站,真的很快。

你死去一百年后,还有谁会记得你 (archive)

正常生老病死的话,你死后 30 年,子女也死了;死后 60 年,孙子孙女也死了;死后一百年,没人去给你扫墓了,墓地被回收利用了。那活着的时候还在乎别人对你的看法、而做事畏首畏尾的?

最终,没人在乎你的。所以,"All that really matters in the end, is that you found a joy of living, in the beautiful but insignificant little episode that was your life."

SQL is the perfect interface

“古老”的 SQL 真的是很好的标准化的数据库 UI,就连各种 NoSQL 的数据库成熟到一定阶段后、必然有人会去加一层 SQL 方便操作。

2017/04/16 第 890 期

命名的艺术

写作是为了方便阅读;写代码也差不多,写一次、被读许多次。把不相关的变量、函数、类堆放在一起,当然不好命名了。有床的房间叫卧室,有马桶的房间叫厕所,有床又有马桶的房间怎么称呼?

Smartphones are the New Cigarettes (archive)

就像抽烟一样,无时无刻玩手机也会影响到别人,让别人抽二手烟。怎么会呢?电影院里玩手机、家庭聚餐玩手机、开车玩手机、过马路玩手机。而且有害健康,注意力很难集中。

有多少工作是真的需要大学学历的 (archive)

其实还真是不多。工作岗位与其规定要大学本科学历以上才能申请,不如真正测试一下是否具有相关工作技能,何必这么在意求职者的技能是从哪里学到的?不是大学里学到的技能就比较差吗?

新平台案例分析:通过聊天界面讲故事

此时此刻美国的 App Store 免费 app 下载排行榜第一名是 Hooked,一个通过聊天界面讲故事的 app。想想看,有多少次你通过聊天软件讲述或听到图文并茂的故事?

这种聊天界面讲故事的 app 怎么赚钱呢?讲到正 high 的时候告诉你:要想继续看,请交钱订阅,否则请等待 30 分钟后再继续。发来一张打马赛克的跟故事情节息息相关的图,想看图?交钱。聊天界面讲故事,不错,头脑风暴一下还能整出更多好玩的功能的:)

我们平时统计的 PageViews 其实是错的 (archive)

传统意义上的 PageViews 其实是 page load,是 90 年代的服务器端渲染 HTML 而出现的产物。

现在多是 JavaScript 的单页面的 Web App,前端渲染 HTML,页面的定义也要与时俱进了。

2017/04/17 第 891 期

Build as much as you can

鸡汤文一篇。陶艺课的老师把学生分两组,一组数量优先,做越多陶器越好,另一组质量优先,思考如何做完美的陶器然后谨慎做之;结果,数量优先的那组做出来的质量比质量优先的要好得多。

Failures become information when they are small and specific. 从失败中学教训,不断进步。与其花时间思考如何一举做出轰动武林的牛逼创业公司(而迟迟无法动手做),不如每天都动手做点愚蠢的 side project,就算成不了牛逼创业项目、也能自得其乐提高技术水平。

Instant recall (archive)

Facebook 的 Instant Articles 推出两年了,但现在很多合作的大媒体纷纷放弃 Instant Articles:赚钱不给力,访问量也很不理想。

Instant Articles 不是承诺“瞬间打开文章”吗?这难道不会带来更多访问量?Facebook 的 newsfeed 算法现在偏爱把视频内容、朋友发的内容排在前面,用户比较不容易看到来自媒体的 Instant Article 了。社交平台不同时期有不同的优先级,他们的首要任务当然不是帮助其他媒体赚钱了。

社交平台都有类似 Instant Articles 的东西(看看微博、微信吧),都想把内容留在自己的平台、不想让用户点外链离开。

这个问题问得好:“Do you have any proof that publishers using another company’s proprietary platform have ever created a lasting and sustainable business?”依赖别人平台的媒体或许可以一时爆红,但难以长久。平台的主人随便一个改动都可能毁了你。

There are no small changes (archive)

本文以“限制评论字数为 140 字“这一看起来非常之小的改动为例,说明了在打造高质量的软件、线上服务的过程中,很多看起来是很小的改动实现起来都很复杂。

尤其是做了好几年的复杂的产品,任何一个改动都是牵一发而动全身的,按下葫芦浮起瓢。花了 1 分钟改了几行代码后,在十万八千里的意想不到的地方出现了 bug,然后花几个钟头找出 bug,然后再把之前改的几行代码改回来。这种事时有发生啊。

成功的开发者平台案例分析:BVP 为何投资 Twilio

风投 BVP 对于投资开发者平台类的创业公司有八条准则,本文通过已上市了的打电话 / 发短信 API 公司 Twilio 为案例解析这八条准则。

文中提到一个不错的实践:Twilio 的 CEO 在开董事会时,都会读几条用户在 Twitter 上夸奖 Twilio 的 tweets;不错的打鸡血的手段:)

为何我的小有名气的博客没法赚钱 (archive)

作者之前弄了个博客,专门贴出“fail”主题的搞笑图片,高峰时日访客 5 千、日赚 6 英镑。后来他没兴趣继续更新博客了,最终以 $5 百将网站卖给别人;一年后,那人又以 $5 千卖掉。作者在本文反省为何赚钱的人不是自己。

经营好博客最关键的是能持之以恒地更新内容,这是个漫长的过程。如果失去兴趣了、没有动力自己更新了,可以花钱雇人来更新;招 freelancer 的网站都能很容易找到要价便宜的网络写手。做一个东西要有回报就得做适当投资(时间或金钱),空手套白狼的事情或许是有的,可惜不是你。

2017/04/18 第 892 期

地球的脉搏从未开始跳动:为何 Twitter 用户数无法增长 (archive)

2010 年相当于 Twitter 的万历十五年,这一年 Twitter 董事会赶走了创始人 Ev Williams,Ev 在前一年提出的将 Twitter 打造成地球脉搏的伟大愿景从此不会实现了。

所谓地球的脉搏的设想:Twitter 开放 API、善待开发者,让无数开发者创造性地挖掘 Twitter 实时数据中有用的信息,有点类似现在 Foursquare 开放精确的地理数据给开发者们;盈利的重点不是广告,不用处心积虑地与使用 API 的开发者们作对;可以让开发者们付费订阅实时数据 -- 或许能成为类似彭博终端这样暴利的产品?

2009 年 Twitter 员工被黑客入侵,公司内部的一些绝密文档的截图外泄。那时 Twitter 上线第三年,雄心壮志,力争在 2013 年成为世界上第一个达到 10 亿用户量的互联网产品(09 年用户数 2 千 5 百万);当年正与 Google 进行貌合神离的合作、做好了与 Facebook 全面开战的准备。

Reddit 的愚人节项目 r/Place 是怎么做出来的 (archive)

每到愚人节,各科技公司都俗套地弄一些愚人节项目,绝大部分既没意思又没技术含量。但今年 Reddit 的愚人节项目一枝独秀,既有意思又有技术含量,发动全球网友一个像素一个像素实时地画图。

有兴趣的可以去看看这个项目的代码。对,这个愚人节项目是开源的;不仅仅这个项目是开源的,连整个 Reddit 网站都是开源的。就算你有了 Reddit 的代码,你也无法建起 Reddit 这种规模的社区。

Accounting for Developers 101

技术人员创业,没钱招会计、得自学一点会计方面的知识。这是不错的入门文档,对常用术语进行了解释。

The origins of XXX as FIXME (archive)

考古文一篇,代码注释里用到的 XXX 的起源。作者能找到的最早使用 XXX 注释的地方是 1981 年的 BSD Unix 代码,Bill Joy 写的(SUN 联合创始人、vi 的开发者)。

注释里加 XXX 是啥意思?warn other programmers of problematic or misguiding code。

为何北美的假电话号码以 555 开头

美国与加拿大的影视作品中凡是需要出现电话号码的,一般都是以 555 开头(区号后的三位),这些都是假号码,否则如果出现真号码、数以千万的热心观众会拨通那个号码、直接 DDoS 了。

其实严格意义讲,只有 555-0100 到 555-0199 才是假号码,其他 555 开头的号码还是有可能成为真号码的。我最近在做一个项目,一个电话号码对应一个用户账号;在 production 上测试的话就得用假号码了,于是这些 555 开头的假号码就派上用场了。

2017/04/19 第 893 期

Netflix 真正的竞争对手是人的睡眠

来自 Netflix 的创始人 CEO 的有意思的回答。来自 HBO 与 Amazon 的竞争都不算什么,很多人都同时付费订阅几个视频服务,与睡眠的时间相比,使用其他服务的时间实在微不足道:)

用一句话描述产品的艺术

创业者们如何学会说人话?介绍产品的时候用这个格式:You do X and Y happens。范例:Facebook 是输入朋友的名字,找到他们的详细资料;Uber 是按下按钮,5 分钟后一辆奔驰车来接你。

软件工程里的思想领袖

尤其是那些鼓吹“敏捷开发”之类的形式主义的思想领袖,他们远离实战中的编程已有很长时日了,现在鼓吹这些形式主义的软件工程歪理邪说,就是为了捞钱,因为他们本职工作是做咨询与出书!

Hooked 的创业故事 (archive)

夫妻二人是最早的一批 iOS app 开发者。2013 年秋变卖所有一切、买上单程机票边旅游边写科幻小说。用工程师的思维通过 Facebook 广告大规模 A / B 测试手机阅读习惯,2015 年推出 Hooked。

这就是前几天介绍过的那个通过聊天界面讲故事的 app,用户 1 千万人,融资 $500 多万,在多个国家的 App Store 免费 app 的下载排行榜里排第一!

Google 毁掉一个网站的案例 (archive)

Google 搜索结果里的 Featured Snippets 小卡片直接显示答案,用户就比较不用从搜索结果里点击链接了,这也导致很多依赖搜索引擎引流的网站的访问量大幅度下降。

本文的案例是 CelebrityNetWorth.com,名人身家财产的数据库。Google 未经他们许可的情况下使用他们网站的数据作为 Featured Snippet,导致他们访问量跟去年相比降了 65%,广告收入自然也大幅度下降,只能裁掉一半的员工。

2017/04/20 第 894 期

Facebook 与垄断的代价 (archive)

对今年 F8 上小扎令人失望的 keynote 的点评。如今的 Facebook 是 90 年代的微软,依靠自己几乎垄断的平台捆绑各种抄来的功能、碾压竞争对手,当江湖中无人能敌之时,就不再创新了。

小扎是成熟了起来,在台上能很自然地讲几个实在不好笑的 dad jokes;去年的 F8 还能大谈 10 年规划,今年则直接从 Snap 的 S1 里借鉴了。

为何 Ruby on Rails 仍是最好的选择 (archive)

开发快、容易上手、好维护、开源社区人气高、性能还行。世界上大部分的网站访问量都很低,很难有性能问题,用户也不关心网站是用啥做的,多数情况下 Rails 完全够用。

当一个用户向微软报告了其模拟飞行游戏地图上的“错误” (archive)

是俩欧洲国界线的“错误”,但模拟飞行游戏的开发团队调查后证实无误;该用户直接给比尔盖茨发邮件,盖茨转给模拟飞行团队的头,再次调查证实无误;问用户:你看的啥地图?用户说:我家浴帘上的世界地图。

多么可爱的用户。职业生涯里总能遇到那么几个好气又好笑的、而且又振振有词的用户。

创业不容易

Pennybox 创始人风趣幽默地讲述一些创业逸事。创业难以被人理解:保险公司表示不解你既然没有失业、为何工资是 0?银行说你公司营业额是 0、怎能申请信用卡?

HTTPS 的工作原理 (archive)

讲得不算很深的科普文章一篇。思考题:贵公司该如何监控员工的 HTTPS 请求的内容?

2017/04/21 第 895 期

为什么你不用某某更现代化的语言重写所有代码 (archive)

你从业时间不用很长、做过的项目不用很多,就有机会被某些同事问到标题的这个问题。你会如何回答?本文提供了一个思路。

Facebook 的算法让 Chicago Tribune 的每天发的帖子浏览量大减 (archive)

贴出了 Chicago Tribune 在 Facebook 上发的帖子的浏览量的历史数据。社交平台随便改个排序算法,传统媒体要没跟上步伐(如转型做视频、直播)、就落伍了。

微博也有这个趋势。湾区日报在微博的 follower 数量不断增加,但发的帖子的访问量这一、两年来其实都没啥变化。不能让你发的帖子访问量随着你粉丝数的增长而增长,不然微博广告就不好卖了:)

使用 Node.js 五年的经验教训 (archive)

Javascript 语言特点、Node 的运作原理、dependency management、测试、Node 生态、运维,满满都是坑!

Juicero 新 CEO 写给吃瓜群众的公开信 (archive)

Juicero 配送密封好的整包的蔬果汁、用户再用 $4 百买的专用机器挤压出来。但毒舌的互联网竟然发现了一个惊天秘密:用手去挤就行了、不用买 $4 百的机器。你若是融资上亿美金的 Juicero 的 CEO,如何应对?

# CEO 范文时间

这是什么鬼?这是 over-engineering!(这也很硅谷!)"The sum of the system — the Press, Produce Packs and App — working together is what enables a great experience."

Square 里的工程师是如何写 commit messages 的

代码的版本控制的 commit messages 有三种读者:

  1. 进行 code review 的人;
  2. 代码考古学家(如出故障了回过头来研究代码的你自己);
  3. 考核程序员晋升事宜的人。

为了方便未来的自己、方便与你共事的其他工程师,要有点公德心,花几分钟好好写一下 commit messages 是很有必要的。

2017/04/22 第 896 期

为什么 Quora 能估值 $18 个亿

耳目一新的回答:我们的世界,变了。以前人们以为每一代人只能出现一家 $1 千亿的公司(Intel、微软、谷歌);不料,FB 出现了。似乎每年都能诞生一家未来可能价值 $1 千亿的公司了。如此看来,估值 $18 个亿还真是便宜。

这么说来,十年后的某家 $1 千亿公司可能今年刚刚诞生在世界某个角落,只是我们还不知道。听起来有点类似老牛吃嫩草的“你未来的老婆 / 老公今年刚出生”?哈~

Kabam 的创始人 CEO 谈公司转型

Kabam 公司在倒闭的边缘几次转型满血复活,创始人 CEO 在这方面颇有经验。是否 pivot 的框架:产品、用户群体、营销渠道、商业模式这四个支柱,只要其中一个必须完全改变,那就是公司转型了。

Container 在 Netflix 内部的使用情况 (archive)

现在 Netflix 每周开启超过 100 万个的 container。这么多?container 很轻量级、而且他们公司内部工具支持很好,所以开启一堆 container 是很快、且愉快的一件事:)

穷人的思维 (archive)

经常买彩票的往往是最穷最可悲的那些人。穷人的思维:想要结果(发财、出名),但坚决不愿意去经历过程(吃苦、努力工作)。

不再参加各种编程的 meet-ups 了 (archive)

没门槛的东西,质量一般也高不到哪去。meet-up 多是免费参加的,还免费提供吃的、喝的,参加的人鱼龙混杂,做演讲的人也少有好好准备的,往往演变成自我宣传、炫耀、为公司招人的俗套节目。

2017/04/24 第 897 期

Uber CEO 在玩火 (archive)

纽约时报关于 Uber CEO Travis Kalanick 的长篇报道。要理解 Uber 的公司文化、各种不守规矩、背后捅刀、自相残杀的现象,就得先了解 CEO 这个人。

他从 UCLA 退学创业、24 岁第一家公司卷进 $2500 亿的官司、最终破产(读者们,你 24 岁时在干啥?);他创办第二家公司时,日子不好过,干脆就偷税漏税(朋友、创业导师们劝都劝不住),下一轮融资后再补交税,真是艺高人胆大,你敢这么做吗?为了要赢,可以不惜一切代价,只要不被抓到,即使违反规矩(或者法律)也照做不误。

I’m sorry, I can’t

很烦人的一种现象:发邮件跟对方约时间,对方打太极、一再推迟却不明确拒绝。你如果直接给出“I’m sorry, I can’t”,那该多好,省得彼此浪费时间。

不尊重别人的时间,就是谋财害命啊!

采访 TheSkimm 俩创始人

她们俩是 NBC 的同事、也是室友,2012 年(26 岁时)辞职创业,那时俩人存款共 $4000,后来靠信用卡欠款支撑公司。现在邮件订阅用户数 5 百万、融资 $1500 万,去年她俩刚把信用卡欠款还清。

她们融资很不顺利,屡遭拒绝。但幸运地是,产品上线没几天,就在早间新闻节目 Today show(她俩前东家 NBC 的节目)里被主持人推荐给了全国观众。产品是啥?每天早晨 6 点发出的电子邮件,汇总各种新闻链接、外加自己的简评(这 idea 听起来很熟悉啊~)

程序员如何选个好的 title (archive)

程序员的 title 可以有 developer、coder、programmer、engineer 等,再加上各种前缀,如 junior、senior、full stack。哪种 title 的工资比较高?哪种 title 比较威风?

Panda Express 的创业故事

美国著名中餐连锁快餐厅 Panda Express 是由一对华裔夫妇于 1983 年创立的,丈夫是应用数学硕士、妻子是电子工程博士。开餐厅,厨房做菜是没技术含量的,但管理上可以用软件来做数据分析、用模式识别来总结顾客购买习惯。记住,这是 1983 年。

在美国留过学的人应该都吃过不少 Panda Express 吧:)用软件、用电脑技术优化流程、号称要颠覆各种传统行业,现在听起来其实并不新鲜。但 Panda Express 的故事是发生在上世纪 80 年代初啊。

2017/04/25 第 898 期

Freemium Business Model

Freemium 商业模式的好处:用户用了你的免费产品,省却了靠营销、销售去教育用户的成本,给你提供了数据让你更好地改进产品。

LinkedIn’s new UI proves it doesn’t know its value to users

LinkedIn 的 UI 是教科书式的优化页面点击量的设计。公司那么大了,员工个体只能看到 KPI、局部的关键指标,力争动最少的脑子、操最少的心、最大化个人利益

买手机总是买 iPhone 的理由

那就是,相比于各种杂牌 Android 手机,iPhone 贬值比较慢。每年去 Apple Store 买新 iPhone 时,把用一年的老 iPhone 卖回给 Apple。

Building something no one else can measure (archive)

各行各业都有一些关键指标、但不断去优化这些指标反而弊大于利,如优化点击量造成标题党、教师评优考核升学率等。如果反其道而行之、与“行业标准”对着干呢?

比如 Google 出现的时候已经是人类历史上第 N 个搜索引擎了,之前的搜索引擎都是走门户网站路线、希望用户待在自家网站的时间越长越好,这样花花绿绿的横幅广告才能赚钱;而 Google 优化的是让用户尽快离开自家网站,搜索结果靠谱的话、用户很快就找到相关网页。

WhatsApp 联合创始人 Jan Koum 罕见地接受采访

在雅虎工作了 12 年后辞职做了大半年“向手机通讯录上的联系人广播自己的状态更新(如我手机没电了)”的 app,朋友劝他别做了、找份工作吧;后来转型做聊天 app,火了。

为啥 Facebook 同时拥有 Messenger 与 Whatsapp 两个聊天 app?针对的用户群体不同,也就是通讯录不同;Messenger 的通讯录几乎就是 Facebook 上的好友名单,而 Whatsapp 上的是手机通讯录。说实在的,手机上的通讯录与 Facebook 的好友名单的交集不是很大。

2017/04/26 第 899 期

写程序去抓取别人网站上的内容是合法的吗 (archive)

相信很多人都有这样的疑问。同样有疑问的还有:百度、谷歌可以缓存别人的网页,我为啥不可以?别人网站自己写的 Terms of Service 具有法律效应?

如果非要抓取别人网站的内容,最佳实践:有官方 API 的,尽量用官方 API;征求站长的同意;光明正大地在爬虫的 user agent 里写明你是谁、给出网址解释为啥要抓取他们家的内容;咨询律师。

雅虎是如何杀死 Flickr 并输掉整个互联网的 (archive)

12 年前 Flickr 被雅虎收购,之后被迫忙于与雅虎登录系统与雅虎其他产品的整合、加上雅虎大公司官僚体制,当年很酷、很新潮的 Flickr 无法创新,先错过了社交,后错过了移动互联网。

雅虎买下 Flickr 的理由很魔幻:看到 Google 如日中天,雅虎也想搞好搜索;雅虎把 Flickr 看成是一个数据库,一个用户给照片添加了标签的、方便搜索的数据库。Flickr 的用户社区?雅虎不在乎。社交功能?不在乎。iPhone 是 Flickr 上拍照片最多的照相机?管他的。反正 Flickr 就只是一个他妈的数据库!

已经有 Flickr 这么酷的照片分享服务的情况下,Instagram 是怎么做起来的?Instagram 的创始人在创业之初、融资的时候,或许被问了无数次“世界上已经有 Flickr 了,还做了那么多年、有那么多用户了,为何用户还需要另一个照片分享的 app?”

停止对 CEO 们的个人崇拜 (archive)

很多公司的 CEO 都是明星级别的人物,公司运营得好是他 / 她的功劳、运营得不好也是他 / 她的罪过;这样的 CEO 要出什么意外(被车撞了?),公司股价、品牌直接受到冲击。

公司都懂得关键数据要做备份、容灾,但却允许 CEO 成为 single point of failure:)

“免费”的线上服务

不久前纽约时报的那篇“Uber CEO 在玩火”的文章里披露,“免费”的方便用户退订邮件的服务 Unroll.me 卖用户数据给 Uber。最好别随便授权任何 app 去读取你邮箱中的信件。

“if you’re not paying for it, you’re not the customer, you’re the product.”一方面,人们不能理解为什么看不见摸不着的、没有体积、没法触摸的软件或线上服务是值得付费使用的;另一方面,人们也不认为自己的注意力(看广告)与隐私(卖数据)是比钱更重要的东西。所以,这种“免费”的模式实际上也是很合理的。

当面试官说“你有什么问题要问我吗”的时候 (archive)

本文准备了一堆问题可以用来向不同身份的面试官(工程师、经理、VP 级别的人)提问,能问出好问题在面试中是很加分的。面试是双向的,公司面试你,你也面试公司。

2017/04/27 第 900 期

Uber 用 Swift 重写 iOS app 的经验教训 (archive)

受 VIPER 架构的启发、他们自己做了个新架构,前前后后弄了快一年,5000 个 Swift 代码源文件、50 万行 Swift 代码、外加一些 Obj-C 老代码。花大力气解决编译速度慢的问题。

How to Become Insanely Well-Connected (archive)

这篇文章给出了非常实用的与人打交道、维持良好人际关系的建议,适用于在一个相对文明、相对成熟的科技圈里投资人、创业者、各种中间人之间的互动。

不错的建议:维护一个 CRM 管理朋友关系、定时提醒自己该跟某某人联络一下感情了;发邮件给大忙人,贴心地(其实是充满心机)在结尾附上“no need to respond”,对方反而比较可能回复;若想让人帮你引荐给另一个人,你最好发那种 self-contained forwardable email,一目了然、方便所有人,文中有模板可以用。

Instagram 正在成为 Facebook 的下一个 Facebook (archive)

Instagram 有 80% 的用户在美国之外,欠发达地区的用户大多都是用低端 Android 手机;他们就下大力气改进 app 在低端 Android 手机上的性能。

Instagram 还能与时俱进地加新功能、吸引更多新用户,而不是像 Twitter 一样被死忠用户劫持、束手束脚地不敢创新不敢加新功能。现在 Instagram 月活跃用户数有 7 亿,从 6 亿增长到 7 亿用了 4 个月时间;2012 年 Instagram 被 Facebook 收购时,注册用户数不到 3000 万 --“Facebook 疯了吗?竟然花 $10 亿买一个这种分分钟就能做出来的 app?”当年有太多人说过这类的话了~

Amazon Leadership Principles (archive)

这些是指导着亚马逊人做产品、做决策、面试、做一切事情的准则。写得真的很不错,要创业的人可以从里面借鉴几条写在网站上或员工手册上、开会装逼用、室内装潢贴海报等。再称赞一遍,写得真的很不错!

迁移到 Amazon ECS 的好处 (archive)

Mapbox 原来后台都在 EC2 上跑,后来全面使用 docker、迁移到 ECS 上(本质是加上 EC2 上的 docker 服务),服务器费用立刻减少一半,既安全又方便管理。

2017/04/28 第 901 期

HotelTonight 如何在七个月内从月烧几百万美金到实现盈利

HotelTonight 的创始人 CEO 本人写的文章。2015 年底,由于融不到钱,裁掉 20% 的员工,发动全公司剩下的员工开源节流(如工程师优化代码一年省下 $50 万 AWS 费用),最终盈利。

Microservice 架构中的 Authentication 与 Authorization (archive)

区分这两个概念:Authentication,你说你是某某某,证明给我看;Authorization,你有权限干这事(访问某 API)吗?

他们的 Authentication 靠的是 JSON Web Tokens (JWT),以前介绍过;Authorization 就是一堆数据库的表来表示权限。

YouTube 背后的临时工 (archive)

广告商不希望自己的广告出现在色情暴力的视频里,但现在的人工智能没法准确识别某段视频是否合适展现广告。怎么办?依赖人类劳工肉眼识别,将视频内容、文字描述进行详细分类。顺便帮忙训练 AI。

Google 把这种低技术含量的活(给搜索结果打分、甄别劣质内容等)发给一些下游小公司(相当于包工头),这些小公司再去招临时工、分配任务给临时工,每小时 $10 几块钱,每周限制他们工作的时长,避免他们能成为全职员工的可能(不用买保险、提供各种福利)。为 Google 干活的这些低技术含量的劳工人数超过 1 万人。

有一定规模的社交平台(Facebook)、搜索引擎(Bing)都有浩浩荡荡的临时工大军,真正的“人工”智能。

与风投不兼容的 SaaS 公司的崛起 (archive)

SaaS 创业不拉风投、尽快盈利、自给自足的案例越来越多了。现在小团队可以快速整合各种现成 API 做出产品,不需要太多前期投资;各种自给自足的 SaaS 成功案例也越来越多了、鼓舞更多人这么做。

Uber CEO 真的是 Wii 的网球游戏全球排行榜上排名第二的玩家吗 (archive)

在诸多的媒体采访、甚至 Uber 前几年官网上关于 CEO 的介绍里都提到这个“全球第二”的排名,彰显其 CEO 的无所不能。本文很长,但还是没有明确结论。据说他还是愤怒的小鸟全美第七呢。

在 CEO 造神运动中选这么一个“Wii 网球游戏全球第二”的例子确实很高明,Wii 那么多网球游戏,到底是哪一个?真有全球排行榜吗?是与电脑对打、一路打到第二难的级别,还是累计分数与全球玩家对比取得第二?烦人的媒体想要明察秋毫,也是查不出真相的。

2017/05/01 第 902 期

The Kano Analysis

将 Kano Model 应用在设计互联网产品上,对一批用户进行简单的测试:

加入这个功能,你的满意度如何?如果不加的话,你满意度又如何?

收集这俩问题的所有回答、汇总起来就能决定某个功能是否值得花时间去做了。

五类产品功能:

  1. Desired Features(越多越好,如磁盘容量);
  2. Required Features(必须有,但差不多就行了,如轮子能转就行);
  3. Delightful Features(给用户惊喜,若你不做,他们也不会失落);
  4. Indifferent Features(有和没有都无所谓);
  5. Anti-features(加了后,用户会疯掉的)。

应花力气做 1 和 2,有额外时间才做 3,避免做 4 和 5。

面试的时候如何介绍你自己 (archive)

不只是面试,在很多社交场合都需要介绍自己,介绍自己做过的事,要会讲故事、让人有兴趣听下去。平时要准备一些小段的、不同角度的自我介绍,要用的时候就像调 API 一样方便:)

名人在电视上接受采访,好像都能即兴演讲、侃侃而谈;都是平时有准备、有练习、不断 A/B testing、不断迭代的,最后总会在合适的时候呈现出合适的版本的说辞。

你不是你做的产品的用户

公司创始人或早期员工往往都(号称)是自己做的产品的忠实用户,这有个问题:你就会按自己的思维习惯设计产品,乱加各种极其小众的功能;毕竟世界上大部分人是跟你们很不一样的。

一个产品的整个生命里,非用户数总是远远多于已有用户数;在取悦少数死忠用户与争取多数新用户之间,应优先考虑后者。

"Your customer focus should always be on new or potential users, not early users. Early users will bias experiments, prompt you to build more and more niche features, and stunt growth."

Google’s real Kubernetes magic is all about community, not code

作为开源项目,Kubernetes 是非常成功的,Google 懂得放手让公司外的人贡献代码。Google 员工 commit 代码的比例稳步下降,这是好事。

这可能是本年度最有趣的 bug 了 (archive)

Xfce 是 Linux 上轻量级的桌面环境,GNOME 与 KDE 替代品。不止一个用户报告了个“bug”:Xfce 的默认桌面的壁纸损坏显示器屏幕!因为默认的壁纸是老鼠,家里的猫看了就会去抓显示器屏幕,把屏幕刮花了!

bug 的修复办法:把壁纸换成狗……但家里的狗会不会看到了也会来打招呼、舔屏、打架?你看,程序员平时的工作多么不容易,修复一个 bug,同时引入另一个 bug,总是有活干。

2017/05/02 第 903 期

Y Combinator When No One Cared (archive)

现在的 YC 在创业圈里就像名校一样,强大的校友网络与可以写在简历上的装逼资本。2005 年 Jessica Livingston 发邮件给媒体们寻求报道新生的 YC,没一人搭理。

最后一段写得真好,今天是湾区日报诞生的第 1000 天,我看到这段话很有感触:

"It’s also a lovely reminder to me how new ideas start small. Small but onto something. Keep working on something that a few people love. The press may ignore you, but users won’t, and that’s what matters. Laboring away in obscurity, as frightening as it feels at the time, is the way a lot of good things happen. Maybe the way most good things happen."

Moneyball teams (archive)

创业公司与其跟风吹牛 only hire the best(尤其是招价格昂贵、全面发展的“牛人”),不如经常分析一下自己团队各方面的短板、有针对性地招有专长的人(且不那么贵)。

被书、电影 Moneyball 宣传开了的曾经的美国职棒大联盟弱队、穷队 Oakland Athletics 就是通过数据分析,花很少的钱买被低估的球员组建球队,然后牛逼了起来。

BuzzFeed 在文章里帮别人卖东西然后抽成

affiliate links 是线上媒体除了广告外的另一大收入来源。BuzzFeed 有一支 12 人的团队全职写诸如“大学毕业生最想要的 26 件礼物”的文章,读者若从文中链接成功购物,BuzzFeed 抽成 10%~25%。

BuzzFeed 自己做了工具,让商家们登记想卖的东西、愿意让出的抽成比例,然后 BuzzFeed 的编辑们可以估计写一篇文章大约能赚多少钱(每篇文章阅读量、转化率是可以根据历史数据推算的)。

学习的包袱 (archive)

公司付你工资让你干活;通过学习,可以提高业务能力、能更好地干活;那用白天工作的时间学习、提高技能,可以吗?但学习毕竟不是在干活,用工作时间学习,老板与同事将怎么看待你?你好意思吗?

在以前的简评里有讨论过,一天八小时工作制是工业革命时期的产物,主要针对体力劳动者;脑力劳动者一天很难 8 小时高效工作。从程序员的工作来看,一天能集中精力写 4 小时代码就很不错了,剩下的时间多是打酱油的。要不每天 4 小时工作,4 小时培训、学习、提高技能?

Why Portfolio Size Matters For Returns

就像大部分的创业公司不会成功一样,大多数的风投是赚不了钱的。哪种投资策略好?

  1. 集中投资少数几家公司,大股东;
  2. 广撒网、投资许多家公司,小股东。

2017/05/04 第 904 期

Stripe 如何教员工编程的 (archive)

所谓科技公司、互联网公司里一般有两类人:工程师与非工程师,往往互相看不起。专门设计编程课程去教非工程师们写代码,可以让本质工作更有效率(写简单脚本)、让不同部门同事相互认识、对彼此工作互相尊重等。

The Rule of Three (archive)

代码复用不容易,找出至少三个地方可以复用同一段代码时,才值得抽象出来。“三”是一个神奇的数字。验证创业 idea 也是,三个用户、三批不同的人、三种应用等。

我见过的愚蠢的安全漏洞 (archive)

吐槽了一些正规公司、正规网站的安全漏洞:HTTP + cookie 里明文存放用户名密码;“您的密码是安全地存储的;我们只会在密码提醒的邮件里明文展示“;输入用户名与生日就能重设密码。

Investor VCs and Operator VCs

想做风投?两条路:

  1. 先攒够创业经验(成为所谓的 operator),然后做风投;
  2. 不用有创业经验,做风投。两条路都能产生眼光(与运气)极好的风投。

没有创业经验的风投有可能是好风投吗?正是没创业经验,才不会对创业者们胡乱指手画脚、直接把他们带到沟里;

有一短必有一长,缺乏创业经验,说不定更具有战略眼光,上帝不会把各种好处让你都占了的。

Apple 的中国问题 (archive)

对很多中国百姓来说,手机操作系统是 iOS 或 Android 都不重要,只要能用微信就行,微信就是操作系统。买手机看外观,iPhone 6 升级到 iPhone 7 长相差不多,没必要升级,还不如换个本土品牌长相奇特的手机。

Apple 对中国市场有信心吗?有,因为 iPhone 8 保证长相奇特,让你有换手机的理由。

2017/05/05 第 905 期

别听成功人士的屁话 (archive)

俗称 survivorship bias。“我做了 1、2、3、4,所以我成功了。”他们成功了、说出来了,你听到了。但同样做了 1、2、3、4 而失败了的有千千万万人,这些人的声音你是不会听到的。

这就跟“小王兼职几份工作、勤勤恳恳攒了 5 万块买了房。注:他家帮忙出了 995 万。”的故事一样,产生某个结果的原因除了你听到的 1、2、3、4 外,其实还有你不知道、他们也不会说的 5、6、7、8。

Damage (archive)

本文谴责 Apple 让软件严重贬值、让独立开发者们无法赚到养家糊口的钱。鼓励开发者给 app 定低价、同时支持手机与平板等多平台、还允许免费升级 app,消费者是得到了好处,开发者们的劳动彻底不值钱了。

实践 Scrum 管理项目的一些 anti-patterns (archive)

要是把项目的任务细分、计划到半年以后,那就太不现实了;前期投入太大,计划赶不上变化,几周后又得重新计划一遍。

纽约时报推荐其他线上媒体的优质文章

纽约时报每天原创大约 230 篇文章,相当于每天写一本哈利波特。有这么多内容了还不够,为了更多访问量,还得推荐其他媒体的文章、拟个比较容易让人分享到社交网络的标题。

媒体一般轻易不会在自己网站外链其他同行网站的文章,即使转载部分内容也不尽量不给出原链接(或者把原链接放在最不起眼的地方),心胸比较狭窄:)纽约时报精选、外链同行网站的优质文章,虽然不是原创,还是挺受读者欢迎的,毕竟也有推荐的功劳(湾区日报?哈哈)。

上个月有个读者发信给我,说他们公司运营的公众号转了湾区日报上的简评内容,但他们领导要求不能给出处,得装作是他们公众号原创的;他良心不安给我发信。让我很感动,还是有不少有良心的人的。

Digital Spring Cleaning

现实生活中需要对房间进行大扫除、要扔掉不用的东西。数字生活中也要大扫除:整理硬盘里的文件、关掉不用的网上的账号、关掉懒得再维护的个人网站、决定是否继续续费某些不用的域名等。

东西不用了要扔掉、不然会占用物理空间,这点很好理解;但网上的账号、一堆以前做的个人网站、凌乱的电脑文件,这些东西都是虚拟的,不占物理空间,为啥要整理、为啥要关掉(删掉)?多一件需要烦心的事,总是浪费时间精力的。比如雅虎数据被黑了、用户账号外泄,你以前注册过雅虎账号吗?你用的密码是否还用在其他地方?

2017/05/06 第 906 期

运维的未来 (archive)

软件测试工程师的岗位逐渐消失,取而代之的是 CI 之类的自动化工具,开发人员自助搞测试;运维也是如此,云计算的大势之下,注重自动化工具的开发,开发人员自助搞运维。

传统的运维模式:“服务器挂了”,运维人员忙碌起来。新运维模式:“服务器挂了”,开发人员自己看文档、跑脚本,自己搞定;搞不定的就去咨询少数几个“新运维”人员,毕竟自动化工具是他们提供的。

青少年是硅谷的最佳顾问

青少年有充足的时间试用你的像玩具一样的 app、给你反馈,在学校里也容易将一个 app 推广开来。过几年后,青少年长大成人了,你的 app 也进化成主流世界里的 app 了。

The Partnership Fallacy

人与人合作、公司与公司合作,往往都希望取长补短、技能互补。结果呢?合作一段时间后,自己薄弱的技能由于得不到锻炼、越来越薄弱,最终合作伙伴跟你分手了,你变得更差了。

合作不是一味地依赖合作伙伴,合作并不能取代学习与提高自身的技能。

The Problem Is Probably Trust

旷日持久的会议久久没法做决定、办公室政治、在公司心力交瘁没有安全感,多是因为同事之间、上下级之间、不同部门之间互相不信任。作为一个个体,如何信任别人、也让别人信任自己?

给自己做的产品找一个敌人 (archive)

一般是找一个大公司做的、臃肿缓慢复杂难用但很多人不得不用的竞争产品;对内,作为参照物,明确如何避免敌人所犯的错误;对外,也容易宣传解释自己产品:就像某某产品一样,但更快更好。

2017/05/07 第 907 期

Kumail Nanjiani’s Culture-Clash Comedy

纽约客关于 Silicon Valley 里 Dinesh 的扮演者的长篇报道。19 岁从巴基斯坦到美国读本科,计算机与哲学双学士;28 岁在芝加哥,白天做 IT、晚上说相声;家里逼他去相亲;自由恋爱娶美国白人。

其实 standup comedy 不应该翻译成相声的,standup comedy 用中文怎么翻译比较好?

The Horror in the Standard Library (archive)

一次很费劲的 debug 内存泄漏的经历,结果发现是 libstdc++ 的 memory allocator 有问题。标准库本身也是会有问题的,而且非常隐蔽、不好追踪到。

别与精神病患者共事

这种同事并非医学上的精神病患者,而是善于玩弄权术、爱撒谎、自负的人。他们评价别人是根据别人的行为,评价自己是根据自己的动机:“我这么做都是为你好”,但他们的行为显然不是。

文中提到一种实践,叫 the Delta File:自己创建一个秘密的只有自己才能看到的文档,记录下你的同事、上司表现出的让你很反感的行为;将来你处于他们那个位子了,对比 the Delta file 中你所记录的行为,你会怎么做?他们当时那些行为是合理的吗?

Chaos Engineering (archive)

当代线上服务多是分布式系统,各种零部件繁多。平时要有意识地进行消防演习,比如改一下 iptables 让某些零部件无法访问,看看系统会有何症状,然后修修补补不断提高系统稳定性。

不然到了真出问题了,会毫无头绪的。

你网站的正文字体太小了 (archive)

为何很多网站正文字体很小?mobile first 的设计,专门针对手机屏幕优化,忽略了桌面电脑、智能电视等大屏幕;为了避免翻页;流行的做网页的框架们默认字体很小。争取做到 20px 以上吧。

2017/05/08 第 908 期

全球最有价值的资源不再是石油,而是数据 (archive)

众所周知,如今世界上最有钱的五家公司都是科技公司了。他们有着充足的用户数据,相当于开启了上帝视角,什么东西即将流行、什么创业公司即将火起来,他们比谁都先知道,要嘛抄袭要嘛及时收购,越做越大,垄断。

上帝视角:Apple(用户使用习惯各种数据、App Store 里哪些 app 火),Google(你的各种小秘密都告诉了他们家的搜索引擎了)、微软(操作系统、办公软件)、Amazon(用户购买习惯、使用 AWS 的公司的所有数据)、Facebook(你的生活、人际关系、媒体)

Seeing Through The Fog

创业者或者风投如何拨开迷雾、看到别人所无法看到的新兴市场以及牛逼创业 idea?如 93 年看到互联网、03 年看到社交、07 年看到移动互联网、2013 年看到 blockchain。

多读(论文、博文、whitepaper)、多想(形成一套理论)、多交流、多实践(比如想了解 bitcoin,怎么着也得自己挖掘一下、花钱买一下、与别人交易一下)。

别让 Facebook 们将你变得很痛苦 (archive)

社交网络上的朋友们都把人生中最精彩的部分晒了出来,互相攀比互相伤;当你被社交网络上一派海市蜃楼般的美好景象所伤害时,就去搜索引擎自动补全的地方感受一下现实吧:)

人们在社交网络上把自己生活中那一点点的成功、喜悦的经历无限放大,然后把自己悲观、沮丧、真实的想法向搜索引擎倾述,你搜索的关键词很多都是你的小秘密哦。搜索引擎自动补全呈现出的世界比社交网络里的美图更真实。

25 年 Linux 内核开发的经验教训 (archive)

2005 年以来,有 1 万 4000 多个代码贡献者,分别来自 1300 多个不同公司;协调这么多背景、动机、文化非常不同的人提交的代码,很不容易。

阅读许多书的几种方法 (archive)

减少占用大量时间的活动(如把家里的电视收起来);让书不时出现在自己眼前,买纸介质的书、放在容易够得着的地方、一有空就看;不要因为没法看完一整本书而沮丧。

AngelList 的创始人 CEO Naval Ravikant 是读书狂人,他在不久前的一个 podcast 采访里提到:一本非小说的书也就传达 1、2 个主要 idea,得到了这 1、2 个 idea 就行了,没必要每页都看完。

2017/05/10 第 909 期

花点时间想想那些还没用过你的产品的人吧

大家都用太多时间考虑用户注册之后才会用到的核心功能,却忘了世界上大部分的人连你的产品名字都没听过、就算听过也不会花时间去注册成为你的用户。

作者曾在 LinkedIn 做过几年的 VP Product。08 年时,LinkedIn 成立 Growth team,他们发现数百个功能里只有三个是针对非用户的:邀请邮件、网站首页、通过搜索引擎找到的公开的用户页面。Facebook 有 20 亿用户,但没听说过 Facebook 的人依然比用过 Facebook 的人要多得多。

Justice for“Data Janitors” (archive)

作者是 UCSD 的教授,读 PhD 前曾在 Google 工作,目睹了高科技、高度自动化背后的低收入合同工们的纯手工劳动:分类、删帖、改进算法、扫描书等,为这些劳工鸣不平

Management is not about asking people to do stuff

好词好句摘抄:The thing to do is to ask if people understand what and why, not to tell the team how.

Zapier 如何做到小额融资一次就能撑过 5 年多 (archive)

他们只融了一次种子轮 $120 万;没有办公室,分布式办公,每年省下租办公室的钱有几百万;尽量自动化一切,除非真需要人力操作、才去招新的人类员工,尽量控制员工数在 100 人以内。

说得好:“Raise a Company, Not Just Another Round”。当今很多创业公司存在的目的就是融资,产品是做给投资人看到,没有脚踏实地的时候;落地了,就死了。阿飞正传里的台词:“世界上有一种鸟是没有脚的,它只可以这样飞啊飞,飞得累了便在风里睡觉,这种鸟儿一辈子只可以落地一次,那一次就是它死的时候。”

从 15 人的小公司跳到近 1 万 3 千人的大公司的体会

这大公司是 eBay。花时间了解公司历史;结交老员工;别为了完成项目与人闹翻了,人际关系比较重要;别专注做项目,一定要让你的老板的老板、老板的老板的老板们看到你的表现。这是奔着养老去的。

2017/05/11 第 910 期

PlanGrid 的创业经验 (archive)

PlanGrid 做的是管理建筑工地用的图纸的 app,主要在平板电脑用。这是很典型的“不酷但有用“的创业 idea,不是坐在办公室写完代码就自然有人用的,需要有相关领域工作经验、并愿意“跑业务”。

他们一开始为了说服建筑工地上的管理人员使用 app,还自己掏钱刷爆信用卡购买 iPad 给潜在用户使用;他们大部分时间花在教潜在用户如何使用 iPad,解答他们关于 iPad 使用的各种疑难问题。如果你的用户群体电脑技能比较差,你就得做好成为电脑技术科普人员的心理准备了。

要做很酷的事情前,你得把这些不酷的事情做了,这是一个 package,就像女明星嫁入豪门就得生男孩一样,都是一个 package:)

Bulletproof User Onboarding

很多网站、app 在用户第一次使用的时候都弹出五花八门的提示,用于教育用户本产品的 127 种牛逼功能。这种 onboarding 的体验相当糟糕。那该怎么教育用户如何用本产品?

可以在 empty state 里放提示信息(比如邮箱没有邮件的时候、好友列表没有好友的时候);可以放进度条,循序渐进地引导;可以在用户使用产品过程中,伺机发邮件(如注册后一天后、七天后、一个月后,或完成某项任务后)。

电子邮件版的个人公众号

不知道 newsletter 怎么翻译比较好,索性就叫它邮件版的个人公众号:)这是低成本的打造自媒体的方法,邮件仍是有效的分发内容的渠道,也不会被某公司某平台所绑架。

PEP 20 -- The Zen of Python (archive)

每隔一段时间复习一下,看看自己领悟了多少:)在命令行敲下 python -m this 后,就能看到。

创业的童话故事

创业、被收购、从此退休过上无忧无虑的幸福生活。这是没有创过业的人想象出来的童话故事。且不说创业过程要经历九九八十一难,就算小概率事件最终“成功”了、个人财务有所改善,你肯定还有一堆烂事要烦恼的。

就像高中时候被老师忽悠、或自己骗自己:“考上大学之后就轻松了”一样:)

2017/05/12 第 911 期

所谓 manipulinks:在网站弹出对话框逼迫用户订阅邮件、买东西等,关闭对话框的链接做得很不好找到,文案用类似“不,我讨厌省钱 / 减肥 / 健康”之类的语言,让用户羞于关闭窗口。

为了提高转化率,各种鸡贼小技巧、暗黑模式层出不穷。如果网站是专门用来宰游客、不在乎回头客的(如靠 SEO 引流的),那可以不注重口碑,设下陷阱、让用户中计,反正大部分用户这辈子也就访问这个网站一次,不会再回来了;但如果想让用户继续回来,就别耍这些小聪明,打造好的口碑需要很长时间,但坏了名声可是瞬间的事。

Top Tips for Negotiating With Stakeholders

这是给产品经理的建议。产品经理是团队里的润滑剂,与所有人打交道,或兜售自己的想法、或兜售领导的想法,如何说服他人?

Quora 是如何使用机器学习的

图文并茂地简述了机器学习在 Quora 的具体应用:理解问题,如对问题加标签归类、去重;匹配问题与最可能回答该问题的专家,如把问题推到相关用户的 feed 上;feed 上的问题、答案排序;优化广告投放。

给开源项目维护者们支个招 (archive)

做一个线上服务,开源项目的使用者可以给维护者们每个月固定捐一定数额的钱,捐钱的人可以开 issue 进行功能请求,这样的话维护者们既有经济上的激励、又能得知哪些功能请求是有价值的,就能更好地为人民服务了。

光干活、不拿钱、还要经常接受网络暴力的现在的开源项目维护者们,你们怎么看?

Silicon Valley: A Reality Check (archive)

为何有时候好像“大家”都在说硅谷正处于新一轮科技泡沫中,有时候“大家”又说硅谷仍有很多牛逼的创新。到底哪个才是真硅谷?“大家”都在盲人摸象,都看到局部,又都以为看到了全部。

尤其是社交网络时代,confirmation bias 更加严重;你本身是怎样的人,你有怎样的朋友,社交网络上的时间轴排序算法就给你推荐与你、与你的朋友想法类似的内容,所以坐井观天、盲人摸象的你就以为全世界都是那样的观点了。

2017/05/13 第 912 期

硅谷都误解了 Amazon 的 Echo Show (archive)

Echo Show 是加了屏幕与摄像头的 Echo,外观设计很不起眼(似乎是故意这么做的);加了屏幕后,让用户更容易看到并学会新的声控命令,也增加了更多应用,如看视频、视频电话、购物时可以看图片确认一下等。

鼠标键盘 => 触屏 => 声音,解放双手:)Echo Show 宣传视频里都是白人,非常政治不正确啊,他们主要针对的用户群看着很像川普的支持者 -- 长期被硅谷精英、主流媒体所忽略的人群,他们并不认为自己需要更多的“高科技”产品,而 Echo Show 在肉眼看上去一点也不高科技,却能默默地用高科技帮助到这些人。

Amazon 继 AWS 在云计算领域的统治地位后,Echo 在声控智能助手领域也是统治地位(70% 的美国市场份额)。

实例说明 UI 与 UX 的区别

UI 是静态的,每个人看到的是一样的,每个模块的 UI 可以单独分开来看;UX 是动态的,每个人的体验不同,而且改善了某个用户的体验后,有可能破坏了其他用户的体验。

Five Factor Testing (archive)

好的测试代码有这五个功能:

  1. 验证代码的行为是否符合预期;
  2. 防止 regression;
  3. 相当于代码的文档;
  4. 有助于设计通用的接口;
  5. 方便以后的重构。

总之,就是用来增强开发者对代码的信心的。

The Engineer/Manager Pendulum (archive)

一种职业道路:做工程师,在同一家公司做经理;跳槽到新公司,做工程师,再做经理;再跳槽,开启另一个工程师 / 经理的轮回。

理由:极好的经理是离开一线工程师岗位不久的那批人,能理解工程师这份工作,能理解技术;极好的工程师是做过管人的工作的那批人,能理解经理与技术以外的世界。

为何韩国的公司要他们的员工取英文名 (archive)

东亚国家的文化里,直呼上级、长辈的名字有点不礼貌。但现在酷炫的公司不都要(装作)扁平化管理吗?取了英文名,就能互相直呼其名了。中国的 Robin 们、Jack 们、Pony 们笑而不语。你有英文名吗?

没有英文名的话,在星巴克里被问“what's your name”的时候是很烦的,尤其是名字拼音以 X 或 Z 开头的同学们:)以前有个同学,去星巴克报名字的时候一律盗用自己博士导师的名字(因为好发音、易拼写),哈哈。

2017/05/14 第 913 期

The Dot-Com Boom and Bust

本文作者给没经历过上世纪末互联网泡沫的小朋友们科普了一下当年的情形。那时候湾区到处是创业公司在办奢华 party,公司上线新产品、改个新的公司名字都要办 party。

当你不能与用户对话的时候,怎么做用户研究 (archive)

有时候是客观因素(还没有用户),有时候是主观因素(胆小,不敢与陌生人说话),怎么在不与用户对话的情况下做用户研究?去看竞争对手的 app review、泡论坛、从客服那里挖掘蛛丝马迹等。

How To Be More Productive by Working Less (archive)

连续长时间工作、产出呈线性增长,这对于简单机械劳动或许适用;但创造性的脑力劳动就不是这样了,工作时间长了,也会有负产出,得回过头来擦屁股。

比如熬夜疲劳地写了几小时垃圾代码后,得回过头来花更多的时间找 bug。

世界上最糟糕的工作:Guardian 网站评论区的删帖员 (archive)

作为媒体网站,Guardian 的文章下面每天能有超过 7 万条评论,很多是连文章都没读就开始骂的,也有不少是政府(如北朝鲜、俄罗斯)有组织地发动五毛大军对相关报道进行攻击。删帖员们每天接受满满负能量:(

成为送餐 app 的送餐临时工,每小时赚 $4.4

记者为了写这篇报道,到 Uber Eats 与 Foodora 卧底,通过面试后、干了两周的送餐临时工,工作 18 小时,骑行 172 公里,平均每小时赚 $4.4。

2017/05/15 第 914 期

100% code coverage 的悲剧 (archive)

文中描述了“为了写测试而写测试结果白白浪费了时间”的教条主义式的悲剧行为。要懂得变通啊,不是所有代码都值得花时间去写测试的。

Curiosity is Better Than Knowledge

两种员工:充满好奇心能问出好问题的 vs 知识渊博知道很多东西的;与前者合作起来充满乐趣,前者成长空间大;而后者很快就碰到成长的天花板了,合作起来无趣。

BuzzFeed 是如何部署代码的

BuzzFeed 成立十年来,业务与代码都复杂了许多,每次部署代码都是一次冒险,出错了也不好调试。近两年改进了部署代码的流程,使用了 ECS/Docker,每天充满自信地部署 150 次代码。

他们原先有专人负责部署代码,现在写了方便的脚本,每个团队能自助地部署代码到 ECS。

写给想成为游戏开发者的年轻人 (archive)

作者在游戏领域做了五年,现在不做游戏了。本文简单解释了手机游戏的盈利机制(让玩家待着游戏里越久越好,处处引诱进行内购)、为何自己不再做游戏了(游戏开发技术单一)。

收藏者谬论 (archive)

收藏好文章或好链接的瞬间总是感觉良好的,似乎收藏了以后肯定有机会去读到、然后转化为自己的知识。但事实是,大多数这样收藏来的文章或链接一直待着那儿不会被你看到,久而久之堆积起来只会增加心理负担。

"to know about something" isn’t the same as "knowing something".

2017/05/16 第 915 期

TheirTube:童年的每个时刻都有视屏记录,这是怎样的童年 (archive)

最近几年出生的人或许是人类历史上第一代拥有自己一生最完整影像资料的人了。每一天都有那么多被拍、自拍(小孩当然也掌握了自拍技术)、上传到网上。

墙外的孩子会去看 YouTube 上其他孩子拍的视屏,他们自己也会有视频上传到 YouTube 上,他们的每次被拍或自拍都会假想有一定数量的观众。对了,使用不能拍照的手机是怎样一种体验?没有互联网的童年是一种怎样的体验?

The Path to Design System Maturity

公司里的多个设计师或不同团队做出来的产品界面风格不统一(颜色、字体、控件的样式),怎么办?公司成长的不同阶段有不同的招数来解决这个问题。

最终是要有类似 IBM 的 Carbon、Salesforce 的 Lightning、VMWare 的 Clarity 等标准化设计系统,公司里不同职能的人统一语言,开口说个简短的词、所有人就知道指的是某个特定大小、特定形状、特定颜色的标准化的控件,交流起来省心,设计起来方便,就像调用封装好的 API 一样,知道函数名就行,不用知道实现的细节。

如何面试 JavaScript 高级工程师 / 架构师 (deleted)

这个实践不错:让应聘者当场 review 你们公司的人写的代码,让他 / 她提出改进意见。毕竟 code review 是当代软件开发里一项重要的活动,就实际比划比划呗。

Why Amazon is eating the world (archive)

亚马逊将 service-oriented architecture 的思想贯彻到自己的业务中,公司内部各种内部 service 开放给外界使用(并收费)。

比如自己运营的数据中心、各种计算平台租给其他公司用,就成了 AWS;自己搭建多年的仓库、收款、送货的整套流程租给其他商家用,就成了 Fulfillment By Amazon (FBA) 项目,各小商家把货放到 Amazon 仓库里,用户下单了后 Amazon 就从自家仓库帮你送货。

2017/05/17 第 916 期

iPad 之谜 (archive)

iPad 刚推出时卖得不错,但用户买了之后用好几年都不必升级硬件,看视频收发邮件够用了;于是超强的 iPad Pro 出现了,试图让用户将更多电脑上的工作搬到 iPad 上来做;之后是不是要进一步模糊 iPad 与 Mac 的界线?

Tim Cook 说他所有的工作都在 iPad 上完成的。如果我的工作只是处理邮件,我甚至能在 iPhone 上完成“所有工作”:)

Web Developer Security Checklist (archive)

一家中小型公司运营的线上服务,如果能按照本文的这个清单来实践,就能将网络安全方面的风险降得很低。

在开发新功能与做一些“无聊”的运维 / 安全措施之间,得平衡分配资源(时间、钱、人力)。安全问题决不能轻视,被黑了、被攻击了可不是闹着玩的。定期演习一下,模拟一下各种攻击手段,看自己能不能把自家网站黑了;要被黑了,第一时间该做什么,这些都要有应急措施的。

Acquisition is Easy. Retention is Hard

主要针对 SaaS 产品说的。越容易争取到新用户,进入市场的门槛就越低,竞争产品就纷纷出现,用户选择很多、很容易改用另一个产品。

重新架构 Airbnb 的网站前端代码 (archive)

从传统的 Rails app、服务器端渲染网页,进化到时髦的 React + Redux 的 single page app;文中有动图有代码,感受一下这家十岁的“创业”公司的代码库成长的烦恼

Serverless 是新时代的 Visual Basic 吗 (archive)

半路出家没啥经验的“程序员”在所谓 Serverless 的流行趋势下,能做比经验丰富的“传统”程序员出色?就像在 VB 时代便宜的半吊子程序员可以无所畏惧地快速搭积木、写下无法维护的垃圾代码?

2017/05/18 第 917 期

The Anti-Portfolio (archive)

BVP 是美国最古老的风投公司。在这个页面,他们勇敢地记录下他们当初拒绝投资的那些公司的名字以及理由,这个清单就是所谓的 The Anti-Portfolio。

错过了当今全球市值最高的五家公司中的三家:错过了在 Apple 上市前投资,估值 $6 千万,他们认为太贵了;04 年时,哈佛本科生 Eduardo Saverin 孜孜不倦地跟他们兜售 Facebook,“孩子,你难道没听说过 Friendster 吗?别做了,没戏的”;错过了 Google,大学时代的朋友把车库租给了俩斯坦福辍学生,“我要怎样才能不经过车库而离开这所房子?”。

也错过了投资 eBay,卖邮票漫画书的破网站?想都不用想,忽略;错过了 PayPal,年轻菜鸟团队,法律纠纷太麻烦了;错过了 Intel、Tesla 等。

我们公司的源代码被偷了 (archive)

知名 Mac 软件开发商 Panic Inc 的创始人运行了染毒的软件 HandBrake,电脑被远程控制盗取了 ssh key,然后对方猜项目名 git clone 了他们公司几个 repo,发信勒索巨额比特币,如有不从将公布源代码。

在考虑了各种最坏后果后,他们决定不交赎金。有了我们的源代码你又能怎样?我们软件每天都在进化,几周后你手中的源代码就过时。

如何做让老年人也能方便使用的网站 (archive)

老花眼:字体别弄太小,字体颜色与背景色对比强烈点;听力下降:音频、视频噪音少点;手会抖:别整那些需要精确定位才能用的东西,比如鼠标悬停弹出的小纸条里的小按钮;懒得学新东西:文案要讲人话,简单易懂。

一方面,老年人开始接触互联网了;另一方面,原来上网、懂电脑的人也开始变老了。老年人有钱、有闲,得照顾好他们啊;大家设计网站、app 的时候要多想想他们(的钱包)。

从 Friendster 的失败中学到的 10 个关键的经验教训

作者是十几年前盛极一时的社交网络 Friendster 的第四号员工。本文从十个方面对比了 Friendster 与后来居上的 Facebook 两家公司。像不像郭嘉向曹操提出的十胜十败论?

前不久 Gimlet 的 Startup podcast 采访了 Friendster 创始人、投资人等历史见证者,探究为何当时这么红火的社交网络公司最终失败了。推荐大家去完整地听一下。虽然 Friendster 失败了,但它的投资人、创始人、早期员工后来也都混得不错,失败一次不会给你的人生判死刑的,机会多得去了。

Selling Intangibles

人们比较愿意掏钱买那种看得见摸得着的物体,而不愿意掏钱买看不见摸不着的“服务”,不管是线下的还是线上的。如果你是提供“服务”的人,怎么向普通人兜售?

有体积的东西,你在掏钱以前可以肉眼看到、或许还能摸一下,主观判断一下是不是值这个价格;而对于“服务”,人们在掏钱之前很难判断是否值这个价,得花钱体验了之后才知道;这时候口碑、品牌、情怀(忽悠)就起到很大作用了。

2017/05/20 第 918 期

从 AWS 账号里挖出 $100 万 (archive)

云计算时代,公司经常莫名其妙收到来自云计算提供商的巨额账单。钱都花到哪里去了?哪个部门、哪个产品花钱最多?最好在使用的资源里加标签(产品、团队),方便算账(秋后算账~)。

A Proposal for Twitter Tag Channels

这篇 2007 年的文章是当代社交网络使用 hashtag 的源头。他提议使用 # 在 Twitter 上表示频道,或现在更广为人知词:“话题”。

他从 IRC 中的 channel 的概念得到启发;IRC 里的 channel 名字前带有 #。

创业从电子表格开始用起

创业初期团队内部总要争论是否要用各种花俏的工具,记账、项目管理、记录用户反馈、客户关系管理等。别争了,先从电子表格用起。或许贵公司从创立到灭亡的短暂生命周期里,电子表格就够用了。

电子表格是万金油,甚至可以用电子表格做产品的原型,先验证了 idea、再动手编程实现。

Advice on recruiting emails

作者是 Netflix 工程师,他为创业者们支招,如何忽悠像他这样的工程师加盟贵公司。工程师在乎什么?

  1. 工作上的有话语权;
  2. 能尝试不同东西;
  3. 待遇要厚道。

我在 App Store 里赚了多少钱

作者是音乐专业(作曲)在读博士生,利用晚上与周末时间学编程、写 iOS app。做了个小游戏,尝试了三种内购盈利的手段,扣除交给 Apple 的 30% 保护费后,每个月赚 $200 左右。

湾区日报的 iOS app 每个月也大概赚 $200 左右,相当于每个工作日可以买两杯 $4.5 的咖啡。

2017/05/21 第 919 期

Beating the Averages (archive)

Paul Graham 写于 2001 年的经典文章。他 95 年(31 岁)创业做方便商家开网店的线上服务,3 年后有 1070 个用户时以 $5 千万卖给雅虎。秘密武器?使用 Lisp,开发速度极快。

因为使用了 Lisp,他们总能迅速上线新功能,这让使用传统编程语言的竞争对手们望尘莫及。从古至今,以少胜多的战役都是出奇制胜的,不能对手做什么你也跟着做什么。文中提到每当出现新的竞争对手时,他会去看他们网站上招人的 job description,就大概能知道对方是什么水平了:需要有 Oracle 经验 - 这竞争对手公司太烂,不用担心;需要懂 C++ 或 Java - 这也不必担心;招 Perl 或 Python 程序员 - 需要小担心一下了;招 Lisp 程序员 - 太需要担心了。

数字产品的设计能否经得起时间考验

看得见摸得着的物体往往有经典款的设计(名表,名包,名车),几十年下来不会过时,看起来仍然很不错。网站、app 的设计呢?两个月一小变,两年一大变,永远都在变。

宜家效应 (archive)

去宜家买家具,自己动手组装完成后,有成就感,开心。做产品的可以借鉴这种模式,让用户很容易地参与到产品的建设中,他们付出了劳动,比较能感受到产品的价值。

把一个 Twitter 账号变成全职工作 (archive)

他在大学时发现两件事:

  1. 凡是带有宠物的 tweet 都挺火的;
  2. 朋友告诉他手中的汉堡是 10/10(满分十分)。

于是 2015 年底他弄了 @dog_rates 这个 Twitter 账号给狗打分,粉丝 2 百万,靠卖相关纪念品盈利。

一般是粉丝给他私信投稿狗的照片(每天 1200 张左右),然后他聘请的临时工帮他从这 1200 张狗照片里筛选出 20 张让他打分;

他聘请的另一个临时工负责打理卖纪念品的网店的业务(卖 T-shirt、杯子之类的),按卖出的礼品提成。

这个 Twitter 账号开始 2 个月后,粉丝数就 20 多万了,有人私信他出价 $10 万想买下。

把运营这种社交账号当全职工作的微博、Instagram 等平台也有不少成功案例。

让他们粘贴密码吧 (archive)

一些网站为了安全起见,在需要输入密码的地方禁止用户粘贴密码。这篇来自英国国家电脑安全中心官方博文反而认为,应该允许用户粘贴密码;若禁止粘贴密码,一些密码管理软件就不能用了,反而更不安全。

使用密码管理类的软件(如 1password)比自己记密码更安全。自己记住密码、自己输入密码,就会在多个不同网站使用统一密码,若一个网站被黑了,自己其他网站的信息也危险了;而密码管理软件在不同网站给你设不同密码,相对安全点。

2017/05/22 第 920 期

How Etsy Ships Apps (archive)

Etsy 将每两周发布新版本 app 的流程的几个关键步骤自动化了起来:收集本周新版 app 的所有 commit、cut 新的 branch、通知开发人员验证代码是否 ok 等。

在一个多人团队里,这一流程不可能完全自动化起来的,要协调多人多个 commit,发现 bug 了得协调修复、再 cherry pick、再等开发人员手动验证等。把没必要人为做的步骤自动化起来,让人能腾出时间做那些没法自动化的事情。

部署代码、发布新版本 app 这个流程中,就像乘船、乘火车一样,需要调度。每个开发者都是乘客(连同他们的 commit),错过了这班船(火车),还可以等下一班,不用赶。船长(列车长)得保证按时开船(开车)。

基本的性能分析帮我们节省了几百万刀 (archive)

通过生成 Flame Graph,肉眼识别出 Postgres 的 partial index 的 parsing 步骤吃 CPU,顺利找到解决方案,立马提升性能 10 倍,节省服务器开销。

如何管理刚大学毕业的员工

应届毕业生第一份工作需要一定时间去适应,因为他们人生发展到那个时间点,基本上都是随波逐流,通过长辈、上课、考试这些外在的力量指引他们前进。工作后这些外在力量就少了,得学会给自己打鸡血了。

在学校的时候有作业、考试,经常能得到反馈、知道自己的表现如何。工作后虽然有半年或一年一次的 performance review,但反馈太少,很难知道自己(在别人心中)表现如何。在学校接触的多是同龄人,工作后开始大规模与不同年龄段的人接触了,难免会不适应。

从 side project 到两千五百万下载量

2011 年退伍后,学编程做健身 app 的网页版,然后用 PhoneGap 弄成原生的 app。运气很好,在 Twitter 上向 lifehacker 自荐了一下,lifehacker 发了篇文章推荐这个 app。该 app 下载量几百万时被收购,自己也成为收购方的 VP Product & Engineering。

雇主们,请允许你的员工在家里工作 (archive)

其实很多人已经或多或少有在家工作的经历了:你 oncall 的时候,半夜被警报吵醒,你是跑去公司解决问题呢、还是在家里抱着笔记本电脑连到服务器?

2017/05/24 第 921 期

Apple Park 背后的故事 (archive)

Apple 的宇宙飞船大楼就像其他 Apple 的产品一样精致,据说造价 $50 亿。Steve Jobs 生命最后两年里,花了很多时间在这栋楼的设计上。地是从惠普手中买下的,Steve Jobs 青少年时在惠普实习过。

Steve Jobs 有多难搞?对建筑内的木材的要求,不是橡树、枫树这么简单,他要求得冬天砍伐的木材,最好是一月份砍的,这样的话木材的树液、糖分会比较少。Apple 聘请的建筑师们听了后的直接反应是:Holy shit!

Stack Overflow 全站使用 HTTPS 的漫漫长路 (archive)

他们从 2013 年开始考虑全站使用 HTTPS,直到最近才达成这个目标。为何拖了这么久?

  1. 该项目优先级不高,他们又不是银行网站,不急;
  2. 该项目看起来简单,但实际难度很大。

你逐字读完这篇很长很长的文章都觉得颇为费劲,更何况他们的实际操作:

全站迁移到 HTTPS,意味着要为他们几百个域名、子域名生成 cert;

从性能考虑,还要迁移到 HTTP/2、用 CDN 做代理;

公司内的工程使用的开发环境中最好也用 HTTPS;

历史遗留问题、用户生成内容里内嵌的 HTTP 的图片也要处理一下。

非常之繁琐。

帮助一百万个开发者退出 vim (archive)

来自 Stack Overflow 的博文,这种数据分析类的题材不错,既有趣又能达到内容营销的效果。很多不会用 vim 的人不小心打开了 vim,但折腾半天不知道怎么退出,一搜索就来到了文中提到的那个问题页面了。

Underemployed (archive)

每天工作八小时、每周工作五天,这是从简单重复机械劳动为主的工业革命时代遗留下来的工作制。过去几十年里,脑力劳动者比例变大了,很少人能一天内有效工作八小时的。往往最好的灵感是来自工作之外的时间,如休假、散步、运动。

How to Disagree (archive)

在网上如何否定别人的观点?Paul Graham 在这篇文章里将否定别人观点的方式分成 7 个类别,从毫无逻辑的谩骂、到试图讲没有道理的道理、再到抓住要害据理力争。

2017/05/25 第 922 期

采访 Workflowy 联合创始人

他大学毕业后在 Google 做了 3 年多,然后在家做了一段时间 Facebook 上的 app,然后与大学时的室友创业进入 Y Combinator,换了几个创业 idea;合伙人学编程时写的简单的列表式做笔记的 web app 看着挺靠谱,做到现在七年了。

他们在 Y Combinator 之后再也没融资,属于 life style business,旱涝保收型的,就做一个简单精致的产品。俩创始人之前有段时间经常意见不合,面临散伙的危险;他们就一起去看心理咨询师,接受治疗,慢慢又恢复正常关系了。很多公司的高管工作压力大都去看心理咨询师,这很正常;人就是一个产品,要用各种工具(心理咨询师)把这个产品的方方面面(心理健康)维护好了。

我这半年做笔记一直用 Workflowy,替代了用好几年的 Emacs Org mode。

创业公司寻求报道的注意事项

做 app 很容易,难的是让很多人知道有你这个 app 的存在。媒体报道(如写文章)是一种“免费”的争取眼球的方式,很遗憾,所有创业者都知道这个“秘密”,寻求报道不容易,往往折腾半天没有那家媒体愿意搭理你。

作者估计通过媒体报道的途径,他们家的 app 新增了 4.4 万的下载,如果做广告的话,争取一个下载需要花 $4,所以这些新增的下载价值 $17 万。不花一分钱,就有媒体愿意写文章报道你家的 app,相当于白送你 $17 万,多好的事情啊。

以前听人说过,国内公司为刷用户数据,让手机店在 Android 手机预装 app,预装一个 app 几毛钱人民币,是真的吗?

The first rule of prioritization: No snacking

四种类型的任务:

  1. 高投入高回报;
  2. 高投入低回报;
  3. 低投入高回报;
  4. 低投入低回报。

创业初期都尽量做 3,但最后不知不觉做了一堆的 4,就像吃零食,没营养。

创业公司的主要自杀方式之一:优柔寡断

为什么有些人做决策很慢?因为爱面子。害怕与大多数人想法不同、害怕被别人认为自己很蠢、害怕想法被否决。

The Unbundling of Excel

Excel 是万金油工具,用途广泛。每种用途拿出来做细致了就成为一家创业公司了。类似的找创业灵感的地方:Unix 的那些命令行工具、百度贴吧、门户网站各子频道等。

2017/05/26 第 923 期

2017 年小扎在哈佛毕业典礼的演讲全文

开场,忆往昔在哈佛的青春岁月。升华,咱这代人得超越小我,而去帮他人找到人生的目的。三种方式:一起做有意义的大项目、争取人人平等、共建全球和谐社区。建议大家看一下演讲的视频。

收到哈佛录取通知书的电子邮件时,他正在玩“文明”游戏,他爸用摄像头记录了他打开邮件的情景。在哈佛的第一堂课,他迟到了,衣服还穿反了。

做了对比女生 hot 不 hot 的网站,朋友们觉得小扎即将被学校开除,专门给他办了送行的 party;厕所前排队时,回头跟华裔女生说,我三天后就要被学校开除了,咱抓紧时间约会一下;后来他们结婚生娃了。

人的成功有努力奋斗的成分,有聪明的成分,但他坦言,其实运气也很重要:“If I had to support my family growing up instead of having time to code, if I didn’t know I’d be fine if Facebook didn’t work out, I wouldn’t be standing here today. If we’re honest, we all know how much luck we’ve had.”

受够了所谓的 microservices (archive)

创业初期没认清现实、盲目跟风去搞 microservices,往往自找麻烦、自己挖坑。贵公司从创立到倒闭的短暂的生命周期里,你的小破 CRUD 程序可能一个每月 $10 的 VPS 就够用了,真的。

正在消失的电脑 (archive)

本文是莫博士最后一篇专栏了。未来的电脑将变得无形(声控、物联网),仿佛无所不在,方便极了。遥相呼应 1991 年他的第一篇专栏文章:个人电脑很难用,但这并不是你的错……

The three axes of engineering leadership

Medium 的前 Head of Engineering 的文章。好的工程经理同时扮演三个角色:技术、项目管理的领袖;管人事的经理,奖赏、升迁、开除人;职场导师、知心哥哥 / 姐姐。

在浏览器大战中,Chrome 取得了最终胜利 (archive)

Mozilla 前 CTO 写的博文。浏览器市场 Chrome 一家独大(Safari 排第二),对网页开发者是个福音,不用测试小众浏览器了(如 IE),网页在小众浏览器渲染起来很难看,就更没人用小众浏览器了,恶性循环。

浏览器在手机上多数时候不是作为单独的 app 被人使用的,而是成为 app 里内嵌的功能,如在微博、微信里打开网页。谷歌有 Android,Apple 有 iOS,Firefox 在手机上不可能有所作为的,得自己做操作系统啊,所以 Firefox 几年前也做了操作系统 Firefox OS(现已停止开发了)。

2017/05/27 第 924 期

Reddit 是如何统计每个帖子的浏览量的 (archive)

先别看文章,思考一下如果是你来做,你会怎么实现以下需求:

  1. 同一用户在短时间内多次访问帖子,只算一个浏览量;
  2. 显示的浏览量与真实浏览量间允许有小百分之几的误差;
  3. 数据的实时性,允许有几秒的延迟;
  4. 这是全球访问排名第 8 的网站……

对比 Google Maps 与 Apple Maps 在一年内的变化 (archive)

作者写了个脚本截了一年的图,充分展现了 Google Maps 不断迭代、进化的历程,数据精确性、UI 的易用性都有很大改进。而 Apple Maps 的变化比较小。

作者曾在 Apple 工作过,参与了 Apple Maps 的开发。

It’s Never Too Early to Fire (archive)

本文告诫 CEO 们,开除公司里的高管千万不要手软,一定要快刀斩乱麻。你会后悔开除得晚,而不会后悔开除得早。早点开除不合适的人,才对得起其他还在公司里的人。

当然,早点开除,也对得起被开除的人,他 / 她才能去个更合适的地方(就像谈恋爱一样,不合适就别互相耽误了)。本文作者就是被开除了后,自己创业;最终自己创业的公司卖了 $37 亿,而之前开除自己的公司卖了 $1.05 亿。

友谊的极限 (archive)

Dunbar’s number:一个人能维持紧密人际关系的人数上限是 150 人。在社交平台上动不动就“好友”数几百上千,是这些“好友”并非真好友,还是互联网让人可以维持更多的稳定的人际关系?

身边那些 2003、04、05 年开始读大学的朋友,尤其是读常春藤学校的,他们的 Facebook 好友人数都动辄 1、2 千人,大部分是大学时与大学刚毕业那一两年内积累的。最近几年,年纪大了、有家庭了,基本都不加什么新好友了。

Magic Leap:巨额的融资与无止境的推迟

Magic Leap 的宣传视频看上去都很有科幻片的效果,可惜公司成立 7 年了,除了巨额融资外还没有一个可以 demo 的产品。有前员工披露,视频里的效果是特效做的,并非真的 AR,视频用来忽悠招聘用的。

比较让我迷惑的是:该公司创始人当年被西北大学、MIT、密歇根大学录取,最终选择了离家近的迈阿密大学……

2017/05/29 第 925 期

你对社交媒体上瘾,这绝非偶然

社交平台就是一个工厂,他们的产品是人的注意力,他们的客户是广告商。"我们这儿每个月能有几百亿分钟的 20 岁到 35 岁人群的时间,你们要买吗?" 为增加库存,他们一方面得吸引更多人来用,另一方面要让每个人用的时间长。

就像玩老虎机、赌博一样,下一刻你就可能中奖,你总有个念想。你修了图、发了贴,下一刻可能就有很多人来点赞捧你臭脚;有几次你发的东西大受欢迎,你得到了鼓励,你就越来越沉迷这种虚拟的社交游戏了。社交平台发展到最后真的有可能像 Black Mirror 第三季第一集 Nosedive 一样,推荐没看过的人去 Netflix 看一下。

Better Than Free (archive)

这是来自 1000 个真粉丝 作者的另一篇经典文章。电脑让信息变得易于复制,互联网让复制来的信息容易传播。

那么,互联网时代免费的东西无所不在,为何还会有人愿意花钱买看不见摸不着的东西?

人们愿意花钱八原因:

  1. 及时,如 花钱看电影首映;
  2. 个性化定制;
  3. 解释,如软件免费但培训收费;
  4. 正版,如花钱买正版避免染病毒;
  5. 代为保存、方便访问,如网络云盘;
  6. 不同的表现形式,如高清版要收费;
  7. 赞助,如支持创作者的付出;
  8. 便于找到想要的东西,如网上电影、歌、好文章太多了,需要有人帮着筛选。

我在招聘 COO 过程中学到的东西

Sift Science 创始人 CEO 写的文章。需要招 COO 的时候就相当于 CEO 本人勇于承认自己不完美、需要帮助的时候,这对很多高傲自负的 CEO 来说是很难的事。他们前后花了 7 个月才招到人。

招聘流程:与 CEO 喝咖啡;与管理团队的一部分人见面;与 CEO 一起读过去给董事会展示的幻灯片,讨论问题;与管理团队剩下的人见面;与董事会见面;与 CEO 共进晚餐。面试完后,要找到至少 3、5 个 backchannel 对这个 candidate 进行背景调查。

硅谷三巨头对比曾经的底特律三巨头 (archive)

现在的苹果、谷歌、Facebook 收入多来自海外市场、只让硅谷本地极少人富起来;而上世纪 50 年代末的通用、福特、克莱斯勒都只靠国内市场,大量雇佣底特律地区的人,一派“共同富裕”的景象。

简单并不意味着容易:从 Clojure 换到 Ruby (archive)

思维上觉得容易的东西,往往是因为有以前学过的东西作为参照,所以 "熟悉",所以觉得容易。看上去简单的,如代码量少、一行流、字母很少的公式,往往不容易理解。

2017/05/30 第 926 期

Browse Against the Machine (archive)

Firefox 营销总监写的博文,劝说大家在使用 Chrome 的同时也别忘了用一下 Firefox:)他本人每天工作用 Firefox,而娱乐用 Chrome……

如果你是他这个职位,该怎么劝说大家使用 Firefox?Firefox 比 Chrome 更小、更快;Chrome 出自全世界最大的广告公司、总是作恶的 Google,动机是为了更好地卖广告;而 Firefox 是非营利性公司 Mozilla 做的,这可是怀着无限纯洁美好的情怀做的浏览器啊。

为何网络安全这么难 (archive)

现实世界里,政府通过海关、警察保证境内的安全;但电脑联上互联网后,没有国界,世界任何角落冒出来的坏人都能攻击你。靠谁来保证网络安全?

You Never Have Time, Only Intentions (archive)

我们无法像拥有实体物品一样地拥有时间。并非你没时间去做一件事,而是你没足够的动机。对某件事情只要有足够的动机去做,再没时间、在忙的话,肯定也能做成的。

用 React 重做 Slack 的网页版客户端的 Emoji Picker

Slack 的网页版是基于 jQuery 写的。他们正在用 React 重写;Emoji Picker 是第一个被重写的部件。用了 React 后,开发起来更愉快了,性能比以前快了不少。

低收入与高负担:Facebook 删帖员的生活 (archive)

Facebook 雇佣了数千名删帖人员,每小时工资 $15,接受为期两周的培训后就能上岗工作了。出格的视频、照片由用户举报或由算法自动识别,然后这数千名删帖员人工审核决定是否删除。

"每天早上 9 点上班,打开电脑后就要看别人被砍头的视频。" "每天都有人要去看心理医生;晚上会做噩梦,无法入睡。" Facebook 每年投入上亿美金招募删帖员,看起来很多钱,其实占不到全年收入的 1%。牺牲了一些人的心理健康,换取了大部分人干净的网络环境。以现在的技术,还有更好的解决办法吗?

2017/05/31 第 927 期

How to Improve a Legacy Codebase (archive)

几乎每个工程师职业生涯里都会有接手别人留下的烂摊子、烂代码的经历,到处是地雷,该如何改进?很简单也很重要的规则:一次只改一个地方;若同时改多出代码,经常会按下葫芦起了瓢。

How Pinterest Perfected User Onboarding

图文并茂地剖析 Pinterest 新用户刚注册完,开始使用产品的体验,各种引导与个性化定制。新用户若没法对你的产品一见钟情,你想把他们拉回来用你的产品看腻的广告,很难了。

采访 Netflix CPO (archive)

他于 1999 年加入 Netflix,入职第一个任务就是解决千年虫问题。这个采访里,他谈到了 Netflix 从邮寄 DVD 逐渐转型到 streaming 的那段历史,以及为何决定使用 AWS。

Netflix 先做机顶盒,而不是 streaming,毕竟十几年前网速还跟不上。当时设想的是用户按下按钮,等几十分钟下载完后再观看,而不是按下按钮立刻观看。后来他们把机顶盒 Roku 剥离出去成为独立公司,向外界放出一个信号:对于各种硬件设备,Netflix 是中立的,可以在任何硬件设备上观看。这步棋走得不错。

这个采访是来自我曾经推荐过的 Internet History Podcast,推荐大家去听一下。对了,你们知道 House of Cards 第五季出了吗?这周又有得忙了:)

最好的员工手册

Reddit 的 VP Engineering 写的文章。在伯克利读 MBA 时被百货公司 Nordstrom 的员工手册惊艳到了。准确说,这是一张卡片,简洁明了,不废话。

"Nordstrom Rules: Rule #1: Use best judgment in all situations. There will be no additional rules."

Hire a VP of Engineering (archive)

Nicira(2012 年以 $12.6 亿卖给 VMWare)的创始人写的文章。科普了一下 VP Engineering 的职责:带好队伍,做好资源分配,执行力。

2017/06/01 第 928 期

Mary Meeker 的 2017 年的互联网趋势报告 (archive)

今年足足有 355 页幻灯片(对比:去年 213 页,前年 196 页)。智能手机用户增速放缓,蹦出了各种新兴的广告格式,游戏行业蓬勃发展、对互联网产品有巨大影响,没有提到比特币。

幻灯片直通车。这页幻灯片有意思:成功的创业者们从小都爱玩游戏;玩游戏 -> 学编程做游戏、赚钱买电脑玩游戏 -> 创业;引用了 Elon Musk、Reid Hoffman、Mark Zuckerberg 三人的游戏情结。

10x’ing Your Team

所谓 10x engineer,有很多是快速写垃圾代码然后组内其他人帮他擦屁股。不懂技术的领导们依赖这种 10x 工程师,其实是在为自己不懂得拉扯高效团队、设计高效流程找借口。

本文是对 Parker Thompson 的采访。他就是知名 Twitter 账号 Startup L. Jackson 的运营者。湾区日报某种程度是收到这个曾经匿名的 Twitter 账号的启发而做的。你不用靠名气、不用靠吓人的头衔、不用靠与名人大 v 互捧臭脚装作很熟,一个普通的一线工程师推荐好文章或许也是能帮助到一些人、让世界变得更好一点点,尽管这不是一件有技术含量的事:)

上一轮互联网泡沫对现在比特币泡沫的警示 (archive)

去年的今天,比特币价格 $573;今天,$2391。看上去形势一片大好,很多年轻人已经 all in 了。本文作者作为经历过上一轮互联网泡沫的人,有些话要说。

“Do not, under any circumstance, borrow to invest in a bubble. You will be in an extremely fragile position if you do because of violent prices movements.”借钱炒房、炒股什么的也类似。

如何准备技术会议上的演讲 (archive)

作者的母语不是英文,从 2013 年起每年都在 PyCon US 上给 talk。他在这篇文章里非常非常详细地介绍了自己准备 talk 的流程以及用到的工具。德国人做事真严谨。

实践五小时工作日 (archive)

作者与他的上司沟通好了,每周照样工作五天,但降低自己的工资、每天只工作五小时。实践一个月了,与以前的每天八小时相比,用 60% 的时间完成 80% 的工作量,不错。

以前有推荐过另一种时间安排:每天工作三小时,但天天工作 -- 他是 iOS 独立开发者,自己做自己的老板,当然可以自由实践各种时间安排了:)

2017/06/03 第 929 期

为何 Windows Vista 会那么失败 (archive)

作者是当年微软 Office 部门的 VP。微软想把太多美好的想法通通塞进 Vista 里,强推 C# 托管代码,项目复杂、管理混乱,狂吃内存、性能极差。

当年正是笔记本电脑开始普及、超越台式机的时代,可惜普通笔记本电脑跑不动 Vista,只能继续用 XP 了。很多人就是直接跳过 Vista,从 XP 升级到了 Win7 的。文中还提到了 Windows 有严重拖延工期的传统,比如 Windows 95 本来应该是 Windows 93 的……

LinkedIn Growth Engine: The Never Ending Viral Loop

算是比较全面地描述了 LinkedIn 从 2002 年底成立公司、2003 年正式上线、2011 年上市、到 2015 年左右的发展史。

第一版的网站做了半年,上线一周注册用户 1 万 5,四个月后增长到 5 万。一开始不被看好,“那时候已经有 Friendster 了,他们若随便加个职场社交功能、分分钟秒杀 LinkedIn”。

LinkedIn 的各种 growth hacking 的鸡贼小技巧都是教科书级别的,尤其是那个“让用户不小心自己上传了电子信箱里的通讯录、不小心群发邮件邀请所有邮箱里的联系人使用 LinkedIn”。

采访 Paul Buchheit (archive)

Google 的“Don't be evil”就是他提出的;有一天 Larry Page 告诉他:去做一点关于电子邮件的东西吧;于是就有了 Gmail(原型的开发只用了一天)。

他觉得 idea(听上去)的好坏与最后的成功往往成反比。一开始听上去很靠谱很牛逼的 idea 往往都失败告终,一开始听上去很不靠谱的 idea 最后却有大成功的:如把自己家里的充气床垫租给来开会的陌生人并且还要提供早餐的 Airbnb。

Faceless Publishers (archive)

传统出版商:有品牌、有盈利手段、养了一堆写手、控制分发渠道;读者冲着出版商的品牌去阅读。互联网出版商:品牌不重要,能做广告,有分发渠道;写手是自媒体;读者就冲着这些个人品牌去阅读。

有效使用 Amazon Mechanical Turk

真。“人工”智能平台!不错的使用 Mechanical Turk 招募便宜人工劳动力的教程文章,非常适合数据标注、图片识别、做问卷调查、把语音转化成文字、改写文章段落等活动。

前几天我在找一组数据,问了一圈现实世界里的朋友没人知道,在搜索引擎搜了半小时没找到,我就在想在哪里提问比较好。后来想到了 Mechanical Turk,就花了 $10“天价”(该平台上的任务多是几毛钱、$1 的)在上面提问,5 分钟内得到答案。

2017/06/04 第 930 期

Notifications: A Tragedy Of the Digital Commons

手机上的消息推送太多了,无时无刻干扰用户的注意力。App 开发者们得有点良心,别乱发推送;操作系统也要采取一些措施,智能地学习、过滤点不必要的推送。

文中贴出的那张 Slack 决定是否给用户推送消息的逻辑图,真是很复杂,但也很负责任。

Brand Vocabulary in the Context of UX

澄清了一些 brand、branding 相关的容易混淆的概念;设计师、产品经理、团队里其他人都有一套共同的语言,方便交流、上下一心。

学编程的方式 (archive)

自顶向下:一上来就做酷炫的项目(网站、游戏),边做边学,容易有成就感,但基础不牢、多是胶水浆糊代码;自底向上:系统地学概念、做课后习题,耗时长、容易失去兴趣半途而废;混合型:做项目与系统学习不断交替。

大学里的教学多是自底向上式的,学概念、做题,学生往往几节课下来就对编程失去兴趣了;社会上的编程培训班多是自顶向上式的,复制粘贴代码做酷炫网站、app,学员出来后都有个漂亮的作品集,但实际工作下去相当不靠谱。

用机器学习对数据库参数调优 (archive)

来自 CMU 的研究成果,是他们今年 SIGMOD 论文的通俗版。非常典型的 DBMS 论文的套路。

Reddit 部署代码的方式的进化 (archive)

每周部署代码 200 次,每次耗时不到 10 分钟。没有用时髦的 docker,而是传统实用的“在服务器上靠 git 得到新版代码、再重启进程”,并行部署多台机器、缩短时间。

2017/06/05 第 931 期

Amazon Is Killing My Sex Life (archive)

虽然标题里有 Amazon,其实是泛指西雅图与硅谷地区那些造成当地男女比例严重失调的科技公司们。作者从女性的角度讲述为何她们不想与现在的 IT 男们约会。

现在的 IT 男们与九十年代充满情怀的 IT 男们不一样了。现在的 IT 男们赚钱虽多,但普遍不解风情、无趣、自大。“In Seattle, it has been easy to hook up, but hard to find anyone really interesting or worthwhile for the long term.”

Compress to impress (archive)

作者曾在 Amazon 工作七年。本文以 Amazon 及其领导人 Jeff Bezos 为例,论述了能够将复杂的公司战略总结成朗朗上口的短语对于统一思想、打鸡血是很重要的。

不止是公司管理,政府、农民起义、闹革命、暴动等活动中,那些成功的领导人(或者他们身边的智囊)也都普遍具有能总结朗朗上口的短语的能力。比如人们都记住了川普的 Make America Great Again,却不记得希拉里说过什么。

DevOps 是一种文化,不是一个职位 (archive)

DevOps 快速迭代、不断学习的文化需要公司上下都认同,不是一个人两个人的事。产品开发求快,而运维则是求稳,这往往就有冲突了。

有十几岁女儿的风投比较能赚钱

风投的 partner 们如果有十几岁的女儿的话,他们就比较有同理心,在公司里比较能招女性、少数族裔,比较能接受多样化的创业 idea,成功概率大一点。

看到这篇文章标题,很多人先想到的案例应该是:Lightspeed 的 partner 的女儿沉迷于一个阅后即焚的奇怪的成年人完全不理解的 app,后来 Lightspeed 投资了这个 app,今年这个 app 背后的公司上市了,股票代码 SNAP……

Expiring vs. Long-Term Knowledge

有的知识是经得起时间考验、几十年后依然适用,比如是读好书后得到的知识;而现在我们汲取的很多信息都很有时效性,几个月甚至几天后就没用了。

2017/06/06 第 932 期

无我编程的十条戒律 (archive)

这是 StackOverflow 联合创始人 Jeff Atwood 注释的十戒。程序员普遍有很强的 ego,都应该看看本文,打印下来时刻提醒自己:)

这十戒是出自 1971 年的经典书 The Psychology of Computer Programming,字字珠玑。虽然技术日新月异,但这些对人性的观察确实经得起时间的考验。"Critique code instead of people – be kind to the coder, not to the code."

或许你不需要 Growth Team

Growth 应该是全公司所有人的责任,如果有独立的 Growth Team 的话,其他部门的人就会认为既然有独立的 team 了,那么 growth 就不关我事了。

Growth 与 DevOps 一样,是一种文化,全公司都要认同,不是一两个人的事。参考昨天推荐的 DevOps 是一种文化,不是一个职位:做运维求稳,做产品求快,而做 Growth 就更是要快上加快,这些如果不协调好,会有严重冲突的。

Yelp 是如何无损压缩图片的 (archive)

Yelp 有一亿张用户上传的图片,经过一系列手段进行压缩后,平均缩小了 30%,节省了存储空间与带宽,这为公司省钱(省下来的钱能赏给这些工程师吗~),让客户端加载图片更快,用户体验更好。

没有什么高深的算法或需要特殊的硬件(如超强力 GPU),文中提到的那些手段大家都可以很方便应用到自己的项目里。

Stop trying to‘be original’and be prolific instead (archive)

创意工作者要做出极少数让世人记住的创造性的、牛逼的东西,得先以量取胜,毕竟他们自己也不知道哪个作品是能红的:)一人一首成名曲的背后是无数鲜为人知的作品。

Real Businesses

创业时什么情况下真的需要向风投们融资?

  1. 需要大量前期投资的高科技领域;
  2. 打持久战但赢者通吃的领域。

现实是,太多创业公司把融资当成他们唯一的商业模式了:

不融资、不随波逐流、不想上市或被收购,那还叫创业吗、有可能能做大吗?

不融资、不上市、有个性、且赚钱的典型案例:In-N-Out(若你在加州生活过,你应该知道我在说什么:)

以及 Craigslist(每年净赚 $3 个多亿,40 多个员工)

2017/06/07 第 933 期

Minimal, Complete, and Verifiable example (archive)

简称 MCVE。这是来自 StackOverflow 的官方帮助页面,指导那些代码有问题想来提问的人如何问出好问题:贴出完整的最小的可检验的代码片段。

必要的时候就应该学 Facebook 那样抄袭 Snapchat

Facebook 全面实现了 Snapchat 的 Story 功能,如果这能吸引年轻用户、提高用户活跃度,有什么错呢?作者在本文中反思了自己的公司因为没抄袭竞争对手,错失大好机会。

到底谁是原创的,还真不好说,尤其是在互联网时代。为何所有社交产品都有类似 Newsfeed、点赞按钮、主题标签、@ 某人?能弄清楚到底是谁抄了谁的?Instagram CEO 正面回应了“抄袭”Snapchat 的问题:第一家把汽车做成四个轮子的公司一定很郁闷,其他汽车公司怎么都抄我的呢?

Jobs to be Done (archive)

思考产品的框架:

一个人有问题需要解决,这就相当于创造了一份工作;

有个产品正好能解决这个问题,就相当于胜任了这份工作;

于是那个人就聘请了该产品来做这份工作。

昨天 Recode Decode Podcast 采访 Instagram 创始人 CEO 时,他也提到了这个框架,每个产品功能都是要让用户聘请来完成一份工作的。

比如麦当劳的奶昔做了两份工作:

  1. 为早上匆匆忙忙上班的人提供很方便的边走边吃的早餐;
  2. 为下午早早放学的孩子提供零食(美国小孩放学都很早,离晚饭还有几个钟头)。

Help Vampires: A Spotter’s Guide (archive)

这篇 2006 年的文章描述了在网上各大技术论坛里常见的一种生物,俗称“伸手党”(本文以吸血鬼类比)。如何识别伸手党?如果你是伸手党,怎么办?如何改造、挽救伸手党?

更快,更好,更便宜:软件开发的艺术 (archive)

本文给自己不会写代码却要管理程序员的那些人扫盲了一下软件开发的基本常识,为何软件开发工期难以估计、为何开发速度那么慢、为何程序员要“浪费”时间写测试以及 code review?

如果能让程序员亲眼看到用户遇到的难题、亲眼看到用户如何使用自己开发的软件,或许程序员们干活就比较有动力。但公司总是避免程序员与客户接触,害怕程序员不会说话、做出愚蠢的举动、让公司在客户面前丢脸。好吧,你至少让程序员跟客户握个手、然后静静地坐在旁边观察,这样总可以吧?

2017/06/08 第 934 期

Reach Navigation

单手操作手机主要靠拇指,随着大屏手机的普及,拇指能触碰到很小的一部分屏幕。App 的 UI 设计中,尽量别把关键的功能按钮放到顶部的 Navbar。文中给出了一些方便拇指 reach 到的导航设计。

我很喜欢 iOS 上 Quora 与 Overcast 那种卡片式的页面设计,拇指在卡片底部拉一下就能关闭。

独家采访 Netflix 的首席内容官 (archive)

Netflix 在好莱坞的办公室有 1 千个员工,原创内容火力全开啊。不用担心内容太多、观众看不过来,因为不同人的口味都是不同的,内容多了才有得选。

象牙塔里的软件开发

不要让工程师们长期在封闭的环境里开发,要让他们接触到会动、会说话的活的用户,否则工程师们都以为用户与自己一样都是身体健康、耳聪目明的电脑高手,并能秒懂自己优美的代码实现。

真实故事:两个月前我们做了个 app,然后在一个线下活动推广,主要人群都是 50 岁以上;很多人老花眼,iPhone 字体调的很大很大,我们 app 的 UI 一下被那么大的字体撑开,彻底凌乱了。要不是亲眼所见,我还真不会想到要测试这种大字体的情况。

贵公司不是 Google (archive)

有些人读了 Google 的 GFS、MapReduce、Spanner 以及 Amazon 的 DynamoDB 的论文后,都头脑发热、觉得自己刚成立不久的公司不能再使用关系数据库了,太 low 了。

Amazon 在员工达 7800 人、年销售额 $30 亿的时候,才开始推行 Service Oriented Architecture。贵公司几个人运营的、主要商业模式是拉风投的 CRUD app 难道就非得整成大规模分布式系统?

读大学的投资回报率 (archive)

读大学是一种投资,值得吗?

两个选项:

  1. 不读大学,直接工作,起薪低,但把本应读大学的花费拿去做投资;
  2. 读大学四年,光花钱没收入,毕业后工作,起薪高。

20 年后,哪个选项回报高?

正好国内在高考,很应景。

我在大学里没学到太多课堂的知识,大学同学也联系的不多,读大学带给我的唯一好处就是给我提供了一个离开家乡的理由与机会,然后越走越远,从而不会去过家乡的亲戚朋友那种一眼就望到头的人生。

2017/06/09 第 935 期

硅谷最重要的篮球比赛

通过对 a16z 的 partner、硅谷老战士 Jeff Jordan 的报道,让我们窥探了硅谷的精英的社交场所:斯坦福篮球场。想往上爬的年轻风投、年长的亿万富豪、以前的大学运动员、公司高管等各色人物。

传统的商业、名利圈子里(或在电影里,如无间道)常能看到那种想往上爬的年轻人与大佬们会一起打高尔夫球。这种场合在硅谷就变成了篮球场,难道是因为勇士队这几年比较猛?NBA 球星很多都在做风投,硅谷的风投们也喜欢附庸风雅与球星们交往。

文中提到的去斯坦福打篮球的活动里,金州勇士队老板(本职工作就是风投)就是常客。

Swallow your developer’s pride and just do stuff (archive)

很多开发者背着各种编程“最佳实践”的沉重包袱,不敢或不屑于用快糙猛的办法去解决实际问题,不懂变通。

如何写好 UI 上的文案 (archive)

“Personality doesn’t matter as much as you think”,很多网站、app 的文案故意装可爱、不说人话,以为这很有个性,其实很蠢。

通过 OCW 自学成才的案例 (archive)

他父母不支持他学习科学技术、不给他读大学提供学费,他离家出走、通过 MIT 在线公开课(OCW)自学数学、计算机科学的课程,最终进入 Google。

公开 Coinbase 的公司战略 (archive)

真是一篇绝佳的 CEO 范文。分四步走:

  1. 成为比特币投资平台,吸引散户;
  2. 吸引专业投资机构;
  3. 成为在线支付网络;
  4. 或投资、或合作,激发各种现代化金融应用的创新。

最终是想成为网络,但没有人用,怎么成为网络?所以先从比特币投资(投机)入手,吸引想发财的人过来用,正所谓先成为工具、再成为网络。

月活用户达 1 亿后进入第二阶段,吸引专业投资机构,日交易额达 $50 亿后进入第三阶段。

每月达到一亿个用户进行交易,进入第四阶段。

把自己公司的战略这么清晰地描述出来,不怕被竞争对手抄袭吗?

2006 年,有个人也把自己公司的战略写了出来,在文章结尾特别叮嘱大家:千万别告诉任何人:)

后来这家公司股价表现非常非常非常不错。你猜到是哪个人、哪家公司了吗?

2017/06/11 第 936 期

PayPal Mafia 如何定义硅谷的成功 (archive)

PayPal Mafia 有 220 人左右,却成立了许多市值 $10 亿以上的公司。PayPal 创业的过程十分艰难,用尽各种招数、九死一生,这帮人出来创业尽管做的东西千差万别,但很多路数都是与当年 PayPal 相似的。

LinkedIn 的 viral marketing 鸡贼手段、YouTube 允许用户在网页内嵌视频,这些招数 PayPal 当年都用过了。作为对比,Google 与 PayPal 同一年成立,Google 的发展顺风顺水,但大家能记得起哪几家十分成功的公司是 Google 前员工创办的吗?温室里的花朵。

如何向大公司兜售你的软件 (archive)

个体户开发者的销售技巧。大公司官僚机构里是如何采购软件的?他们为啥不去买成熟公司做的软件、而要去买你这种个体户做的软件?如何抓住机会向客户多收点钱?

你打电话到成熟的公司,与你通话的是满嘴跑火车的、领固定低薪的、多你一个少你一个无所谓的、远在印度的客服;而你打电话给个体户开发者,与你通话的是十分热情的、十分迫切想赚你的钱的、愿意付出一切的、这个软件的开发者。

The Life-Changing Magic of Tidying Up Code

极限编程之父 Kent Beck(现在 Facebook 工作)分享清理代码的心得:悠着点,别太较真,发现自己被带进坑里了就赶紧 revert 代码,别纠缠了。

如何在 App Store 上月赚 $8 万 (archive)

做一个简单的 app、巨额付费订阅、狂做 App Store 搜索广告,总有那么几个不幸的用户不小心用指纹解锁付费,然后每个月都被收巨额费用、而不知道如何取消。

这种诈骗型 app 竟然能通过 App Store 的 review,而我们这些正经的 app 却屡次因为一些无关紧要的小事被拒,这其中有没有腐败现象?有没有?!

Etsy 是如何压缩图片大小的 (archive)

所有图片都转化成 jpeg,有损压缩,不断降低图片的 quality,用 dssim 对比图片是否已经模糊不清了。最终在牺牲一点点图片质量的情况下,压缩了 25% ~ 30% 的大小。

可以对比一下 Yelp 压缩图片的方法。

2017/06/12 第 937 期

青少年在社交网络里的秘密生活 (archive)

人在互联网上的表现都是对现实生活的反映。青春期唯一重要的事情就是爱面子、渴望被关注,而且叛逆、爱与父母做对(而父母又喜欢管你)。这些都反映到了青少年对社交网络的使用上。

文中提到一种青春期女生使用 Instagram 的很普遍的做法,创建两个账号:,一个“真”账号,有大批粉丝、专门分享精心拍摄精心修图美轮美奂的照片;另一个是“假”账号,小圈子、真实朋友圈,分享比较真实的或许没太修过图的照片、表现自己真实的想法。

如果你在十几岁的时候有现在这些社交媒体,你会怎么使用?如果你的小孩十几岁了,你该怎么引导他们“正确”使用互联网(肯定是很头疼的问题)?

Why Apple is struggling to become an AI powerhouse (archive)

Apple 曲折的人工智能之路:

  1. 有底线、保护用户隐私数据,智能起来比较缓慢;
  2. 神秘兮兮、很少对外发表研究成果,难以吸引学术圈 AI 人才。

与其给自己设定目标,不如养成好习惯 (archive)

设定目标:达到目标后就懈怠了(如达到减肥目标后就不锻炼了)、心理负担大容易半途而废。养成好习惯:每天完成一点点、没太大心理负担。

6 个月学一门语言(目标)vs 每天练习 30 分钟(习惯);一年读 50 本书(目标)vs 随身带着书、每天读几页(习惯);一年内写一本书(目标)vs 每天写 250 个字(习惯);一个月内做一个网站(目标)vs 每天写一小时代码作为消遣(习惯)。

搭 Microservice 最难的部分:数据 (archive)

多个 service 是各自用一个数据库好、还是共用一个数据库好?答案永远是 it depends。根据业务需求的不同,方案当然也不同。

内容为王 (archive)

这篇 1996 年的文章提出了“Content is King”,作者是著名程序员与慈善家 Bill Gates。他认为互联网会像电视产业一样,生产内容的人最终会比生产设备的人赚更多钱。

生产内容的人在互联网上如何赚钱?广告虽然讨厌,但长远来看,网速快了、广告加载速度也快了、广告形式新颖起来,人们也就习惯了;付费订阅或许可行,但当互联网上的支付手段发展到一定阶段,可以进行小额打赏。这是 1996 年的观点,21 年后的今天回头再看,感觉如何?

2017/06/13 第 938 期

网红们的幽灵写手

很多网红都有专门的公司在商业运作,都需要包装的。幕后的幽灵写手们帮网红构思照片的创意、创作状态、撰写博文,都不容易,这是一份工作。

对于 WWDC 2017 的一些想法 (archive)

微软 Windows 部门的前 VP、a16z 现在的 partner Steven Sinofsky 在参加完今年 WWDC 并使用了一周 iOS 11 与 High Sierra 后,点评今年 WWDC 宣布的各种东西。

30 岁,成为初级程序员

转行女程序员的自白。往往会发现旁边的人都比自己年龄小,发代码给比自己资历深的小同事们 review 时的惴惴不安,下班后积极参加 meetup、周末参加 hackathon。

硅谷的房价、股价、比特币

APPL:5 年前 Palo Alto 平均房价相当于 16,555 股 APPL,今年则需 16,566 股,涨幅相当。GOOGL:5 年前 4,780,现在 2,592。FB:5 年前 44,412;今年 16,598。

比特币:2012 年,260,149 个比特币买套房;今年“只要”892 个。这些对比能说明什么?

Nobody at Yahoo understood Tumblr (archive)

Tumblr 前员工:“在雅虎工作,就像一群很酷的青少年与一帮老年人在一起玩。”雅虎在 Tumblr 上强行推广告,广告的 targeting 极差,“向青少年网民卖人寿保险?!”

今天通过朋友介绍认识了个 designer,他现在家里接散活、每小时收费 $250;他几年前所在的几个人的小创业公司被雅虎收购了,那会儿运气好,正赶上 Marissa Mayer 疯狂大采购各种 app,不错,相当于赚了一套房。

2017/06/14 第 939 期

从我的 app 达到三百万下载量学到的经验教训 (archive)

不是那种一夜成名的故事,而是非常实在的经验分享。2011 年 1 月份开始做,从很长时间没人用、到每天几千下载量。“一个只有免费用户的产品仍然比没有任何用户的付费产品要好。”

最初做这个 app 的时候,他投入了 500 个小时进行设计与开发。app 刚上线他采用付费下载的模式($1),几周下来没啥人下载,很委屈,自己花那么多时间做的 app 大家都不愿掏 $1 来买。后来索性改成免费下载、付费升级,下载量从几十到几百缓慢增加。向已有用户收费就容易多了。

增加用户转化率的框架

分析网站首页的 UI 设计,判断新用户访问后有没有可能被“转化”成注册用户。新用户感兴趣的程度有个起始分数,网页每个 UI 元素要嘛加分、要嘛减分,看最后总得分高不高。

Nostalgia, Gratitude & Optimism (archive)

今天 Verizon 正式完成对 Yahoo 的收购,Marissa Mayer 也辞去了 CEO 职位,这是她今天发给 Yahoo 员工的邮件。回顾她任 CEO 这五年来的成绩,算是对得起用户、广告商、股东、员工了。

尽管媒体对她一点都不客气,但换谁坐她那个位置,都很难做得更好了(况且雅虎也找不到更好的人了)。手中的牌本来就不是很好;要想伟大复兴,难。

天使投资与风投的区别

向天使投资人融资,就像跟你爸的大学室友打交道一样,没压力,很轻松;而向风投融资,就像做直肠指检,对方把手指伸进你肛门、要检查彻底,你是各种不爽。

在 Google 停车场住了近两年,存下 80% 的收入 (archive)

在存款还剩 $50 时得到一份 Google 的工作。后来夫妻两人住在 RV 里,车停在 Google 停车场,从公司餐厅带饭回家俩人分着吃。存了一年半的首付,买了 $53 万的房子。

这个视频里可以看到这辆 RV 的内部,空间利用挺合理的,不错。你是不是觉得这个故事在哪里听过?那是因为还有其他人住在 Google 园区里,基本上都能有媒体报道,这样的报道很多。

2017/06/15 第 940 期

不懂技术的经理如何知道工程师是否在做无用功、或是在胡说八道 (archive)

所谓的 bullshit detection。我们都不可能是通才,有时候与其他领域的“专家”做生意、打交道,都需要通过问一些问题来检验对方是否在 bullshitting。

Podcasts, Analytics, and Centralization (archive)

Podcast 上做广告很难,因为广告商很难知道多少人实际听到了自己的广告。Apple 的官方 podcast app 是市场份额最高的(50%),但也直到最近才开始“有所作为”。

要了解 podcast 生态的现状、盈利的难点,推荐大家听 Acquired 的这期 podcast:Midroll + Stitcher (acquired by Scripps)

截屏

截屏功能是手机上很常用的,那些明星在社交网络上发表声明的时候,经常都是在记事本敲一段文字、然后截屏分享。iOS 11 让截屏、修图、注释、分享这一流程变得很方便。

思考一下还有哪些截屏相关的产品 idea 可以做的?

不用花太多钱就能制造假新闻 (archive)

其实本文描述的就是大家熟知的“水军”,有专门的机构接这种活。就像做广告一样,发动一次次的 campaign,或手动或自动地在社交平台点赞、分享,假的都能变真的。

iPhone 神秘的诞生故事 (archive)

当时 iPod 销售占 Apple 收入的 50%。公司里俩团队同时做手机:一个是“能打电话的 iPod、跑 Linux”;一个是“触屏版的 Mac OS”。时间紧任务急,不少人因参与该项目婚姻亮红灯。

2017/06/16 第 941 期

The 5 Laws of Software Estimates

估计软件项目需要多长时间才能做完是有必要的,估计得不准是很正常的,估计准了才不正常。现实往往是我估计完项目工期,但实际做项目的人却是别人,所以肯定不准。

The Road to Burnout is Paved With Context Switching (archive)

开始做 manager 后会觉得很烦,因为琐事很多、太多的 context switching,不再像做 maker 那样能集中大块的时间做东西。本文作者的时间安排可以借鉴:一周五天,每天只做一种主题的事情。

The App That Does Nothing (archive)

很多时候刷手机并不是为了获取实质的信息,而是因为无聊、手里必须得抓个东西、手指得动起来。Binky 是一个假的社交 app,内容都是假的,你能点赞、能回复,满足你刷手机的快感。

Instagram 顺利迁移到 Python 3 (archive)

前后用了约 10 个月的时间进行迁移。用两三个月修改代码、替换掉不兼容 Python 3 的 package,用两个月单元测试,用四个月缓慢地 rollout。

迁移到 Python 3 后,程序性能颇有提高:uwsgi/django 比较不吃 CPU 了(-12%),Celery 比较不吃内存了(-30%)。

NBA 的虚拟现实战略

大部分的 NBA 球迷这辈子恐怕都无法现场看球,而在前排、场边近距离看比赛的更是少之又少(硅谷身份象征之一:勇士队季票持有者、总决赛前排)。VR 让广大球迷身临其境。

今年总决赛勇士队夺冠后,各社交媒体上各路风投、公司高管纷纷晒照片(或被 @),都坐在前排,很容易被照进电视镜头里。

2017/06/18 第 942 期

采访 Winnie 的创始人 CEO

很励志的故事。Winnie 是帮助带娃的家长找到对小孩友好的户外场所的 app。创始人 CEO 困难的创业开局模式:带娃 + 老公得癌症。后来公司走上正轨,老公癌症也治好了。

“If I can create another human life and be responsible for its survival, then surely I can start a company!”--“我能造人,当然也能造公司!”

54 Screwups as a Startup CEO

来自 CB Insights 的 CEO 的“自我检讨”,反省自己在创办、管理这家公司的过程中各种做得不够好的地方。其实每个人每隔一段时间都应自己书面检讨一下,帮自己进步。

红杉资本投资 YouTube 的备忘录

这份文档有相当的历史地位,很不错的学习材料:红杉资本在为 YouTube 侵权案辩护时候出示的文档里,包括了当年投资 YouTube 时的备忘录,解释、分析了为啥做这个投资。

直接跳到第九页开始看:YouTube 的使命、解决的问题、解决方案、竞争对手分析、市场分析、盈利模式、为什么决定要投 YouTube。不管是创业者还是投资人,都能从这个文档里挖掘到有价值的信息的,推荐大家看一下。

创业没有合伙人的好处、坏处、建议 (archive)

以 Y Combinator 为代表的创业加速器们、创业导师们都强烈建议创业时要找一、两个合伙人。若真的从小没认识志同道合的人、没有牛逼的同学 / 同事、找不到创业合伙人呢?难道就真没法创业了?

没有创业合伙人当然也有能成功(而且是巨大成功)的案例。或许会更难(因为孤独、没人共同承担风险、没有相关技能等),或许会更容易(做决定更果断、不会因与合伙人闹翻而公司倒闭等)。具体情况具体分析。身心健康都最重要,要锻炼健身、健康饮食,必要时找心理咨询师也要舍得花这个钱。

UberEATS 团队是如何做设计的

UberEATS 在全球超过 80 个城市有业务。每个季度,他们的设计师就去到一个城市调研(顺便吃,吃,吃),采访司机、餐厅里的人、食客,观察他们如何使用自己做的产品。

这份公费旅游的工作不错,城市深度游,适合吃货(以及那些对 Uber 各种负面新闻免疫、坚信 Uber 光明前景的人)。

2017/06/19 第 943 期

白板面试 (archive)

对公司来讲,白板面试很容易错过好的程序员,但招来很烂的程序员的概率比较低。错过了好程序员无非就浪费了公司几小时的时间,而招到烂程序员对公司的损失就大得多。

对程序员来说,除非很有理想很有抱负自己做个体户、创业、找规模很小的不知名公司,一般找工作还是得老老实实刷题搞白板面试。做开源项目、写博客、做网红等活动或许能给你带来面试机会,但很难绕过面试流程直接给你 offer 的,只能是作为敲门砖。

How To Ask Questions The Smart Way (archive)

这是编程世界里经典的一份文档,教程序员们如何在网上有礼貌地、合理地向别人提问。但提问前,千万要自己先做足功课:搜索、读文档、读代码等。

每个人的生活都很忙,你问的问题肯定不是世界上最重要的事,别穷追不舍地逮住某个可怜的网民要求对方几分钟内立刻给出答案 -- 很遗憾的是,这种事常有发生,人到了网上很容易就失去了生活中基本的礼貌与素质。

Actions, not words, reveal our real values

你说你真的想做某事,但其实你并不想,除非你已经开始做了。“If they really wanted to do it, they would have done it.”

7 Rules for REST API URI Design (archive)

给东西命名是很难的。设计 URI 就是在命名,关键是命名规范要 consistent。

如何读懂别人的代码 (archive)

在程序员的日常工作中,读代码的时间永远比写代码的时间要长得多得多。去理解别人写的代码并非易事,首先得摆正心态,别指望一遍就能读懂;最好能找到 main 函数、设断点一步步执行代码。

2017/06/20 第 944 期

Amazon 的新客户 (archive)

这篇是我这几天来一直期待的分析 Amazon 收购 Whole Foods 的 Ben Thompson 的文章,果然没让我失望:)Amazon 在下一盘大棋。

Amazon 终极目标、战略、战术,层层铺开。终极目标:向一切经济活动“征税”。两大战略:使用 AWS 的公司们业务做越大,交税越多;成为 Prime 会员的老百姓,每年定期交税。战术:先卖书、再卖可以长期库存不变质的东西、然后卖容易变质的生鲜蔬果类。

买下 Whole Foods 后,立刻有了一大批生鲜蔬果类高端客户。此时,Whole Foods 实体店就是用户界面,在保持用户界面不变的情况下,把后台重构成模块化的 microservice(物流中各个步骤模块化起来),然后上线另一套用户界面:网站、app、电商界面,使用之前重构好的 microservice。

Positioning Your Startup is Vital — Here’s How to Nail It (archive)

提供了如何做 positioning 的完形填空模板,以及阐述了三种给产品命名的套路。

For (target customer)Who (statement of need or opportunity),(Product name) is a (product category)That (statement of key benefit).Unlike (competing alternative)(Product name)(statement of primary differentiation).

硬件是新的软件 (archive)

点评 HotOS'17 的一篇来自 MSR 的短文章。CPU 主频基本不再增长了,Intel 该如何卖 CPU?从指令集上做文章,加入新的指令,一些软件功能做进硬件里。

Should Startups Care About Profitability (archive)

答案是:It depends。一般 growth 与 profitability 只能选一样;风投更在意的是 growth,要搞就得搞一把大的。路边小卖部一开始盈利,只是做不大而已。

为什么公司应该允许员工去参加技术会议、并报销费用 (archive)

如果员工去参加会议时学到了知识会不会更容易跳槽?会不会在参加会议时勾搭上其他公司然后跳槽了?注册费很贵、会不会很浪费钱?碰到这么小肚鸡肠的公司还是尽早走人吧。

允许员工去参加会议、并给报销,显示出公司对员工的信任,对员工追求进步的支持;也是一种投资,员工增长了见识,还把贵公司的品牌传播了出去。作为员工,如果公司不支持、不给报销,每年也应该自费去参加一两个好的会议,投资自己的成长。

2017/06/21 第 945 期

Apple 与公司内部泄密者的战争 (archive)

Apple 的中国工厂的工人用尽各种办法把零部件带出工厂,主要为了钱;公司总部员工也会泄露消息给记者、博客,往往是为了炫耀或愚蠢而不小心泄露的。

本文的内容是基于从 Apple 内部泄露出来的一份录音,很讽刺啊。

开发者们能从 oncall 的经历里学到什么 (archive)

当代互联网公司开发者们往往都要轮岗 oncall 了。通过 oncall 的经历,能了解哪些地方容易出错、以后自己的代码里应如何应对(错误处理、监控、logging 等)。

文中还讨论了其他 oncall 经历里能学到的东西,自己看文章。我补充一个文中没讲的:通过 oncall,你能认识一些之前没说过话的同事,或许能成为革命战友(比如半夜一起救火、其乐融融),也可能认识了后互相厌恶(比如互相推卸责任、互相抱怨等)。

如何知道你自己是不是一个好的 manager

文中给出了问你的下属的 12 个问题,看看他们怎么回答的。或者你也可以自己回答一下,判断看看你的上司是不是一个好 manager。

“Do I have a best friend at work?”思考一下,一个好的 manager 怎么能影响你是否在工作中有 best friend?

有时候要故意让产品变得难用一些

产品做得简单易用有时会带来不好的后果:Slack 容易使用,导致别人发的消息太多,很烦;成为自媒体、快速散播消息,导致假新闻泛滥;社交媒体太容易注册一个新账号,招来太多机器人与网络暴力。

湾区日报本身就是很难用:推荐的文章是英文写的,过滤掉了不愿意读英文的人;推荐的网页很多是被墙,又过滤掉了不会翻墙的人。最后剩下的读者整体素质应该会比较高,无理谩骂、恶意攻击的现象就比较少。所以“难用”并不是一件坏事。

2017/06/22 第 946 期

初级工程师进阶指南 (archive)

找个 mentor、与人交流(线上社区或线下的 meetup)、多阅读、做 side project、有意地培养 soft skills(表达能力、与人打交道的能力、团队协作等)。

与具体编程、写代码无关的 soft skills 往往是区分优秀的工程师与普通工程师的最重要的因素。

写给创业者的招聘终极指南

在创业初期公司没名气、没钱,招人是一件极其困难的事。本文是一个非常详细的值得收藏起来的招聘指南。先想清楚需不需要招人,能不能只找 contractor(时薪高、但不用买保险、给股权)?

NDA 崇拜 (archive)

本文写于 2003 年,但吐槽了一种至今仍挺普遍的现象:创业公司才开始做没多久,就神神秘秘地,要让所有接触过的人(应聘者、风投等)签 NDA。所有真正应该保密的东西都别告诉外人,有必要告诉外人的就没必要保密了。

你的创业公司能成功,靠的不是你的绝世 idea。关键还是运气与执行力。尽管很多人成功后会总结各种成功经验,但不可否认,运气的成分是很关键的,甚至是最关键的。正确的时间、正确的地点、做了正确的事。

Can the Internet Be Archived (archive)

Internet Archive 立志成为当代的亚历山大图书馆,存档整个互联网。网页的寿命一般都很短,平均 100 天左右。现在他们存档了近三千亿个网页了。

Internet Archive 的创始人 Brewster Kahle 也是 Alexa 的创始人,上世纪互联网泡沫时卖给 Amazon 后着实发了一笔,所以后来能自己出钱做有理想的、非盈利性质的 Internet Archive。其总部是个教堂(当初买下这个教堂是因为长得与他们的 logo 相似),到旧金山旅游的可以去参观一下。

我的 Uber 司机拿走了我的背包,我把 Uber 告了并胜诉了 (archive)

送达目的地后,作者下车从后备箱里取行李,一不留神 Uber 司机将车开走了,装有价值约 $4 千刀物品的背包落在车上,怎么也联系不上司机;把 Uber 公司告上法庭,Uber 不是很配合、拒不提供司机信息;索性最后法庭判 Uber 赔偿 $4 千,但前后折腾好几个月。

以后大家遇到类似情况,可以学着本文作者的做法收集好证据、拿起法律武器、让自己的损失降到最低。

2017/06/23 第 947 期

Exec Comms: You have to practice

公司高管给 talk、接受采访,看上去普遍口才很好,这都是要下功夫、花时间去练习的,接受反馈、不断迭代。练好演讲(忽悠)也是创业过程的一个必修课。

Engineering a culture of psychological safety (archive)

成功的工程团队最大的特点是具有 psychological safety。新人容易融入团队、敢发表意见、出故障了能对事不对人地分析。

文中最后提到他在 Google 工作时的经历:在经历了一次生产事故、加班加点救火后,带领全组喝酒庆祝这次失败;因为正是这次事故,让大家对整个系统的里里外外有了充分的理解,几天时间学到的东西比几个月学到的要多得多,所以应该庆祝;每个人轮流在白板写下学到的东西,每写一个,大家举杯庆祝一次。

Netflix 的公司文化 (archive)

最新版的、文字版的、著名的、经典的 Netflix 公司文化:)无须多解释,当成范文读吧。

"You only say things about fellow employees that you say to their face." 有多少人能做到这点?

以前推荐过旧版的 Netflix 公司文化幻灯片:“硅谷有史以来最重要的文档”

Cryptocurrency 的淘金热对 Nvidia 与 AMD 的影响 (archive)

GPU 是挖各种 cryptocurrency 的利器;但矿工们大量买入廉价 GPU,搅乱了市场、哄抬了价格,GPU 正儿八经的用户游戏玩家们就难以用正常价格买到。

Cryptocurrency 的大热直接或间接导致 GPU 厂商 Nvidia 与 AMD 的 GPU 更好卖、而且对股价也有正面影响。但是,如果 cryptocurrency 的泡沫破灭了呢?

爆料:投资人试图对女性创业者潜规则 (archive)

六个女性创业者出来爆料(其中三人实名,都是亚裔):Binary Capital 的联合创始人 Justin Caldbeck 对她们咸猪手、发暧昧短信、见面时直接提议去酒店。

The Information 最先披露此事,要付费订阅才能看到全文,所以改分享这篇不用付费的 Pando 的文章。The Information 描述得比较详细,底下的评论还有人补充说该风投人品不咋地,一面假装要投资他们公司、一面又极力游说他们公司的主力开发人员跳槽到他投资的另一公司。

2017/06/25 第 948 期

一个给 iOS App 瘦身的奇怪的窍门 (archive)

Halide 是最近很红的 iOS 照相机 app,大小只有 10.4 MB。瘦身窍门?用户至上。专注于简单实用的功能、尽量少用第三方库、不做 A/B 测试、不追踪用户使用数据。

团队只有两人:一个是前 Apple 设计师,一个是前 Twitter 工程师(本文作者)。他们这个 app 有 15,000 行 Swift,没有依赖任何第三方 library;认清现实,这个 app 盈利模式就是付费下载,主要靠良好口碑驱动用户增长,盈利不靠广告、也不急于高速增长,没必要采集用户使用数据。

使用 serverless,每月托管费用从 $10,000 降到 $370 (archive)

用 JavaScript 重写系统,放在 AWS 的 Lambda 上跑,使用 API Gateway 做缓存、减少 Lambda 上的调用次数。

新常态:你的医生在网上挖掘你的个人信息 (archive)

尤其是心理医生,会监控患者的社交账号的发帖情况、通过搜索引擎找关于患者的信息,通过这些信息挖掘出患者自己不会说出、或者描述不清的症状。

但说好的个人隐私呢?

极端的例子:

  1. 医生发现你在社交账号上表现出自杀倾向,然后通知警察去你家破门而入;
  2. 患者懒得跟医生说话,“反正我的信息你在网上都看得到,自己去网上看”。

小公司 CTO 的成长之路 (archive)

Zapier 的创始人 CTO 以自己的经历谈小公司 CTO 技能树的进化之路,真的就像玩游戏获得技能点后得决定往哪个方向进化,毕竟时间精力有限,侧重技术或是侧重管人。

团队里人多了起来后,沟通就很困难。你不能假设每个人都知道你在想什么、记得你说过什么、理解为什么要这么做。Over-communication 很有必要,同一件事、同一句话对不同人要反复说,甚至对同一个人在不同时间点也要反复说,虽然很烦,但要想确保统一思想,只能这么做。

在大学里用 Python 与 Twilio 做选课外挂 (archive)

来自 Twilio 的营销文章。大学里热门课程很难选上;写程序定时去选课网站监控某热门课,一有空位(如有人退课)及时短信通知。

其实这还不算“选课外挂”。十几年前我们读大学时的选课外挂比较简单暴力:shell script 一行流 + cron job,一有空位直接自动选上;有时候挂一下午,就能选十几门课;当然,最后都要及时退掉不想上的课,不然麻烦就大了:)

2017/06/26 第 949 期

On Starting a Software Business (archive)

很多人想辞职创业,但都不敢行动;虽然有存款能撑一段时间,但立刻就没收入,心里还是会怕的。作者以自己的经历讲了自己创业的时间轴,可以作为参考。

Candy Japan 的创业故事

他是计算机专业的芬兰人,到日本做交换生两年,然后在日本定居。2011 年开始做 Candy Japan,每月付费订阅、寄两盒糖果;订阅用户 600 人,每月赚 $1.5 万,生活很惬意。

如果公司用面试程序员的方法来面试翻译员 (archive)

文中八股文式的谈话内容、钻牛角尖的与实际工作没啥关系的问题、白板面试的套路,程序员们应该都很熟悉。期待更多“用面试程序员的方法来面试 [填入任何工种]”主题的讽刺文章:)

不是程序员的人可以看看此文,如果用这种模式来面试你现在的工作,感觉如何?

The future is emotional (archive)

机器、算法可以(或即将)自动化很多工作;那人类还能提供哪些价值?可以在需要服务其他人类的工作中提供“emotional labour”,提供同情心、人性的东西。

比如某人得癌症了,AI 诊断后说“治愈的可能性是 5.7%”;而人类医生会说“别灰心,某某名人跟你一样的癌症、上个月治好了”,然后人类医生与病人唠嗑三个钟头。人类与机器的分工不同。

Chrome 与 Firefox 官方浏览器的 headless 模式是滋生病毒的温床 (archive)

这该如何是好:小明在愉快地安装完某邪恶公司的全家桶后电脑中毒了,浏览器自动启动 headless 模式,在没有开启 GUI 的情况下自动用小明的微博账号转发小广告。

2017/06/27 第 950 期

美剧 Silicon Valley 的“Not Hotdog”app 是如何做出来的 (archive)

这是一篇非常技术性的文章,说实话,大部分内容我是看不懂的。一个人用 React Native、TensorFlow 与 Keras 断断续续做了几个月,识别图片不需联网、手机离线就能识别。

用 Macbook Pro 外接 GPU,用 80 个钟头训练 15 万张 hotdog 与非 hotdog 的图片。使用 CodePush 绕过 App Store 的审核直接更新 app 里的 model。一开始的原型是用 Google Cloud 的 Vision API 做的,识别效果不好、而且如果这个 app 红了就要付很多钱给 Google(后来还真的红了)。

Mint 创业初期用户增长的手段 (archive)

2006 年注册公司、2007 年 9 月上线、2009 年 11 月以 $1.7 亿卖给 Intuit,当时用户数“才”150 万。Mint 用户价值比较高,毕竟都把自己银行账号绑定、并给出了平时的消费记录。

这是一个成熟的有经验的创业团队,从产品上线到用户增长,都相当有策略性。在写代码之前、验证这个 idea 就花了几个月时,去火车站拦住路人问卷调查;内容营销、SEO、社交网络等用户增长的手段都不新鲜,但执行得相当不错。同一个概念不同的人来操作,效果会差很多的。

新的线上服务的用户增长变得越来越难了 (archive)

移动互联网基本饱和,最大的那几家公司主宰了用户的所有注意力;用户变聪明了,在他们面前展示广告、他们当做没看到;如今的大公司不像以前那样又笨又慢,他们抄袭速度巨快无比。

科技圈是有周期性的,每个周期结束时都有一堆五花八门的领域出现,希望能从当前拥挤的某个平台里杀出一条血路、在新的平台里崭露头角。看样子今年差不多也是移动互联网这个周期的结束,VR、AR、比特币、无人驾驶车等五花八门。

在我的网站禁用 AMP (archive)

AMP 页面直接被手机版的 Google 搜索结果缓存,打开超快,这是好事。但是,如果网页有对应的 AMP 版,分享到 Twitter、其客户端会强制打开 AMP 版(阉割版的网页),很不爽。

我也注意到了,最近湾区日报的 AMP 版网页访问量变大了,原来是 Twitter 搞的鬼。分享正常版的网页到 Twitter、从 Twitter 客户端打开就强制变成 AMP 版了,打开速度其实也快不了多少。我再观察一段时间,看是不是也要在湾区日报网站上禁用 AMP 了;毕竟 Twitter 带来的访问量比 Google 带来的访问量要大得多。

高中辍学生投资比特币的故事 (archive)

他 2011 年时 12 岁,用奶奶给的 $1000 买了比特币。父母承诺:如果 18 岁前赚 $100 万,就可以不用读大学。现在他拥有 403 个比特币,价值超过 $100 万了。

他在 2013 年底比特币开始狂跌之前卖掉,赚 $10 万;然后去开公司与旅游。之后把公司卖了,在拿 $10 万现金与拿 300 比特币之间选择,他选了 300 比特币。他父母是在斯坦福读 PhD 时认识的,很开明。他俩哥哥都是 16 岁读大学,一个读 Johns Hopkins、现在开软件公司,另一个读 CMU、现在 MIT 读 PhD。

2017/06/28 第 951 期

Uber 轻量级的手机 web app 背后的技术 (archive)

发展中国家的网速慢、手机性能差,装了原生 app 可能也用不了。Uber 的这个轻量级的 web app 是用 Preact(3KB 大小的 React 替代品)做的,再用上各种瘦身优化。

30 岁以后学编程,然后找到一份全职的软件工程师的工作 (archive)

不错的励志故事。从编程集训班中途退学,断断续续接私活练手,以三十岁出头的高龄去校友的公司做实习生,最终去了 Udacity 工作,现在是 manager。

做产品前先想想潜在用户会如何给你写感谢信

众所周知:Amazon 产品经理在做产品前先写新闻发布稿,有助于思考与打鸡血。此方法的姐妹篇:假想以后的用户用了你的产品后会如何给你写感谢信。

若写不出这样的感谢信,这个产品对用户一点帮助都没有,就别做这个产品了吧。

Improving Critical Infrastructure Rollouts

Spotify 是 docker 的重度用户。每次在 production 升级 docker 版本时有很大概率发生故障。于是他们做了个系统用于缓慢地在几千台机器升级 docker 版本。

年龄越大,朋友越少,独处的时间越多 (archive)

文中这几张图描述了一个人与其他人相处的时间、随着年龄增长的变化趋势。与朋友,20 岁出头达到顶峰、然后逐年递减;与父母兄弟姐妹,从小到老逐年递减;自己独处,逐年递增。

思考题:这几张图对于做社交平台有什么启示?

简评被 @微博科技 给抄袭了。截图在此。

2017/06/29 第 952 期

On failure and resilience

作者在 Etsy 做运维。有一次她把网站弄挂了,然后她及时告知 oncall 的人、及时得到其他同事的支援,网站很快恢复了。她不但没被批评,而且还开心地获得年度最佳失败奖。

在一个具有 psychological safety 的团队里,出故障时,“犯错”的人就能及时与其他团队成员及时沟通、快速解决问题。如果是用制造恐惧、批评、羞辱的方式来对待“犯错”的人,那么下次出故障的时候,“犯错”的人会隐瞒事实、拖延时间、企图蒙混过关,只会让事情更糟糕。

关于 Hardbound 的坏消息 (archive)

Hardbound 创始人 CEO 宣告创业失败,很真切的反思文章。他们这个 app 是用插图的形式总结书的内容,1200 个付费用户,月收入 $2 千 5,月支出 $1 万 3,谈了 72 个投资人,融资失败、无法为公司续命。

有没有可能将整个 Facebook 迁移到 AWS 上 (archive)

Facebook 当然没有理由这么做了。本文只是结合各种已知数据和八卦消息、再加上丰富的想象力进行 thought experiment。简单答案:可行,就是太贵了。

本文估计 Facebook 有 80 多万台服务器,如果全部迁移到 AWS 上,估计得用到 AWS 的 90 多万台服务器,在没有折扣的情况下每年得花费近 $60 亿;光迁移就得花好几年时间,人工成本也很高。作为对比,Snapchat 五年 $20 亿花在 Google Cloud 上、$10 亿花在 AWS 上;但 Google 给 Snapchat 至少打了五折。

文中还提到 WhatsApp 现在是用 IBM 的 public cloud,有 700 台高端物理服务器,每月花 $200 万。

为什么 Quip 没有专注于某个单一平台的工程团队

很多公司里会区分“iOS 工程师”、“Android 工程师”。而 Quip 公司里工程师专注于自己负责的产品功能,一个人针对多个平台进行开发,避免沟通上的障碍,鼓励跨平台代码共享,工作起来有成就感。

现在 Quip 被 Salesforce 收购了。2015 年底,他们是 13 个工程师做跨 8 个不同平台的产品。

Startup SaaS Stack (archive)

创业初期会面临一些很基本的问题:公司如何发工资、怎么记账、怎么报税、怎么给员工买保险、客服怎么做、公司信箱怎么弄等。都有相应的 SaaS 任你选择。

本文给出了公司运营中比较大众化的 SaaS 工具。技术只是创业过程中很小的一部分,有太多杂事要做了。网上能找到很多成功人士假大空的很抽象的创业指南,但具体的操作的事情更多的还是向现实生活中的朋友请教,或者“我上一家公司用这个工具,所以我们新公司干脆也用这个吧”。