V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
turen0514
V2EX  ›  程序员

[讨论]如何设计一个可以无限第三方扩展的 web 平台

  •  
  •   turen0514 · 2019-06-23 16:39:04 +08:00 · 3511 次点击
    这是一个创建于 1986 天前的主题,其中的信息可能已经有所发展或是发生改变。

    很多人鄙视软件业的开源风气,辛辛苦苦做的东西竟然免费给别人用。
    但是软件开源风气却使得软件行业的发展速度比任何一个传统行业都快。
    短短数十年时间,软件业就改变了整个人类社会的面貌,并成为人类社会的基石之一。

    每一个新入行的程序员都可以免费使用业界最先进的技术。
    每一个开源软件模块也有机会拥有无数程序员的支持,参与,维护和扩展。
    软件开源社区可以说是自发践行“我为人人,人人为我”准则的最大人类群体。

    作为程序员个体,参与开源社区不仅仅是工作,从某种程度上来说,也是一种娱乐和放松。
    而大型软件公司,google,facebook,阿里巴巴,甚至业界大反派,曾经用 IE 阻碍互联网发展的微软,都已经宣布“拥抱开源”。
    因为即使从经济效益上来说,开源也不像业外人士想的那样,不仅不会亏,还会大赚。

    如何把开源风气推广到所有行业和领域?
    如何构建一个能容纳支撑所有行业开源的平台?
    

    乌托邦平台的核心思想

    容纳一切开源的创造性活动

    自然科学,工程技术,社科人文
    创作音乐,设计机器人,开创学术理论,等等

    不仅是活动的组织和管理,重点是记录创造过程

    开源的不光是知识,还有思维方式,研究方法。

    github 管理过程和结果,但是一个软件最初如何构想,设计的过程并没有记录
    

    提供快速提高个体思维力的途径

    一个外行如何参与到感兴趣的创造活动中去?

    • 知识:快速学习教程
      怎样让一名程序员快速达到研究弦理论的知识水平?  
      
    • 研究方式:创造过程作为人生阅历提供
      怎样才能完美还原创造过程?
      

    所有参与者自由构建平台,自由探索最好的方式

    各领域的创造方式完全不一样,仅凭一个组织无法做出适应所有场景的平台。 基于互联网和 5G 的特性,建立无限可扩展的架构和运行方式,
    由全体参与者完成平台。

    所有参与者自组织

    全体参与者构建的平台由全体参与者自我管理。

    面向人群

    人生不如意者十之八九
    大部分人没有从事能让自己获得幸福感的工作

    • 因为经济原因选择了不喜欢的专业

    • 数学物理系毕业找不到工作,只能去当码农

    • 自诩满腹经纶,却被领导压制,还挣不到钱的愤青

    • 生活没目标,玩着网游混日子

    • 打宝箱的三和大神

    • 整天被家长逼着学习的小学生

      怎样获得精神上的幸福感?  
      

    做自己擅长和喜欢的事,并得到他人的认可

    对象:所有追求精神上幸福的人
    目标:将这些人的一部分时间和思维力转移到创造性活动上,并给与精神或物质上的回报

    如何让参与平台学习研究的人感受到放松和娱乐,而不是负担?
    

    愿景

    • 每个人的业余时间不光充斥着快消娱乐,
      还有机会参与任何自己感兴趣并对社会有贡献的活动。
    • 无功利性,高效的获取知识。
    • 社会中科研地位提高,专业或业余科研工作者重新获得人们的尊重
    • 社会资源向基础自然科学倾斜,快速进入星际时代
    第 1 条附言  ·  2019-06-23 17:19:41 +08:00
    第 2 条附言  ·  2019-06-23 17:22:28 +08:00

    实现方案一 https://github.com/zhangchen0514/utopia/blob/master/doc/%E5%AE%9E%E7%8E%B0%E6%96%B9%E6%A1%88%E4%B8%80.md

    功能模块

    学习模块

    针对不同背景,不同基础提供各种学习内容

    • 兴趣扩展类,有趣为主,利于放松和发现感兴趣的方向
    • 最快速度掌握类
    • 循序渐进类
    • 由项目转化的创新实践

    类似今日头条,AI 推荐算法引导用户,但内容可分类,可检索。 学习内容由参与者发表,除了传统的文字,图片,视频外还可以是第三方开发的定制形式。

    项目模块

    类似 github 项目, 但是进入每个项目后,画面功能各不相同,由各项目管理者设计成最适合本领域的形式

    用户和评价系统

    对于所有用户发表的内容可以送免费或收费礼物,免费礼物代表声望和话语权,收费礼物平台分成作为运营费用

    基本系统架构

    整个平台像是一棵树,土壤是基础服务,其他所有功能都是分支节点 一个项目是节点,一条评论是节点,一个论坛也是节点

    除了基础服务和基本节点外所有开发由第三方实施,以便在实践试错中探寻最有效的实施形式

    ###第三方开发者 开发各种节点,并上传带节点库

    项目管理者

    从节点库中选择节点组织成适合本项目的结构,类似淘宝店装修

    参与者

    向各节点填充内容

    运行时解析

    运行例:打开节点 url,根据节点种类从节点库下载代码运行,加载当前数据,显示页面。 有子节点的话递归重复这一过程

    和 DOM 树解析的区别是,每个节点的解析逻辑在云端,利用 5G 的超快网速下载

    第 3 条附言  ·  2019-06-23 17:24:33 +08:00

    思考背景 https://github.com/zhangchen0514/utopia/blob/master/doc/%E8%83%8C%E6%99%AF.md

    思维力

    人类的思考分为两种

    • 模式化思考:对于已掌握知识的应用。

      如利用学到的数学公式做题

    • 创造性思考:基于已掌握知识进行思考,产生了新的创新性结果。

      如归纳总结出一个数学公式

    创造性思考的结果就是知识。

    相对于电脑的计算力,我们把人类创造性思考的能力,也就是产生新知识的能力称为思维力

    思维力的度量

    特定人类个体的思维力由以下几点决定

    • 人脑的物理构成
    • 基于人生阅历形成的特定思维方式。

      学习,工作,生活,娱乐就是阅历
      唱一首歌,说一种语言,想出万有引力理论,每一刻的活动都在提供新的阅历
      大脑就像是深度学习(Deep Learning)的模型,阅历则是不断喂入的数据。
      随着阅历的增长,不断建立或重塑人的思维方式。
      最终形成了当下的自我。
      ※感情是阅历的重要参数,不同强度和角度的感情相当于阅历数据的权重,决定对思维模型的影响力

    • 掌握的知识

      自然科学,社科人文,哲学方法论等

    特定思维个体的思维力在不同维度有着不同的表现。 有的人擅长作曲,有的人擅长写代码。

    下图是日本媒体为马龙和其日本对手做的六维图,
    个体思维力也可以用这种形式表达,不过维度要多得多。

    思维力对社会的影响

    古代社会,生产力和技术限制下,平民生活机械重复,知识和阅历的不足无法形成足够强大的思维力
    整个古代史都是贵族的历史。

    工业革命后,整体思维力越强大的族群,竞争力越强
    族群竞争促进社会进步,平民地位不断提高,形成更强大的思维力

    信息革命后,人类获取知识和阅历的能力空前强大,电话,电视,互联网 普通人不要去经历具体的人生,小说电影游戏等艺术形式都可以让人短时间内获取古人无法想象的阅历。

    生产力不断解放的同时,个体思维力也不断得到解放,整个人类社会呈现加速式发展。

    现代社会,人类的整体思维力无数倍于17世纪的欧洲,基础自然科学却进展乏力

    现代社会的思维力利用率

    1. 整体思维力利用率低
      更细致的社会化大分工,导致思维个体被分配到合适岗位的几率降低
      单个思维个体或沉溺于信息海洋,或执着于自身利益,无法有效发挥所拥有的思维力
    2. 精深专业领域,思维力不足
      门槛太高:大量的前置知识基础,落后的教育学习方式
      资源投入不足:现代社会是资本组织和推动的,资本的短视和逐利限制了投入

    人类生存风险

    科技革命后星际殖民前是个高风险时期,人类灭亡几率突发性提高

    • 核战,污染等自我灭亡
    • 能源消耗完毕,剩余能源无法支撑星际殖民
    • 星际殖民时代后,变成分布式架构,容错性加强,进入一个相当长的低风险期

    急需快速跳过这个阶段,加速进入星际时代。

    问题的解决

    1. 宏观调控 重点领域提高整体思维力和资源投入
      • 短期回报低的基础自然科学:数学物理等
      • 思维力的研究: 如何分类度量,高效培养
      • 教育方式的改进: 如何最高效的提高思维力
        例:数学表达语言的升级,想想如果现在用汇编构建整个淘宝系统要花费多少资源
      • AI:降低非必要思维力和资源损耗,随着AI的发展,今后大部分人可能根本不需要工作
      云计算整合计算力,统一规划调度,极大提高了计算力利用率  
      如何像云计算一样组织调度思维力? 
      
    2. 微观精细化管理 挺高单个思维个体思维力利用率
      • 延长思维个体提高使用创造性思维的时间
      • 使用该思维力最有优势的维度

    以资本为基石的组织无法做到这些,需要一个推进这些事务的全民自组织平台

    30 条回复    2019-06-25 09:50:42 +08:00
    turen0514
        1
    turen0514  
    OP
       2019-06-23 17:00:41 +08:00
    实现方案一
    https://github.com/zhangchen0514/utopia/blob/master/doc/%E5%AE%9E%E7%8E%B0%E6%96%B9%E6%A1%88%E4%B8%80.md

    # 功能模块
    ### 学习模块
    针对不同背景,不同基础提供各种学习内容
    * 兴趣扩展类,有趣为主,利于放松和发现感兴趣的方向
    * 最快速度掌握类
    * 循序渐进类
    * 由项目转化的创新实践

    类似今日头条,AI 推荐算法引导用户,但内容可分类,可检索。
    学习内容由参与者发表,除了传统的文字,图片,视频外还可以是第三方开发的定制形式。

    ### 项目模块
    类似 github 项目,
    但是进入每个项目后,画面功能各不相同,由各项目管理者设计成最适合本领域的形式

    ### 用户和评价系统
    对于所有用户发表的内容可以送免费或收费礼物,免费礼物代表声望和话语权,收费礼物平台分成作为运营费用

    # 基本系统架构
    整个平台像是一棵树,土壤是基础服务,其他所有功能都是分支节点
    一个项目是节点,一条评论是节点,一个论坛也是节点

    除了基础服务和基本节点外所有开发由第三方实施,以便在实践试错中探寻最有效的实施形式

    ### 第三方开发者
    开发各种节点,并上传带`节点库`中

    ### 项目管理者
    从节点库中选择节点组织成适合本项目的结构,类似淘宝店装修

    ### 参与者
    向各节点填充内容

    # 运行时解析
    运行例:打开节点 url,根据节点种类从节点库下载代码运行,加载当前数据,显示页面。
    有子节点的话递归重复这一过程

    和 DOM 树解析的区别是,每个节点的解析逻辑在云端,利用 5G 的超快网速下载
    firefox12
        2
    firefox12  
       2019-06-23 17:05:23 +08:00 via iPhone
    开源就是老二想把老大拉下来的手段,自己打不过 就免费找些人想办法把你弄下来。最核心的东西 从来没有公司会开源,开源的东西也是前一代的,自己有核心优势。你看过那个行业第一的商业产品开源了?
    GPLer
        3
    GPLer  
       2019-06-23 17:13:24 +08:00 via Android
    @firefox12 LaTeX ?
    turen0514
        4
    turen0514  
    OP
       2019-06-23 17:15:00 +08:00
    @firefox12 比如 Linux,比如 google 的下一代 OS fuchsia ?
    hoyixi
        5
    hoyixi  
       2019-06-23 17:17:53 +08:00   ❤️ 1
    洋洋洒洒,恕我愚钝,还是不明白你到底要干嘛
    turen0514
        6
    turen0514  
    OP
       2019-06-23 17:29:43 +08:00
    @hoyixi 不好意思,作为程序员我语言表达能力不太好
    我想设计的是一个能创造所有知识的平台。但是不同的知识创造方式完全不一样。
    所以这个平台上每个项目可能都需要自己的定制页面和功能。
    平台本身就要具备第三方无限可扩展的能力
    Kilerd
        7
    Kilerd  
       2019-06-23 17:55:30 +08:00   ❤️ 2
    不知所云
    firefox12
        8
    firefox12  
       2019-06-23 18:50:37 +08:00 via iPhone
    来喷点冷水,无限的扩展,意味着别人能释放可执行的代码。20 年前就有这个能力了,一个 php 的平台 允许用户上传 php 代码 并且执行它就可以了。如果能保证安全可控的前提还可以。事实会怎么样,自己想想就可以。
    janus77
        9
    janus77  
       2019-06-23 19:17:28 +08:00
    不存在的
    第一 某些东西不可复制,比如金融的投资技巧(是技巧不是理论,这是要在多年实战经验下的总结)
    第二 人性(或者说资本)并不是善的(这里我就不说恶了),君不见连「 dont be evil 」这种本应是基本素质的东西都变成值得夸耀的一点了?
    第三 对于产业化来说,私有才能促进竞争,恕我虽然正在享受着开源带来的便利 但是并不是很支持开源被“发扬和扩大”。
    smallgoogle
        10
    smallgoogle  
       2019-06-23 20:15:47 +08:00
    既然是开源了,那基本是靠生态维持。
    turen0514
        11
    turen0514  
    OP
       2019-06-23 21:59:39 +08:00   ❤️ 1
    @firefox12 安全性确实是一大问题。目前只有一些不成熟的想法
    1.第三方代码上传时必须开源
    2.第三方代码访问的数据库存储区只能是平台提供的沙盒存储区
    3.解析引擎以沙盒方式执行第三方代码
    4.涉及到利益的操作,如捐款,评价等由解析引擎覆盖描画在第三方 UI 上
    turen0514
        12
    turen0514  
    OP
       2019-06-23 22:07:02 +08:00
    @janus77 并不是所有知识都要分享
    第一 金融的投资技巧这种很难分享,也不需要分享给别人。因为如果所有投资者都掌握并运用了这个技巧,技巧本身就会失效。
    第二 资本没有善恶,只追求自身的增殖。所以这个平台的终极目标是自管理,所有参与者和人工智能来管理
    第三 linux 的开源同样促进了竞争,整个开源社区其实是有激烈竞争的,光前端框架就有 react,vue,angular,阿里 weex,新入场的 flutter web
    janus77
        13
    janus77  
       2019-06-23 22:29:59 +08:00
    @turen0514 #12 这不就没意思了吗,一边说要无限扩展一边又说有东西不需要扩展,那谁来定义“无限”的界限?你还是大家?
    至于资本这个问题,当今社会做恶事明显利润更高,所以有可能当然趋向于做恶事。
    开源促进竞争我并不同意真的,也许在某个领域是对的,但你扩大到任何行业领域,就不对了,我至少能证明私有是在大部分领域促进了竞争的,而你只能证明在 IT 领域的开放促进了竞争……
    turen0514
        14
    turen0514  
    OP
       2019-06-24 00:13:26 +08:00
    @janus77 #13
    >那谁来定义“无限”的界限?
    无限扩展不是指内容,而是软件可以无限扩展,让软件可以更好的表现内容
    什么内容什么行业可以放在平台上完全由参与者决定。
    >至于资本这个问题,当今社会做恶事明显利润更高,所以有可能当然趋向于做恶事。
    资本做的恶事从长期来看反而可能导致好的结果,工业革命之初,工人生活比农业社会还惨,但是这种压迫促使了反抗,才有了五一劳动节,有了 8 小时工作制,当然中国程序员还没有。
    私有和资本竞争对社会进步的贡献有目共睹,这个软件并不是也不可能消除私有,而是要成为一种补充,一种探寻大规模多人远程协同创造性工作方式的平台,让大家有机会从业余时间做恶事或无所事事的时间中抽出一小部分做点对社会发展有正面意义的事
    >开源促进竞争我并不同意真的
    确实如此,上万次试验研究出的材料配方就免费贡献出来不管怎么讲都不合逻辑。
    即使是软件业,大家开源的也主要是架构和工具类代码,业务类代码开源的并不多。
    所以这个平台还需要做到
    1. 如何让开源者获得精神或物质上的回报?
    2. 哪些领域适合开源,或者开源更有利于这些领域的发展。这需要各领域参与者的探索
    adian
        15
    adian  
       2019-06-24 00:16:02 +08:00
    恕我愚昧,似乎贴吧,reddit 和你说的很相似。
    testeststs
        16
    testeststs  
       2019-06-24 00:41:14 +08:00
    科技的发展靠的不是一两个人,而是一个时代;
    这个时代人人都在做金钱的奴隶,都是资本的奴隶,无论是争吵男权女权,民族 /国家 /宗教 /意识形态,背后都是利益的纠葛;
    一个人真有思维力,他想的也不会是怎么开始星际时代,而是怎么赚钱,钱都在应用科学那里,谁去搞基础科学研究?

    没有国家,任正非,谷歌这些真的有理想的人砸钱,基础科学早就当然荡然无存了;
    仅从基础科学的角度来说,还不如冷战持续下去.......
    jinliming2
        17
    jinliming2  
       2019-06-24 00:59:50 +08:00 via iPhone
    @turen0514 你是在说 docker 容器平台吗?代码打进 docker,运行加以限制,数据库可以单开一个 docker,开源不开源都随意了……
    这种东西应该已经有了……

    顺便吐槽一句,现如今优秀软件越来越少了(不否认还有)。
    个人拙见:开源意味着会被社区牵制,海量的 issue 和 PR/MR 要审核筛选,除非有领工资的专门的团队,不然真的很难做(不否认可以做到)。认认真真实现功能的时间都没了……
    很怀念以前的软件功能齐全,用不用它都在那里,想用了自然有,不想用也不影响你。
    以前的音乐播放器,音效、频谱、混音、截取、N 多格式支持,这几乎都是标配。而现在的商业版本,也就听个响了……开源版本,“站在巨人的肩膀上”,都是缺胳膊少腿的……真正好用的,貌似只有上古时期传承下来的版本了……
    开源让软件的迭代速度加快,但也让软件经不起时间的磨炼,新事物不完善,旧事物却总是被新事物取代。
    摸着石头过河,的确都在进步,但真正能站稳的石头并不多。
    autogen
        18
    autogen  
       2019-06-24 01:03:05 +08:00
    是搭一个 VPS,给你们上传网页吗?
    lunafreya
        19
    lunafreya  
       2019-06-24 02:57:48 +08:00 via iPhone
    1. 不知道是要干什么,感觉是个前端的东西
    2. 现在的前端也这么多民科了?
    no1xsyzy
        20
    no1xsyzy  
       2019-06-24 04:03:10 +08:00
    reddit 可以有效扩展吧…… 至少可以让你的用户名边上出现些东西( CMV 可以显示收到的 !delta 或者 Δ 的个数)
    learnshare
        21
    learnshare  
       2019-06-24 08:11:43 +08:00
    超链接不就是无限扩展的首要功能?
    Wikipedia 才是学习的地方
    no1xsyzy
        22
    no1xsyzy  
       2019-06-24 10:50:49 +08:00
    @learnshare wikibooks (指正)
    wikipedia 是沉迷于点击大量链接并且三小时后什么也没学到的地方。
    https://xkcd.com/214/
    LeoHunter
        23
    LeoHunter  
       2019-06-24 10:53:10 +08:00
    类似 leetcode ?
    no1xsyzy
        24
    no1xsyzy  
       2019-06-24 10:53:36 +08:00
    楼主你知不知道有个东西叫 HTML,还有个东西叫做 HTTP ?
    这两个东西都很好用,可以非常方便地扩展,楼主快点和小伙伴一起用上吧!
    (被自己毒出尴尬癌
    TheBestSivir
        25
    TheBestSivir  
       2019-06-24 12:06:10 +08:00
    无限扩展意味着没有明确的问题域,没有问题域是推导不出解决方案的。

    真正的无线扩展就是啥都没解决,接入的时候再提出对应的问题域来解决
    hahaha888
        26
    hahaha888  
       2019-06-24 13:28:22 +08:00
    不就是一个 树形 BBS 就能解决的问题吗
    php01
        27
    php01  
       2019-06-24 13:51:38 +08:00
    知识图谱+搜索引擎。
    turen0514
        28
    turen0514  
    OP
       2019-06-24 21:03:49 +08:00
    @adian #15
    >恕我愚昧,似乎贴吧,reddit 和你说的很相似。
    贴吧的每个吧结构都一样,和普通的论坛并没有什么区别。
    一个论坛理论上可以完成所有事,但是效率很低,
    比如你可以在论坛上发帖沟通完成所有项目管理,但是没人会这么干。
    专业的事一定要专业的功能模块来做,
    比如一个数学项目,项目管理者需要加入一个类 matlab 的模块
    一个重力研究项目,管理者就可能需要一个物理引擎。
    平台方不可能加好所有功能,所以需要由第三方来做。所以需要平台可以扩展。

    那么为什么不直接链接到另一个软件或网页里去呢?
    1.可以更好的呈现内容给读者,一个页面里可以同时存在 matlab 和物理引擎
    2.同一个页面上的第三方子节点之间需要互动
    3.用户需要互动,我没法到 photoshop 里给平台上的一个用户点赞
    turen0514
        29
    turen0514  
    OP
       2019-06-24 21:32:36 +08:00
    @learnshare #21
    >超链接不就是无限扩展的首要功能?
    请参考我 28 楼的第二段
    假设我的一个 AI 研究页面,嵌入了 4 个 Jupyter Notebook,还有这四个程序训练情况的统计比较报表。
    4 个 python 程序和训练集在平台数据库中,并和特定用户关联。
    Jupyter Notebook 和报表是两个不同的第三方模块,
    平台引擎注入数据到第三方节点中,并维持这两种节点间的通信
    lyy16384
        30
    lyy16384  
       2019-06-25 09:50:42 +08:00
    当要推出一个新产品——比如菜刀——的时候,发现卖不过原有品牌怎么办,通常的方案是细分市场,申明我这个是专门切肉的菜刀,切菜你用原来的,切肉你来我这个,这也就是为什么现在的产品都讲垂直化。
    然后你这个设想是反着来的,看似包容一切,其实是与所有现有产品竞争,容易成为空中楼阁
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1141 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 18:45 · PVG 02:45 · LAX 10:45 · JFK 13:45
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.