湾区日报 2017 年 1 季度汇总

2017/01/01 第 801 期

Mac 图像处理软件 Pixelmator 背后的团队 (archive)

2007 年在立陶宛的兄弟二人找不到好的 Mac-native 的图像处理软件,于是用了 9 个月自己写了 Pixelmator。本文发表之时(2015 年),该团队已有 18 人。

在立陶宛(而非在硅谷或其他“下一个硅谷”)拉扯一支团队是怎么一种体验?不太好找到那种可以立即干活的人,都得招来手把手地从最基本的东西开始培训。

在美国的计算机系博士生该如何理财

来自 CMU 教授 Dave Andersen 的建议。读 PhD 需要好几年时间,在比较穷乡僻壤的地方,可以在 PhD 第一年直接买房,毕业时卖掉,省下房租又能小赚一笔;我读书时同一间办公室的哥们就这么干的。

远程工作、coworking spaces、心理健康 (deleted)

远程工作并不意味着在家上班。自己一人长时间在家待着会憋出心理疾病的。作者以亲身经历说明了在 coworking space 远程上班的好处:选择一家允许远程上班的公司,然后选择自己的办公室,又能与他人交流。

创业公司不道德的一面 (archive)

现在是大众创业的时代,创业者们都想颠覆这颠覆那,于是各种丑闻就出来了,公然违法、造假、欺骗用户与投资人等都是常态。本文细数了这两年一些创业公司丑闻。

“创业公司”的标签并不能当成免死金牌用啊。

送给 Twitter 的十亿美金大礼 (archive)

新上任的 Fog Creek 的 CEO 给 Twitter 献策:

  1. 不断添加新功能;
  2. 公开整肃网络暴力;
  3. 别用活跃用户数这种没意义的指标;
  4. 针对不同类型用户提供不同的工具;
  5. 关怀开发者。

2017/01/02 第 802 期

The Caching Antipattern (archive)

在多人协作的程序里很容易滥用各种 cache,你在某处加了 cache、然后你的同事忘了 invalidate,于是各种奇怪的 bug 就出现了。

不要把引入 cache 当做是解决性能问题的灵丹妙药,先解决本质的性能问题,不到万不得已,别用 cache。你以为你是 cache 小专家?但未来某天深夜加班疲劳的你未必还是,你身边刚入职的菜鸟同事也未必是;未来的你以及你身边的菜鸟同事们一定会掉入当初你自己挖的坑的:)

The Art of Defensive Programming (deleted)

一些实用的编程建议,写可靠、安全的代码。为什么代码要 defensive?因为你不能完全信任:用户的输入、与你合作的同事、以及你自己。

Story Thought and System Thought

Quora 的产品设计经理写的文章。工程师、PM 们普遍具有 system thought,靠客观的数据做决策;设计师们则具有 story thought,考虑主观的感受、人文视角。

设计产品的过程中,设计师们有责任去平衡团队中的这两种思潮,不能放任工程师与 PM 们一味地相信冷冰冰的客观数据。

Design for Testability (archive)

写代码时应思考一下该怎么组织代码才方便测试,这样就能写出比较高质量的代码:小函数、纯函数、避免全局变量;分离 IO 与逻辑的代码;容易理清各种 dependencies。

别再用 Chatbots 这个词了

Chatbots(聊天机器人)似乎很火,做的公司很多;但 Chatbots 这个词给这类程序设定的期望太高了,实际上很少 Chatbots 是真的能与人“chat”的,普遍都很傻。

2017/01/03 第 803 期

Timing and Infrastructure (archive)

所谓风口:云计算 -> 创业成本极低、大量涌现创业公司;带 GPS 的 iPhone -> Uber;相机勉强能用了的 iPhone -> Instagram;4G -> 视频直播;超快网速 5G、6G -> ???

Apple’s 2016 in review (archive)

这不是普通的唱衰 Apple、工程师对 Apple 的咆哮的文章;作者曾在 Apple 工作 17 年,文中犀利指出 Apple 的主要问题是它已经变得不那么了解它的用户了,但并非无可救药。

单身无孩的职业女性在纽约的生存指南

她现在 Tumblr 做产品经理,从男多女少的旧金山(之前在 Facebook 上班)搬到女多男少的纽约,对比俩城市,在 800 万人的纽约生活更孤单,约个人出来太不容易了。

SINK:The-Single-Income-No-Kids female

前景理论:用户如何做决策

用户在使用你设计的 UI 时都在做决策,比如是否点击这个按钮。用行为经济学里的前景理论(Prospect Theory)来指导 UI 设计、引导用户去做你期望的事情(如爽快地刷卡购物~)。

给想去“独角兽”公司工作的人的建议 (archive)

现在很多人都想去所谓 pre-IPO 的独角兽公司工作、赶在上市前捞一笔,但只会傻傻地要求更多股份、而没做好研究到底这些股份值钱不;就好像对工资讨价还价却忘了问货币单位一样。

2017/01/04 第 804 期

Kickstarter 对 2017 年科技趋势的预测

在 Kickstarter 上进行众筹的项目是不错的风向标。

Windows and PHP are snowballs (archive)

世界上 90% 的 PC 操作系统是 Windows、80% 网站的后台是 PHP 写的。Windows 与 PHP 都相对比较注重向后兼容,多么古老的程序 / 代码不怎么修改都能跑。尊重他们。

硅谷的程序员圈子普遍都是用 Mac,会有种错觉 Mac 已经占领了 PC 市场;大家似乎都在用 nodejs、ruby 啥的,但 PHP 确是占统治地位的后台语言。这个圈子就是小众。

在旧金山湾区生活 10 年的感受

将 growth hacker 这个概念发扬光大的知名博主、现在 Uber 上班的 Andrew Chen 讲述他从西雅图搬到湾区十年的感受。在湾区生活的你们,也有类似的感受吗?

随着年龄渐长,以为自己羽翼丰满,容易惯性地看衰一切新兴公司、app、人,然后错失各种机会;文中提到他本人在 Facebook 只有 11 人时差点想尝试去加入该公司但仔细一想觉得这公司没前途、某 Google 前十号员工上班第一天就辞职,错失 $10 亿、某投资人在 Uber 估值 $400 万拒绝投资 Uber。

Mail.Ru 如何节省文件存储空间 (archive)

从原先需要 50 PB 来存储用户邮件附件,降到了 32 PB。基本思路:群发给多人的邮件附件是相同文件,只要存储一次就行。文章详细讨论了实现细节,用 magic number 做加减法来避免误删文件的方法很巧。

实名上网的谬论 (archive)

专家们把网络暴力归罪于匿名上网,但是实名上网就能让世界变得更美好了?好人们实名了、坏人们仍可以想方设法匿名,实名的好人们将受到更大的伤害 :(

2017/01/05 第 805 期

如何把好技术变成好产品 (deleted)

图文并茂的、关于做好的线上产品的方法论 50 合一大礼包:)有技术含量的未必是好产品,好产品也未必有技术含量。

High burn will keep you from exiting, just like Uber (deleted)

文中给出了 1995 年以来 82 家科技公司在上市时亏钱或盈利的数字。还在亏钱能不能上市?可以,但华尔街对亏钱的程度是有一定容忍度的。

当年 Groupon 增长速度巨快,在亏损 $4.2 亿时强行上市;如今的 Uber 一季度就能亏 $8 亿,当然,Uber 规模比 Groupon 大多了,最后结局如何,拭目以待。

SmugMug:专注的家族企业

大众化在线免费相册比比皆是,付费订阅的 SmugMug 很有个性、很小众。这是彻头彻尾家族企业,没有融资、自给自足,老爸老妈儿子女儿亲戚们一起创业,大儿子是所有人的老板,是 CEO。

在后来的采访中提到,先用自己的存款投入 $50 万,如果钱花完了还打算继续投;公司钱最少的时候剩 $5 万。他们现在的办公室在 Mountain View,几乎就在 Coursera 与 Mozilla 的办公室隔壁。

Alexa:Amazon 的操作系统 (archive)

从商业上取得巨大成功的 Windows 谈起,再到 Android、iOS,甚至“互联网的操作系统”Google,层层铺垫之后,亚马逊的“操作系统”Alexa 前景一片光明。

此刻正在举行 CES 2017 上,Alexa 无处不在,同一套软件系统(我仍然不太放心称之为“操作系统”,因为它真的不是),在不同硬件上使用;比如 LG 的冰箱……

Renewing Medium’s focus (archive)

又到了 CEO 范文时间。刚过去的一年 Medium 读者数巨增,也开始尝试广告业务,但整体文章质量稳步下降。

本篇范文中,创始人 CEO Ev Williams 宣布裁员 50 人,重新思考如何激励作者们写高质量文章、而不是搞求标题党。

不靠广告的话,难道是要搞付费阅读、打赏?文章质量要高到让读者主动掏钱,难。

现在 Medium 文章标题套路:如何做一个早起的人?从我失败的创业公司学到的 16 条经验。

13 件你必须放弃的事,如果你想成功的话。我的网站如何在 24 小时内争取到 50 万访客?

2017/01/06 第 806 期

写指环王与写软件的相似之处 (archive)

这种经典传世之作的小说里的情节、人物关系构成一个复杂的系统,但最初也是从第一个词、第一段、第一页开始写起,一开始构思的情节与最终大家看到的往往不同,也是不断迭代、重构。

风险投资将会谋杀 Medium (archive)

一向鄙视硅谷式的拉风投创业的 Ruby on Rails 之父 DHH 撰文谈了他对 Medium 裁掉 1/3 员工的看法:投资人要的是大跃进、拔苗助长快速来钱,Medium 很难做小而美、有情怀的产品的。

Medium 目前融资 $1.32 亿,这是很多钱吗?不。在硅谷 100 多个员工的创业公司每个月烧 $300 万、$400 万 是很正常的,做一下算术你就知道 $1.32 亿其实撑不了太长时间的。

The Reality of Developer Burnout (archive)

著名的 Python 开源网络库 Requests 的开发者分享他的心路历程:满腔热血做开源项目、来自项目用户的无止境的请求让自己疲惫不堪一度想把代码都删了得了、重新寻找编程以外的生活乐趣平衡工作与生活。

做开源项目的活雷锋们如果没有经济报酬,单靠信念、毅力、兴趣,免费为项目的伸手党用户们做牛做马,这是难以持久做下去的,必然会有疲惫、失望、心灰意冷的一天。

我做的湾区日报虽然不是开源项目,但也有类似之处,投入不少时间。

我之前做的几个重要决定很大程度保证了我能继续长久做下去:

  1. 湾区日报带来少量收入,比如 app 内购、广告等;
  2. 关闭微博评论,这样就能少看到一些负面的攻击挖苦的言论;
  3. 对大部分请求说“不”。

A Year Without a Byte (archive)

Flickr 分享了他们在过去一年成功节省图片存储空间的经验:回收利用预留空间、用 GPU 动态生成部分缩略图、无损压缩 JPEG、不存那些很少人看到的图片的缩略图等。

穷游 CES 终极指南 (archive)

CES 是消费电子产品爱好者们的年度盛会,每年 1 月在赌城拉斯维加斯举行。本文给屌丝们指引了一条“每天花费 $100 以内”穷游 CES 的道路,节省时间与金钱,从 CES 收获见识与人脉。

本文写于 2008 年,作者写此文的时候是 32 岁,他在前一年刚卖了自己创建并经营了 6 年(其中三年没拿工资)的公司。这位少年现在哪里、在做什么工作呢?他在一家出租车公司工作,职位是 CEO;这家出租车公司叫 Uber,或许你曾经听过这家公司以及这位作者的名字:)

本文堪称 Travis Kalanick 的“革命前夕的摩托车日记”。用他的话讲,那是一段“血、汗与拉面”的日子(Blood, Sweat and RAMEN)。

2017/01/08 第 807 期

语音设备对线上广告商业模式的影响

用语音来操作计算设备,键盘、鼠标、触屏的使用越来越少,点击与浏览也少了。现在网上广告主要靠点击付费、浏览付费。没了点击与浏览,广告公司谷歌与 Facebook 们该怎么应变?

Inspire a Culture of Recognition

如何留住好员工?多多肯定他们的贡献,及时表扬他们 -- 对公司来讲,这真是低成本、不花钱、又见效快的手段:)

"Having clear goals and being recognized for our progress increases our intrinsic motivation to complete tasks and increases our satisfaction along the way."

Facebook 内部如何使用 Linux 与 Btrfs 的

他们 fork 了 Linux 内核、打了一些补丁。他们争取每年至少升级一次内核,这很了不起,毕竟很多公司(大部分?)好几年下来都懒得升级 Linux 内核的。

Are You Load Balancing Wrong

使用 load balancer 是为了能处理更大访问量、还是为了更 resilient?使用 load balancer 前一定要做 load testing,然后做好监控。

Growth Hacker 是新的 VP Marketing (archive)

本文以 Airbnb 早年鸡贼地方便用户在 Craigslist 上发帖为例,论证了传统的不懂技术的营销人员是玩不转当代 Growth 黑科技的。正是这篇里程碑式的博文推广了 Growth Hacker 的概念。

从此以后创业圈开启了 Growth Hacking 新潮流。可惜如今 Growth Hacking 这词被用烂了,连违法犯罪都被当做 Growth Hacking 来宣传(剪电线?)

2017/01/10 第 808 期

Design Doesn’t Scale

当公司有跨平台多个 app 后,UI 设计就很容易不一致,按钮、色彩搭配、字体等都需要进行标准化。本文记录了 Spotify 在标准化设计方面做的努力。

说个不相干的,文章截图里显示 Spotify 内部网站是 spotify.net,这样暴露在公众面前很不好……发布博文前一定要让同事 proofread 一下,以防在截图、文字方面不小心泄露了不该泄露的东西……

一个人的媒体公司

他写的文章专注于 biotech,订阅费用一年 $149,共有 1000 订阅者。自己一个人写稿、做销售、做客服,比起巨大无比的媒体公司,一个人的公司就像社区里的小店,与街坊都很熟。

采访中他提到一个有意思的点:本次美国大选后,一些媒体刊物的付费订阅用户多了起来,似乎民众们已经意识到高质量的内容是需要花钱的。

Manage Your Energy, Not Your Time (archive)

工作和生活是一个整体,不是分开的。在生活中照顾好自己的身心健康、保持正能量,工作自然就有效率、有干劲。

发送纯文本邮件提高用户回复率 (archive)

做线上产品的都要时不时给用户发邮件,提醒用户们“快回来我们这儿看看”。HTML 邮件不好做,几乎不可能适配千百种邮件客户端;索性都用纯文本,看上去像人手动发的,用户比较有可能去读、甚至回复。

写给 17 岁的我 (archive)

已经退役的篮球运动员毛建军写给十七岁的自己的一封信,中心思想:你即将发大财,但千万记住,可以给亲人钱,但要有个限度,否则他们就成为吸血鬼。众所周知,科比跟他父母关系很不好。

引用自另一篇文章:“Our relationship is shit,”he says.“I say [to them],‘I’m going to buy you a very nice home, and the response is‘That’s not good enough’?”he says.“Then you’re selling my shit?”跟父母已经有三年多不说话了。

2017/01/11 第 809 期

生活在还不太互联网化的美丽泡沫中

本文是 BuzzFeed 从不同角度写 1999 年的一系列文章中的一篇。作者在 1999 年开始读大学,本文回顾了在那年接触互联网的种种,以及一些断断续续的回忆,读起来很有感触。

Steven Levy 与 Phil Schiller 谈 iPhone 十周年

第一代 iPhone 推出时并不打算让外部开发者来做 app,如果某些垃圾 app 把手机弄慢了,用户肯定怪 Apple。最初设想是:手机上预装若干优质的官方原生 app 就够了,让开发者们都去做网站。

其实 Apple 内部对于是否让外部开发者来写 iPhone app 分成两派,激烈辩论;最后 Steve Jobs 拍板:第一代 iPhone 不让外部开发者进来,反正我们现在技术上还不成熟;说不定以后我们会改变主意。

十年前的昨天,Steve Jobs 在台上宣布了 iPhone,从此奠定了所有智能手机的长相、也奠定了所有产品发布会的长相、以及众多产品发布会的男 CEO 的着装风格。

注:我上面写的这些文字的第一段被 36kr 的官方微博抄袭(截图)。有人会说,不就复制粘贴几个字嘛,有啥大惊小怪的,中文媒体都这么干的。我最担心的是沉默的声音,个人原创者们都受到侵害后集体沉默,这不助长了歪风邪气?最后的结果是,只剩下几家大的媒体公司抄来抄去,读者们每天就接受劣质低俗内容。

Update:后来 36kr 的编辑也私信道歉了,并重发了微博。希望以后大公司的编辑们都能有意识地尊重一下别人的劳动。

60 个邮件营销策略、想法与实例

Reddit 网友总结的非常非常实用的邮件营销的具体操作建议。

在群发出去的邮件里设置 preheader 很有用,对于说服收件人打开邮件很有帮助。

在 Amazon 的 War Room 里的 37 分钟 (archive)

当年第三代 Kindle 还没上线就走漏风声了,Amazon 内部迅速开了 war room,37 分钟后官方紧急正式上线。

如何给品牌取名字

本文是硅谷创业圈广为流传的经典教程类文章,为 Rich Barton 所作。他是 Expedia、Zillow 以及 Glassdoor 仨公司联合创始人,现在做风投,江湖地位极高。

他建议最好自创单词(或将已有单词做其他意思用,如 Amazon):音节尽量少(单音节、或双音节)、使用 Scrabble 游戏里高分的字母(如 Z、Q、J、X 等)、单词里有俩相同字母(Google、Twitter、Yahoo)、最好能自然地变成动词的(Google、Uber)。

2017/01/12 第 810 期

聚合理论 (archive)

面向老百姓的服务一般有三部分:供给、分发、用户。互联网出现以前,供给与分发往往被行业巨头垄断;互联网出现后,线上服务聚合了分发与用户,标准化供给、吸引供给。

课后习题:用聚合理论对 Google、Facebook、Amazon、Netflix、Snapchat、Uber、Airbnb 等线上服务进行分析。

WTF is a funding round

TechCrunch 上少见的好文章:经常在 TechCrunch 上看到某某公司融资数千万、估值几个亿,解释了啥是融资、啥是估值、为啥不贷款、N 轮融资是啥意思、巨额融资算是创业成功吗。

一夜成功发生在十年后 (deleted)

论打怪练级、打持久战的重要性。"Most people overestimate what they can do in one year and underestimate what they can do in ten years".

Peter Thiel 快问快答 (archive)

加州应该独立?是,这样川普先生比较容易连任。川普发的 tweet 有一些是你写的?没这回事。小扎当年没 pitch 好?是,伟大的公司才不用 pitch。现在股市大泡沫?是。

BitTorrent 还没死 (archive)

多数人都听过 BitTorrent 协议,宅男们熟知的 BT;但很少人知道 BitTorrent 是基于该技术做起来的公司。多次转型、苦苦追寻盈利模式、被风投玩弄于股掌之中,至今还没死。

2017/01/14 第 811 期

沉默的声音 (archive)

Jessica Livingston 发人深思的文章:很多有思想、聪明的人不愿或不敢发声,因为如果你的观点是有意思的,你必然会被别人误解、必然会被网络暴民攻击,你还敢在网上说话吗?慢慢地,标题党假新闻的比例就更大了。

#define CTO OpenAI (archive)

继 2014 年那篇写在 Stripe 当 CTO 的职责的博文后,Greg Brockman 现在又写了这篇讲在 OpenAI 做创始人、CTO 的经历与职责。OpenAI 是研究机构,工程是为研究服务的。

作为 CTO,他写很多代码、做很多工程方面的杂活,为 AI 研究人员们扫除障碍。文中讲了他们如何拉扯一支优质的创始团队,真是风云际会、人才济济啊。

只有 8 个页面的网站在上线 8 个月内赚六位数美金 (archive)

实例讲解 SEO。每年年底与年初,网民们都喜欢将年份放在搜索的关键词里,如 best movies 2016 之类的。思路:开博客写文章,针对年份关键词进行 SEO,在文章里放产品的 affiliate 链接赚佣金。

三种类型的软件工程师 (archive)

Under-Engineer,初级码工,缺乏经验做事不周密;Over-Engineer,中级码工,喜欢赶潮流学酷炫技术、擅长把问题复杂化;Engineer,高级码工,专注解决问题而非具体技术。

软件工程是团体运动,不同技能的人在不同环境下协作、互补。

Evernote 是风投与做笔记 app 的杂交产物

