2016/11/14 第758期

一小时内加密你的数字生活

我们的数字生活其实是半公开的;政府告诉我们,如果你没做错事,那就没啥可担心的;但还有其他人觊觎着我们的数据。本文讲了一些网络安全小技能,(自以为)懂电脑的和不太懂电脑的都应该看看。

最新的 iPhone 的用户普遍都用指纹解锁;如果你被捕了、被控制了,你的手指是可以用来解锁的(现实与电影都出现过的桥段);本文建议:在被捕那一刹那,尽快把手机关机;再开机的话指纹是解锁不了的,需要输入密码。或者干脆就别用指纹解锁。

算法时代的媒体

本次美国大选出现这样的结果,很多人都在谴责 Facebook 上假消息满天飞。如今人们接受什么消息都是算法决定的,Newsfeed 排序算法、搜索结果排序算法。从信息真实可靠性来说,谷歌做得比较好。

这句话说得好:“The essence of algorithm design is not to eliminate all error, but to make results robust in the face of error.”

本文结尾附上了 Google 的前 head of spam 的话,很有道理:Facebook 的目标是让用户尽量留在平台上,所谓的 engagement,所以他们做得一切事情就是投用户所好,即使是不实消息,但用户爱看,那就给他们看呗。Google 长期以来与虚假消息、垃圾网站做斗争,当年弄出了 Panda 排序算法大大改进了搜索结果的质量,尽管这让广告收入大打折扣,看上去相当伟光正啊

尖叫的架构

这是 Uncle Bob 很经典的一篇文章。好的架构是按 use case 来组织代码的,扫一眼代码目录结构,就知道它“尖叫”着告诉你“我是博客网站、或者我是视频播放器”,而非实现细节的“我是Rails程序、我是Django程序”。

例子:按产品功能组织代码,顶级目录名则是诸如 playlist、player 等,一眼就知道有哪些功能,“尖叫”着产品功能的名字;若按具体实现的技术组织代码,则 views、models、controllers 等是顶级目录,“尖叫”着具体实现的技术的名字,既不好测试相应产品功能以后又不容易替换掉这些技术(framework)。

Build a product that fits your runway

创业早期在做第一个产品时要尽量砍需求,毕竟资源有限;从现有复杂的产品里抽取一个功能来做,做到极致;尽管很多投资人或业内名人都会不屑地说:你只做功能,而不是产品,没前(钱)途。

Steve Jobs 也曾经说过 Dropbox 只是一个功能、不配做一个产品这样的话

从哪里去找产品(功能)的 idea?操作系统上自带的程序是一个创业 idea、Unix 命令很容易成为 SaaS 创业 idea、Craigslist 上的每个子论坛也都是 Uber for X 的 idea。

Runway 这个词真是绝了,原意是飞机跑道的意思。创业圈总喜欢说 runway,指银行里的钱还能撑多长时间;就像飞机跑道一样,飞机得在触及跑道尽头以前起飞;创业公司也得在 runway 完了前起飞:)

设计更好的按钮

软件(网站、app、桌面程序)UI 里的按钮设计的最佳实践。要把按钮做得像按钮,文字说明要说人话,重要的按钮放在显眼的位置,符合各平台的设计规范等。