--- tags: 编程随想, 网状拓扑, 读者社区 --- # 怎样构建网状拓扑的随想联盟 2021-07-27 状态:已定稿 | 欢迎继续点评和[讨论](#商讨中的问题) | [方格子](https://vocus.cc/article/61002238fd89780001c08dc1) | 未获作者授权请勿转载 | 已[存档](https://web.archive.org/web/*/https://hackmd.io/@comemory/meshnet-topology-community) | 获取[PDF](https://allinpdf.com/url-to-pdf), [PNG](https://cloudconvert.com/website-png-screenshot)版本 --- ## [TL;DR](https://hackmd.io/@comemory/meshnet-topology-community) 以下是如何建立网状拓扑(去中心化)的【随想联盟】社区(见[Q4](#q4)) 1. [新建节点](#1-新建节点):匿名创建博客或开源项目,在简介或文中加入*编程随想*、*随想联盟* 等词以便检索 2. [发现节点](#2-发现节点):自主定期谷歌【编程随想】等关键词,从结果中发现新节点并建立连接 3. [博客宣传](#3-博客宣传):在编程随想博客的评论区发布自己的博客,或由中国数字时代[转载](https://chinadigitaltimes.net/chinese/668402.html)([例](https://hackmd.io/@comemory/programthink-2021-06-21)) 4. [创作内容](#4-创作内容):与编程随想本人相关的、继续填编程随想挖的[那些坑](https://program-think.blogspot.com/2021/01/12-years-blogging.html)、其它相关话题、开源项目 5. [自我管理](#5-自我管理):每个博主自行管理其博客评论区,自行公布(或不公布)匿名邮箱 6. [三级沟通](#6-三级沟通):1私信用电邮,2在各节点或编程随想评论区公开交流,3在墙外论坛、推特等传播 7. [社区门户](#7-社区门户):技术高手可自行开发可视化门户,类似 [zhao-visualized](https://zhao-visualized.netlify.app/)、类似[英雄](https://nodebe4.github.io/hero/)的表单等 8. [集中阅读](#8-集中阅读):通过个人的RSS阅读器或类似[观点](https://github.com/NodeBE4/opinion)的[聚合站点](https://nodebe4.github.io/opinion)订阅各博客,方便集中阅读 9. [在线年会](#9-在线年会):邀请联盟成员、志愿者、嘉宾到临时在线论坛,在几天内集中讨论一堆预定议题 --- ## 简介 编程随想是位于中国大陆的一个反共匿名博主,在积极活动12年后突然静默。俺在[《被捕、病逝、主动静默,编程随想停更事件长文分析》](https://hackmd.io/@comemory/programthink-2021-06-21)一文中对其可能的处境作了分析。 在后编程随想时代,编程随想读者社区中活跃的部分老熟人希望继承编程随想的精神与智慧遗产,传编程随想的道,即将 **授人以渔、理性自律、匿名反抗、敢搞大事** 的[黑客](http://www.catb.org/esr/faqs/hacker-howto.html)精神(骇客精神)发扬光大,搞出一个由千万个编程随想组成的去中心化社区。去中心化的【联盟式博客群】或更宽泛的【随想联盟】在权力关系和内容生产消费关系上具备【网状拓扑】,因而具有很强的健壮性,社区在最后一个节点毁灭前都存在。此外,网状拓扑还充分尊重和保证参与者的自由,能自我生长。 对什么是网络拓扑结构不太清楚的同学,可以参考图1中的6种常见拓扑中的Mesh。社交网络(如[太子党关系网络图](https://zhao-visualized.netlify.app/))一般长图2这样,每个节点是一个人,节点的面积与其朋友圈大小成正比。由于实际网络中的各个节点会按照自己的口味决定与谁建立连接,最后实际弄出来的【网状拓扑】社区,不大可能是全连接的Mesh,而是各节点的朋友圈大小不一。 图1:常见拓扑结构 | 图2:社交网络拓扑(来源[维基](https://en.wikipedia.org/wiki/Social_network)) :-------------------------:|:-------------------------: ![典型拓扑结构](https://i.imgur.com/nDg3Cnj.jpg) | <img src="https://upload.wikimedia.org/wikipedia/commons/b/b6/Moreno_Sociogram_2nd_Grade.png" alt="Moreno's sociogram of a 2nd grade class" style="width:250px;"/> 本文的前提是**参与者已经掌握匿名基本功**,基本功教学请参考[《为啥朝廷总抓不到俺——十年反党活动的安全经验汇总》](https://program-think.blogspot.com/2019/01/Security-Guide-for-Political-Activists.html) 、 privacytools.io ([中文版](https://privacytools.twngo.xyz/)),以及[EFF](https://www.eff.org/)和[iYouPort](https://www.iyouport.org/)的更多资源。 本文以[编程随想博客](https://program-think.blogspot.com)评论区的老熟人汤师爷的[总结](https://program-think.blogspot.com/2021/04/weekly-share-152.html?comment=1625972913909) ([电报摘录](https://telegra.ph/%E6%9C%89%E5%85%B3%E5%BB%BA%E7%AB%8B%E6%96%B0%E7%AA%9D%E7%82%B9%E7%9A%84%E8%AE%A8%E8%AE%BA-07-24))和Akiko Maki的[评论](https://program-think.blogspot.com/2020/12/share-books.html?comment=1608889390196#1608889390196)([电报摘录](https://telegra.ph/Akiko-Maki%E5%85%B3%E4%BA%8E%E6%9E%84%E5%BB%BA%E8%AF%BB%E8%80%85%E7%A4%BE%E5%8C%BA%E7%9A%84%E5%8F%91%E8%A8%80-07-25))为基础,在与编程随想读者、2047论坛、hackmd使用者的持续讨论中修改完善。各位看官可到[本文的hackmd版本](https://hackmd.io/@comemory/meshnet-topology-community)继续评论,也可在右上角的设置中打开被隐藏的评论查看原始讨论。 ## 方案细则 ### 1 新建节点 1. 博客平台选择 - hackmd.io, vocus.cc, substack.com, hashnode.com [简介](https://jarodise.com/the-best-free-blogging-platform-in-2021-with-free-custom-domain-hashnode) - 弱匿名 blogspot, wordpress,matters - 自建 Github pages, 参考[样板](https://diymysite.github.io/blog/),[攻略](https://jingtaiboke.com/),评论区方案[gitalk](https://github.com/gitalk/gitalk/)或[staticman](https://github.com/VincentTam/TestStaticmanLab),随想君的[点评](https://program-think.blogspot.com/2021/02/Watergate-Scandal.html?comment=1614098359920) - 自建 [hexo + vercel](https://medium.com/static-void-academy/how-to-deploy-a-blog-in-3-minutes-with-hexo-and-vercel-66f56c22c4b4) - 微博客 [Mastodon](https://joinmastodon.org/) 2. 项目类,参见[集市](#集市),(见[Q6](#q6)) 3. 自建论坛 (见[Q3](#q3)) - 抱大厂大腿的带二级域名零成本论坛 heroku + NodeBB + mongoDB,[例](https://be4.herokuapp.com/) (kagome建议) - 一级域名论坛 略 如平台或服务对Tor不友好,可用[VPN+Tor+VPN三重代理](https://program-think-mirrors.github.io/blog/html/2020/08/Tor-Triple-Proxy.html) ### 2 发现节点 【搜索引擎过滤】是指 在搜索引擎中搜索关键词,利用搜索引擎本身的筛选排序功能,发现其他优质节点(博客)。 - 缺点:有几天的延迟,因此只适合用于【发现】新节点。 - 优点:相关度高、自愿建立联系、耐操、无需自建任何东西 发现新节点后可通过RSS订阅(见8[集中阅读](#8-集中阅读))、社区门户注册(见7[社区门户](#7-社区门户))、添加友链等方式建立节点之间的连接 ### 3 博客宣传 墙外社交媒体 - 强匿名 [Mastodon](https://joinmastodon.org/),[新品葱](https://pincong.rocks/),[2047](https://2047.name/),[迷雾通](https://community.geph.io/),[诺德之地](https://be4.herokuapp.com/),[时代透镜评论区](https://chinatimeline.github.io/comments/) - 弱匿名 [红迪reddit](https://old.reddit.com) (对Tor用户不友好,VPN+Tor+VPN三重代理) - 非匿名 Twitter (关联手机号) 墙外高影响力节点 - [中国数字时代](https://chinadigitaltimes.net/chinese/)转载,[例子](https://chinadigitaltimes.net/chinese/668402.html) - [编程随想博客](https://program-think.blogspot.com/)评论区、[zhao-issue](https://github.com/programthink/zhao/issues) ### 4 创作内容 随想联盟社区的建设,可以借鉴开源软件社区的发展经验。老读者Akiko Maki的[认为](https://program-think.blogspot.com/2020/12/share-books.html?comment=1608889390196#1608889390196) >成功并非轻而易举唾手可得。开源软件领路人Raymond在[《大教堂和集市》](https://crazyangelo.github.io/Cathedral-and-Bazaar/ )里面说,集市要变成大教堂,有几个前提条件: 1)你不能从零开始建设集市,你必须先有一个原始项目。 2)你的原始项目可以有缺陷,但是它必须能运行。 3)你必须向用户展示一个可行的前景,且让潜在的合作者相信在可预见的将来它会变成一个真正漂亮的东西。 4)项目的主持者本身不一定是天才,但他一定要能够慧眼识别出他人的优秀想法。 5)项目的主持者必须要有良好的人际关系、交流技能和人格魅力。这样才能吸引他人,使别人对你所做的事感兴趣,愿意帮助你。 随想联盟社区的初始种子项目,可从博文和项目两个方向着手,首先将已有内容可视化: 1. 将编程随想[博文系列](https://program-think.blogspot.com/2021/01/12-years-blogging.html)可视化,方便后人理解其思路脉络,能为从【内容】层面开枝散叶打下基础 2. 将Github上的[社会影响类项目](https://nodebe4.github.io/impact/)网络可视化,方便后人参与已有节点或创建新节点(项目或博客) 为啥俺强调【可视化】捏?图2的图形化社交网络有点像上帝视角,这种上帝视角的门户本身就会塑造社区的形态,作用类似Google的出现对互联网的重塑。 为吸引更多读者参与共同创作博文、维护和完善开源项目,节点维护者需要发挥创造力,降低参与的门槛、风险、难度。内容或数据可视化是为了降低理解难度,友好的互动界面降低参与门槛,精心设计的匿名措施降低参与风险。此外,如果期望公众参与,还需要抓住公众的兴趣点。 具体创作内容,比如 - 继续填编程随想挖的坑(博文、电子书、开源项目、网站搜集)。将已有[系列博文](https://program-think.blogspot.com/2021/01/12-years-blogging.html)的可视化会是非常好的辅助,如[可折叠树状图](https://observablehq.com/@d3/collapsible-tree)或[圈层图](https://observablehq.com/@d3/zoomable-circle-packing),也可用思维导图([示例](https://miro.com/app/board/o9J_l5b0440=/))、[Vue](https://zhao-visualized.netlify.app/)等 - 老读者Akiko Maki[提出](https://program-think.blogspot.com/2020/12/share-books.html?comment=1608889390196#1608889390196)([电报摘录](https://telegra.ph/Akiko-Maki%E5%85%B3%E4%BA%8E%E6%9E%84%E5%BB%BA%E8%AF%BB%E8%80%85%E7%A4%BE%E5%8C%BA%E7%9A%84%E5%8F%91%E8%A8%80-07-25)) 读者评论+博主筛选整合的共笔模式续写系列博文(如本文) - 与编程随想本人相关:人设猜想、案情进展、其在博文留言区的观点等 - 某某Wiki类知识库 - 完善编程随想分享的电子书系列,如[文艺项目](https://nodebe4.github.io/impact/),上载书籍到[z-lib](https://z-lib.org/) - [社会影响类开源项目](https://nodebe4.github.io/impact/),见[集市](#集市) 内容生产者激励缺位的问题(见[Q2](#q2)),俺认为目前互联网行业,尤其是匿名网络尚未有好的方案,匿名网络还有涉及版权的棘手问题。即便在非匿名网络成功案例也不多(substack模式能否成功还有待观望)。在经济刺激缺位的情况下,随想级匿名能做的事有限,业余的难敌专业的。如业余难搞原创,可专注于发现和应用好优秀的原创作品,如[discord](https://discord.com/), [matrix](https://matrix.org/), [session](https://getsession.org/)等(以[privacytools](https://privacytools.io/)推荐为准)。 ### 5 自我管理 - 每个博主自行决定如何管理自己的博客评论区,同样适用于其它类型节点。 - 评论区垃圾自动过滤 ### 6 三级沟通 1. 私密通信: 匿名邮件、[非对称加密聊天](https://matters.news/@kp2020/%E7%94%A8%E9%9D%9E%E5%B0%8D%E7%A8%B1%E5%8A%A0%E5%AF%86%E5%92%8C%E9%96%B1%E5%BE%8C%E5%8D%B3%E7%84%9A%E5%9C%A8%E5%85%AC%E5%85%B1%E8%AB%96%E5%A3%87%E5%AE%89%E5%85%A8%E7%9A%84%E7%A7%81%E8%81%8A-zdpuAsFV4yPhakL4vDLT2KqAyssnbmF54bj46dBrFLHrUsDRH)、邀请认真创作的节点加入私密群组 2. 节点留言: 各节点评论区留言,用PGP确保留言完整性,与RSS阅读器冲突(见[Q3](#q3)) 3. 宣传推广: 各论坛、社交网络,如这个[电报频道](https://t.me/s/programthink) (见[Q1](#q1)) 一般而言,每一级沟通都需要单独身份隔离 ### 7 社区门户 门户的模式能塑造社区,甚至可以说【门户即社区】。信息的展示方式影响消费者的行为,进而通过流量塑造社区形态。常见的门户形态有普通论坛或hackernews排序算法的聚合类网站,搜索引擎形式,YouTube或今日头条的算法推荐模式,这些形式各有优劣,且有赢者通吃的特性。 #### 7.1 创作社区图形化 注:俺认为 *将创作社区可视化* 属于从【用户】层面拓展【网状拓扑】。 图3:D3.js的网页端数据可视化示例(更多[动态范例](https://observablehq.com/@d3/gallery)) | :-------------------------:| ![image alt](https://lh5.googleusercontent.com/J6pmaVR7BBkFUBJ1BgN-gWz9yhMCfCam9R6Vc9gTm87h3K-iDj44P_7lkUmoMnaFmuvdSJbD4di3l8RCFXUsX-LK2sLcchl5xEW62n0pxxa2wyAvKD-cGcIGHowyM7ewLApDH8gp) | 如[D3.js](https://d3js.org/)能在网页前端实现数据的动态可视化。其中Bubble Chart, Chord Diagram, Force-Directed Graph, Circle Packing都能为社区结构提供一定的上帝视角,特别有助于管理规划,但不一定有利于新信息的展示。门户节点可开发用户数据提交接口实现低门槛的人力众筹。 #### 7.2 创作节点列表化 参考NodeBE4的[英雄](https://nodebe4.github.io/hero)和[开源影响](https://nodebe4.github.io/impact/)。列表更适合详细浏览每个项目的细节,制作门槛也更低,编程随想的电子书就是以列表形式展示。 ### 8 集中阅读 参考:[跨平台匿名互联网社区架构](https://hackmd.io/Z_GJTJznRU-tGxUAq7pllg?view) RSS阅读器 (见[Q3](#q3)) - [feedly](https://feedly.com/), [inoreader](https://www.inoreader.com/) - [RSSHub](https://docs.rsshub.app/), [feedburner](https://www.feedburner.com) ### 9 在线年会 learner[提出](https://program-think.blogspot.com/2021/04/weekly-share-152.html?comment=1627168940714),可以举办定期或不定期的【随想联盟在线大会】,在预定的某几天或星期,在类似诺德之地的临时论坛,就几十个预定议题进行在线文字讨论。大会论坛的参与账号,由【筹委会】发出私信邀请,对象为联盟的重要节点或外部嘉宾(如著名黑客)。此外,公共项目类节点也为匿名贡献者发送邀请码 (如向zhao提交一个有效数据后即获得一个邀请码)。 为确保既定议题讨论不失焦不歪楼,可在既定议程外安排自由讨论环节,方便临时提出新议题。 年度【联盟在线大会】由【筹委会】筹划,筹划的议题、邀请嘉宾等日常事务可由私密聊天工具如Session群聊或(暗网的)私密论坛商讨。(见[Q7](#q7)) 这种嘉宾素质较高、议题预定、集中讨论的大会,可促进高质量交流、成果以及传播效果。 除了非请勿入的主论坛,还可另设面向广大RSS读者的开放注册的普通论坛。(见[Q3](#q3))会议结束后,主论坛立即冻结,普通论坛继续开放数星期再视情况冻结。 ## 集市 ### 编程随想博客镜像备份 - [program-think-mirrors](https://github.com/program-think-mirrors) 浏览点[这里](https://program-think-mirrors.github.io/blog/html/) - [搬运工](https://github.com/posclegom)自建的[仓库](https://github.com/posclegom/programthinkmirror)、维护的[仓库](https://github.com/program-think-mirror/program-think-mirror.github.io) ,浏览[该站点](https://www.programthinkmirror.com/),[另一镜像](https://program-think-mirror.github.io/html/ )的评论区备份[示例](https://program-think-mirror.github.io/html/2021/05/share-books.html.xml) - [NodeBE4](https://github.com/nodebe4)的[观点](https://nodebe4.github.io/opinion/)项目,[Github仓库](https://github.com/NodeBE4/opinion) - [medium备份](https://program-think.medium.com/) ### 编程随想衍生github仓库 - [zhao项目可视化1](https://bl.ocks.org/nov5/raw/9a808f8810550a8331f81e8cc5a08014/21bb9b23194faa457a87c0b60ffe295290662ec1/) 匿名读者发布于2018年5月于[评论区](https://program-think.blogspot.com/2018/04/Zhao-at-GitHub.html?comment=1526880393277) (可视化讨论据点),[赵家人俱乐部](https://zhaojiaren.club) - [zhao项目可视化2](https://zhao-visualized.netlify.app/) 由[罗生](https://github.com/LuoSheng12345)发布[zhao-issue](https://github.com/programthink/zhao/issues/408),可向[罗生版zhao](https://github.com/LuoSheng12345/zhao)匿名[提交更新](https://forms.gle/8v69z19Vroxy8UXP9),或查看最新[进展](https://github.com/LuoSheng12345/zhao/projects/2) - 电子书等出版品收藏,[文艺](https://nodebe4.github.io/art) - 网站收藏,[互联网收藏夹](https://nodebe4.github.io/opinion/tools/), [links@2047](https://2047.name/links) - 开源项目,[社会影响类项目](https://nodebe4.github.io/impact/) ## 商讨中的问题 ### 1. <a id='q1' />有的人可能没有独立支撑一个博客的能力,但是他们也想作出一些贡献,如何利用他们的力量? - 参与类似本文的讨论、评论,帮助改进文章 - 传播者,作为高危博客与普通墙外社区之间的内容搬运工,或线下口口相传 ### 2. <a id='q2' />如何解决 *高危社区生产者激励缺位问题*? 好像这是个Google级别的难题,俗话说[一个不能约炮的社区,永远是做不大的](https://pincongbackup.github.io/p/116129/),甚至可以深入到 “赛博空间匿名社区的治理、激励与传播” [讨论](https://2047.name/t/13604#149218)。 激励不光是 *无利不起早* 的问题,还是发现真正重要问题的反馈函数,比如Linux要开发某个feature需要根据激励来决定该如何取舍。暂无解,下为脑洞 - 加密货币捐款、likercoin、社交代币 (延伸阅读:[Reddit为什么发展社交代币](https://web.archive.org/web/20210721125813if_/https://cn.coinness.com/articles/104542)) - 各节点自行挂靠金主,如民运组织、法轮功组织、EFF、中国数字时代? - 构建一个气氛良好与人才聚集的优质核心社区,外联如[匿名者](https://twitter.com/YourAnonNews )、[GFW Report](https://gfw.report/)等正规军 - 高危创作本身的挑战性和成就感,以及充分自由带来的舒适心情,见随想君的[点评](https://program-think.blogspot.com/2019/03/Misunderstand-Free-and-Open-Source-Software.html?comment=1552293405513) >在【充分自由】的状态下,俺心情足够爽,更能写出质量好的博文。俺之所以坚持写博客,一个重要的原因是:【本身很享受这种过程】 >如果俺是某个商业实体的专栏作家,需要定期发表文章。如此一来就会有某种无形的压力,自由度就下降了,心情就不够爽了,质量反而下降啦。 ### 3. <a id='q3' />如何解决 RSS读者很少光顾评论区的问题? 这好像是又一个Google级别的难题。libgen@2047[推荐](https://2047.name/t/13604#149218)集体博客、论坛社区两种模式。俺认为在线年/季/月会或许能解决 *各节点评论区交流* 与 *RSS集中阅读* 之间的矛盾。 - 采用【多人协作、集中发布】模式,如[IYP](https://www.iyouport.org)、[中国数字时代](https://chinadigitaltimes.net/chinese/) - 论坛社区的优点是能实现好的互动、传播和激励效果,缺点是信噪比低,而且注意力基本上是追时事热点,不适合聚焦议题、做事,论坛只适合交友、宣传。 - wiki模式:有人认为wiki形式的平台可以博采众长,前提是参与度高。 - 在线大会模式:通过博文提前预告会议日期、议题、嘉宾,确保RSS读者知晓。会议期间,普通读者可观摩在线年会,也可在一个平行的开放注册的第二论坛交流。 ### 4. <a id='q4' />联盟的名称 - 随想联盟、随想博客联盟、自由公共空间 ### 5. <a id='q5' />移动互联网时代的流量问题 编程随想曾指出[不可在移动端进行高危操作](https://program-think.blogspot.com/2019/01/Security-Guide-for-Political-Activists.html#head-13),但目前社交媒体已经是移动设备的天下,PC端流量没有增量。红迪和clubhouse的大火都受益于移动端。 - 下行(被动)操作:移动端看文章、看评论、看论坛中的讨论。 - 根据PC端和移动端用户的心理动机和习惯,优化内容以促进传播(参考:[黄章晋](https://www.youtube.com/watch?v=VeAP25JheUU)) ### 6. <a id='q6' />公共项目零(低)参与问题 搬运工[提到](https://program-think.blogspot.com/2020/12/share-books.html?comment=1608930911557):编程随想把太子党网络发布到GitHub上,希望大家都来通过Pull Request贡献更多的太子党网络信息。但是后来发现太子党网络门可罗雀,没人贡献任何信息,变成了鸟不拉屎的地方。博主对这个状况感到有些惊讶和失望,并且说了以后也不会再干这种想让博友群策群力的事情了,因为现在本博客读者一般习惯消费内容,而不是创造内容。 - 采用本文类似的匿名读者评论+博主编写的模式,参与门槛低、风险小 - 降低参与门槛和难度,比如[罗生的zhao](https://github.com/LuoSheng12345/zhao)采用[匿名表单](https://zhao-visualized.netlify.app/about)就比随想君的[Github PR](https://github.com/programthink/zhao/pulls)方便得多 - 可用在线年会等社区的入场券作为对参与公共项目的奖励 - 公共项目可为匿名贡献者提供某些论坛/私密群组的注册邀请码 - 参考RSSHub和996.icu的经验,找好切入点,设计娱乐、便利、社交、展示等方面的奖励 ### 7. <a id='q7' />在线年会筹委会防渗透措施 - 为防止筹委会混入内鬼,筹委内相互不透露个人信息,只负责搜集邀请对象、搭建临时论坛、发送邀请、制定议题,一切就事论事 - 为防止筹备事宜被有意埋雷,筹委会应重视提炼出好的问题,寻找方案时充分议论、保守决策 - 更多经验可参考【华人民主书院】的[戒嚴時期公民運動](https://www.youtube.com/watch?v=86aJki_Q490&list=PLPe8qxzFm0brtmlkPynL9imCxMyU1110w)等:1、从不敏感的周边社会议题做起,2、用基金会模式避免被特务渗透操纵选举而失去领导权