当做笔记的 app 拿了巨额投资后,它就不是一个纯粹的做笔记 app 了,它得不断增肥,仿佛功能越多、越能撑起超高的估值、最终上市或被巨额收购。

Evernote 是一款做笔记的 app,还能用来聊天,它是最懂 PDF 文件格式的做笔记的 app,动画效果做得不错;虽然运行起来很慢,但功能绝对比其他小作坊开发的做笔记 app 还要多得多得多,除了做笔记不太方便外,其他功能都做得不错。

2017/01/15 第 812 期

UI 设计的死亡之线 (archive)

网页是人做的,人里面是有坏人的;坏人可以做一个高仿的银行网页骗取不太懂电脑的人的银行账号。如果你是设计浏览器的人,但你控制不了网页的内容,怎么减小用户被骗的概率?

邮件也一样:如果你是设计邮件客户端的人,但用户可以收到各种诈骗邮件,你在邮件客户端的 UI 设计上该如何减小用户被骗的概率?

Cars as feature-phones (archive)

现在汽车里的仪表盘、控制面板就像 iPhone 推出以前的手机一样,都在尝试加一些“智能”的元素,结果用户体验超烂,一堆按钮、按钮中还嵌套着按钮。

最好的 UI 是没有 UI,畅想一下未来:以后汽车里的 UI 就是你说一声“开回家”,它就自己开回家:)

The Three Machines (archive)

头衔通货膨胀,一堆的 CXO、VP、SVP、EVP,公司里的 CEO 管不过来。本文提出简化的公司管理架构 — 公司里所有部门按职能归为三类:产品、用户、公司内部,每一类出一个人向 CEO 直接汇报工作即可。

做 Podcast 不能赚大钱,但可以当做是 Door Creator

做一档 Podcast 是很费时间精力的,得定时更新,准备素材、约人采访、录音、后期制作,很麻烦。

但就像写博客一样,很难靠这个为生,但可以 Build Audience,为自己其他能赚钱的事业而服务。

不用等别人来给你“开启一扇门”,你自己“创造门”:)

管理人际关系的 CRM

公司里用 CRM 很正常,一堆客户关系要管理、跟进、定期去骚扰。不少人需要有一个管理个人关系的 CRM,记下各种社交场合结识的人的职位、兴趣爱好、特点,定期联络感情。作者自己弄了一个 Google 电子表格,可以给认识的人贴标签,以防自己忘了谁是谁。

这个电子表格可以再扩展一列:上次联络的时间。不定联络感情,以后真有事要麻烦别人,为时已晚,都把你给忘了。

2017/01/16 第 813 期

你知道你的产品团队很烂,但你知道为什么吗

前 Firefox 负责产品开发的 VP 写的文章。产品团队里有各种工种:工程师、设计师、产品经理等。产品经理是关键。似乎任何背景的人都能申请 PM 的职位,那怎么才算好 PM?

Working with APIs the Pythonic Way

在 microservice、SaaS 大趋势下,做 web app、手机 app 时必然要调用外部 REST api,这就要进行网络通信了。本文列出了一些最佳实践。

与外部 API 进行通信,最最基本的:要设 timeout,并且自己清楚 timeout 的具体数值;要做出错处理,要设 max retries。

声音计算平台新纪元

来自 Greylock 风投的趋势分析文章。用声音作为输入手段的设备越来越多,各种智能家电、手机(Android 上 20% 的搜索来自语音);语音识别技术越来越好,各大公司对语音这块都做了巨大投资。

人们靠声音获取的咨询也越来越多;过去一年美国人花在无线耳机上的钱比花在有线耳机要来得多;无线耳机让人戴着耳机的时间延长了许多;而开放办公环境下,人人戴着耳机。靠耳朵获取的资讯量逐渐多于靠眼睛获取的资讯量。

个人体验:我上个月买了 Airpods 后,每天至少听 5、6 个钟头的 podcasts;因为很多时候都没有摘下耳机的必要。但我把 Siri 关了;Siri 目前还太弱了。

开技术博客的好处

如果没人看的话,开博客有何意义?对技术的理解就像做梦一样,一开始感觉良好,但真到了要向别人解释得时候,漏洞百出;写博客能让你理清思路、填补这些漏洞。

平时做惯了键盘侠的人更应该开博客,或许就能有点同情心、改邪归正了;批评别人做的东西是很容易的,你不需要解释别人的东西为什么不好,你只要会骂脏话就行;而到了自己要做点什么、写点什么了,才知道原来这是那么不容易的事;当被其他键盘侠喷了,你跟他们说“我们原本是同类啊”,他们才不理你呢。

If you don’t finish then you’re just busy, not productive (archive)

多数人都喜欢做新东西,喜欢从头开始全新的项目,但没一个是做完的。只是瞎忙。给别人留下虎头蛇尾、半途而废的印象。

"If you’re always starting interesting projects and not finishing, then no matter how hard you work, you’re just busy, not productive."

2017/01/17 第 814 期

如何在风投里谋个职位 (archive)

自己得有一技之长,最好本来就交际广泛、自带流量 — 听着有点像“村干部在农村信用社存款¥ 5000 万,直接给村干部的女儿安排一份农村信用社的工作”。

机器学习偏见 (archive)

算法或许可以写得客观,但用来训练的数据是带有偏见的(不完整、skewed、错误),所以训练出来的模型也是带有偏见的。经典案例:以前 Google Photos 将黑人照片识别为猩猩。

社交媒体时代的友谊 (deleted)

作者删了他的 Facebook 账号后的感想。社交媒体时代,两人间的沟通减少了,多是广播自己各种生活琐事。不用 Facebook(或其他社交网络)后,有些人这辈子再也联系不上了;如果我们此生不再见面,那我们是旧相识,而非朋友。

Three Magic Numbers

作为风投的他喜欢投资的公司有三个关键指标让他追踪,不是两个、不是五个,一定要是三个。再次印证了 Rule of Threes,不管啥事都得凑成三个,不多不少刚刚好,人脑能记得住。

"……having three entities combines both brevity and rhythm with having the smallest amount of information to create a pattern. It makes the author or speaker appear knowledgeable while being both simple and catchy."

将 side project 变成盈利的一个人的创业公司

他做了 4 年的 side project 已有些许付费用户;决定全职做此项目时个人存款 2 万英镑,能活 2 年;15 个月后,花了 1.4 万英镑,终于盈利。没有融资,自己一个人做,也不用太努力,去年 11 月以来一周工作 4 天。

或许没有在公司工作赚的钱多,但如果你把时间看得比钱贵的,赚回的时间完全是值得的。文章末尾:And now that I’ve finished writing this post, I’m going to go and enjoy a leisurely 2 hour lunch break. -- 在混吃等死的公司工作,其实也是可以有 2 小时、3 小时的 lunch break 的:)

2017/01/18 第 815 期

How Much Design Is Too Much Design

线上产品讲求迭代式地开发,平衡美观、实用、开发速度等各方面;线上产品不像硬件产品那样有“做完”的时刻。追求像素完美才上线,十有八九也是没人用的。

玩具总动员 2 被删除了两次 (archive)

上世纪末 Pixar 大片玩具总动员 2 惊心动魄的制作过程。某员工在共享的服务器上执行了 rm -r -f *,被及时发现,CTO 紧急打电话到机房:“快拔插头!”此刻已删了整个团队 2 个月工作量的文件。

恢复备份后发现,备份是坏的;团队一筹莫展之时,一员工猛然想起自己之前因为生小孩而在家工作,所以家里电脑上有备份;立马回家搬来电脑,车上的电脑此刻价值一个亿美金;团队周末疯狂加班,甚至请来按摩师助阵,得以恢复这部大片。过完新年假期回来上班得到噩耗:剧本重写了,整部电影推倒重做。于是每周工作 100 小时,9 个月内重做了这部电影。

这部片被删了两次,一次是人祸,另一次还是人祸。

Instrumentation: The First Four Things You Measure (archive)

为方便排查错误,监控一个 microservice 对每个请求都要测量 4 个指标:开始请求的次数、请求结束的次数、处理请求的时间分布、正在处理的请求数。

当代互联网公司里很多小组都是按 microservice 划分的。你们组负责的 microservice 要与其他组负责的 microservice 通讯,如果通讯失败导致重大事故,该怨谁?如果没有收集可靠的指标留作证据,组与组之间的撕逼大战在所难免。

员工离职会给公司在财政上带来多大的损失 (archive)

本文提供了一个公式,用来计算主动离职的好员工(regrettable departures)给公司在金钱上带来多大的损失,包括招聘开销、培训开销、没及时招到人来干活的损失等。

不给员工加工资,导致他们离职;这样的离职所带来的损失会比加工资的金额要大得多:)在给够钱的基础上,再来考虑成长、抱负、改变世界等有的没的事情。

Netflix 做 streaming video 十周年 (archive)

1997 年成立公司,1998 年推出邮寄电影 DVD 服务,2002 年上市;2007 年允许 DVD 订阅用户在线观看低清电影,仅 1 千部电影可看;如今 8 千 7 百万付费订阅用户。

今天,Netflix 股价有史以来最高,不愧为 FANG 里的 N。其实 Netflix 公司内部在 2000 年就开始讨论是不是要做 streaming,讨论了很多年,直到老百姓家里的网络足够快了,才推出 streaming。都是放长线、打持久战的,而不像现在的创业公司迅速走红、迅速消亡。

2017/01/19 第 816 期

一个产品失败的原因很简单:人们不理解该产品能干啥 (archive)

创新的产品往往开创一个全新的类别,但也因此很难向老百姓解释这到底是啥。文中举了 Segway 为反面教材,如何干脆利落、简单明了地告诉大家你到底是什么?

"After all, staking a claim on your identity is a key element of the entrepreneurial“bet”: When introducing an entirely new product into the marketplace, make a choice about who you are."

Slack 的 Threaded 消息在设计上的难点 (archive)

Slack 历来让很多人诟病的地方是,消息一条接一条地堆砌在 channel 里,很难弄清楚某消息是为了回复之前的哪条消息。看上去 Threaded 的消息是很直白的功能需求?他们精心设计了 2 年,迭代了 6 个版本,最终推出。

这种开发速度似乎与快糙猛的创业文化格格不入啊:)

用设计思考来给公司取名字

给公司取名字的看起来比较科学的套路。仅供参考。

"Design Thinking: a human-centered approach to innovation that draws from the designer’s toolkit to integrate the needs of people, the possibilities of technology, and the requirements for business success."

Reddit 网站是如何使用 Memcached 的 (archive)

这是全球访问量前 30 名的网站,用 54 台 AWS r3.2xlarge 跑 memcached,共用内存 3.3 TB。按不同用途划分 cache pool;也讲了 mcrouter 的妙用与各种坑。

为何 Excite 在 1999 年拒绝以 $75 万收购 Google (archive)

当年拒绝收购 Google 的 Excite 的 CEO 现身说法:Excite 发家就是靠搜索引擎,他们对比了自家搜索引擎与 Google 的几百个关键词的搜索结果,差别不大;Larry Page 扬言若被收购,必须以 Google 技术完全替代 Excite 的核心搜索技术,这必将伤害 Excite 工程师们的感情。

这里有一份 Excite 联合创始人讲述 Excite 历史的幻灯片:1994 年成立,一开始是做搜索引擎;1995 年时索引了 150 万个网页;1996 年上市;重心放在做门户网站;1999 年达到顶峰,$350 亿市值,3200 个员工,索引 2.5 亿个网页;2001 年破产,然后残骸被贱价收购。

2017/01/20 第 817 期

Silicon Valley’s Ultimate Exit (archive)

当一个组织开始变烂了,组织里的个体可以 voice(抱怨、反馈、从内部改进)也可以 exit(用脚投票、离开)。硅谷有耐心去 voice 的不多,直接 exit 去跳槽或创业了。

对开源项目不满,voice 就是 patch,exit 就是 fork;对国家不满,voice 是投票选举,exit 是移民;对公司不满,voice 是从公司内部改良,exit 是跳槽或创业(如影响整个硅谷历史走向的仙童“八叛徒”)。

The Struggle (archive)

写给极度挣扎中的创业公司 CEO 的一些建议。这条建议不错:公司要尽量活得久(其实人也是一样。),科技圈运气很重要,指不定哪天你就红了。

How We're Building a Business to Last (archive)

CockroachDB 讲述自己(将)如何赚钱。基于开源项目做起来的公司如何赚钱?

  1. 核心代码开源,增值功能、企业级功能收费;
  2. SaaS。

CockroachDB 开源的代码有两种 license:Apache License 2 以及他们自己定的 CockroachDB Community License (CCL)。使用 CCL 的那部分代码里的功能是要付费的。

等一下,付费功能的代码也是开源的?

你能看到代码,但你没有 free redistribution 的权利。

花了六个星期时间用 React 重写了网站的体验

描述了自己慢慢喜欢上 React 的心路历程,文中给出的组织前端代码的目录结构挺不错的,模仿自 Twitter 官方网站前端代码的结构。作者是 Bootstrap 最初两个开发者之一。

软件行业羞辱人的恶习

看来搞 IT 的脸皮真的要厚:把网站弄挂了、把 CI 弄坏了就要被嘲笑一番、戴小丑帽之类的;code review 过程中容易被鄙视;网友说如果你不做 TDD 你就不是好程序员。

有些人总是以圣人的高标准严格要求别人。"They hold others to extremely high standards and let them know when they don't meet them. They also make sure to not only let you know that not only is your work not good enough, but how you aren't either."

2017/01/21 第 818 期

Starbucks 的公司文化对公司战略的正面影响 (archive)

把员工当 partner,甚至 part-time 的(美国)员工也能拿股票(!?),金融危机时大家都在裁员、他们反而加强员工技能的培训。公司对员工好,员工就对顾客好。

On Better Meetings

关于如何开好会的建议,尤其是针对讨厌开会的工程师们。要有明确的会议主持人、会前要有计划、开会时大家都要参与、要照顾到远程连线进来的同事、有些会禁止使用电脑与手机。

设计真正可用的触屏 UI (deleted)

看上去是很显而易见的结论:触屏界面上的按钮得足够大,不然用户没法操作。多大才算大?至少 10mm x 10mm,最好是 13mm x 13mm 以上。

iOS 10 的 UI 设计往大字体、大按钮方向发展。比如 iOS 10 的 lock screen 上控制音乐播放的按钮比 iOS 9 上面的要大得多。

说起来容易做起来难啊,屏幕就这么大,为了展示足够多的信息、开发者们肯定狠命往上面加东西,所以按钮越来越小、越来越不好操作。

Twitter 的大规模数据中心 (archive)

介绍了 Twitter 数据中心的规模以及运维经验。他们 Puppet 代码库里有超过 1 百万行代码(不全是 Puppet 代码),每月有超过 100 人提交 Puppet 代码,从一个侧面反映了后台运维的规模与复杂度。

假期回家乡使用 Tinder (archive)

中国与美国一到假期都是人口大迁徙,在大城市工作的年轻人、中年人纷纷回小县城老家与家人团聚。在回家的几天时间里,打开约会类的 app、看到曾经认识的人,会是一种什么样的体验?

2017/01/22 第 819 期

使用 Hero Images 的最佳实践 (archive)

Hero Images 就是在网站上看到的超大的、占了大半屏幕(甚至全屏)的图;这样的图给用户造成视觉冲击,但不只是挑一张漂亮的图那么简单。

WalmartLabs 使用 React Native 的体验

给犹豫是否上 React Native 的团队再来一个数据点:世界五百强公司沃尔玛!使用 React Native 后,沃尔玛的 iOS 与 Android app 共享 95% 的代码;甚至一些业务逻辑的代码都能与网站共享。

Dependencies (deleted)

对比讨论了程序中两种 dependencies:

  1. 使用 Library,都跑在同一个进程里;
  2. 使用 Web Services,远程通讯调用 API。

两种方式各有利弊。

别做免费用户 (archive)

套路:独立开发者们做了小而美的线上服务,一直不赚钱,后来被大公司收购然后下线该线上服务。作为用户如果你们都掏钱支持独立开发者们,这样的惨剧比较不会发生了。

Pinboard 的创始人、唯一开发者写的文章。他自己就是很成功的独立开发者,光靠用户付费使用的一个 Pinboard 项目就能养家糊口。但现实是,人们一方面都想免费使用世界上任何东西,同时也希望开发者们成为圣人,不要收费、也别放广告、生活拮据点也可以,谈钱多俗啊:(

工程是做深度学习研究的瓶颈 (archive)

作者曾在斯坦福读研究生。计算机科学里大部分子领域所谓做科研的套路:花很多时间写很多垃圾代码还原前人的方法,然后做实验证明自己的新方法比前人牛,发论文但尽量避免公布自己的代码。如此反复、周而复始。

为何研究人员不写高质量代码?因为博士生能否毕业、教授能否晋升看的不是代码。为何在发论文的同时不发布自己的代码?因为发布代码带来的麻烦会很大,如果有人指出了代码里有 bug,已经发表的论文是不是要被撤下?你要给后人制造点障碍啊,想拿我的方法跟你的新方法比较?你自己去实现我论文里描述的方法吧;即使你声称你的新方法牛逼,我至少还能说“你实现得不对,你用的不是我的代码”。

很无奈。"Personally, I do not trust paper results at all. I tend to read papers for inspiration – I look at the ideas, not at the results. This isn’t how it should be."

2017/01/23 第 820 期

Act your size

一些独立开发者或小团队为争取客户信任,会选择撒谎(讽刺吧?):明明公司只有你一人还要造成一种有庞大团队的假象,或谎称世界五百强公司是自己以前的客户。文章建议:做自己,诚实。

时代不同了,人们对小团队、对独立开发者是有一定尊重的;那种看中“团队人数”而不是“产品质量”的客户,真的不是你的目标客户。

不要模仿所谓成功人士的习惯了 (archive)

总结一句话:Correlation doesn’t mean causation. 即使你辍学、经常辱骂员工、喜欢穿牛仔裤与套头衫,你也成为不了 Steve Jobs:)

产品设计之道 (archive)

做线上产品除了考虑美观、易用外,还要考虑对人情绪的正面影响、对社会的正面影响。你设计的产品会让用户学到东西、得到正能量、心情愉悦吗?还是滋生网络暴力的温床?

关于新媒体盈利模式的讨论

风投 Hunter Walk、Kickstarter 前 PM、纽约时报 CTO 三人关于线上媒体、自媒体、艺术家们如何在网上赚钱的讨论。除非做的东西很大众化、有超多观众,不然广告模式是赚不了钱的。

平台应该尽早考虑如何帮创建内容的用户盈利,成功案例:YouTube。

旧金山的小孩都到哪里去了 (archive)

在旧金山城里生活会有一种错觉:人生仿佛从 22 岁开始、到 40 岁终结。这个城市里的宠物数量比人类孩童还要多。高房价、新建公寓偏爱一居室、同性恋多、公立学校质量差等因素让这个城市小孩很少。

如果到了生育年龄还没赚到数百万美金,就得考虑搬出这个城市了。

2017/01/24 第 821 期

Inside Instagram’s reinvention (archive)

一方面 Instagram 逐渐变成炫富、晒幸福、各种攀比、品牌营销的温床,用户们真诚地分享自己生活照片的数量减少了;另一方面来自 Snapchat 的威胁渐增。作为管理层你该怎么做?

真的个人用户在 Instagram 上发照片的压力逐渐增大,都挑不出好的、能把别人比下去的照片。Instagram 内部也意识到这点了,所以尽管抄袭 Snapchat,尽量降低创建内容的门槛,丑点也没关系,反正不会永久保存下来,只要你们用户多发照片、多发视频就行了。

“优化”代码的基本法则

搞笑文章一篇,“优化”是反语。让代码慢 10 倍:优化了算法时间复杂度,但没考虑 I /O。让开发速度慢 50 倍:万一有百万用户在线怎么办?慢 100 万倍:与其他固执己见的程序员争辩不休

What's next in growth

经典、管用的 growth hacking 的技术都是经过上百年实践过的,不管科技如何进步,贪婪、喜欢猎奇的人性是不变的。本文举了些 growth hacking 伎俩在旧社会是如何被商家们屡试不爽的。

线上产品管用的 growth hacking 的伎俩无非 referral program(邀请用户加入、传销),viral content(标题党、假新闻)等。Growth hacking 的未来何在?多读书、多研究历史。以为自己的小伎俩是大创新?那是你读书太少。

一个冒牌程序员的故事 (archive)

