用软件搭建社区

         昨天看了《软件随想录》,自觉受益匪浅,今天就针对“用软件搭建社区”这一篇做些笔记。这本书的内容来自于作者Joel的网站叫“Joel谈软件”,由阮一峰翻译。“用软件搭建社区”这篇文章收录的是“Joel谈软件”来访者对该网站的建立以及Joel的答复。

   Q.你们能否增加一个功能,当有人访问我的帖子时自动用电子邮件通知?

   A.这个功能很容易实现,但他是扼杀新兴论坛的最好杀手。

    人们来到你的论坛是为了提问,如果提供“通知我”功能,那么访问者贴完帖子,选上该功能就永远不会回来了,他们只读那些发到他们邮箱的回复,到此为止。

    如果你不提供这个功能,他们就没得选择,过一段时间就回来看看。而当他们回来的时候,也许就会去读其他引起他们兴趣的帖子,然后可能就会为这个帖子贡献些什么。论坛刚起步的那段时间是很关键的,你要设法增加论坛的“粘度”。


   Q.你们论坛的讨论主题排列顺序是错的,应该将最新回复的主题排在第一位,而不是按照话题的发起时间排序。

   A.你说的方法可行的,网上很多论坛也是这样做。但是如果实行这样的排序,某些主题会永远出现在论坛的上方,因为人们总是愿意谈论HIB签证,或者大学中的计算机教育有什么问题,直到宇宙末日也不愿听停下来。每天都有100多个新人第一次来到这个论坛,他们往往从话题列表的最上方主题开始看起,满怀热情的一头扎进去。

     我这样的安排有两个好处。首先,讨论主题更新换代很快,所以最上方的列表总是保持相对新鲜,而且,到了某一个点,人们就会停止对一个话题进行争论。

      其次,话题的顺序在列表上是稳定的。所有,如果你日后想寻找一个自己感兴趣的以前的讨论话题,就会比较容易,因为他相对周围的话题的位置是固定的。


    Q.该死的“回复”命令在页面的最底下。这样用起来很讨厌,你不得不将页面一直滚到最底下,然后才能回复。

    A.这是故意设计的。我更希望你看完所有帖子以后再回复,否则你的发言可能会重复他人的话,或者你会说出同最后一个帖子不相干的内容。说实话,我恨不得能够抓住你的眼球,强迫他们从上到下将所有内容看完,然后再贴出自己的发言。如果将“回复”命令放在除了页面以外的任何其他地方,实际上会鼓励人们看完现有内容之前就迫不及待发表自己那一点智慧。这是为什么Slashdot上每条消息都有500条回复,但是只有17条回复值得一读的。这也是没人愿意一条条看Slashdot上的讨论的原因,看他们就好像来自一间教室中,听到里面所有的小孩同时一起高喊同样的答案。

   

    Q.当我在写回复时,为什么不显示我要回复的原始贴?

    A.原因是那样会引诱你在自己的回复中引用那个帖子。我想尽一切办法,就是要减少引用的数量,因为那能增加整个对话阅读起来的流畅度,让话题变得更吸引人。引用前面某人的发言就会迫使读者连续读两遍同样的文章,这样是毫无意义的,而且铁定让人生厌。有时,人们想要引用别人的话,只因为他们要回复隔着三个帖子的某句话,或者因为他们不顾一切地想到驳斥某人的观点,以及分布在不同帖子的12个谬论。他们并非想要搞破坏,他们是程序员,编程工作要求一个人在每个i上面点上一个点,在每个t上面画上一横,所有他们形成一种思维定势,就是绝不能不回应争论,就像编译器中绝不能留下一个错误一样。但是,我不要他们活得那么累,即使因此被骂死也无所谓。为了达到这个目的,我用尽各种办法,甚至想设法将帖子从文字转换成图片格式,这样你就无法复制和粘贴了。如果你确实需要隔着三个帖子的某句话做出回复,那么麻烦你多花一点时间,写一句像样的英语句子就好了,而不要使用一大堆<<<>>>,像随地乱扔垃圾一样。

     Q.你们为什么不提供评分功能,让读者根据自己的喜好对每一个帖子投票,并且还可以选择只读那些评分高的帖子?

     A.这其实就是Slashdot的运作方式。我打赌,你们这些经常阅读Slashdot的人中,大概有50%从来没搞清楚过这套系统是怎么回事。我不喜欢这种做法原因有三个。

     一、它会让界面变得复杂化,用户需要花时间怎么使用这个功能。

     二、它让论坛内部的管理和人际关系变得复杂,是一个拜占庭帝国看上去好像一个三流学校的管理当局。

     三、如果你打开Slashdot的留言过滤功能,只读那些评分高的帖子,那么整个话题就给人一种支离破碎的感觉,你得到的只是一些随机的、不连贯的表达而已,没有上下文可以参照。













    

