# CSDN 技能森林 ## 如何参与贡献 1. fork 下面对应开放技能树编辑仓库,仔细阅读对应的仓库的README规则,新增习题或者改进已有习题 2. 提交 pull-request 等待审核合并 3. 核心贡献者会邀请加入项目仓库成员 4. 技能树社区将展示出题者信息,以及根据贡献值奖励一定的原力值 ## 已发布技能树 * python 技能树 * 开放编辑仓库:https://codechina.csdn.net/csdn/skill_tree_python * 上线的技能树社区:http://python.csdn.net/ * C语言 技能树 * 开放编辑仓库:https://codechina.csdn.net/csdn/skill_tree_c * 上线的技能树社区:http://clang.csdn.net/ * Java 技能树 * 开放编辑仓库:https://codechina.csdn.net/csdn/skill_tree_java * 上线的技能树社区:https://bbs.csdn.net/skill/java * 算法(algorithm) 技能树 * 开放编辑仓库:https://codechina.csdn.net/csdn/skill_tree_algorithm * 上线的技能树社区:https://algo.csdn.net * 每日一题 技能树 * 该技能树内包含 C/Python/Java/IT冷知识 等习题,面向5-10分钟碎片时间学习用户 * 开发编辑仓库:https://codechina.csdn.net/csdn/skill_tree_dailycode * 区别于其他领域技能树,每日一题以独特的每天更新3道题的独特方式:https://dailycode.csdn.net/ ## 正在开放协作编辑中的技能树 技能树开放编辑仓库采用 MIT 或者 CC4 开源协议 * Rust 技能树:https://codechina.csdn.net/csdn/skill_tree_rust * C# 技能树:https://codechina.csdn.net/csdn/skill_tree_csharp * OpenCV 技能树:https://codechina.csdn.net/csdn/skill_tree_opencv * PostgreSQL 技能树:https://codechina.csdn.net/csdn/skill_tree_pg * Neo4J 技能树:https://codechina.csdn.net/csdn/skill_tree_neo4j * OceanBase 技能树:https://codechina.csdn.net/csdn/skill_tree_oceanbase * 全栈工具 技能树:https://codechina.csdn.net/csdn/skill_tree_toolchains * AI 技能树 https://codechina.csdn.net/csdn/skill_tree_ai ## 技能树概述 内容生产者, 内容消费者,学习者: 他们有不同的需求。 从一个“产品设计” 的角度,一个领域 (Python) 有一个技能树。 这个技能树上面有很多 知识点,这些知识点有 {初中高} 的特性。 每个知识点有 相关的 {博客, 问答, 代码, 视频,... } 集合。 用户如何证明自己掌握了某个知识点? 考虑: * 每个知识点有相关的 “测试”,通过了这个 “测试”. * 成为这个知识点的回答采纳目标。 * 写原创博客获得一定的赞。 * 通过某种考试。 ## 痛点的解决 * 我怎么能证明我自己懂了这个领域? 解决:显示用户花了时间,通过了测试,写了博客。 * 光看博客就能证明自己懂了么? 解决:不行,必须通过测试了 * 我看了程序,但是只有程序片段,我怎么运行在我的电脑呢? CSDN 的程序是完整的,但是拷贝到我的电脑上,怎么不行啊? 解决:让用户能执行完整的可运行的程序。 * 回答者的痛点:我不断地回答相似的问题,一遍一遍给他们源代码。 解决:把完整的解决代码放在 Code 平台上,以后让提问者来这里看。 (这个和 ‘问答’ 业务很相关) 对于技能树上的一个问题,我们应该有完整的解决方案,让用户非常满意: * 问题(怎么做归并排序?) * 解答(原理是这样的) * 代码:这个代码是要能在 Code-China 上可以运行的 (归并排序的代码在 JupyterNotebook 之类的平台运行) * 解释通过代码的评论来完成:用户会说:我不大懂第十行, 为何要这样写? 专家就会解释。 ## 技能树社区核心设计 1. 构建结构化信息,通过难度等级、章/节+子树,使用算法匹配学习知识 2. 每个知识点节点是一个微社区 3. 每个微社区内包含3个重要元素: * 参考资料(学习,使用算法匹配+推荐给出最优质内容) * 习题(验证学习,是否掌握了知识点?习题做完可以去Notebook运行) * 交流讨论区(同主题交流,通过输出进一步强化学习)