作者认识了个 30 多岁参加了 12 周编程培训班的冒牌程序员,作者自告奋勇当他导师教他如何找工作。该冒牌程序员盗取作者 GitHub 上的开源项目充数到处面试,还在网上花钱找人帮做面试给的小项目,竟然拿到 offer。

而且这个冒牌程序员拿到的 offer 竟然比作者这个正牌程序员年薪要高 2 万。该冒牌程序员工作后能力太差只会从 StackOverflow 上复制粘贴代码,作者一怒之下将该冒牌程序员通过欺骗手段通过面试的情况捅到他的公司,于是冒牌程序员被开除了。

充实自己的简历的欺诈路数:到 GitHub 找开源项目,不要 fork,你自己新建个项目,然后抄袭,commit 几次后,就成了你自己的项目了。一天之内你的 GitHub 页面就多了好几个“你自己做的”开源项目了。

AMP 不好的地方 (archive)

Google 的 AMP 是简化的、定制版的 HTML,让使用 AMP 写的页面直接在搜索结果中瞬间打开。不好的地方:不易分析原链接、被圈在一贯作恶的 Google 生态系统里任由它获取各种信息。

2017/01/25 第 822 期

用户并不知道、也不想去学一个产品的大部分功能 (archive)

其实大家都有这个体会:即使一个软件产品你用了好几年了,你照样不知道大部分功能,而且你也没必要去学。比如 Linux 的大部分命令、Vim/Emacs 快捷键、任何 IDE、微博、Word 等。

微软做用户调查,想了解一下用户希望在 Office 2007 里加入哪些新功能;结果用户提议的大部分“新功能”其实都已存在了,只是他们不知道罢了。

产品功能的 discoverability 很重要,也很难做;屏幕面积就那么大,难以塞进各种功能;人的时间很有限,大家现实生活中还有各种烦心的事,知不知道一个软件的个别新功能对人生好像也没什么影响。

如何打造世界级的数据科学团队

  1. 公开透明、互相支持、其乐融融的团队;
  2. 能用到足够的资源(机器、数据、线上服务、其他人的时间);
  3. 有足够的自由度。

作为创业公司 CEO 的理想的一周时间安排

这是一张从视觉上看、长得很漂亮的计划表:)他把会议都集中在周一、周三、周五,而周二与周四没有会议、做自己的“deep work”。周六一天严格限制屏幕的使用,不用电脑,手机只用来看地图发短信,不用社交 app。

当你所在的创业公司被收购了你该怎么办

世界上有太多事情你没法控制,你只能控制你能控制的事。一觉醒来、从新闻得知你每天在社交网络晒的你自己很热爱的贵公司被收购了,该怎么办?你没法凭一己之力阻止收购,你只能管好你自己。

Dropbox 公司内部评估一个新产品值不值得做的简单框架

围绕三个问题开几次会议讨论:

  1. 要解决啥问题、该问题值不值得去解决?
  2. 如何解决这个问题?
  3. 具体是怎样的解决方案?

2017/01/26 第 823 期

我们是如何赚钱的 (archive)

之前有同事说他发现了一个推荐信用卡然后抽取佣金的博客网站租下了 Twitter 办公楼里一整层、员工数百人、估值近 $10 亿……hmm,看看这个“博客”网站自己是怎么解释如何赚钱这个问题的:)

应该很多人都猜到了,这就是 NerdWallet。推荐信用卡或其他理财产品得到的佣金是挺高的,成功申请一张信用卡抽佣金几十、数百美刀。很多个人博客都在做这个,主要是靠 SEO 取得访问量,写大量博客文章。而 NerdWallet 则是集团军作战方式,流水线作业、做网上小工具、批量写博客、专业 SEO。

从 Scala 迁移到 Go,绝不回头 (archive)

Movio 里的一个团队用 Go 重写一些原来是用 Scala 实现的代码后的感想:使用 Go,学得快、写得快、编译快、运行快、消耗资源少、工具支持好。

就连原来重度使用 Scala 的大公司 Twitter 与 LinkedIn 似乎也后悔选择 Scala 了。用 Kevin Scott(最近刚升任微软 CTO、前 LinkedIn SVP Engineering)的话说:下一代前端架构要最小化对 Scala 的依赖;立刻马上重写替换所有 Scala 代码不现实,只能不再引入新代码、对旧代码维持最最基本的维护。

The Startup Idea Matrix

想创业但没有啥好的 idea 的可以看看这张大图(主要针对 consumer facing 的互联网产品)。不同领域与不同产品特点 / 商业模式的组合。

The CTO to VP Engineering Fork

来自 DigitalOcean CTO 的文章。创业早期一般有个联合创始人做 CTO,各种技术杂活一肩挑;公司大了后,要有规矩、要管人,往往要开始招个 VP Engineering 了。

分析自己过去 6 年搭乘 Uber 的数据 (deleted)

作者现在 Google 上班。他从 2011 年开始搭乘 Uber 共 686 次,花了 $12041;他把自己两辆车卖了,省去了养车费。搭乘 Uber 相当于帮他每月节省 $703。2016 年他花了 94 小时在搭 Uber 上。

由于不用自己开车,所以他在车里能打开电脑工作。他录入数据的方式不错:在 Upwork 上花了 $20 请了个合同工把他过去六年搭乘 Uber 的数据人工录入到电子表格里,这个数据录入的过程枯燥无味、前后要花了 2 个钟头;然后他自己在电子表格里做有意思的数据分析。花便宜的钱买昂贵的时间。

这应该是湾区日报分享的第三篇“卖了车、靠 Uber 代步、省下很多钱与很多时间”的文章了。其他两篇是:我没车,我 Uber、把车卖了,出行全靠 Uber 与 Zipcar

2017/01/27 第 824 期

Apple TV 十周年

2007 年 1 月 9 日,Steve Jobs 在同一个舞台上宣布了 Apple TV(之前叫 iTV)与 iPhone。如果早知道 iPhone 后来如此惊天动地,估计当时直接把 Apple TV 的戏份删了:)没人能预知未来。

每一代人或多或少都有感觉“生不逢时”的时刻。Marc Andreessen 在 1994 年刚到硅谷时感觉自己错过了美国经济高速增长的 80 年代(87 年股灾之前)、错过了伟大的个人电脑创新的时代,颇为失望;他自己后来成了互联网历史的开拓者。很多开发者或许也觉得自己错过了 08、09 年 App Store 刚出现、移动互联网的婴儿期,随便做一个简单 app 都能火的时候。那么现在呢?

来自 SendGrid 的数据分析

SendGrid 提供发电子邮件的 API,众多公司使用他们的 API 发送大量邮件;所以 SendGrid 可以对人们使用电子邮件的情况(发送方与接收方)进行宏观上的分析。

2016 年 Black Friday 一天,有 16 亿封电子邮件是通过 SendGrid 发送的;商家们都在这天最后催促用户一把:快来我们这里消费!接近 50% 的人是用手机打开邮件的。手机用户打开邮件比较及时。9 个单词的邮件标题最为普遍,但 2 到 4 个词的邮件标题的打开率比较高 -- 标题党最高境界。

发一封邮件是很容易的事,发 100 封也不难,但发 16 亿封就不容易了。想起在 Quora 看到的一个问题:为啥 Facebook/Google 等“简单”的网站需要那么多工程师?其中一个回答不错:做一个饼很容易,做几十亿个饼就难了。

采访 Apple Music 的三个高管

Apple 以前的付费下载音乐的服务(iTunes)与现在的付费订阅的流媒体(Apple Music),关键都是与唱片公司、音乐人谈合作、放独家内容。

如果你的上司有足够的能力做好你的工作,你在工作中会比较愉快 (archive)

并不是说让上司来帮你做事啊,而是他们的能力能赢得你的尊重。最怕那种外行指导内行、不懂装懂、不知道自己在胡说什么的上司了。

为了抽象而抽象

GruntJS 之类的工具都需要写又长又臭的配置文件,引入没必要的层层抽象。作者意识到,npm run-script 就够用了,写在 package.json 里的一行流,简洁明了。

2017/01/28 第 825 期

A Little Slice of Humble Pie

“用户是傻子吗?连屏幕上这么显而易见的按钮都没看到?”你在开发的时候测试、点击了无数次的按钮对你来说当然显而易见了,但对初次见到你产品 UI 的用户来说,太陌生了。

有个成语叫什么来着?“掩耳盗铃”。“我听不到,别人肯定也听不到”;“我看得见的,别人肯定也看得见”;“我知道的知识点,别人肯定也知道”;“我读过的文章,别人肯定也读过”;“我觉得不好的,别人肯定也觉得不好”。

AppDynamics 的故事

印度人在硅谷创业的一个案例:08 年开始做与前东家类似的产品(后来被前东家告了),原定今年 1 月底上市;上市前几天突然被思科收购了。

2017 年 1 月 9 日 Asana 故障的 postmortem

这天是 2017 年的第一个周一,大家刚结束休假回来上班,所以 Asana 访问量比平时大;不巧的是,autoscaling 无法正常运作,导致服务器数量严重不足。

他们采取的紧急措施:优先保证所有付费用户都能使用,但要限制 10% 的免费用户的使用。然后手动开启足够多的服务器。然后取消对 10% 免费用户的限制。

Etsy 在试验了一些 SEO 小技巧后得出的结论

似乎都是大家已经知道的结论:

  1. 网页标题越短越好,搜索关键词匹配的百分比越高越好;
  2. <meta name="description"> 尽量长;
  3. 网页里要使用 H1。

如何安全地、秘密地向美国的新闻媒体爆料 (archive)

本文作者亲自试用了 SecureDrop(securedrop.org),媒体真能收到。美国政治风向有所转变,美国人民为言论自由感到深深的担忧。

2017/01/29 第 826 期

数据工程师的崛起 (deleted)

本文作者以自己在 Airbnb、Facebook、Yahoo 做数据工程师的经验告诉大家:啥是数据工程师?主要职责是啥?当代数据工程的范畴;以及要做数据工程师都需要哪些技能。

在吵杂的世界里如何吸引别人的注意力

这是一篇讲线上产品的 UI 设计(或广告设计)如何吸引用户眼球的图文并茂的优质长文。现代人在网上一眼看到某个突出的链接、图片,就像原始人看到食材、危险的猛兽一样,都有规律可寻的

为何 Netflix 能盈利而 Spotify 还不能

一个是电影、电视剧的付费订阅,另一个是音乐的付费订阅;一个加大力度做自己的原创电视剧,每年从每个用户身上赚 $99.03,另一个纯粹花钱向音乐公司买版权,每年从每个用户身上赚 $75.73。

Does Not Work (archive)

吐槽了现实中的伸手党们。有些程序员遇到问题请教别人时都懒得描述具体遇到什么问题,而是直接说:代码不 work。这让人怎么帮你?

电子竞技对体育场设计的启示 (deleted)

美国的几大体育职业联赛为了赚年轻人的钱,都加大了对电子竞技的投资。一方面职业球队收购电子竞技队,另一方面体育场的设计设备要满足体育竞技比赛的需求,吸引宅男宅女们来花钱买票现场观战。

2017/01/30 第 827 期

Steve Jobs and Jeff Bezos meet "Ginger" (archive)

Segway 电动平衡车在推出前的代号是 Ginger,他们请了 Steve Jobs 与 Jeff Bezos 两人来给产品推出的策略提意见。生动塑造了 Steve Jobs 霸气的形象:)

当年大家都对 Segway 寄予了厚望,期待这是一个比互联网更具创新意义的东西;十几年过去了,恐怕很多人第一次听说过 Segway,是因为徐明送了薄瓜瓜一辆,然后瓜瓜借给周杰(尔康)……

一个人的 SaaS 公司能带给你巨大的个人成就感 (archive)

很多工程师都幻想做那种类似 Facebook、Twitter 一样的大众产品,一夜成名,名利双收;但更现实一点的还是去做 SaaS 类的产品,用户不多,但有一些稳定收入。

净化互联网的那些人类所付出的代价 (archive)

所有用户量巨大的、允许用户生成公开内容的线上产品都需要招一堆人来做管理员、负责删帖。他们天天观看并删除挑战人类生理极限的视频图片,净化了互联网,但也很容易患有心理疾病的。

微软的一个内容管理员:"Each day, Soto looked at thousands of disturbing images and videos, which included depictions of killings and child abuse. Particularly traumatic was a video of a girl being sexually abused and then murdered."

Snapchat 的内容生意

Snapchat 以前是跟提供内容的媒体们进行广告利润分成的;现在变了,Snapchat 一口价、高价钱向媒体们买内容,但广告收入都归自己,这种模式就跟电视台买连续剧、卖广告一样了。

Snapchat 肯定算好账了,尽管一口价买版权、价格高,但他们有巨大的活跃用户量,广告收入很客观,当然都得进自己腰包;这种一口价、高价钱的模式也给没啥现金的竞争对手们制造了门槛(尤其是小创业公司),他们没法爽快地掏钱买内容版权。

在 Google、Facebook、Uber 等公司工作的人会在工作中午休吗

公司里有一些区域是可以小睡一下的,也可以去自己的车里。但午休的人不多;年轻人反正精力充沛,年龄大的倒是都希望尽量压缩在公司的时间、尽量多干活早回家。但午休一般也不会被歧视,只要干活给力就行。

2017/01/31 第 828 期

无人驾驶技术可能带来的后果 (archive)

  1. 无人车道德高尚,以行人安全为己任,开车慢吞吞、堵塞交通、屁股后面被堵着的车辆里的人类驾驶员很不爽;
  2. 人类很鸡贼,派无人车去占位子,比如去学校接小孩放学,前面几辆肯定是无人车。

另一种鸡贼用法:

餐厅附近停车位不好找,但家里有两辆无人驾驶车 A 和 B;

先派 A 去找餐厅附近的停车位,占好位置;

然后 B 载自己去餐厅,B 自己开回家;

吃完饭后,A 从事先占好的停车位出来载自己回家。

各种霸占公共资源的方法等着无人车的车主们去开发呢!

The Bad Product Fallacy (archive)

有多少次你听到别人这么评价一个产品的:“因为这产品我不喜欢、对我来说毫无用处,所以这产品注定在商业上会是失败的”。掩耳盗铃:我听不到,所以别人也听不到。我不喜欢,所以别人也不喜欢。

颠覆性的产品一开始像玩具一样功能简单(哈佛校园里的个人页面、只能 140 字发帖的本科课程作业级别的小网站),很多一开始太贵了(手机、用 app 叫高级轿车),有的电商一开始没卖你想要的东西(eBay 一开始卖古董、邮票,Amazon 一开始只卖书)。功能简单的,以后可以加新功能;贵的东西,规模化后就便宜了。

我们所认识的好莱坞已经玩完了 (archive)

好莱坞被硅谷颠覆。电影院看片体验比较好?试试 VR。错过电影上映的时间?在线流媒体收看、自己选时间。电影编剧太贵?用 AI、大数据写剧本。制片过程人浮于事?硅谷创业公司各个打鸡血效率高。观众或成最后赢家:)

先定个小目标,估值 1 亿美金并不可耻 (archive)

创业者们要学会控制自己与投资人的期望:你或许只想造个飞机、但投资人希望那是个太空船,结局往往连飞机模型都不是。

现在是创业大跃进,科技媒体多浮夸,虽然估值没有 $10 亿上不了头条,但先定个小目标,打怪练级搞几家文中所说的“mid success”的公司,其实对大部分人来说这辈子就能过得不错了。就算成不了 LeBron James,也是可以打 NBA 的:)

The Work Before the Work

这是一个 Slack-first 的 SaaS 公司。做 Slack 聊天机器人、提供 CRM 服务,快速开发、快速迭代,省却了大量的时间精力去做 UI — Slack 就是 UI,聊天界面就是 UI。

继 email-first、短信 -first 的创业公司后,终于迎来了 Slack-first 的公司了:)

2017/02/01 第 829 期

Etsy 如何管理众多独立域名的 HTTPs 与 SSL certificates (archive)

在 Etsy 开店的人可以给网店弄个独立域名,然后 Etsy 帮忙搞定配置 HTTPs,毕竟是在线支付的、必须得 HTTPs。他们用 Let’s Encrypt,省钱又能自动化。

浏览器的小改进让 Facebook 网站减少 60% 的网络请求 (archive)

Facebook 与浏览器的开发者们沟通,让他们修改浏览器代码、改进浏览器的缓存策略,减少了用户访问 Facebook 网站时请求静态资源的次数。网站开发者与浏览器开发者并肩作战,一起改善网站访问体验。

期待以后能看到 app 开发者请求操作系统开发者改内核,进而改善 app 使用体验的案例:)

How to start a startup without ruining your life (archive)

关于创业的实用建议:选择商业模式、没必要对 idea 太保密、给公司命名、选合伙人、验证 idea、找投资人、招聘、销售与营销、如何度过低潮期等。文中推荐的书和文章都不错。

Inside Dropbox’s Identity Overhaul

Dropbox 推出 Paper,一款“长得像 Medium 编辑界面的 Google Docs”的在线协同办公产品。采访了 Dropbox 创始人 CEO 及其他高管,试图解释从云存储转型的原由。

一个高中生整天跟别人说他肯定能考上某某名校,结果上了高三突然发现成绩够呛,只好转型搞一把数理化竞赛、看看能否保送。拭目以待!今年正好是 Dropbox 公司成立十周年。

到众筹网站抄产品 idea 然后抢先推出 (archive)

年轻人大学毕业、不想做“另一个社交 app、幻想纸面估值 $10 亿”。实实在在赚真钞:到众筹网站去抄别人的产品 idea,通过阿里巴巴网站找中国厂商进货,在北美高价转手卖掉。

2017/02/02 第 830 期

The JVM is not that heavy (archive)

反驳 JVM 很“heavy”的文章。先入为主的观念,Java 虚拟机,一听就觉得很庞大;JDK 安装文件大?运行时占计算资源多?运维麻烦多?作者逐一反驳。

Don’t document your code. Code your documentation. (archive)

代码演化很快,文档不及时更新的话很容易过时了、无用了。把文档写进代码里:代码规范、一目了然、胜于文档;或者把文档与代码放一起版本控制,改了代码后就比较能记得同步更新文档。

GitLab 员工误删数据库、永久性丢失 6 小时数据的总结与反省 (archive)

多起事件环环相扣,致命一击:工程师晚上 11 点还在工作,有点疲劳了,删除数据文件夹 1、2 秒后猛然惊醒,删错机器了,那是 db1!试了 5 种不同备份恢复机制,没一个有效的;只好痛失 6 小时数据。

看热闹之余,大家也要引以为戒。尽量别在 prod 上手动敲命令,尤其是在深夜、疲劳、独自一人的情况下;备份、恢复机制得经常演习,不然真到要用的时候肯定没一个能 work 的。

以前有个同事,他登录 prod 机器时固定用火车相撞的图片做 terminal 的背景,以提醒自己小心谨慎、别干傻事。不过有一次半夜还是 fat finger 重启了 master db …… 老司机也不能疲劳驾驶啊!

老战士们都喜欢交流 war stories,丰功伟绩也好、生产事故也罢,都是谈资。

Mobile 2.0 (archive)

Web 2.0 之后并没有 Web 3.0,而是新的统治性的计算平台:手机。现在是 Mobile 2.0,数十亿人人手一台手机。Mobile 2.0 之后也未必是 Mobile 3.0,会是另一个计算平台。

"Using a smartphone camera just to take and send photos is like printing out emails - you're using a new tool to fit into old forms.”手机摄像头不止能用来拍照,手机摄像头还是手机的“眼睛”,是输入设备(扫 QR code、图像识别等)。

少刷朋友圈,一年就能多读上百本书 (archive)

文中给出的是美国人看英文书、上英文网站的数字:每年花 608 小时刷社交网络、花 1642 小时看电视;而要看 200 本 5 万字的书、每分钟读 400 个单词只需 417 小时。

可能你会说你读英文没那么快,那读中文呢?可能你还会说读那么快都理解不了,那打个折扣,别读 200 本,读个 20 本如何?可能你还会说,读那么多书也没什么用,那就这么着吧:)

2017/02/03 第 831 期

Duolingo 用 Scala 重写系统的经验 (archive)

原系统是用 Python 写的。重新设计系统架构,用 Scala 重写后 latency 从 750ms 降到 14ms,uptime 从 99.9% 升到 100%。可惜没说代码规模、开发时间多长、多少人开发。

Getting out of the startup rat race

来自 Baremetrics 的创始人的感悟。厌倦了硅谷式的创业:go big fast、指数级增长、全身心投入工作。他重新思考对成功的定义;按自己的套路走,人生才精彩。

