2014/08/20 第15期

2012年全球前100大未上市的公司

挺有意思的排行。按当年的市值排的。
  • 1) Alibaba # 下个月上市
  • 3) Twitter # 去年上市了
  • 4) 360Buy # 京东,今年上市了
  • 5) Palantir
  • 6) Dropbox # 估计快上市了
  • 7) Square
  • 12) Airbnb # 估计快上市了
  • 13) Pinterest
  • 15) Spotify
  • 16) Craigslist # 不用上市,依然很赚钱
...  

Mobile OS Paradigm

Steven Sinofsky写的文章。这样的命题作文,恐怕Steven Sinofsky是世界上少数几个有资格写的人了吧,他以前在微软是掌管Windows部门的。 整个Windows部门独立出来,也算是一个巨无霸公司了。

(2010)Reddit如何可以承受每月2.7亿PV

Reddit在美国年轻人中很受欢迎,感觉黃易山做CEO后更蒸蒸日上了。 这篇文章有点老,是2010年的。相信这4年间,他们面临的scalability的问题更严峻,一些架构可能都推倒重来了。但文中提到的7条经验,还是很实用的。

  • Crash Often:web server的进程常常会莫名其妙地挂掉(可能有哪个exception没被catch到,或者用太多内存被操作系统的OOM killer给干掉之类的)。 Reddit用supervise来启动并监控进程,如果进程挂了,自动重启。现在是2014年了,感觉supervisord用得比较多点。
  • Separation of Services:也就是service oriented architecture。有几个显而易见的好处(临时头脑风暴的,不全面):1)同一个service访问数据库的access pattern比较predictable,方便cache; 2)哪个service比较吃力了,只给那个service加机器就行;3)fault isolation;4)不同的service可以在不同时间部署新代码。
  • Open Schema:他们用postgres做数据库服务器,但只有一个表,叫Thing。什么东西都是一个thing,包括user, link, comment等。靠python代码来保证数据的完整性一致性。 这是很宝贵的经验。现在的趋势是,很多公司都用mysql或postgres,但都把他们当做key/value store来用。
  • Keep it Stateless:每台app/web server都不存状态,而是把状态保存到memcache中。这样的话,某台app server挂了就挂了,再起一台新的就是了。
  • Memcached:他们把memcached用到了极致 - 缓存数据库中来的数据、session data、rendered page、还有一堆precomputed data。
  • Store Redundant Data:他们precompute了各种东西,空间换时间。各种排好序的list都缓存(按时间排序、按upvote的数量排序、按评论数排序等)。
  • Work Offline:异步处理一些没必要在线处理的东西,比如生成缩略图、发邮件之类的。

Reddit网站代码竟然是开源的,有兴趣可以读一下。

20分钟实现一个startup idea

这是去年的文章了,讲的是Product Hunt的创始人Ryan Hoover如何快速地实现产品的原型、快速地验证自己的startup idea。 相当有启发意义。 最近Product Hunt很火,俨然成为除了Hacker News外大家每天必看的网站了。去年年底,Ryan Hoover用linky dink快速搭了一个分享有意思的产品链接的group, 然后邀请朋友们来使用。看到朋友们反馈都很正面,于是他觉得这个分享产品链接的idea靠谱,进而再正式地编程做出网站。

Google上市10周年

2004年8月19日,Google上市,筹集资金19亿刀。下面是Google在上市第二天,也就是2004年8月20日的首页截图,那时候是雅典奥运会,从当时的Doodle可以看出来吧: Google上市10周年 那么,Google当时筹集的19亿这个数目算大还是算小?下图是从这里找来的, 对比一下近几年上市的公司凑集的资金: