• Stack Overflow 漫谈


    最近问答类网站相当的热门。说起问答(Question & Answer)网站,很多人会第一反应想起Quora ,实际上,这类网站中 Quora 并非做的最好的(但或许是借了 Facebook 的风头),最为成功的要数 Stack Overflow 。更为准确的说,是 Stack Exchange Network,Stack Overflow 现在只是 Stack Exchange network 的子站点而已。

    Stack Overflow 由 Jeff Atwood 和 Joel Spolsky 这两个非常著名的 Blogger 在 2008 年月创建,7月小范围的进行 Beta 测试,直到 9 月份才开始公开的 Beta 测试。Joel Spolsky 大家应该熟悉,国内已经引进了他的数本大作,影响力最大的应该是《软件随想录》,此外,Joel 还拥有 Fog Creek 这家运转得不错的软件公司;Jeff Atwood 是著名技术技术 Blog Coding Horror 的作者。有趣的是,这两个人过去还 打过嘴仗。Stack Overflow 面向编程人员群体,在其推出一年之后,又推出了面向系统管理员的 Server Fault ,2009 年8月正式面向一般计算机用户的 Super User。用这个方式不断进行横向扩展,到现在为止, 旗下已经有 43 个问答站点,甚至包括英语和烹调这样的主题。到2010年年末,Stack Overflow 单个站点在 Alexa 的Rank 是 160 ,月度独立访客超过 1600 万,每月Page View 超过 7200 万 (refer)。Stack Exchange Network 在 2010 年 5 月接受了来自 Union Square Ventures 的 600 万美元的投资,在 2010 年扩大并完善了整个团队,从三个全职工程师发展到了 20 多人的队伍,搬进了 7500 平房英尺的豪华装修的办公室(当然每个人都坐着1000美元一把的椅子)。从各项指标来看,同样作为 Startup,Quora 距离 Stack Overflow 的还差得很远,虽然拿到了更多的钱、吸引了更多眼球。

    StackOverflow_vs_quora.png

    Stack Overflow 为什么会如此成功?

    你当然可以说是众包(Crowdsourcing)的功劳,但哪一个成功的社区能少了众包的功劳呢?如果实际一点说,不可或缺的因素我想是两个创始人的技术和社区基因。作为两个著名的 Blogger,没有人会质疑 Joel 和 Jeff 在 目标用户(开发人员)需求的精准把握。何况在上线前后,Jeff 通过技术社群又进行了大量的调研和反馈(Joel 倒是似乎第一次做 Web 项目,Fog Creek 主要是软件开发)。此前市场上已经有 Experts-Exchange 之类的老牌产品,Stack Overflow 则反其道而行之(Anti-Experts-Exchange),作为技术人员,你一定遇到过搜索技术问题到了 Experts-Exchange 网站,但是你发现问题下面并没有合适的解答,仅仅有人提问,但是没有有效的激励回答者则是没有价值的。Stack Overflow 参考 Reddit 等网站的用户激励机制,关注问题质量,其做法是通过威望值(Reputation Point) 与徽章(Badge) 建立起信任评价体系,并且做到对参与者的有效激励。我是否说过技术人员都是"好面子"的?没有,那么现在记住这句话吧。

    此外,秉承独特的设计理念。Stack Overflow 绝对没有多余的或是跟风的功能(比如一些不必要的 Social Network 特性)。如果看过 Joel 的书或是订阅他的 Blog,你应该知道他是个相当偏执的家伙,尤其是在产品设计方面,他认为对的事情绝不会妥协,参见他在《软件随想录》中的《别给用户太多选择》以及《用软件搭建社区》等章节。我不知道究竟团队在功能设计上是怎么分工的,但 Joel 一定是毫无质疑的植入自己的设计理念。另外要补充的是,Stack Overflow 重新将"标签"化腐朽为神奇,也是相当值得称道的。

    横向的业务扩展模式。与 Quora 综合性的问答不同的是,Stack Exchange network 采取攻其一点,再进攻其余的方式。在面向开发人员的 Stack Overflow 获得验证并且成功之后,向类似话题领域扩展;然后与不同团队进行合作,逐渐引入更多的主题(比如 Ubuntu、面向物理学的话题等等)。最后,如果把几十个话题合起来,恰好是一个庞大的 -- 论坛。Stack Overflow是否重新"改造"了论坛这个古老的交流模式?

    技术?是个关键因素,但不是主要因素。作为 Startup,罕见的使用微软了技术体系进行开发,但也用开源软件。观察 Stack Overflow 所用的技术方案,会觉得是个大杂烩,除了 C# 、ASP.net 、SQL Server 等,也有 HAproxy、Redis 这些解决方案。 据 Joel 说,效率和成本也还不错。扩展模式上则首选 "Scale Up", 总之,就是有点特别。但是,用户体验相当好,这个是最难模仿的一个地方(另一个是运营套路)。

    或许,Stack Overflow 的成功因素不止这些,你认为呢?

    补充,来自霍炬 (@virushuo) 的观点:首先工具本身非要重要。有足够好和专注的工具。其次,种子用户非常重要。So,小范围测试的时候奠定了基础,之后始终按照这个确定的方向积累。

    补充, Joel 的说法是"push for high-quality content and its decision to segment the service into well defined verticals"。

    延伸参考:

    http://www.dbanotes.net/startup/stack_overflow_success.html

    http://www.dbanotes.net/

  • 相关阅读:
    设计模式—适配器模式
    设计模式—策略模式 状态模式
    设计模式——装饰模式和代理模式
    C++常考算法
    ModelState.AddModelError使用
    Json
    ref与out
    三层与mvc
    新的方法(Set<T>)实现mvc的crud
    【程序45】
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/2305842.html
Copyright © 2020-2023  润新知