能付自己年薪 $15 万、十年后公司卖个几百万,算创业成功吗?能付自己 $3 万、但能陪家人环游世界,算创业成功吗?做可持续发展的公司,一群人在同一家公司连续共事很多很多很多年,而不是 18 个月就换一次工作,算创业成功吗?

”……creating your own definition of success and doing things the way you want to do them…… Because doing things your own way, on your own terms, is where you’ll find fulfillment."

为何 Basecamp 的产品定价不按人头收费 (archive)

他们对不同大小的公司收费都一样,每月 $99。若按人头收费,大公司会以为自己交钱多然后提各种不切实际功能请求;Basecamp 专注于服务那些世界 500 万强的小公司(哈哈),不稀罕世界 500 强。

改数据库 schema 迁移数据最佳实践 (archive)

算是基本常识了,四个步骤:

  1. dual writing,同时写到新旧两处;
  2. 改从新地方读取;
  3. 只写到新地方;
  4. 删旧数据与旧代码。

新地方可以是同一表不同列、也可以是不同表、也可以是不同数据库等。

Stop Filing Bugs, File a Container (archive)

虽然是 Runkit 介绍他们产品功能的文章,但中心思想挺时髦:以后报告 bug 的时候,一键开个 docker container,就比较不会遇到“明明在我电脑不能跑、怎么在你电脑就行了”的尴尬了。

2017/02/04 第 832 期

What should you think about when using Facebook (archive)

作者站在 data scientist 的角度分析、猜想、逆向工程了一下使用 Facebook 过程中,Facebook 会收集哪些个人隐私数据、作何用途、该如何避免被搜集过多隐私数据。

什么?你想删除自己在社交网络里留下的隐私数据?很难,几乎不可能。即使你自己在网上、app 里“删了”所有数据,对方公司的数据库里依然有你的数据;所谓删除,只是数据库某些行的 is_removed 列标为 true,并非真删,他们说这是最佳实践:)

采访 Bill Simmons:The Ringer 的第一年

Bill Simmons 以前是 ESPN 专栏写手,在美国喜欢体育的人都认识他。他现在自带粉丝创办专注于体育与流行文化的线上媒体 The Ringer,运营一年,65 个全职员工,已盈利。

当时他们估计了一下自己做网站的成本,既花钱又花时间,不划算;索性用了 Medium,而且还是免费的(估计是 Medium 自己倒贴、掏钱请他们来的)。他们自己拉广告业务,在 Medium 文章里内嵌广告、在 Podcast 里读广告。Medium 的 top stories 里经常能看到 The Ringer 的文章。他们的域名 theringer.com 是花 $5000 买的,不贵。

Best Practices for API Error Handling

写给服务器端的 REST API 开发人员看的:客户端调了你的 API 出错了,就像青春期谈恋爱分手后都想弄明白,到底是你的错还是我的错:)要用对 status code(4xx 与 5xx)、写好出错信息。

Web 前端开发里所说的 Polyfill 是什么 (archive)

HTML5 标准里的 native API 理论上该由浏览器来实现、然后 web 开发者直接调用;但现实是很多 API 浏览器还不支持,web 开发者们就得自己来填坑、自己用 js 实现、然后假装是在调用 native api。

这种用 js 实现的“native api”就是 polyfill。本文作者就是最早用 polyfill 这个词来指代这类“用 js 实现 native api”的人,他一提到 polyfill 就想到 Polyfilla;啥是 Polyfilla?自己 Google 一下 Polyfilla 的图片,你就恍然大悟了,很形象。

Snapchat 的第一个投资人

Jeremy Liew 在 Snapchat 累计下载量不到 10 万时投资了 $48.5 万。当年他通过 whois 找到 Snapchat 域名的注册公司、各种人肉搜索、终于通过 Facebook 斯坦福校友网络联系上 Evan Spiegel。

当时还差三门课就能本科毕业(但选择退学)的 Evan Spiegel 跟他说了 Snapchat 的愿景:Facebook 上人们只分享自己喜悦、自豪的时刻,太肤浅,太假了;人们需要一个私密的、安全的地方可以分享自己沮丧、悲伤的时刻。“true friendships are formed when people share both positive and negative experiences”

人们都在找寻下一个 Steve Jobs。其实,下一个乔布斯既不在硅谷,也不在中国宁波;下一个乔布斯其实在南加州的硅沙滩、把一个“小小的”阅后即焚的 app 带到上市、还顺便做了个带摄像头的眼镜:)

这个投资人 Jeremy Liew 在高中时代与陶哲轩(Terry Tao)一起代表澳大利亚参加国际奥林匹克数学竞赛。

2017/02/05 第 833 期

富豪们为世界末日所做的准备 (archive)

硅谷科技新贵多有风险意识,巨大自然灾害、老百姓仇富暴动、川普若是法西斯独裁者要进行大清洗,该怎么办?家里的直升机随时加满油、常备摩托车不怕堵车、常备枪支弹药、足够的粮食储备、打包必备物品随时可走。

Reddit 现任 CEO Steve Huffman 与前任 CEO 黄易山都去做眼睛激光手术、不再近视了,为啥?灾难到来之时,要是眼镜坏了或找不到了,不就彻底歇菜了?LinkedIn 创始人 Reid Hoffman 估计硅谷富豪们 50% 以上对“世界末日”都有所准备。一听说你要去访问新西兰,大家心领神会,“你丫去买房 / 买地、准备那啥是吧?”

如何成为数据科学家 (archive)

本文基本上可以算是野生数据科学家自学成才指南了:)需要哪些技能、到哪里去找资源来学习、用到哪些工具、数据科学到底做啥的、如何找工作等。

配套阅读前几天推荐的“数据工程师的崛起”:如何成为数据工程师。

省钱的结果往往是让你花更多钱

有的钱是该省;但也有不少为省钱但最终花更多钱的时刻:买了便宜的东西,用坏了,再买,再坏,再买,还坏,不如一开始就买贵的质量好的;明明自己工作的时薪是 $60,但折腾了 5 个小时就为了省 $5。

有朋友明明一年赚 $25、6 万,却死活不愿意每月花 $10 几块钱订个 HBO 什么的,而非得花时间去找、去下载电视剧。如果说学生时代靠奖学金过活、一个月收入 $1800,那还能理解;都工作了,这种“省钱”的行为,花这时间就不值。

产品的 MVP 版与 Beta 版的区别 (archive)

所谓 MVP 就是做一个或极少数功能、但做完整了、好看能用; 所谓 Beta 就是做许多功能、但没做完整、有明显 bug、不好看、勉强能用。 想走设计优先的道路,就做 MVP; 想走功能优先的道路,就做 Beta。

所有“什么都不缺、就缺程序员”的拥有绝世产品 idea 的人都期望瞬间就能拥有好看、好用、功能全面、同时支持 macOS / Windows / iOS/Android / Web / 黑莓 等多平台的产品,最好是能一键生成。

MVP 与 Beta 是他们最大的敌人:)

伟大的 CEO 们绝不会用到的一个词

那就是 revenue 这个词。他以自己在 Google、Facebook 与 Square 工作时的观察到这仨公司比电影明星还红的仨 CEO 对内(员工)、对外(用户、投资人)打鸡血都不用谈营收的,学着点。

2017/02/06 第 834 期

Winamp 之死:你们的第一个 mp3 播放器是如何走到今天这个地步的 (archive)

上个世纪 90 年代末的网民都用过 Winamp。典型的年轻人辍学创业的故事,免费下载、建议捐款 $10,就这样每个月都能赚 $10 万,可见当年有多火爆。后来被 AOL 收购,然后被 AOL 毁了。

当年 Winamp 的网站每月都有几亿 page view,要不放广告就可惜了;还真别说,AOL 还真给放广告了。当年 AOL 手中有内容(时代华纳)、有播放器(Winamp)、有社区,本有机会成为 iTunes 或者 Pandora 这样的线上服务的,但还是玩砸了。

全家桶的鼻祖?“Winamp would have a larger US audience today were it not the fact that AOL tried to get people to install Netscape or AOL or something else when they installed Winamp,”McIntyre concluded.

网页里的导航设计

总结得不错。最后畅想未来的部分可以看一下:VR/AR 时代的导航设计该怎么弄?

Building, And Losing, A Career On Facebook (archive)

故事 1:在 FB 上建页面、发可以病毒式传播的图片,在上面放 affiliate link,一年赚能 $10 万,最高峰时粉丝 400 万。后来被 FB 取缔了。

故事 2:记者被 FB 封了账号,投诉无门。

在 Facebook 上建页面、病毒式传播、卖东西的套路做的人很多。

有个朋友的公司,几个人的小团队,没有拉风投,光靠在 Facebook 上卖 T-shirt 赚的钱就能养活整个团队,然后再做其他比较正经的项目:)

由成千上万大学生支撑起来的标题党帝国

这是一篇关于媒体网站 Odyssey 的报道。上万个廉价大学生劳动力在写稿,公司内全职的编辑审稿,文章浏览量高的学生有报酬;学生也可有偿为品牌写软文。软文数量占所有文章数的 3%。

这种运作模式很省钱又有效啊:大学生赚外快,要价很低;按点击量付给他们钱,他们就有动机去宣传(如分享到社交网络、甚至主动去做地推);而且大量的写手、源源不断的内容。

你最重要的技能:Empathy (archive)

已经卖给了微软的 Wunderlist 的前 CTO 写的文章。在个人生活或者职场上要过得快乐,就要多练习 empathy,有同理心、将心比心、能设身处地为为别人着想、能接受不同看法。

如果没有 empathy,活着是一件很累的事,因为你没法理解为什么竟然会有人跟你想法不同、竟然会有人跟你不一样。

2017/02/07 第 835 期

iPad 推出七年后,我们仍在问错误的问题

iPad 刚推出,人们问:这不就是超大版的 iPhone 吗?七年后,人们又问:这是笔记本电脑的替代品吗?

Instagram 使用 React Native 的情况 (archive)

React Native 是 2015 年开源的,Instagram 在 2016 年初开始小心翼翼地试探使用 React Native 的可行性,主要动机:快速开发迭代、省去编译的时间。

他们使用 React Native 开发的几个新功能在 iOS 与 Android 俩平台的代码重用率高达 90%,甚至有 99% 的。

互联网正在谋杀快乐 (deleted)

在网上我们与成百上千个“好友”互联,但现实中能说话的越来越少;每天在网上看许许多多的爆炸性新闻,似乎吸取了很多信息,但想不起来是哪些;网上每个人生活都很精彩,看看自己,惭愧。

大公司成长的烦恼

在微软、谷歌、Box、Uber 工作过的老工程师现身说法。大公司里员工只是螺丝钉,衡量员工个体的好坏靠的不是产品的质量(毕竟贡献太小),而是靠 performance review,这就引起同事间的竞争了。

还没上市的小公司大家都在同一条船上,还比较能真诚地分享 idea、真诚地互相帮助 debug 之类的,短期内还算有共同奋斗目标(如上市);大公司里同事间多了戒心,伺机抢别人功劳,在邮件与会议上争相表现,动机很简单,个人利益优先。

无人驾驶技术与个人隐私的终结 (archive)

无人驾驶汽车带着 360 度高清实时摄像头满大街跑,人工智能对物体进行识别分析(行人、人脸、一切),存储高清视频或上传到云端。要保证个人隐私、不想被拍下来?只好不出门了(记得拉上窗帘)。

现在可以摄像的设备多了起来,车、手机、眼镜等,很快世界上每个人的照片都能在公开的互联网上被找到了,往往是无意中被拍摄下来。好像 08 年以后结婚的、参加过婚礼的人的照片都存在于互联网某个角落:)有的人是不在意,无所谓隐私不隐私的;但有的人在意,那些在意的可没有办法删除这些照片、或不被拍下来的。

2017/02/08 第 836 期

How I got my wife and son back

川普禁穆令对一个小家庭的影响。作者的有绿卡的伊朗老婆与儿子回伊朗娘家,作者是美国公民、人在达拉斯。他感觉到川普即将对绿卡持有者动手了,争取在川普签行政命令前订机票让老婆小孩回美国。

他都做好最坏准备了,如果妻子与小孩进不了美国,他们就全家到加拿大生活,他的深度学习、人工智能的一技之长是能在那里找到工作的:)结局:看着电视直播,川普签下行政命令;此刻,老婆与小孩在楼下房间里倒时差睡了。

Cognitive Overhead is Your Product’s Overlord (archive)

已经卖给 Google 的、一度很火的 Bump 的创始人对如何做产品的看法。给老人、小孩、醉酒的人用你的新产品,如果他们一下就弄明白怎么用,那你产品算好用的。他们当时就拿 Bump 到酒吧找人试用。

什么编程语言在周末最流行 (archive)

针对 StackOverflow 的提问与标签数据集做的分析。周末比上班时间活跃的话题:Haskell(陶冶情操)、heroku(做 side project)等;上班时间比周末活跃的话题:微软的相关技术。

自动测试数据库备份 (archive)

Tumblr 前 CTO、Instapaper 与 Overcast 的开发者 Marco Arment 介绍了自己每天自动测试数据库备份是否完好的、快糙猛的办法。独立开发者或小团队可以借鉴一下。

他开一台便宜的 Linode,每天自动下载、安装、测试最新的数据库备份,然后自动发邮件报告给他。也就是 cron 调一个简单脚本然后 pipe 到 mail 程序。大家都会做数据库备份,但很少人会去测试备份是否完好,真到出事情了,备份十有八九也是损坏的、还原不了的,肯定让你祸不单行。

2017/02/09 第 837 期

Scaling to Billions on Top of DigitalOcean

这是一个在 DigitalOcean 上使用 400 多个节点的公司的案例。这种规模为啥不用 AWS?虽然 AWS 很灵活、很强大,但贵、难用。

湾区日报也是跑在 DigitalOcean 上的。

大部分的网站在用户网速慢的情况下基本上都访问不了 (archive)

现代网站们都加载超大的 js / css bundle,不下载完都渲染不出页面,亚非拉发展中国家的网速够呛。用户发现页面加载不了不会去想到是自己网速慢的原因,而是会怪对方网站有毛病。

文中提到的小故事:Google 优化了页面加载速度,但上线后发现测量到的平均访问速度反而更慢了。为啥?优化没成功?不,正是因为优化成功了、网页加载提速了,网速巨慢的非洲国家人民从原来压根就访问不了 Google 一下子进化到可以访问 Google 了,这个访问速度现在可以被记录下来了,拖了平均访问速度的后腿了。

Slack 改进搜索结果排序 (archive)

综合考虑各种不同因素、让搜索结果有更高的相关性。但我第一反应是,我们聊天记录都被 Slack 的员工肉眼读过了;赶紧把这篇文章转给那些曾在 Slack 里传密码、发公司机密的同事们。

Slack 员工如果不道德一点的话,可以兼职爆料科技新闻了;哪家公司发布什么新产品、人事变动、公司里的各种八卦,Slack 比谁都先知道:)当然了,任何互联网公司的员工在早年肯定也都需要肉眼读用户发的消息、看用户传的照片的。

为何这些工作还没被机器取代 (archive)

一些人类的服务员对顾客态度不好,这些人类的工作很多其实机器都能做,而顾客可能还更喜欢与机器打交道 — 机器不会给你摆臭脸、不会歧视你。

麦当劳推出自助点餐后,顾客与机器打交道,比较能放得开、肆无忌惮地点超大份的餐;如果是与向麦当劳的人类员工点餐,你可能会有顾虑,这个人会不会因为我点了超大份的餐而心里嘲笑我、背后说我坏话?

下一个大的蓝领职业是码农 (archive)

不需要很深的计算机科学基础,不用上大学,都可以简单学习、复制粘贴代码、从无到有搭一个看着还行的网站、app。逐渐成为劳动密集型产业,主要是进行机械劳动。文中提到肯塔基的煤矿工人学编程、再就业。

2017/02/10 第 838 期

已下线的 Parse 的架构与相关信息 (archive)

在下线前,有 100 万个 app 使用 Parse;完全跑在 AWS 上;曾是世界上最大的 MongoDB 使用者;服务器原来用 Rails 写,奇慢无比,后来改用 Go 写了。使用 MongoDB 运维起来各种坑。

工程师分配情况:8 人写 SDK、8 人写服务器、8 人做 DevOps、若干个做其他的。

Ship Small Diffs (archive)

Commit 小段代码、部署小段代码的好处:

  1. 方便同事 review 代码;
  2. 部署到 production 后若出问题了方便排查错误;
  3. 潜意识地对代码模块化。

代码只有安然无恙地跑在 production 上了,你才比较有信心地说代码是对的;

很多问题是测试、code review 没法发现的。

以前有介绍过,Quora 公司里是先把代码部署到 production、再进行 code review 的(主要是代码美容方面的 review~)。

Familiar is Good

新的线上产品的 UI 设计不要标新立异,随大流、“借鉴”流行的网站 / app 的 UI 就行了,用户也不用重新学一套新的 UI。标题说得好:Familiar is Good。

为何大团体做产品经常失败 (archive)

不同部门的人一起做事,各有小算盘。个人利益优先、自己部门的利益优先,只要自己负责的那部分做完了、打上勾了,就算完了,最终整个项目如何无所谓了。反正延期了肯定怪工程师。

Evernote 后台迁移到 Google Cloud 的浩大工程 (archive)

他们 2008 年成立以来都是用自建的数据中心,最近刚刚全面投向 Google Cloud 的怀抱。这一系列很长的博文详细记录了迁移过程的技术细节。

恭喜 Google Cloud,继 Snapchat 之后又一大客户。不知道 Google Cloud 给 Evernote 价格上多大的优惠。Google 给 Snapchat 至少五折的优惠,而 Snapchat 一家客户就已经占了 Google Cloud 总收入的 1/4 ~ 1/3。

2017/02/11 第 839 期

微软奇迹 (archive)

Satya Nadella 担任微软 CEO 刚满三周年。这三年来微软股价达到历史最高,云计算业务蒸蒸日上,还破天荒地做了很多反微软传统的事:大量的开源项目、Linux、做了一堆 iOS/Android 上的 app。

微软真是迎来了改革开放啊。

Market Caps & The 2% Rule

创业者如何选择有钱途的领域?一般来讲,选那种有多家公司愿意出 $10 亿买你的公司的、或者愿意花他们公司市值 2% 左右的钱买你公司的。作者以前在 Twitter 做 VP。

为什么我的合伙人与我的 CTO 都离职了 (archive)

又到了 CEO 范文时间。一向以公开透明著称的公司 Buffer 的 CEO 写了此文向公众解释为啥公司另一创始人与 CTO 两人离职,以及他们如何将此消息告知投资人、80 几个员工以及公司外的人。

这种重大人事变动都挺棘手的,你得抢在各种小道消息、各种谣言满天飞以前,通过官方渠道主动公开。如果你很好奇离职的这两人拿多少年薪(都是 $18 万多),请看这个表格。

Design Principles Behind Great Products

摘抄、汇总了 Apple、Facebook、微软、Google、Medium 等知名公司在做设计方面的准则。如果公司里要起草类似的文档,可以借鉴一下。

Todon't (archive)

这个世界 todo list app 层出不穷,但为何没一个好用的?todo list 不是解决问题的办法,而是问题的根源;真正重要的事头脑就能记住,只有不重要的事才被记在 todo list 上。

如果每天起床后没法用你的脑袋想出今天要做的 3 件重要的事,那你的生活有比找不到好用的 todo list app 更严重的问题了。先把脑子训练好再说。

2017/02/12 第 840 期

语音搜索与电子地图如何赚钱

人们在手机使用地图很频繁,使用语音搜索也越来越多。Google 已经在自己的 Maps 上放入广告了,下一步得考虑如何把广告送入使用语音搜索的用户的耳朵里了:)

但语音搜索的广告让用户体验很不好;或许会在语音搜索后,将广告投放到手机屏幕或未来的虚拟现实的影像里。没办法,作为用户你又不交钱,只能多看几眼广告、多点几下广告、多听几次广告吧。

你的手机首屏将会改变

现在使用手机的主要方式:用手指点开 app 图标、用眼睛盯着屏幕。AI 与声音识别将改变人机交互,通过首屏的 app 图标启动 app 的次数会越来越少。

为何许多公司认为网络暴力对他们公司是有好处的

因为衡量互联网产品成功与否的重要指标是活跃用户数量、用户活跃度,如果很多用户用你的产品互相争吵、互相攻击,这些用户就是活跃的,只要这些指标上去了、能赚钱了,道德标准可以放一边。sad。

Michael Bloomberg 谈教育、工作、成功 (archive)

多年后没人记得你读的是啥学校;教育中最重要的部分是如何与人打交道,没有什么工作是不用与人打交道的;人生如再来一次会做哪些不同选择?从目前成就来看(世界第八有钱的人、前纽约市长),不会。

iPad 与 Mac 最初几年的对比

iPad 销量逐年下降。一方面说明 iPad 的硬件足够好,人们可以用很久而不用更新换代;另一方面说明专门为 iPad 写的软件还不够多、不够好,没有足够多的用途来推动硬件的更新换代。

2017/02/13 第 841 期

从理想主义回归现实的 Medium (archive)

又拿 Medium 前不久的大裁员、停止广告业务来说事了。采访了被开除的前员工、被突然中止合作的广告商、被突然拿掉广告收入来源的内容提供者,他们当然评价都很负面了。

不靠广告,Medium 这样的平台如何赚钱?他们似乎计划走读者付费订阅、或者读者小额定期捐款的路线,都很难。Medium 这种靠风投续命的公司骑虎难下,要怎样做才能撑住这 $6 亿的估值、怎样才能服务好投资人让他们有高回报?

Your Company Is Only as Good as Your Writing (archive)

来自 iFixit 的创始人、CEO 的文章。对内、对外的沟通,写作都至关重要。好的文案能留住跟多用户、减少客服的工作量;文字本身是 UI 的重要组成部分。

英文科技文档的写作规范可以看作者他们写的 Tech Writing Handbook,或者 Apple 内部用的 Apple Publications Style Guide。

A Dozen Lessons on Growth

算是总结了 Facebook 那帮人搞 growth、增长用户的主要思想(战略上的、而非战术上的)。Facebook 的“让用户在 10 天内加 7 个朋友”的套路在其他社交网络都有类似的版本。

LinkedIn(X 天内加 X 个人为好友)、Twitter(让用户 follow 一定数量的账号,那些账号里有一定比例回过头来 follow 你,然后你就比较有可能经常使用 Twitter 了)。

如果你懒得看这篇文章,可以直接看以前 Facebook growth 团队缔造者 Chamath Palihapitiya 给的 talk,growth 领域经典、必看视频。他一贯口无遮拦,很真性情。可能很多人不知道,他也是金州勇士队的老板之一。

有用的投资与省钱的技巧

  1. 别买房;
  2. 别送小孩去读大学。

来自畅销书作者、著名 podcaster、投资人 James Altucher 的 Quora 回答。

不管你同意或不同意,food for thought。

在美国读大学很贵,毕业后年轻人因贷款都负债累累。

过去十年新出现的工作种类多数都不需要大学学位。

在大学里能交朋友、学会社交、学会做人?

似乎年轻人在网上认识的人比在生活中认识的要多得多。

Again,food for thought。

Remote-First 的公司长啥样

StackOverflow 公司近 400 个员工里有 85 人在家远程办公。为了让这些远程办公的人有归属感,他们公司采取了一系列很人性化的手段、并额外提供一些福利、把这帮人照顾得服服帖帖的。

一群人开会用 Google Hangouts 视频,办公室里的员工在自己座位戴上耳机开会,与远程办公无异;公司报销远程办公的人自己置办的办公设备与家里的上网费用,如人体工学座椅、站立电脑桌、外接显示器等;远程办公的人无法参加公司的 party,直接给他们钱,让他们自己去 party。

2017/02/14 第 842 期

三年之后,预计 Apple 将累计回购 50% 的 AAPL

不错的科普文章,解释了为啥公司要回购股票。

如果你没有时间读原文,可以听一下他最新一集的 podcast,就是口述这篇文章的内容。

Snap 的 Apple 战略

Snap 俨然一个小 Apple:比用户更理解用户,做用户意想不到但充满惊喜的产品;其他互联网公司都在讲网络效应、构建护城河、防止对手进入市场,而 Snap 坦诚没护城河这回事,唯有靠跑得快。

文中的类比:Snap 就像 Apple;而 Facebook 就像微软,各种向后兼容(线上关系图谱兼容线下关系图谱),顺便都抄袭一下竞争对手。

Snap 的 S-1 里讲述他们如何做 Stories 这个产品功能的,很精彩,很洞悉人性;这篇文章里有摘抄出来。

保护硅谷的创新的秘密武器 (archive)

美国大部分州都用竞业禁止协议限制员工离职一年内不能加入竞争对手的公司或做竞争产品(例子:当年微软告跳槽到谷歌的李开复);加州没这事,鼓励创新;谷歌无人车部门的人都纷纷离职造自己的无人车去了

设计合理的员工股权激励机制

股权这事不管你加入多少创业公司、或者创了几次业,都永远不敢说自己弄明白了。文章里提出将员工按先来后到分组指定给股份的数量,最早加入革命的风险大、要多给;革命快胜利了才加入的风险不大、给得少。

The Making of a Brand

品牌不是一个 logo,而是人们对这个品牌所代表的产品始终如一的期望;同一个品牌,如麦当劳,你期望不管走进哪家分店都能吃到类似的东西,这个品牌代表的不是最好的食物,但总是与你预期的差不离。

Brand is the distribution of likely outcomes that you can expect from any company or person ……“You don’t trust the Coca-Cola brand …… You know what to expect from them.”

2017/02/16 第 843 期

不值得招优秀的混蛋做员工 (archive)

有的工程师确实个人能力很强、很聪明,但狂妄自大、目中无人、固执己见、没法与团队里的其他人相处,这种人的存在对团队士气打击很大。招这种人弊大于利。

职业生涯里总会遇到那么几个优秀的混蛋的,看开点。

Craigslist Is Ugly, Janky, Old School……and Unbeatable

各种卖二手货的酷炫 app 携巨额融资、扬言要取代 Craigslist(的某个子论坛),这些酷炫 app 长得很漂亮,除了没什么人用外,没啥不好的。

Craigslist 这个品牌很符合前两天推荐的文章 The Making of a Brand 里描述的:品牌背后的产品虽然不是最好的,但质量很 consistent,每次都与你对它的期望差不离。

Google 无人车项目许多员工离职的一个原因:薪酬太高了 (archive)

给太多钱了,让他们早早地财务自由了(所谓的 Fuck you money),不用再担心钱与工作稳定性的问题了。于是就走了……给钱太少与给钱太多都留不住人:)

何为 Fuck you money?

Instacart 的实体 staging 环境 (archive)

线上服务的开发一般都有一个 staging 环境用以测试最新的代码、配置;Instacart 是代人购物的 app,他们在公司里开辟一块地方模拟超市里的货架、作为实体 staging 测试购物流程。

2017/02/18 第 844 期

Dropbox 创始人在 2013 年的 MIT 毕业典礼的演讲全文

人这一辈子只有 3 万天;人生不需要完美,人生需要冒险;你这个人是与你常在一起的 5 个人的平均;24 岁时第一次融资,刷新自己银行网站见识到从 $60 变成 $120 万,从没逗号变俩逗号。

"…… you're the average of the 5 people you spend the most time with. Think about that for a minute: who would be in your circle of 5?" 你可以找机会多跟牛人在一起,或者……找机会少跟烂人在一起:)

在学校你可以追求完美的 GPA,毕业后,人生不可能完美。可以不断尝试,失败许多次,但你只要能成功一次就够了。"From now on, failure doesn't matter: you only have to be right once."

可以在线观看这个演讲,很不错。

剖析 Twitter 的 Redux Store 的结构 (archive)

Twitter 的 mobile web 使用 React + Redux 写的前端。通过 Chrome js console 可以查看他们是如何组织在前端使用的数据结构的,不错的学习材料。

下载并安装 React Developer Tools,访问 Twitter mobile web,打开 js console,切换到 React,然后在 console 里输入 $r.store.getState(); 相当工整、美观的 JavaScript object,周末泡杯咖啡、可以好好品评一个下午了:)

Instapaper 事故原因分析与数据恢复 (archive)

由于 MySQL 数据文件过大、达到 ext3 的 2TB 文件大小限制,Instapaper 完全中止服务 31 个钟头、然后额外用了整整 5 天时间(包括周末)拉上 Pinterest 与亚马逊工程师一起恢复数据。

前不久有网友评价 GitLab 的数据库故障:如果他们使用 AWS 的 RDS 就不会发生这样的故障了。而 Instapaper 这次故障正是因为他们用了 RDS,完全托管,控制权太小,没法知道(或被警报)2TB 文件大小限制这回事。平时没有演练恢复数据库备份,没法估计到底要花多长时间才能完全恢复。

Refactoring Slow and Steady

代码重构要循序渐进,每个 commit 尽量只做一件事;比如,commit 里只重命名了某个函数的名字,即使一下改了几百个文件,code review 也很好 review。

最怕那种一个 commit 一口气做了 N 件事,第二天想继续做,却发现思路嵌套太深、被自己给绕晕了,只好放弃重构。

35、40、50 岁以后学编程会不会太晚 (archive)

列出了一些“高龄”转行学编程然后做软件工程师或自己创业的案例。有到编程速成班学习的、有在网上看在线课程视频的、也有读个完整计算机科学本科学位的。

为什么现实中有人觉得自己已经 25、30 岁“高龄”了而不适合学编程呢?不用读一个 4 年大学学位就能学编程;退一万步讲,就算读 4 年本科学位,4 年时间算长吗?如果你不觉得 2013 年是很遥远的过去的话,4 年真不算长。

2017/02/20 第 845 期

回首我在 Uber 工作的非常非常奇怪的一年 (archive)

她在 Uber 待了一年,备受屈辱:刚入职就被上司在公司聊天软件里约炮,HR 部门打太极公然撒谎说该人是初犯、没必要毁了他;她尽管工作优秀但转组屡次被拒;团队文化处处彰显对女性工程师的歧视。

她与公司内其他女员工交流后发现很多人也被性骚扰,而且有些还是被同一个人(向她约炮的那个上司)。遇到这种情况,公司里的 HR 部门值不值得信任?报告给 HR 后会不会遭到进一步的打击报复?

Uber 果然是名不虚传的 toxic work culture;Uber 的 HR 看起来很反人类啊。作者不到一周就找到下一份工作,现在 Stripe 上班了。

文中还提到一个故事:他们团队要给 SRE 工程师们定夹克,只订男的,而不订女的。为啥?120 件男夹克可以打折,便宜;6 件女夹克不能打折,不划算。为了“公平”起见,就不订那六件女夹克了。真是为公司省钱。

Co-founder conflict (archive)

创业公司多死于内斗,而非外部竞争。Y Combinator 的前 partner Garry Tan 以自己的经历谈创业中合伙人冲突的问题。创业合伙人之间必然会有冲突,会意见不合、会争执。

要学会接受合伙人间必然会有冲突的这个现实。多个合伙人各有自己负责的领域,可以讨论不同意见,但要信任负责该领域的对方能做最终决策;Strong Opinions, Weakly Held。必要的时候咨询专业人士(如 executive coach)。

最好的投资

最好的投资是你自己。你的知识、技能、人际关系、感情等等。尤其是终身学习的态度。

Unbundling 与 Rebundling

以前喜欢一首歌的话只能买整张唱片,bundling;iTunes 出现后,可以只买一首歌,unbundling;现在 Spotify 和 Apple Music 付费订阅听所有歌,再次 bundling

华盛顿邮报的写作机器人 (archive)

使用写作机器人可以达到俩目的:

  1. 吸引小众读者。人类编辑写作主要是报道全国性新闻、迎合大众读者,而机器写作用来报道本地或小众的新闻。
  2. 让人类编辑的工作更有效率,自动化各种繁琐工作(如采集、推送热点数据)。

2016 年 11 月美国总统大选的时候,华盛顿邮报的写作机器人生成了 500 篇文章,几乎不需要人工干预,吸引了 50 万的点击。

其实各主流媒体现在都或多或少有自己的小程序、辅助人类写稿。

2017/02/21 第 846 期

Facebook 的 Like 的历史 (archive)

2007 年 7 月份邮件讨论星星、加号、拇指三个表示赞同的符号;同月份 Hackathon 做出原型,暂名 awesome button;年底即将上线之际,被小扎给毙了;2008 年一整年小规模用户测试;2009 年初用数据说服小扎,采用 Like 这个动词,上线。

最初这个按钮的名称是 awesome button,内部对“like”这个词反响不好,太平淡无奇,但 like 这个词可以适用多个不同场景。从此以后,“点赞”这个动作流行了起来。

我过去四年都做了什么 (archive)

本文介绍了他最近几年的项目 DistroKid。他们是一个三人团队,一个程序员(他)加俩客服,没有融资,大量自动化、节省人力成本,轻松战胜其他规模很大的、有融资的、劳动密集型的同类公司。

本文作者 Philip Kaplan 是互联网行业的老战士了,连续创业者。他比较早为人所知的是他做的 Fucked Company 的网站与书,关于互联网泡沫时期的公司们的荒唐事的网站;Fucked Company 的名字灵感来源于 Fast Company:)很多人在使用的 TinyLetter 也是他的作品。

停用 To-Do List (unavilable)

不用 To-Do List 的话,怎么知道接下来要做什么?你当天情绪、兴趣、记忆等都能给你指引。

不用 To-Do List 的话,怎么记住有期限、时效性强的事?有一种东西叫日历:)

Man and Uber Man (archive)

这是名利场在 2014 年的关于 Uber CEO 的长篇报道,Uber 的 idea 是怎么来的、早期融资的情况。对 CEO 的性格描述就不难解释为啥 Uber 会有这样的公司文化了,CEO 啥样、就能吸引啥样的人

最开始 Uber 的域名是 UberCab.com,后来用 2% 的公司股份从 Universal Music Group 手中买下 Uber.com;后来再用 $100 万买回这 2% 的股份。恩,2% 的 Uber 股份。

我是如何将 Mint.com 的用户量从 0 增长到 100 万的

他是 Mint 第四号员工,当时负责营销。本文给出了他当年在产品上线初期做营销的框架。先定目标,预期争取的用户数;然后筛选出宣传渠道,将用户数细分到每个渠道,期望的访问量与转化率。

湾区日报的老读者们对这哥们应该有印象。他就是错失 1.85 亿刀身家的 Facebook 早期员工,并且他在 Mint 也没待满一年就离职了。他将自己的经历写了出来。

2017/02/22 第 847 期

宣言与垄断 (archive)

本文针对最近 Facebook 的小扎发表 Building Global Community 的宣言进行讨论,Facebook 在社交网络领域的垄断地位给它带来超乎多数人可以想象的权力。

小扎将要参选美国总统?他的权力已经比总统大得多了。古今中外独裁者都有一样本事,就是影响、进而控制民众的思想,这是极具杀伤力的武器。如果有个平台是人们每天接受信息的入口,这个平台潜移默化地影响人的思想,10 年、20 年后,这个平台的主人需要利用这十几二十亿人来干一件大事的时候,他只要说一声就行了。怎么用?用来做什么?拭目以待。

使用 GitHub Pages 与 Cloudflare 免费托管网站 (archive)

适合做 side project 玩:用 GitHub Pages 托管静态页面、纯 JavaScript 的 single page app;用 Cloudflare 做 DNS 解析,免费 https。后台怎么办?最近流行 serverless:)

使用 Cloudflare 的免费 https 有一点要注意的(我最近刚掉坑里才发现的):最多只支持一级子域名的 https,如 aa.domain.com;如果是二级以上就不支持了,如 bb.aa.domain.com 就不支持 https。

从一顿午餐到被收购:Trello 是如何被 Atlassian 收购的 (archive)

作为收购方的 Atlassian 有两个细节做得不错:Atlassian 的 CEO 在见 Trello CEO 时已用 Trello 列出俩公司文化的对比;Atlassian 将 all hands 更名为 townhall,与 Trello 一致。

为什么我不再搭理 Google 的 recruiter 了 (archive)

工程师被各知名科技大公司的非常不专业的 recruiter 们骚扰是很平常的事。作者以前碰到这种骚扰邮件都会回复:能安排我以后的上司来面试我吗?然后 recruiter 们都不再回复了。

大公司就是这样,面试你的人不是以后你要一起共事的人,他们不关心你的简历、你的背景、你做的项目,他们关心白板做题,这样能够刷掉有经验的、年迈的、不屑刷题的、要价高的老工程师们,留下年轻的、刚出校门的、有时间刷题的、便宜又好用的孩子们。

Snapchat 如果自建数据中心的话会不会比租 Google Cloud 省钱

来自互联网行业老战士、Reddit 前 CEO 黄易山的回答。用户量达到一定规模后,自建数据中心比较省钱,往往要自己定制千奇百怪的硬件才能满足自己极其小众的需求,这是任何云计算平台无法帮你做的。

现在 Snapchat 给 Google Cloud 带来 1/4 到 1/3 的收入,是超级大客户,所以 Google 能动用自己的工程师悉心关照、随叫随到解决各种 scalability 的问题。以后如果 Google Cloud 壮大了后,还会对 Snapchat 这么上心吗?而且,Google 的工程师不拿 Snapchat 的股票,没那么大动力帮你 Snapchat 擦屁股。

2017/02/23 第 848 期

社交媒体需要有“旅行模式” (archive)

跨国旅行过海关检查,有些国家出于反恐、安全的需要,抽查你的社交账号了,就像查你的行李一样。本文呼吁各社交媒体开发“旅行模式”,开启这种模式可以隐藏大部分好友、隐藏曾经发过的大部分内容。

Securitybot:Dropbox 开源的 Slack 聊天机器人 (archive)

他们的安全团队一接到安全警报第一时间都得弄明白:是自己人擦枪走火、还是外部入侵?以前都要挨个去问同事:是你干的吗?现在有了这个 bot 后,自动化了“是你干的吗”这个步骤。

湾区日报的运营也离不开 Slack 聊天机器人。

Designing robust and predictable APIs with idempotency (archive)

本文强调的 idempotency 在 API 设计中极其关键,同一个 api、相同参数调用多次、结果一样。Stripe 的核心产品就是他们的支付 api,对 API 设计自然颇有心得。

往往都有某种形式的 idempotency key 来保证 exactly once,例如同一个支付 API 相同参数不小心调用了多次(如请求失败、重试),只允许扣一次钱;发邮件的 API 相同参数不小心调用了多次,收件人只能收到一次信。

湾区日报自动发微博、Twitter、Facebook 的代码也有 idempotency key,放在 redis 里,避免同一条信息在短时间内重复发送。

即使用了 https 也不要通过 query strings 传敏感数据 (archive)

服务器端的 log 将明文记下完整的 url;浏览器上的访问历史也会明文记下完整的 url;Referrer headers 里也忠实记下完整的 url,然后在别人家的 Google Analytics 上显示。

GitHub 将对你职业生涯产生的影响 (archive)

作者曾在 RedHat 工作了 10 年;当年上班第一天,他上司跟他说,今后你不需要简历了,别人将 Google 你的信息;你的开源代码、与别人在邮件列表里的讨论都将公开。以后,你不需要简历,别人都看你在 GitHub 的表现。

在 GitHub 上可以看到你的代码、你参与的项目、你在 pull requests 与 issues 里如何与人互动、别人怎么评论你的代码、你回复是否得体。归根结底,你的名声将一直在网上存在,你的名声是可以从这个公司移植到下一个公司的。珍惜、维护自己的好名声:)

2017/02/24 第 849 期

揭秘 Facebook 的 AI 机器

典型的大公司 PR 公关下来的 PR 稿。AI 在 Facebook 生态里的各种最新酷炫应用,以及员工采访。

开源博客平台 Ghost 的创业故事 (archive)

把 Ghost 的半成品的 demo 视频放到 Kickstarter 上验证 idea,众筹了 $30 多万。成立的公司是非盈利性质的,没融资,已经能自给自足了。给独立开发者们的建议?不要听别人的建议了,直接动手做吧。

创业者如何战胜自己的冒名顶替综合征

越成功、自己压力越大,担心自己名不副实、担心比人会说“你只不过是运气好罢了”,就是自信不起来。怎么应对这种心理?

Work-Life Balance Is About Years, Not Days

本文举了澳大利亚历史学家、作家 Inga Clendinnen 的人生轨迹为例:年轻时轻松教书、大部分精力养娃,40 多岁后才开始专心做研究、写书,直到 82 岁去世。

别人是一天内纠结如何平衡工作与生活(几小时给工作、几小时给生活),这是一辈子的时间跨度内平衡工作与生活(几十年给生活,几十年给工作)。

2017/02/26 第 850 期

Getting Human Resources Right (archive)

