diff --git a/.vitepress/config.js b/.vitepress/config.js index 422a816..0d1d327 100644 --- a/.vitepress/config.js +++ b/.vitepress/config.js @@ -503,6 +503,10 @@ export default defineConfig({ { text: 'Contributors', link: '/contributors' + }, + { + text: '贡献指南', + link: '/CONTRIBUTING' } ], socialLinks: [ diff --git a/2.高效学习/2.3.3优秀的开源社区.md b/2.高效学习/2.3.3优秀的开源社区.md index 6d338ba..e7a7a19 100644 --- a/2.高效学习/2.3.3优秀的开源社区.md +++ b/2.高效学习/2.3.3优秀的开源社区.md @@ -34,4 +34,94 @@ awesome (你想学的东西) 例如 awesome C +# 开源的意义 +本章内容节选自Datawhale 5位成员在AI TIME的分享,《清华、北大、上交大、哈工大、中山大学5位同学眼中的开源》。 + +## Z世代的开源新态度 + + + +杨毅远,王琦与江季作为《Easy RL: 强化学习教程》的作者,他们有着丰富的开源经历与感受。 + + + +杨毅远:开源收获的是一个正向反馈 + +在互联网上开源自己的论文代码、项目代码以及学习心得等内容,也有助于和他人沟通交流,收获的也是一个正向反馈。针对问题普通人如何实现开源,杨毅远认为还是要先拥抱开源,不必操之过急,开源工作需要是有意义的工作,是一个漫长的工作。 + + + +王琦:开源的过程虽然会占用自己的一部分时间,但这却是一个幸福的烦恼。 + +论文末尾大多会附上代码地址,即代码开源。大家在看到论文代码开源的情况下会认为这篇论文能够复现的可能性比较大。虽然在将开源项目发布到GitHub之后给他人问题答复的过程可能会占用自己的一部分时间,但这可以算是一个幸福的烦恼。 + + + +江季:敢于开源的人也是一个乐于分享,心态积极的人。 + +互联网上的开源是需要勇气的,毕竟开源后的代码要在互联网上面临网友们的考验。江季对于开源的领域也有自己独到的见解,他以春秋战国时期的百家争鸣为例,阐述了无论是对于工科生还是文科生,开源这件事都是很适用的。 + + + +张文涛:能够与志同道合的人交流,是开源过程中至关重要的一环。 + +开源不是一个瞬间,而是需要持续地去做,无论是主动还是被动。将项目发布到网络上只是一个起点,之后反复与他人交流和解决问题,进而对项目进行不断的修正。 + + + +陈安东:要像种一棵树一样等到自己的开源工作开花结果。 + +开源可以分为三点:首先是要知道自己想要什么;第二点是做开源一定要有始有终,只有完整的开源工作才能被大家使用和学习,完整的工作才能在之后有优化迭代的空间;第三是要有一个”开源是一个长期的过程”这样的心态。 + + + +## 作为年轻一代,我们眼中的企业开源 + + + +王琦:企业的目的可能是先通过开源抢占市场,后续再通过推行定制化的服务来盈利。 + + + +陈安东:开源是一种企业与市场自我革命的做法,这种革命能够促进技术的发展,最终为用户带来好处。 + +一个行业的开源企业对传统1对1收费的市场是一个不小的冲击,因为这个市场份额也就随着这家免费的开源企业而不断减小。但是由于开源带来的技术分享反而使市场更加集中与优质化,技术也随着开源而更快速的迭代,从而产生了更好用的产品。 + + + +张文涛:开源有利于提升产品的影响力 + +虽然公司在做开源之前不一定有明确商业目的,但是可能在开源过程中发现一些可盈利的点来开发出其产品线。然后,企业可以将这块收入的一部分反馈到开源的过程之中来增加产品的影响力。 + + + +杨毅远:开源不失为一种提高公司知名度和用户信任感的方式 + +如果是一家中小型的创业公司,是否可以把自己核心的一部分开源出来?这样不失为一种提高公司知名度和用户信任感的方式。此外,当把实验代码开源到网络上之后,人们也希望有其他同领域的专家、研究人员可以一起来滚动更新这个任务。 + + + +## 关于未来的开源,我们想说…… + + + +江季:开源是一个很有前景的领域,然而现在的开源文化还并不成熟,开源确实是仍然在路上。 + +开源目前仍然存在不够合格的现象,比如说某些人的开源工作难以复现。开源是一个很有前景的领域,尤其是在促进学术界发展上。然而现在的开源文化还并不成熟,开源网站中占据大部分篇幅的还是广告,并没有形成知识分享的模式,开源确实是仍然在路上。 + + + +张文涛:开源的形式丰富多样,暂时不必思考太多,可以先和志同道合的人一起前进。 + + + +王琦:三体人的先进在于一代又一代的持续知识共享,我们可以先模仿、学习他人的项目。 + +我们如今做的东西,可能在历史长河之中早已被他人做过。如果提前了解到这些,可以很大地提升我们的工作效率。如果想做一个优质的开源项目,我们可以先模仿、学习他人的项目。 + + + +陈安东:开源应该是一个特别酷的东西,要敢于让别人看到自己的工作。 + +如今的开源还远远不够,大多数人还停留在在闭门造车的阶段。鼓励大家将自己的项目分享出来让大家来一起参与,接受大家的评价,彼此交流与指出问题,这样不但可以让开源工作更好,也可以让参与开源的大家收获满满。 diff --git a/3.编程思维体系构建/3.6.1从CS61A看编程语言学习.md b/3.编程思维体系构建/3.6.1从CS61A看编程语言学习.md index 8343a26..38a92fb 100644 --- a/3.编程思维体系构建/3.6.1从CS61A看编程语言学习.md +++ b/3.编程思维体系构建/3.6.1从CS61A看编程语言学习.md @@ -1,6 +1,6 @@ # 从 CS61A 看编程语言学习 -author:ou_e47643905a4829d86c75c884fffc988d + # 什么是 CS61A diff --git a/3.编程思维体系构建/3.编程思维体系构建.md b/3.编程思维体系构建/3.编程思维体系构建.md index e7332fc..1d3219c 100644 --- a/3.编程思维体系构建/3.编程思维体系构建.md +++ b/3.编程思维体系构建/3.编程思维体系构建.md @@ -16,3 +16,28 @@ ![](https://hdu-cs-wiki.oss-cn-hangzhou.aliyuncs.com/boxcnOrKXUsIPJAUXyGB3Txewve.png) + + +# 本章参考内容 + +[cs61a](https://cs61a.org/) + +[CS自学指南](https://csdiy.wiki/) + +[MIT-Missing-Semester](https://missing.csail.mit.edu/2020/) + +[Introductory C Programming](https://www.coursera.org/specializations/c-programming) + +[一生一芯nemu](https://ysyx.oscc.cc/) + +[jyy的OS课程](https://jyywiki.cn/) + +[迷宫game](https://github.com/helderman/htpataic) + +[GDB User Manual](https://www.sourceware.org/gdb/) + +[learn vim](https://github.com/wsdjeg/Learn-Vim_zh_cn) + +Book:教材替换用书——《C Primer Plus》 + + diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..d3b12d9 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,62 @@ +# 贡献指南 +感谢您的贡献,并感谢您在执行此操作之前阅读此文档! + +## 致新贡献者 +欢迎你的到来,非常感谢你愿意一起建设 HDU-CS-WIKI 💖。 + +初次参与,你遇到任何问题都可以直接反馈到本仓库,包括但不限于: + - 开发环境搭建时遇到任何问题。 + - 文档遇到任何问题。 +如果你在运行项目的时候发现任何不符合预期或不合理的地方,请直接提交 Issue反馈和 Bug 报告! + +## 如何贡献 +我们欢迎各种贡献,包括但不限于: + +- 新功能(feature) +- 代码构建、CI/CD +- Bug 修复 +- 文档内容增删改 +- Issue 分类、发起、回复、管理、维护 +- 网站页面设计 +- 在各种媒体、博客文章宣传 HDU-CS-WIKI + +## 如何使用Git和Github + +详见 [3.5 Git和Github](https://hdu-cs.wiki/3.%E7%BC%96%E7%A8%8B%E6%80%9D%E7%BB%B4%E4%BD%93%E7%B3%BB%E6%9E%84%E5%BB%BA/3.5git%E4%B8%8Egithub.html) + +## commit message 规范 + +本项目遵循以下 commit message 规范: + +```bash +模板: +type(scope): subject + +type为commit的类型 + feat: 新特性 + fix: 修改问题 + refactor: 代码重构 + docs: 文档修改 + style: 代码格式修改 + test: 测试用例修改 + chore: 其他修改, 比如构建流程, 依赖管理. + pref: 性能提升的修改 + build: 对项目构建或者依赖的改动 + ci: CI 的修改 + revert: revert 前一个 commit(撤销前一个commit) + +scope是文件名 / 模块名 / 影响的范围 + 例如 schoolSchedule + +subject为commit概述 + 建议符合 50 / 72 formatting + +例 feat(JoinForm): add success submit tips + +冒号后方可以使用中文描述 + +注意 冒号和subject之间要加空格 +``` + +## Pull Request 流程与指南 +Fork 本仓库,然后在你的仓库中进行修改,修改完成后在本仓库创建NEW Pull Request,选择 compare across forks 提交 pr 并评论上你修改的具体信息即可,我们会第一时间审阅并合并。 \ No newline at end of file