OpenStack是一个开源的云计算平台,它由一系列的开源软件组成。其中包括但不限于以下几个主要组件: 1. Nova:用于管理计算资源的组件,包括虚拟机、容器等。 2. Neutron:用于管理网络资源的组件,包括虚拟网络、路由器等。 3. Cinder:用于管理块存储的组件,包括卷、快照等。 4. Glance:用于管理镜像的组件,包括虚拟机镜像、容器镜像等。 5. Keystone:用于管理身份认证和授权的组件,包括用户、角色、权限等。 6. Horizon:用于提供Web界面的组件,包括控制台、仪表盘等。 7. Swift:用于管理对象存储的组件,包括对象、容器等。 8. Heat:用于管理编排的组件,包括自动化部署、自动化扩展等。 9. Ceilometer:用于管理监控的组件,包括指标、告警等。 10. Trove:用于管理数据库的组件,包括MySQL、MongoDB等。 11. Sahara:用于管理大数据的组件,包括Hadoop、Spark等。 12. Magnum:用于管理容器编排的组件,包括Docker、Kubernetes等。 13. Zun:用于管理容器的组件,包括容器、容器组等。 14. Cyborg:用于管理加速器的组件,包括GPU、FPGA等。 15. Ironic:用于管理裸机的组件,包括物理机、虚拟机等。 16. Manila:用于管理文件存储的组件,包括共享、快照等。 17. Designate:用于管理DNS的组件,包括域名、记录等。 18. Barbican:用于管理密钥的组件,包括加密、解密等。 19. Masakari:用于管理高可用的组件,包括故障检测、故障恢复等。 20. Freezer:用于管理备份的组件,包括备份、还原等。 21. Searchlight:用于管理搜索的组件,包括索引、查询等。 22. Congress:用于管理策略的组件,包括规则、决策等。 23. Watcher:用于管理优化的组件,包括性能、资源等。 24. Aodh:用于管理告警的组件,包括触发、通知等。 25. Octavia:用于管理负载均衡的组件,包括负载均衡器、监听器等。 26. Mistral:用于管理工作流的组件,包括流程、任务等。 27. Rally:用于管理基准测试的组件,包括性能、稳定性等。 28. Senlin:用于管理集群的组件,包括节点、策略等。 29. Vitrage:用于管理根因分析的组件,包括事件、关系等。 30. Blazar:用于管理预留资源的组件,包括CPU、内存等。 31. Tacker:用于管理NFV的组件,包括虚拟网络、虚拟机等。 32. Qinling:用于管理函数计算的组件,包括函数、触发器等。 33. Airship:用于管理云原生的组件,包括Kubernetes、Helm等。 34. StarlingX:用于管理边缘计算的组件,包括节点、集群等。 35. OpenStack-Helm:用于管理OpenStack的组件,包括部署、升级等。 36. OpenStack-Ansible:用于管理OpenStack的组件,包括部署、升级等。 37. Kolla-Ansible:用于管理容器化的OpenStack的组件,包括部署、升级等。 38. TripleO:用于管理OpenStack的组件,包括部署、升级等。 39. Packstack:用于管理OpenStack的组件,包括部署、升级等。 40. DevStack:用于管理OpenStack的组件,包括部署、测试等。 41. OpenStackClient:用于管理OpenStack的命令行工具,包括CLI、SDK等。 42. Python-OpenStackSDK:用于管理OpenStack的Python SDK,包括API、文档等。 43. OpenStack-Analytics:用于管理OpenStack的数据分析,包括报告、可视化等。 44. OpenStack-Health:用于管理OpenStack的健康检查,包括监控、诊断等。 45. OpenStack-Security:用于管理OpenStack的安全性,包括漏洞、修复等。 46. OpenStack-Training:用于管理OpenStack的培训,包括课程、认证等。 47. OpenStack-User-Stories:用于管理OpenStack的用户案例,包括分享、交流等。 48. OpenStack-Interop:用于管理OpenStack的互操作性,包括标准、测试等。 49. OpenStack-Community:用于管理OpenStack的社区,包括贡献、活动等。 50. OpenStack-Foundation:用于管理OpenStack的基金会,包括管理、支持等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值