知名投资人 Fred Wilson 针对最近曝光的 Uber 歧视女性员工与恶劣的公司文化所写的文章,教创业公司们如何搞好 HR。

投资人不是写张支票就完事了,还应该监督所投资的那些创业公司,尽早发现问题、尽早 course correction。Uber 最近的事情不是一天两天的问题了,Uber 的投资人也有相当大的责任。

解释 Overcast 3 的新设计 (archive)

我很喜欢这种独立开发者详细解释自己的 app 的新功能、新设计的文章。我每天有几个钟头都在听 podcast,而 Overcast 是我一直在用的播放器,其作者 Marco 也是我很欣赏的独立开发者。

新版本 app 的 UI 设计让用户更容易发现新功能了;他把 app 里的广告从原先的 Google ads 换成用户体验更好、利润更高的自己经营的 native ads,让 podcasts 们在他的 podcast 播放器里做广告,很不错的想法;而且他删除了 app 里用到的没有开放源码的 library,这是不错的实践,不信任那些不开放源码的 library。

纽约时报到底能赚钱吗 (archive)

这几年纽约时报的收入变化不大,但收入的结构变化很大。纸介质报纸上的广告收入大幅降低,线上广告的收入小幅度上升(6%),而数字订阅用户增长迅猛。

为何 Apple 不需要买下 Netflix

Netflix 势头很猛,Apple 若有心做视频,其手头的现金可以轻松买下 Netflix。但没必要。看看音乐:Apple 本可轻松买下 Spotify,但选择自己做 Music,订阅用户数增长挺不错的。

猜测:会有一个 Apple Studios 的娱乐内容孵化器,内容的形式或将超越传统的音乐与视频的范畴;Apple 在下一盘大棋,做 Apple Music(以及一些视频方面的努力)只是其中一小步,这不是收购某某公司这么简单的事。

如何对一个新的社交网络 app 进行估值 (archive)

很多人都不理解凭什么“小小”的一个社交 app 还没盈利就能估值几个亿。

本文提出了用已经上市的或已有估值的 app 作为参照物,就能大概估算一个新 app 的价值区间。

提出了俩指标:

  1. equity value per user,市值除以月活用户数;
  2. revenue per user,季度收入除以月活跃用户数。

这是 2015 年的文章,所以数据比较老了,但 Facebook 与 LinkedIn 这俩指标一直都超高。

2017/02/27 第 851 期

在 Reddit 上操纵舆论 (archive)

有专门的公司控制着一堆真的、活跃的 reddit 用户账号,只要你交钱,就可以按你的要求发帖、回帖、顶贴、引导舆论。应用:危机公关、新产品上线、攻击竞争对手、造谣。

如果有能力把一条消息在短时间内传达给数以百万、数以千万计的人,确实是能赚到钱的。

How Discord Stores Billions of Messages (archive)

Discord 使用 Cassandra 来存储聊天消息的经验分享。一开始用 MongoDB 快速迭代开发,然后迁移到 Cassandra。

Intercom 的创业故事

Intercom 是他们几个创始人一起搞的第三家公司了,来自爱尔兰、在硅谷很难融资。07 年第一次到湾区,由于是 Twitter 最早的那批用户、试着给 Twitter 创始人 biz stone 发邮件、一两个钟头后被邀请到 Twitter 办公室。

biz stone 投资了 Intercom,尽管他没弄清 Intercom 是干啥的;有了 Twitter 创始人做早期投资人,以后融资就容易多了。

Top ten pull request review mistakes (archive)

看都没看代码就 +1、ship it、LGTM 的;拖了 N 天才开始 review 的;过于纠结代码风格的;轻易放过劣质测试代码的;凭想象来 review 前端代码的。

review 别人的前端代码(html、css、js、app ui),最好将代码弄到自己本地机器跑一下,肉眼看看跑出来的 UI 长啥样,盯着代码、全凭想象,是很难看出毛病的。当然,提交代码的人也可以提供截图、动图,或者亲自 demo,方便他人 review 你的代码。

Chrome:来自 Google 的神秘项目(2008) (archive)

2001 年 Google 俩创始人告诉 Eric Schmidt 他们要做浏览器,被 Schmidt 制止了;2004 年互联网上谣传 Google 要做浏览器;2006 年开始做浏览器;2008 年正式推出。

本文发表于 08 年 9 月 2 日,Chrome 正式推出的那一天。选用 WebKit、自己做 JavaScript 虚拟机(v8),保证这个浏览器速度快;事先让 Mozilla 的人知道有这个浏览器项目的存在了;在决定 UI 上放哪些按钮、哪些功能时,先假设 UI 上啥都没有,一个个功能深思熟虑,能不放就不放,保证 UI 的简洁。

2017/02/28 第 852 期

User Research is Overrated (archive)

花几个星期的时间做所谓的 user research(采访潜在用户、创建 persona 等一堆方法论)是很浪费时间的,更像是为了不愿意动手做东西而找借口拖延时间。

Culture is the Behavior You Reward and Punish (archive)

来自 VMware 前 vp engineering 的文章。她在文章里没有指名道姓地说是针对什么公司、什么事件而写的,但读者应该都能猜得出来。

公司文化不是靠说出来的,而是员工们的实际行为表现;新员工入职后,会观察、会模仿老员工的行为;如果一个混蛋做尽坏事照样能往上爬,新员工们会怎么想?这就是公司文化。

我是一个 Uber 幸存者 (archive)

又一个 Uber 以前的女工程师撰文讲述自己在 Uber 工作的惨痛经历。上司言语上的挑衅与折磨、HR 的不作为、一些男同事建群分享自己对女性同事性幻想。

"The HR team was known to be deftly afraid of Travis’s tendency to blame and ridicule the women and yell at HR whenever they went in with complaints of abuse."

Incident management at Google (archive)

Google Cloud 的 SRE 工程师第一次 oncall 的流水账。文中叙述的各种实践在湾区工作的人应该都很熟悉,可能由于 Google 前工程师散布在湾区各公司、将这些实践也带了出来。

2017/03/02 第 853 期

使用 Nginx 做 S3 的缓存 (archive)

思路很直白,而且不用改代码:用 Nginx 做 S3 的缓存,Nginx 将文件缓存到本地服务器磁盘上;访问都是通过 HAProxy 传到 Nginx 或 S3(如 Nginx 挂掉的话)

Airbnb 如何进入 Y Combinator 的

2008 年,Airbnb 钱花光了,创始人刷爆信用卡;其中一创始人 CTO 已打算散伙、已回东部、订婚、做起咨询养家糊口了。剩下的俩创始人靠卖麦片养活自己。最后一线生机:Y Combinator

Paul Graham 被卖麦片的故事打动了,直呼:你们简直就是创业圈的蟑螂,永远不死的。后来三个创始人又聚在了一起,走到了今天。本文是作者的新书 The Airbnb Story 的节选片段。

Dilution (archive)

Sam Altman 谈融资。那些巨额融资、牺牲太多的股份的公司很少有成功的。牺牲多少股份合适?种子轮 10%-15%,A 轮 15%-25%。那种啥都还没做就先丢了 50% 股份的基本就没戏了。

There’s No Magic in Venture-Backed Home Care (archive)

HomeHero 曾是老年人居家看护领域的 Uber,在花完风投给的钱之前决定放弃这一领域彻底转型。创始人在本文总结了这些年的经历、经验、教训。

这种某某领域的 Uber 都要与政府法规做斗争;这种公司招一堆合同工,便宜,不用给他们买保险、没带薪假、避免各类潜在的雇佣官司等,但政府法规往往要求这些提供服务的人得是正式员工。HomeHero 一度遵纪守法把合同工都变成全职员工,结果多方都不讨好。

我是小有成就的程序员,我过不了白板面试 (archive)

Rails 之父 DHH 在 Twitter 上调侃:我叫大卫,我没法在白板上写出冒泡排序,我都是从网上找代码,我不会做脑筋急转弯。一堆小有成就的程序员们跟帖纷纷表示自己必定过不了白板面试。

白板面试是为了招聘无足轻重的小螺丝钉的,你们这些有创造力、小有成就的人瞎起哄啥?你读那么多书,去建筑工地面试面砖还不一定能过呢,雇主需要的技能跟你的技能是不匹配的。

2017/03/03 第 854 期

Silicon Valley La La Land (archive)

硅谷版的 La La Land:)写得很地道,在湾区生活、工作的人应该会喜欢的。华裔女生和中国男生在湾区相遇和相爱的故事,然而梦想从硅谷匆匆路过的,两个人都没停留……

这是来自湾区日报的读者 duree 的文章,中文版在此,写得真不错。(archive)

为何 Snap 称自己是相机公司

引用了张小龙说的:PC 互联网的入口是搜索框,移动互联网的入口是二维码。摄像头是一种输入设备,扫二维码、图像识别、图像搜索、无人车的“眼睛”、AR。

Snap 有足够多的照片进行训练,可以做 visual search engine,或智能的 AR。今天 Snap 上市了,表现不错,市值 $280 亿,这么一个“小小的 app”的市值已经高于这些公司:Twitter、法拉利、Best Buy、希捷、希尔顿、美国航空。

Unix 哲学的崩塌 (archive)

吐槽了一系列 Unix 糟糕的设计,尤其是 shell;Unix 上目录命名规范很多都是“历史遗留问题”。本文的目的是让人们意识到 Unix 是不完美的,还有很大的改进空间。

Ken Thompson 曾被问到如何能改变 Unix 的话,他将改变啥?他说想把 creat 系统调用命名为拼写正确的单词 create。

Why we are not leaving the cloud (archive)

GitLab 在 2016 年底写博文说他们即将从 cloud 迁移到自建的数据中心。但在听取了广大网友们的建议与警告后,决定继续留守 cloud。本文汇总了一些网友精辟的建议与警告。

业务达到一定规模后自建数据中心确实是能省钱,但前提是你不差钱,团队也达到了一定规模,并能有足够的人手、足够强的搭建与管理硬件的技能;毕竟你擅长的、能赚钱的是顶层的应用,而非搭建与管理硬件,把你不喜欢也不擅长的活交给专家吧。

JSON-Pure:REST API 的替代品 (archive)

REST API 与 HTTP 协议捆绑在一起,如依赖 HTTP 请求方法与状态码,难以移植到其他传输协议,如 WebSockets。文章提出的 JSON-Pure 模式其实在 GraphQL 里已有体现。

2017/03/05 第 855 期

又一个 Uber 前员工勇敢站出来:女上司对女工程师的性别歧视 (archive)

她在文中附上了一封她写给 Uber HR 的邮件,历数她那同样是女性的上司的种种恶行。与之前大家看过的 Uber 故事一样,与 HR 多次开会后,HR 打太极、不作为。最终欺负人的混蛋依然留在公司、被欺负的员工离职。

在一个恶劣的环境里,对与自己同一类的人下狠手是很常见的……

How Not to Die (archive)

来自 Paul Graham 的一篇 2007 年的旧文。只要你的小创业公司能活得足够长,你就能致富。怎样才能争取到足够的时间?要嘛做得足够快跑赢时间、要嘛有足够多的钱来付自己工资然后买时间。

人其实也一样,只要你活得足够长,你就有成功的一天。在 18、9 岁死掉,人生最大成就:考上某大学;在 22、3 岁死掉,人生最大成就:拿到某大公司 offer;在 25 岁死掉,人生最大成就:靠父母的首付买房;在 30 岁死掉,人生最大成就:生了个娃。hmm,我又在胡言乱语了:)

Amazon 对其 S3 故障的分析报告 (archive)

这是 2 月 28 日一个工程师 fat finger、敲错命令而引起的巨大故障。S3 故障就意味着大部分于 2010 年以后成立的美国的酷炫著名互联网公司们的线上服务也出现故障。

给人用的工具(如命令行程序)的设计(如命令行参数、脚本对错误的处理)一定要考虑人是必然会犯错误的、要减少自己人擦枪走火的情况。大部分 production 的事故都是因为“改变”而引起的,改了代码 / 配置、引入 bug,或者人为操作、敲错命令。所以星期五下午尽量不要进行 production 的“改变”,不然周末就有可能不好过了。

减少 Slack 桌面客户端的内存使用 (archive)

Slack 的桌面客户端里,每一个 team 是一个 webview,跑 javascript、渲染 DOM 很吃内存。很多用户都有多个 team,但任何时刻都只能在一个 team 里聊,所以其他不活跃的 team 没必要渲染 DOM,这就能省下很多内存了。

文中那张“怎么决定是否通知用户有新消息”的图,真是,很,复,杂……

Foursquare 顽强地生存了下来 (archive)

Foursquare 最有价值的东西是用户们 check in 的精确的地理数据。这些数据通过 API 的形式卖给其他公司、开发者们使用;比如健身类的 app 可以在你接近麦当劳的时候提醒你不要吃垃圾食品:)

购买并集成 Foursquare 数据的知名公司有:Snapchat、Twitter、Pinterest、Uber、Microsoft。

2017/03/06 第 856 期

Exponential growth devours and corrupts (archive)

Rails 之父 DHH 的批判硅谷式创业的文章:对创业公司指数级增长的期望造成产品臃肿不堪、布满了引诱用户犯错的 growth hack 陷阱,让公司急功近利、烧钱买增长、让世界变得更糟。

Security 101 for SaaS startups (archive)

创业早期专注于产品,有一些东西可以不用太重视,比如安全、scalability、测试等,因为公司说不定半年后就倒了;但有一些最佳实践最好举手之劳做了,不然以后 tech debt 不好还。本文就是属于安全方面的“举手之劳”的事。

用三个月时间全职找工作的体会与反思 (archive)

创过业、做过 CTO,找高级码工、架构师之类的职位。与 55 家公司联系,聊了 191 个人,224 小时花在讲话上,33 个小时的带回家做的面试题作业。走完 14 家公司完整的面试流程,6 个 offer,5 个明确拒绝。

作者对经历过的面试流程的评价:dehumanizing, stressful, chaotic, inaccurate, opaque。

You Can’t Have a Rollback Button (archive)

很多公司部署代码的流程里都有一键 rollback 的机制:当发现新版本代码里有 bug,以最快的速度恢复到上一个好的版本。回滚代码容易,但回滚数据(缓存、数据库)很难很难。

最佳实践?与其 rollback,不如 roll forward。使用 feature toggle。先将一小部分(如 1%)的请求切换到新版代码,检验一下是否有 bug;让 1% 的用户生气总比让 100% 的用户生气来得好吧:)

当你刷了信用卡后,都发生了什么 (archive)

解释了信用卡的运作原理。整个流程很复杂,手续费很贵,因为层层收费;没有必要那么复杂,手续费也没有必要那么贵。垄断 + 法律法规让这方面的改进、创新变得十分缓慢。

让我想起了“当你在浏览器输入 google.com 并按回车后,都发生了什么”:)

2017/03/07 第 857 期

作为开源项目的维护者是一种什么样的体验 (archive)

作为一个流行的开源项目的维护者是很不容易的,素不相识的伸手党们会因为你没有及时回答他们的问题、没有及时帮他们搜索出他们想要的答案而咒骂你,开源项目维护者们往往会憋出心理疾病来的。

很多人会说,怎么心理素质那么差、不就被说几句吗?如果你每天看到那些对你个人、对你个人作品的负面评价,然后又能保持正能量,那你真的很厉害;不过,得先有人愿意骂你,估计你还没厉害到有很多人愿意花时间去理你、去评价你。恩,所以你是无法体会到的。

垃圾营销邮件是如何运作的 (archive)

在某网站注册账号、“获赠”免费小礼品,然后注册信箱被同步到各营销机构;这些营销机构收集足够多邮箱后,就能到处接活群发邮件了,推销各种三无产品之类的。

发邮件的 IP 与邮件的域名是有“名声”的,名声不好就会被 gmail、hotmail 这种大的服务提供商扫进垃圾邮件;所以这些营销机构在群发邮件前得“预热”一下:自己注册一堆 gmail、hotmail 邮箱,群发邮件到这些假邮箱,只要这些假邮箱不把邮件扫进垃圾箱,那么他们的域名、IP 就有一些好名声了。

如果你有办法把一个消息传递给许许多多的人,那你就有办法赚钱:)

ConvertKit 的创业故事 (archive)

他在 2012 年很公开地写了篇博文说要做一个网站、然后 6 个月内达到月收入 $5 千。他做了这个营销邮件自动化的 SaaS,将近两年时间里,月收入却一直在 1 千到 3 千,差点不想做了;后来全身心投入,现在招了 24 个员工,月入 $60 万。

创业公司员工的期权真的很复杂 (archive)

非常详尽地给出了各种情况下的交税情况。但即使你自己创办了 N 家公司、又是做风投,你不没法说自己对期权“很了解”。这套东西就是那么复杂,总是有一些 edge case 你没法解释清楚的。

AWS 故障所带来的损失

如果你整个 infra 完全依赖于 AWS,那么 AWS 故障了你也会受影响。那不用 AWS 了?如果你自建服务器的话,你将面临更频繁的故障、将花更多时间去做你不擅长且不喜欢的 infra 的事,更糟糕。

术业有专攻,该让别人赚的钱还是要让别人赚的:)

2017/03/08 第 858 期

在 Uber 的工作经历会成为简历上的污点吗 (archive)

Uber 新员工培训的问题:“我们的竞争对手上线了类似 UberPool 的服务,我们已经来不及上线一个稳定版的服务了,我们该怎么打败他们?”正确答案是:“上线不稳定版,然后打败他们。”这样很 Uber。

"Leslie Miley, a veteran software engineer who previously worked at Slack, said that he absolutely takes what he called Uber’s“asshole culture”into account in hiring decisions."

理想的创业合伙人长啥样 (archive)

Sam Altman 给出了答案:他的 OpenAI 公司的合伙人 Greg Brockman。能以极快的速度写代码、招得到一堆牛逼的人、听得进意见、愿意做技术之外的脏活累活。

OpenAI 现在团队 40 多人,牛人密度很高。怎样才能招到牛人?你本身就得牛,光靠忽悠是不行的。Greg 之前在估值近百亿的 Stripe 做了 5 年 CTO,今年还不到 30 岁。有人会说,Greg 那么牛逼,为啥还需要合伙人?因为他的合伙人一个是 Sam Altman,一个是 Elon Musk。

前几天去 Twitter 总部楼下的咖啡厅见个人,隔壁桌正好是一个 OpenAI 的工程师在游说某个 Twitter 的员工加入他们 -- 我承认我喜欢偷听别人讲话:)

这套流程让我的创业公司被纽约时报、CNN 等媒体报道了 (deleted)

本文简直就是创业公司寻求报道实用指南,非常有策略。本文介绍了如何用工具抓取并整理一堆相关博客、媒体的联系方式,并给出了发给媒体的邮件的模板,很鸡贼、很实用。

做东西很容易,但要让很多人知道你做的东西却是一件很难的事。所以创业公司都要想尽一切办法,免费的、付费的各种手段,只为了把一条消息传递给尽可能多的人。找媒体报道是一条路,但不容易打动那些 reporter 们,毕竟骚扰他们寻求报道的人太多了。

采访 Josh Elman

Josh Elman 是 Greylock 的 partner,他在做 consumer products 方面的专长赢得硅谷众多创业者的尊重。

这个采访里他给的做产品、做 VC 方面的建议都不错。

当你听到寻求融资的创业者们说的哪三句话时你就彻底没兴趣了?

  1. 啥叫 Cohort?
  2. 我选择这个 idea 是因为这个 idea 容易拉到风投。
  3. 我觉得 Facebook 绝不会去做我的这个 idea 的。

Revisiting The Unicorn Club (archive)

分析了成立于 2003 年之后的 274 家估值 / 市值在此时此刻超过 $10 亿的公司(独角兽),其中美国有 148 家、中国 69 家。红杉资本投资了其中的 41 家独角兽,第二名 Accel 投资了 19 家。

按领域来看,美国最多独角兽的领域是 SaaS,而中国几乎都是 consumer internet(容易造势、容易忽悠、营销优先的公司?)。

最早将估值 $10 亿的公司称为独角兽的是这篇发在 TechCrunch 的 2013 年的文章。

2017/03/09 第 859 期

The Death of Thought

没时间思考。一有空闲就刷手机、刷社交媒体。一天下来好像接受了许许多多的信息,但好像没啥记得住的或没啥有用的。或许只有在洗澡的时候才能思考、因为无法用手机?

在 Quip 做工程师是怎样一种体验

Quip(已被 Salesforce 收购了)的创始团队多来自 Google、Facebook,技术上比较成熟,每天“只”部署代码一次,周五不部署新代码,系统超稳定、oncall 的人很闲,热衷于做工具尽可能自动化。

成熟的创业团队有经验、做事情可以比较有条理,不用吐血加班;年轻的没经验的团队会比较努力,但多年后回过头看,很多时间用在了踩坑、交学费上了。

为何命名如此之难 (archive)

需要给东西取名字的时刻太多了:域名、公司名、主机名、函数名、变量名、项目的代号、会议室的名字等。人的想法各不同,对同一个名字理解不同,往往会有所误解。

桌面操作系统上的那些“东西”都是拿 70 年代办公室里的“东西”命名的:Folder、Trash、Desktop。

在科技圈工作十年 (archive)

在三八妇女节之际,女工程师写下十年来的职场道路:MIT 毕业、日本工作、在东京大学做 RA 被导师性骚扰、到旧金山创业公司工作被性别歧视、在 Airbnb 工作三年、辞职画漫画出杂志解释计算机科学知识。

一直在战斗。致敬!

Kevin Durant 在硅谷的生活 (archive)

硅谷科技圈上得了台面的人都爱与金州勇士的球星来往,反之亦然。Durant 在 Ben Horowitz 家过生日;然后在 Eddy Cue 家观看本届总统大选,一起观看的还有 Tim Cook。

Durant 的公司 Durant Company 也投资了不少创业公司。相关文章:伊戈达拉学做科技圈投资人、与打篮球一样刻苦执着的投资人:Kobe Bryant、在风投接管了金州勇士队后

2017/03/10 第 860 期

Voice and the uncanny valley of AI (archive)

声音最为计算平台的 UI 几乎已成为现实,声音识别与 AI 技术今年都有极大发展。但实际上各类“智能”声控的产品都还很不理想。

人们的期望是能够与机器用自然语言对话,现实是你只能说特定的一些“命令”而你也很难事先知道到底哪些命令能 work、哪些不能 work。声音产品、AI 的发展正处于所谓的 uncanny valley 阶段。

Microcopy 的魔力

所谓 microcopy 就是 UI 上那些带给用户惊喜(或亲切感)的小小的文案。文中举了不少这种 microcopy 的例子,看得出这些 makers 都很用心。

The PRPL Pattern (archive)

通过 Progressive Web + HTTP/2 构建反应超快的 mobile web。快速渲染出网页基本框架,push、缓存、或 prefetch 各种关键资源,lazy load 剩下的资源。

有种假象:手机上的 native app 很快,而 mobile web 很慢。因为 native app 下载安装后,即使在没有网络的情况下也能打开,能看到颜色、图标、基本框架、缓存的内容等;而 mobile web 相当于每次用都得“下载”,没有网络、或网速慢的情况下连个“壳”都出不来,所以感觉慢。如果把 mobile web“安装”到浏览器上,就能造成“很快”的假象;不管有网没网每次都能瞬间打开,就像使用 native app 一样 -- 这就是 Progressive Web App 所倡导的。

“10x 程序员”之谜 (archive)

从事脑力工作的群体里很容易识别出某些人的工作效率比其他人高出十倍、百倍,比如所谓的 10x programmer。本文列出了这种“10x 程序员”能高效工作的原因。

2017/03/11 第 861 期

为何 Trello 无法做成 $10 亿级别的公司 (archive)

Trello 以 $4 亿多被收购,结局其实算不错的了。如果再来一次,Trello 怎么做才能更上一层楼、达到估值 $10 亿、不用卖身、且能战胜众多抄袭者(如 GitHub、Asana)?

对比:Trello 上线三年,达到 1000 万用户;Dropbox 上线三年,400 万用户。Trello 免费用户没有升级成付费用户的动力,掏钱的动力不足。要说服个人用户掏钱很难,但如果能讨好公司客户,公司们倒是人傻钱多。

Password Rules Are Bullshit (archive)

很多网站、app 注册新账号时都要求非常复杂的密码规则(大小写结合、要有数字、要有非数字非字母、至少 8 个字符等),这给用户与开发人员都带来巨大不便。没必要那么多规则。

How to never complete anything (archive)

作者反思:自己也算是公司内优秀的工程师,大规模系统架构啥的玩得很溜;无奈业余时间做的一堆 side project 没一个从一而终,不是三心两意追逐不断出现的新技术,就是想太多做得太复杂然后做不下去了。

如果在乎做 side project 的过程,那多尝试新东西是没错;如果在乎结果,想做出一个别人可以用的东西,那么实现上没必要跟在公司里做东西一样“严谨”,意思一下就行,不要弄什么 microservice、酷炫 js 框架,都跑在一台机器上,快糙猛。

如果你鼠标右键打开湾区日报网站的 HTML、JS 源代码,你就知道我在湾区日报这个 side project 上是多么不规范了,没有 minify、uglify,没有酷炫 js 框架,css 内嵌在 style 里;湾区日报最有价值的是原文链接,其次是我写的中文简评,代码只是辅助的。

如何知道某个产品是否真的用了 AI

风投进城防骗指南:某家创业公司声称他们的产品用了牛逼的 AI,很智能;

如何判断他们是不是在骗人?文中提到可以让他们解释算法;

俩问题:

  1. 风投要没三两下子还真听不懂;
  2. 商业机密不便投入,怎么办?

一般正规的风投都养了一帮人在评估技术方面的事情的;

如果没养这么一帮人,也会去请信得过的专家朋友来帮忙把关。

我有个朋友是 UC 某校教授,最近几年有在帮一些风投把关创业公司是否骗人、技术是否牛逼,也不失为教授赚外快的一条路。

你为何会觉得写测试是一件很烦的事

很多刚毕业的年轻程序员觉得写测试是很沮丧的事,写起来磕磕碰碰的,不痛快。为啥会有这种感觉?在学校里学了几年的编程,很少人有机会去写测试,对测试这门手艺活当然很陌生了。摆正思想,多练习,自然就熟练了。

2017/03/12 第 862 期

Why you should kill your cash cow

2007 年 iPhone 推出时,iPod 占 Apple 收入的 50%;2009 年黑莓占智能手机市场份额 25%;2011 年黑莓销量达到顶峰;2012 年之后,黑莓急速衰落。

Apple 相当于在 2007 年亲手杀掉公司赚钱的大奶牛 iPod 而推出新的产品线 iPhone;Apple 管理层里没有设专门管 iPhone 的 VP 或专门管 iPod 的 VP,这样就不会有山头主义、保护自己部门的产品、阻止公司内推出新的产品线。如今,iPhone 占了 Apple 收入的 70%,Apple 会杀掉这头赚钱大奶牛吗?

What We Talk About When We Talk About Companies

一个风投做投资决策所要考虑的点。虽然有各种数据、定量分析,但到了做决策的时候,更多的还是定性分析。

软件工程师如何估算项目所需时间

产品经理、CEO、CXO 们都很不解,为啥程序员们估算项目所需时间都这么不靠谱,说好两天能做完的、实际都要拖几周。要估算好项目时间,重点是各方要及时沟通好。

程序员上班 8 小时没法每一分每一秒都在写产品功能的代码的,面试、开会、code review、oncall、修 bug 等事情往往要占去一大半时间;而且产品经理别老改需求啊;所以沟通很重要。

可以匿名发消息的 app 为何都失败了

匿名降低了实施网络暴力的门槛,可以无责任随便骂人、造谣、毁谤。已下线的 Secret 一度雇佣了 90 个全职员工进行删帖活动,维护成本太高。

让人上瘾的线上服务往往都需要用户有个身份,即使不实名、也得有个网名;有这么一个身份,用户就能日积月累地进行投资(时间、精力、金钱),让身份变得“尊贵”(如名声、等级、积分等机制);人的虚荣心得到满足,不断回来维护自己的虚拟身份,用户留存率就上来了。而匿名的 app 里,用户没有身份,没法进行“投资”(投资时间、精力),没有回来用的必要,新鲜劲过了也就不想用了。

Mint 如何在正确的时间发正确的消息留住用户 (archive)

消息可以是电子邮件、app 消息推送、短信。

通过发消息提醒用户“快点回来打开网站、打开 app”是很标准的实践,一般有两种类型:

  1. 事件驱动的;
  2. 定时发送的。

作为用户的时候,很烦各种 app 推送消息;

作为开发者的时候,却要想方设法推送许多消息给用户。

做下属的时候,在背后骂领导;

当了领导后,抱怨下属能力太差。

人生不同阶段角色的转化总是那么有意思。

2017/03/14 第 863 期

Messenger Day 在设计上的缺陷

去年 Facebook 在 Instagram 上抄了 Snapchat 的 Stories 功能,今年又在 Messenger 上抄了一遍。Quora 设计总监在本文指出了此次抄袭之作在美观、实用、产品上的缺陷。

Complexity and Strategy (archive)

有一定工作经验的工程师都知道:实现第 N + 1 个功能的代价不是 1,而是更接近于 N。功能越多、代码越复杂,就越难以加新的功能、难以创新。作者有什么资格写此文?他领导过 Office 的开发十余年。

关于编程语言,以及为何我爸从程序员转行做公交车司机 (archive)

程序员们喜欢为“最好的编程语言”而争论不休,作者举了他爸为例:曾是 COBOL 程序员,工作多年但由于没有主动学习最终失业、破产、找不到工作、去开公交车了。关键不是编程语言,而是不断学习的态度。

不同类型的测试 (archive)

用户行为的测试(如 A / B 测试):做实验 + 人类给反馈;软件行为的测试:做实验 + 机器给反馈;验证功能正确性:Spec + 人类给反馈;验证功能稳定性:Spec + 机器给反馈。

Code review 也是测试的一种,属于验证功能正确与否,Spec + 人类给反馈。

莫博士:活在科技圈统治阶级的阴影之下 (archive)

中国以外的 consumer facing 的科技公司们都活在 Apple、谷歌、微软、FB、亚马逊五家公司形成的统治阶级的阴影之下,小公司们依赖他们的平台、被他们抄袭、碾压、收购。

这五巨头产品同质化很严重,既是竞争关系、又有合作、有依赖。

Eric Schmidt 曾说 Apple、谷歌、FB 与亚马逊是 consumer tech 的四人帮,认为微软是侧重于 enterprise 产品的,不在四人帮之列;时任 Windows 部门老大的 Steven Sinofsky 回应:历史上被称作四人帮的都没好下场。

2017/03/15 第 864 期

I am Not a Hacker (archive)

字里行间一看就知道作者是文科生:)作者对程序员这个群体进行研究,试图弄明白“hacker”的定义、为啥很多程序员不承认自己是“hacker”、以及编程这门手艺活的“威力”。

互联网、电脑与生活越来越息息相关了,会编程的话,能写脚本自动化繁琐的工作,甚至能找到某些政府网站的后门便利自己与家人(发挥自己的想象力啊)。

Super Angel Chris Sacca (archive)

Forbes 对著名投资人 Chris Sacca 的经历的报道。早年炒股 $1、2 万炒到 $1 千 2 百万、再到负债 $4 百万;在所有人还不知道 Twitter 是啥的时候透支信用卡投资 Twitter;拥有 Uber 不少股份却与 Uber CEO 闹翻多年不说话了。

这哥们胆子够大,应该让他发财。如果懒得读文字,可以听 Chris Sacca 接受采访的 podcast;他接受很多很多 podcast 的采访,我印象最深的是他接受 Bill Simmons 的采访(可能是两个人都很有名,所以我印象深吧)。

btw,他早年炒股是大学助学贷款作为启动资金的……

Tenets of SRE (archive)

Google 的现役 SRE 工程师批注 Google 的那本关于 SRE 的书。这是一系列文章,可以关注一下。

Google 的那本 SRE 的书在网上可以免费看,里面经验总结、运维的思想真的很不错,大多都适用于当今线上服务的运维。

科技圈今天的流行风向标并不能预测将来牛逼创业公司的出现

牛逼的创业公司都是在潮流出现前创立的,如 Airbnb/Uber 创建于“共享经济”潮流之前。投资人如果追逐潮流,就已经太晚了。

从 dotCloud 到 Docker (deleted)

Docker 这家公司的前身是 dotCloud,做 PaaS 的,很早就用 container 技术;一开始用 python 给 LXC 与 AUFS 加了前端,慢慢演化成如今大家耳熟能详的 docker。

本文作者是 dotCloud 的早期员工,现在也还在 Docker 工作。本文回顾了 dotCloud 里的 container 使用情况、到 docker 的演化之路,以及解释了一些技术的选择。

2017/03/16 第 865 期

自己出版 Ruby on Rails 的书,赚了 $7 万 (archive)

赚 $7 万看上去不是很多,但除以他所投入的时间,时薪 $291,挺不错的。文中讲他如何选材、选角度做这个教程 / 书的部分讲得很好。Rails 的书太多了,他从性能优化的角度来写,就与其他书区分开来。

我对这种不依靠“组织”(公司)、没有领固定工资、完全靠个人能力赚钱的人很是钦佩。这种人要去找一份“正常”工作很容易,但公司里领工资的人离开了公司要赚到自己的工资钱,往往很难。

其实在探讨“稳定”工作、job security 的时候,不应考虑在同一份工作是否能做一辈子,没人能保证这样的“稳定性”;而是要想想你现在换公司,容易(比如 2 周内)找到至少同等薪酬的工作吗?万一找不到这样的组织集体接收自己,你一个个体,有能力赚到同样的钱吗?

Brain drain (archive)

Y Combinator 孵化出的公司 Genius 年初悄然裁员 1/4。从注释 RAP 歌词,到“注释整个互联网”的雄心壮志,再到转型成为视频内容为主的媒体公司。今后的路该怎么走?

之前读 The Launch Pad: Inside Y Combinator,书里大篇幅介绍 Genius 这家公司,看上去前途一片光明的样子。现实中则是非常挣扎。他们“注释这个互联网”的 Chrome 插件才 1.2 万人使用。

Why Your Startup Should Be a Delaware C-Corporation (archive)

科普文章一篇。Delaware C-Corp 就像标准编程接口一样,进行融资、(自以为将来会)高速发展的创业公司遵循这个标准就是了。

风投、律师都有一整套的标准文档、标准流程针对 Delaware C-Corp,方便自己也方便他人,成立公司就走 Delaware C-Corp 路线。

Mixpanel 在员工股权政策的改革

大多数公司的做法:员工离职 90 天后,还没有 exercise 的股权就过期了。Mixpanel 改革后的做法:待满 2 年的员工若离职,还没 exercise 的股权在 5 年后过期,而非 90 天。

越来越多良心公司延长过期的时间了,不然离职的话一下子掏出大几千的现金、有的甚至几万、十几万去 exercise,不少刚工作不久的小年轻是很有压力的。

分析 Okta 的 S-1 (deleted)

即将上市的公司的 S-1 都能挖掘出不少好东西,有数字、有故事、有八卦、有趋势分析。自己的公司何时上市?找一份同类上市公司的 S-1 里的数字对比一下,就知道还差多远了。

2017/03/17 第 866 期

百万美金的工程问题 (archive)

Segment 团队被自己的 AWS 账单吓到了,他们就用了 3 个月时间集中火力削减 AWS 开支,最终结果:一年省下 $100 万。他们怎么办到的?详见本文。

Why Is Silicon Valley So Awful to Women (archive)

采访了几位(曾经)在硅谷科技公司工作的女性,分别讲述自己经历的性别歧视(因性别而被质疑能力不行等)、性骚扰(电梯里、party 上遭遇咸猪手)。

年轻人居多的创业公司很多都是类似大学兄弟会的文化,酒精、疯玩、故弄玄虚、邪教组织办的洗脑等。不难想象这种文化下性别歧视与性骚扰是很常见的。Uber 是大公司,树大招风;还有许许多多小公司还没出名到被曝光的程度。

Beachhead Strategy (deleted)

创业公司一开始专注于比较小的市场,地位巩固后再扩展到其他领域。文中用 beachhead 作比喻,军事上抢滩登陆后建立阵地,守住了后,后续部队陆续到来、扩大战果(参见诺曼底登陆)。

2004 年的哈佛在校生个人主页 -> 10 几亿人的社交网络;旧金山市区昂贵的专车 -> 发动全球主要城市居民开私家车做出租车用;空出床位租给来开会的、住不起旅馆的设计师 -> 全球最大的旅游短租平台;网上买书 -> 卖一切东西、出租云服务;每天推荐 5 篇需要翻墙才能看到的英文文章 -> 每天推荐 5 篇需要翻墙才能看到的英文文章,哈哈,这个一直没长进。

有个朋友 04 年的时候去哈佛读本科,日夜期盼尽早得到 harvard.edu 的邮箱;为啥?当时校园内很酷的孩子们都在用一个叫 thefacebook 的网站,需要 harvard.edu 的邮箱才能注册。他终于如愿以偿注册了,几个钟头都花在窥探同学、学长学姐们的个人页面上,很过瘾。

How to Write a Git Commit Message (archive)

第一行简要总结这个 commit,不超过 50 字符;中间正文部分解释为何有这个 commit、改了啥、啥原理;最后附上相关 ticket 的编号。

第一行的简要总结用命令的语气写,没有时态,如 Refactor function X for readability。

轻松搞定编程面试 (archive)

假想面试的时候用 Clojure 做题,狠狠地鄙视了一下不懂 Clojure、且高傲无知的面试官,然后潇洒地离去。

这是真事:去年年初我电话面试一人,就是用 Clojure 在 CoderPad 上做题,五分钟、几行代码搞定,然后我们 10 分钟内愉快地结束了面试。我就是那个不懂 Clojure 的无知的面试官:(

2017/03/19 第 867 期

斑马与独角兽 (archive)

独角兽公司:指数级增长,公司存在是为了让股东赚钱,零和游戏、争取垄断、干掉竞争对手;斑马公司:可持续发展,用户至上,乐于见到市面上多家同类公司的和平共存。

Why Some Startups Win (archive)

好的创业公司的员工们知道他们为什么来工作、需要做什么、如何知道他们成功了。如果只是机械地做 job description 上描述的那些事,去大公司拿高薪混吃等死就行了。

大部分的学术论文都毫无价值吗

  1. 发论文的过程训练博士生的绝佳手段,发现问题、解决问题、设计实验、团队合作;
  2. 极少数论文是有用的,就像只有极少数创业公司最终成功一样,大家不会因为创业失败率高就不创业了。

这是来自 YY Zhou 的 Quora 回答。

Just how big is the podcast discovery gap

制作 podcast 的人最大的困扰是没有听众。作者给出自己的 podcast 的具体下载数字,感慨怎么 podcast 这么难被人民群众发现呢?

互联网上发现好玩的、有用的东西的机制无非就这几种:社交网络、搜索引擎、聊天软件里口口相传、花钱做广告等。podcast 内容是声音,声音在社交网络上不好分享、分享了也很难火起来,声音内容也不被主流搜索引擎索引,聊天软件里的分享传播起来很有限。难。

硅谷充斥着心理变态的 CEO

以自我为中心、乐忠于搞个人崇拜、情绪化、喜怒无常。没有指名道姓,也不要对号入座;如有雷同,那就是真的了:)

2017/03/21 第 868 期

现在我们知道为何微软买下 LinkedIn 了 (archive)

硅谷对微软一贯持有敌视的态度,微软要想改善自己在硅谷的名声,就需要一个八面玲珑的硅谷通。微软买下了 LinkedIn,然后 LinkedIn 的创始人 Reid Hoffman 加入了微软董事会。

他可以一通电话、一封邮件几分钟内联系上硅谷任何一个台面上的人;这对将来招聘重要的职位、或与其他硅谷公司谈合作都至关重要。长远来看,这是值 $260 亿的(收购 LinkedIn 的价格,相当于微软一季度的收入)。

采访 Techmeme 创始人 (archive)

Techmeme 不写原创文章,而是靠人力手工聚合当天的科技新闻。网站访问量不高,但读者群体质量不错,你听说过名字的硅谷科技公司高管、CEO、创始人基本都是读者。

Techmeme 比较有名的读者有:Facebook 的小扎,Google 的劈柴,LinkedIn 的 CEO,Twitter 前 CEO,微软的 CEO 等。既然能吸引到少数高端读者,就没必要去迎合多数低端读者了。

在思考湾区日报盈利模式的时候,我有参考过 Techmeme 的方式;但最终还是采用了类似 Daring Fireball 的一次只接受一家赞助商的方式,因为我反社会、不想与太多人打交道:)哈哈。

三个湾区 (archive)

旧金山湾区长大的三个不同家境的人:

  1. 家境好,读藤校或斯坦福,毕业后生活小资;
  2. 家境中等,读非伯克利的州立大学或二流文理学院,最终湾区待不下去,搬到外州;
  3. 家境一般,父母一方是移民,社区学校毕业,屌丝一生。

阶层是会流动的,只是流动得很慢。家庭能提供的起点,真的对以后的路怎么走影响很大。

你能举出一些出身贫寒最终发达人尽皆知的例子,但更多的情况是家境好、接受好教育、有好的人际圈子、毕业后高收入或创业小成功(卖几千万但不被新闻报道的那种)。

Firebase 的创业经验 (archive)

Google 收购 Firebase 后将其打造成一站式开发 app 的服务。而 Firebase 创业初期,他们经常去 hackathon 现场与小屁孩们一起通宵、帮他们做项目、顺便推广自己的 API 产品。

一家公司要成为 hackathon 或相关活动的赞助商往往要交几千上万的赞助费;而 Firebase 当年则是帮参与者们买啤酒,相当于“赞助商”,但买啤酒的钱就少得多了,很鸡贼啊。如果用户是开发者,多跑一些 hackathon 是有好处的。

定位与黑盒

做产品首先要了解自己的产品,两种了解自己产品的思考方式:

  1. 定位:文中给的那个完形填空自己练习一下;
  2. 黑盒:输入、输出、流程几个步骤分别是什么,弄明白了就能有目的地不断迭代。

2017/03/22 第 869 期

铁路大亨 (archive)

Sid Meier 的经典游戏铁路大亨的制作过程。

从 side project 做起,阅读铁路历史书、参观博物馆、亲自搭乘蒸汽火车,相当考究。

1990 年开卖,180 页的游戏手册。

可惜铁路大亨一直活在后来 Sid Meier 的人尽皆知的文明系列游戏的阴影下。

我 1999 年(还是 2000 年?)时玩过铁路大亨 2,可惜没玩过经典的 1,毕竟 1990 年的时候真的很难接触到电脑。

Bill Gurley 与 Uber (archive)

Bill Gurley 是硅谷知名风投,身高 2.05 米。一人一首(或两首)成名曲:97 年投资 eBay,回报 500 倍;2011 年投资 Uber(20% 股份),按目前估值算,1100 倍。

Configuration Management is an Antipattern (archive)

Puppet、Chef 这类运行时自动化配置机器的工具也满满是坑。替代品?所谓的 immutable infra,打包成 AMI 或 Docker 的 image。

文中提到的使用 Puppet 一键毁掉四千台机器的事故是真实存在的……事后各种古怪的 git branch 规范让 operation 变得更复杂。

GitHub 允许员工使用公司资源做个人项目、且个人拥有 IP (archive)

接受 offer 时一般都要签协议:用上班时间、公司电脑做个人项目,知识产权归公司。GitHub 打破这个常规,善待员工、鼓励创新、不作恶。谁没一两个 side project 呢?

公司霸占个人项目 IP 的这种条款可以保护公司:如果没这种条款,员工反过头来声称自己拥有公司里的产品的 IP,公司不就吃亏了?但现实都是公司欺负个人的案例多于个人欺负公司的。

现在编程与 80 年代时编程的不同之处 (deleted)

现在大部分的编程活动不用太多思考,需要动脑子的是如何想出合适的关键词搜索、以及具备在 StackOverflow 上挑选不算太差的答案的能力。80 年代编程需要不同的技能,没地方问人,只能自己想。

北朝鲜的程序员如何编程的?

2017/03/23 第 870 期

Apple 的定价策略 (archive)

Watch 和 AirPods 这两个可穿戴设备的入门级价格都比其他品牌同类产品低,争取从没用过 Apple 产品的屌丝新用户,然后诱使他们买价格高、利润高的 iPhone。

Performance bugs

性能方面的 bug 很容易在开发的时候被遗漏掉;这种 bug 就是代码的行为是正确的,但跑起来慢。最好在开发流程中经常 benchmark 一下(加到 CI 里最好了)。

我是如何工作的

PHP web 开发框架 Laravel 的缔造者 Taylor Otwell 描述了自己如何工作的:全职在家上班,早上 8 点工作到下午 5 点,iMac 加俩外接显示器,使用 Sublime 写代码。

选择 SQL (archive)

做网站的主力数据库一律用的关系数据库,如 MySQL、Postgres,别用 NoSQL。关系数据库发展了 40 多年,久经沙场,稳定、易用、省空间、省心。

关系数据库会有 scalability 的问题、大数据怎么办?放心,你的网站存在的整个生命周期访问量都不会太高,压根不会有大数据问题;况且,世界上访问量最大的那些网站主力数据库都是 MySQL 或 Postgres。如果你有幸发展得不错了,自然有足够的人力、金钱去解决 scalability 的问题。

Disqus 的 Demo Day 故事

2007 年 Disqus 创始人通过 Y Combinator 的关系将 Disqus 安装到了知名风投 Fred Wilson 的博客、替换掉原来的评论系统,然后在 Demo Day 上“正式上线”Disqus。

在 2007 年的 YC Demo Day 上 Fred Wilson 提出一个功能请求:能通过邮件回复评论,Disqus 俩创始人用一个周末实现这个功能,从此 Fred Wilson 的博客就一直用 Disqus 了,之后也投资了 Disqus。

Disqus 是属于“先取名字、再想创业 idea”的路数。他们先注册了域名 disqus.com,然后尝试不同 idea,最终做了网页的评论挂件。2007 年创业到现在,整整十年了。

2017/03/24 第 871 期

Jack Dorsey 讲述 Twitter 的起源以及设计理念(2009) (archive)

2000 年左右他开始设计与实现后来成为 Twitter 的简单服务,邮件是信息载体;05、06 年时的 Twitter 原型主要用短信作为载体,短信有 160 字的长度限制,所以 Twitter 限制一条消息 140 字,剩下的 20 字是用户名与命令。

如何搞好员工 referral

科技公司俗套剧情:新员工入职后不久就被 recruiter 约谈,过一遍自己 LinkedIn 上的联系人,发掘好人才,然后去骚扰他们、试图招聘。红杉资本教大家如何让这种约谈更有效率、敲诈出更多好人才去骚扰。

小公司招人太难了,我在加利福尼亚大道里讲过一个相关的段子:“作为创业公司,招人困难是肯定的。公司每年都要搞 source jam:下班后把全体工程师召集起来,让每个人从自己的 LinkedIn、Facebook 等社交网络里找出几个朋友的名字,把这些名字给 recruiter,然后我们 recruiter 会去骚扰这些人。小卡摇摇头说:在过去一年我没交到新朋友,而且去年 source jam 后很多人 unfriend 我了……”

不加钱,不加班 (deleted)

独立开发者给自己打工、自己加班,可以;接散活干的、加班后可以接更多活,可以;但在大公司上班,不给加班费而让加班的,没门!你付固定工资就只能预期我提供固定时间的劳动,不能耍流氓。

最有钱的全职教授

加拿大人,大学想读音乐系被拒,只好读数学系,后来拿了计算机博士,后来到斯坦福担任教职。自己创过业,公司也卖了几个亿。给两个斯坦福辍学生写了张 $10 万的支票,这 $10 万后来变成 $10 亿了。

他就是 Google 的第二个投资人、斯坦福教授 David Cheriton。Google 第一个投资人是 SUN 的联合创始人 Andy Bechtolsheim,在给还没成立公司的这俩辍学生写支票前,他心算:这个网站靠广告链接赚钱,一天若有 100 万点击,每个点击 5 分钱,那也能赚 $5 万,还行。

Lyft 庆祝网约车女司机的小孩的诞生 (archive)

Lyft 女司机预计还有一周就要临产,但仍在开车接活。开车中突然发现自己要生了,直接开去医院;途中,顺便又接了一单乘客;最后及时进产房生下小孩。Lyft 发博文分享了这个“温馨”的时刻。

这真是一个毛骨悚然、灭绝人性的故事。这对行人安全、乘客安全、自己的安全、肚中孩子的安全都是极其不负责任。不能鼓励。

2017/03/25 第 872 期

如果做管理是唯一晋升的道路,那我们完蛋了 (archive)

有的人就是喜欢动手做东西、也擅长动手做东西、不喜欢跟人打交道,你硬要让他们做去管人,然后他们又管不好,大家都不愉快。本文很好地总结对比了做 IC 与做管理的不同之处。

A static business is a healthy business

如果少数几个用户给你带来大部分的收入,那你会迁就于他们的功能请求、忽视其他大部分用户,如果这几个用户不高兴而离你而去,那贵公司就危险了。争取从每个用户身上赚差不多的钱,一视同仁。

回忆在 Docker 工作的这 5 年

很长的回忆文章,细数了自己在公司这五年里做过的许许多多项目、给过演讲的众多会议,相当有成就感的样子。文中还提到了 Docker 上线、dotCloud 转型成 Docker 的经历。

工作几年后写一下类似这样的回忆文章,总结一下自己做过的所有项目以及经验教训之类的,挺不错的。从文中可以看到他如何加入 dotCloud、工作职责的改变、新技能的学习、个人与公司一同成长的经历,对职场新人或许有些借鉴的意义。

在 App Store 曾排行第一的 app 里有 74% 在一个月内跌出前 25 名

标题说明了一切。现在 App 太多了,要让人听说过你做的 app 实在太难了;App Store 排行榜很关键,但往往昙花一现。持久霸占排行榜的多是有充足营销经费、持续更新造势的大公司的 app。

我不想订阅你的邮件列表 (archive)

博客网站很流行弹出小窗口逼你输入邮箱、订阅邮件列表,这比 90 年代的弹窗广告更烦人。好歹弹窗广告是一个新网页,浏览器可方便屏蔽,而现在的小窗口都是一个 div,实现千奇百怪、不好拦截。

2017/03/27 第 873 期

为什么我们现在愿意为内容付费 (archive)

  1. 技术上,小额支付比以前容易了;
  2. 心理上比较能接受向内容创作者(人类个体)付款,而不是向公司(组织)付款;
  3. 很多小众内容的创造者粉丝太少,广告钱不好赚,只能直接向粉丝收钱。

Modules vs. microservices (archive)

很多情况下没必要架构成 microservice、通过网络“调用”API,不好运维。同一份代码里做好模块化,同一个进程里调用函数就足够了,没必要赶潮流。

往往在贵公司需要 microservice 之前,贵公司已经做不下去而倒闭了:)在贵公司存在的整个生命周期里,一台机器、一个进程 + sqlite 或许就够了,或许更极端一点,一个 GitHub page,静态的页面也行。哈哈。

Google 的 YouTube 广告难题 (archive)

不是所有的 YouTube 视频都适合放广告的,如恐怖分子发布的视频、色情暴力限制级视频等;用自动化的手段不在某些视频上显示广告容易误杀好人,有的视频很正常、上传者也希望通过广告赚钱,但 Google 不让。

有一些公司、组织机构发现自己的广告出现在恐怖分子的招聘视频上,很不爽,不愿再在 YouTube 上做广告了。用户每分钟在 YouTube 上传 400 小时的视频,该如何审核?人工审核是不行的,审核不过来;但自动审核容易误杀好人。

为何有些牛逼的计算机系教授不去公司赚大钱而是选择教书与做研究

UCSB 的教授 Ben Y. Zhao 解释为啥做教授而不去公司赚大钱:

  1. 没有上司给你指派任务,很自由;
  2. 教书育人,正面地影响学生的人生,很有成就感;
  3. 当前人生阶段的优先级不是赚钱。

当然,也有很多教授去公司(一般是去 Google)赚钱。

在自己的领域小有名气计算机系教授,只要他们愿意,都能让收入立刻翻几倍,甚至几十倍。

让小孩晚一年上学,人生会发展得比较好 (archive)

晚一年读幼儿园,小孩自我控制力会比较好,比较能学得进知识。相对同一届的人年龄大几个月或一岁,会比较自信:身高发育较好,体育好点;头脑发育较成熟,理解东西比较快。

相对的年龄优势这个观点是出现在 Outliers 这本书里,也就是提出“一万小时定律”的那本书。小时候自信心的培养很重要;自信的人做很多事(考试、竞技、交朋友等)才比较能表现出正常水平,甚至超常发挥。

2017/03/28 第 874 期

工作中不再使用多个外接显示器了 (archive)

一般多个显示器的用法是同时打开多窗口多任务,这很分心;单个显示器,一次只做一件事。超大显示器也不好,花在拖拽窗口的时间太多了。作者的配置:24 吋 4K 显示器 + 跑步机。

维基百科的机器人编辑之间的冲突 (archive)

编辑维基百科的物种里,99.9% 是人类,0.1% 是机器人程序。针对某条目的内容,人类与人类之间会有冲突;机器人与机器人之间当然也会有冲突,某机器人会把其他机器人的修改给撤销了。

这种自动化程序之间的冲突会越来越多的,拭目以待以后无人车与无人车之间的互动。

Five Lessons from Scaling Pinterest

这点很有共鸣:谨慎听取用户的意见。声音大的超级用户一方面抵制你推出的新功能,另一方面又请求复杂的、不具代表性的新功能。还没听过你产品的人数远多于现有用户数。

"Your loudest users don’t represent all your users, and they definitely don’t represent your future users."

找到好的创业 idea 的秘诀

秘诀是:头脑风暴用户痛点。三步骤:

  1. 你本人属于哪两种用户群体?
  2. 你想帮助哪两种用户群体?
  3. 针对 1 和 2 里的 4 种用户群体,各想出 2 个用户痛点,这样你就有 8 个用户痛点了。

其实还有一个练习可以做:抛开具体的产品功能,分析一下各著名产品刚上线那一刻是针对哪些用户群体做的,比如 04 年的 Facebook、98 年的 QQ、03 年的 LinkedIn、09 年的 Uber 等。

没有人能一下子做出适用于 70 亿人口的产品的,都只是 70 亿人口里的一个小小的子集。

我最喜欢用的产品经理面试题

面试题:你怎么看待“产品经理是产品的 CEO”这句话?通过这个面试题可以把应聘者分成几类人:权利欲很强的喜欢 CEO 这个虚名的人、不想承担责任不想做决策的人、能正反面辩证地分析的正常人。

2017/03/29 第 875 期

Stories are the new News Feed

大势所趋啊:Newsfeed 是桌面互联网的产物、适合分享文字与链接;而移动互联网时代,手机摄像头是新时代的键盘,Snapchat 的 Stories(24 小时过期的图片、视频幻灯片)是表现力更强的媒体格式。

Facebook 旗下四大 app(主 app、Instagram、Whatsapp、Messenger)都加上了从 Snapchat 抄袭来的 Stories 功能;Medium 的 Series 与 Twitter 的 moments 都有点 Stories 的意思。

Credit Karma 的 CEO 谈品牌建设

Credit Karma 从 2007 年做到现在已经整整十年了。创业初期,创始人 CEO 会每晚到信用卡相关的论坛上去回复 50 个帖子、给 20 个相关博主发信。他也常刷 Reddit 听取网民对其公司的评价。

Credit Karma 跟 Medium 在同一栋办公楼(760 Market St),对面的四季酒店是 NBA 各球队到湾区客场打金州勇士队时下榻的酒店,所以那栋楼俯瞰下来常常能看到不少 NBA 球星。Medium 是二房东,把楼层转租给 Credit Karma。

价值至少 $10 亿美金的创业 idea:Podcast 领域的 HBO

先融资并花掉 $6 个亿购买优质 podcast 的版权,就像 HBO 或 Netflix 一样,有足够多的优质内容,然后付费订阅每个月 $10,只要 1%~2% 的美国人付费就能成啦!

硅谷的美洲狮之夜 (archive)

Cougar(美洲狮)是俚语,指想找小鲜肉的老女人。硅谷的 Sand Hill Road 风投云集;此地的 Rosewood 宾馆每周四晚举行美洲狮之夜,高端的线下交友服务举办的顾名思义的那种活动。

本文基本上算是帮(低调的)高端交友服务 Linx Dating 打广告的。所谓美洲狮之夜也趋向于年轻化、多元化了;文中对木讷、有钱的工程师的描写真是瞎说什么大实话。Sand Hill Road 的人口构成很多元化,有胖风投、瘦风投、男风投、女风投等。哈哈。

三个月压缩成一个月

在快速扩张的创业公司里工作,就相当于把几个月的时间压缩在一个月内。“狗活一年相当于人活七年”。“天上一日,地上一年”?这个……

2017/03/30 第 876 期

Eat24 在成人网站做广告的经验分享 (archive)

Eat24 是送餐服务,现已被 Yelp 收购了。当年 Eat24 很创造性地在成人网站做广告,效果非常之好。成人网站访问量超大、广告价格超便宜、受众都宅在家中正好适合使用送餐服务。

成人网站上的广告都是成人相关的,万花丛中突然出现一个送餐服务的广告,绝对是鹤立鸡群、吸引眼球、点击率超高。Eat24 这次营销方案真不错。广告价格到底有多便宜?相当于 Google、Facebook 等地的广告价格的 10%!

Eat24 的使命是:让你不用做饭、出门购物、穿裤子!(Our mission is to keep you from having to cook, shop or wear pants.)成人网站的访问者与表演者们也不喜欢穿裤子:)广告的 targeting 真的很强。

使用 React Native 重写 UberEATS (archive)

Uber 主业务沟通两方:司机与乘客。UberEATS 搞送餐,沟通三方:司机、食客、餐厅。给餐厅用的 app 一开始是纯网页,后来尝试用 React Native 重写了一小部分。

我最近也在学 React Native,争取早日写出简单的湾区日报 Android app:)

在 production 环境下边踩坑边学 Redis (archive)

他们使用 Redis 三年多,一直风平浪静。后来网站访问量增加,出现大量 Redis 的连接错误;只能在 production 里调试、尝试各种方案,一番血泪教训后总结了运维 Redis 的一些心得。

How to reference check your prospective investor

创业中融资,选风投最关键的是选 partner(人,不是公司)。要做好功课,对投资人要进行 reference check(问与他们合作过的创业者)。文章最后准备了一些不错的问题可以用上。

Asana 里的职位头衔

在公司内部,头衔用来表示工作职责(营销、工程师、销售),而不是资历、等级(如高级、4 级、5 级)。

2017/03/31 第 877 期

做了十七年网站开发所学到的东西 (archive)

风趣幽默又很朴实的职业生涯回顾,以及给年轻人的一些建议。当年做过的傻事:如何更新(重要的事情再说一遍:更新!)数据库里的数据?先删除、再插入……

How Silicon Valley reengineered journalism (archive)

超长的关于社交平台绑架新闻行业的研究报告。媒体要吸引眼球就得把内容放到平台上,但这么做就淡化自己的品牌、没法得到准确的浏览数据、盈利举步维艰、被社交平台的算法所左右。

媒体对社交平台的依赖程度越来越深,得定制内容然后发到众多社交平台,是劳动密集型的工作,有时一个社交账号得十几个人来运营。纽约时报一周内得在 9 个不同的社交平台发布 1600 多条内容。

John Carmack on Idea Generation (archive)

Antifragile 的生成好的 idea 的方法:当你有了一个 idea 后,想尽一切办法批判这个 idea、质疑这个 idea 如何如何不好,但你同时又能一一反驳;在告诉别人这个 idea 前,自己先试图杀掉它;如此还能存活下来的 idea 或许就是好的 idea。

汽车发展的间接后果 (archive)

思考汽车电动化、自动化对城市规划、经济、人的群体行为等的宏观影响。电动车普及后,加油站怎么办?加油站的便利店怎么办?政府的巨额燃油税怎么办?机械故障减少了、汽车维修业怎么办?

无人车普及后,车能自己开、按需接人、车闲置的时间减少,用于建停车场的面积减少,建筑费用降低,对房地产如何影响?无人车会自己避让行人、其他车辆,那还需要红绿灯、各种交通标示吗?无人车的摄像头无时无刻都在 360 度摄像,警方办案可能得查看经过案发现场的无人车记录下来的影像数据了。

拉斯维加斯的赌城大道肯定是产品经理设计的

不同的团队在同一个产品里做了不同的功能,每个团队都只追求自己做的功能的数据漂亮、加入花里胡哨的提示信息“快来使用这个酷功能吧”。于是,几周没登录的用户刚一登录,铺天盖地的新功能提示信息。

负责不同功能的产品经理的 KPI 是完成了,但整体用户体验极差。有点像是去 Las Vegas Strip,满街的赌场都在门口花花绿绿地弄噱头(火山、埃菲尔铁塔复制品之类的)吸引游客进来。