open-wonderland icon indicating copy to clipboard operation
open-wonderland copied to clipboard

OSS101课程到教材的转化

Open will-ww opened this issue 1 year ago • 31 comments

时间进度安排:

  • [x] 7 月 10 日前,完成视频的图文撰写工作(以一年级同学为主)
  • [x] 7 月 16 日前,完成所有章节的三级目录撰写(以二年级和博士为主)
  • [ ] 7 月 31 日前,完成所有章节的第一稿
  • [ ] 8 月 15 日前,完成第二稿的修改与优化
  • [ ] 8 月 31 日前,完成第三稿的修改与优化

子任务跟踪:

  • [ ] #319
  • [ ] #320
  • [ ] #321
  • [ ] #322
  • [ ] #323
  • [ ] #324
  • [ ] #325
  • [ ] #326
  • [ ] #327

will-ww avatar Jul 01 '23 03:07 will-ww

根据 2023 暑期计划和本学期的 oss101课程,暑期集中力量整理课程素材,并形成正式的教材书籍, 初步规划如下两本教材:

1、《拥抱开源》 对应 oss101 中的前五讲内容。首先完成必要视频的文字整理工作(如第二讲),然后根据每一讲的所有材料组织并编写内容。

分工如下:

2、《贡献开源》 对应 oss101 中的六 ~ 十讲内容。具体情况同上,还包含了 3 个实践项目,分工如下:

  • 第六讲 软件开发流程与工具
  • 第七讲 个人开源贡献
    • 章节内容 @xgdyp
  • 第八讲 团队开源协作
    • 章节内容 @yoyo-wu98
  • 第九讲 DevOps 开源实践
  • 第十讲 深入洞察与参与开源社区
  • 实践项目 @TieWay59

will-ww avatar Jul 01 '23 04:07 will-ww

没问题。需要给出视频和PPT资料地址。

bifenglin avatar Jul 02 '23 03:07 bifenglin

没问题。需要给出视频和PPT资料地址。

https://github.com/X-lab2017/oss101 仓库里面都有了,这块资料的整理是 @zhicheng-ning 负责,有问题可以找他~

will-ww avatar Jul 04 '23 00:07 will-ww

  • 视频图文 @bifenglin (已完成)

完成的视频图文在哪可以看到呢

zhicheng-ning avatar Jul 12 '23 11:07 zhicheng-ning

  • 视频图文 @bifenglin (已完成)

完成的视频图文在哪可以看到呢

https://www.yuque.com/bifenglin/oormdi/fmgd2gwe6y321a0r

bifenglin avatar Jul 12 '23 11:07 bifenglin

每一节的字数有没有大致要求呢,感觉有的章节内容可能会过多,不太适合全都放到教材里。

PureNatural avatar Jul 12 '23 12:07 PureNatural

graph LR
Root(第1章 开源世界漫游)---A(1.1 开源简史与概览)
Root---B(1.2 开源无处不在)
Root---C(1.3 探索开源世界)
Root---D(1.4 开放源代码运动与黑客文化)

A---A1(1.1.1 开篇故事与启示)
A---A2(1.1.2 开源的发展历程)
A---A3(1.1.3 开源的成熟与机遇)
A---A4(1.1.4 开源的定义与具象化)


B---B1(1.2.1 开源世界的常见入口)
B---B2(1.2.2 探究源代码如何工作)

C---C1(1.3.1 初识 OpenLeaderBoard)
C---C2(1.3.2 中国开源码力榜)

D---D1(1.4.1 开源运动的起源与发展)
D---D2(1.4.2 开源运动的核心关注点)
D---D3(1.4.3 开源文化的三大源头)

zhicheng-ning avatar Jul 12 '23 12:07 zhicheng-ning

graph LR
    Root(第2章 认识开源项目及多视角探索)---A(2.1 跨学科视角探索开源)
    Root---B(2.2 初步认识 GitHub 及开源项目)
    Root---C(2.3 Wuhan2020 开源项目)

    A---A1(2.1.1 历史学视角)
    A---A2(2.1.2 新制度经济学视角)
    A---A3(2.1.3 社会学视角)
    A---A4(2.1.4 管理学视角)
    A---A5(2.1.5 经济学视角)
    A---A6(2.1.6 再谈管理学视角)
    A---A7(2.1.7 其他跨学科视角)


    B---B1(2.2.1 Git 与 GitHub)
    B---B2(2.2.2 开源协作环境的配置)
    B---B3(2.2.3 探索开源项目仓库)

zhicheng-ning avatar Jul 12 '23 12:07 zhicheng-ning

image

PureNatural avatar Jul 12 '23 13:07 PureNatural

每一节的字数有没有大致要求呢,感觉有的章节内容可能会过多,不太适合全都放到教材里。

是的,我们可以统一做个约定:每一讲不超过 50 页面,每一讲下面有 4 ~ 5 小节,每个小节 10 ~ 20 页。稍微多点也没关系,我们统一来做裁剪与优化~

我们可以统一按这个模式来,这样《拥抱开源》、《贡献开源》,每本书不会超过 300 页。

咱们可以用下面这个模板~ 👇

第1章 理解 Git 在 GitHub 中的作用.docx

will-ww avatar Jul 12 '23 13:07 will-ww

https://github.com/X-lab2017/oss101/issues/33

https://github.com/X-lab2017/oss101/issues/71

https://github.com/X-lab2017/oss101/issues/139

我就默认自己是第十一章咯,待定的大纲:

graph LR;

A["11 实践项目"]
    B["11.1 静态网页博客部署"]
        C["11.1.1 静态网页博客概念"]
        D["11.1.2 SSG 框架介绍及使用"]
        E["11.1.3 Github Actions 部署流程"]
        F["11.1.4 Git 基础操作与实例"]
        G["11.1.5 Frontmatter 和 Markdown 语法讲解"]
    I["11.2 Github 基本操作与协作"]
        J["11.2.1 Github 账户设置与仓库创建"]
        K["11.2.2 使用 Git 进行版本控制"]
        L["11.2.3 Github 协同工作流程"]
        M["11.2.4 Pull Request 的创建与合并"]
        N["11.2.5 解决合作中的冲突"]
    O["11.3 Github Action 实践"]
        P["11.3.1 Github Action 功能概述"]
        Q["11.3.2 Github Action 的配置与运行"]
        R["11.3.3 Reaction API 使用详解"]
        S["11.3.4 Personal Access Token 教程"]

A --> B;
B --> C;
B --> D;
B --> E;
B --> F;
B --> G;
A --> I;
I --> J;
I --> K;
I --> L;
I --> M;
I --> N;
A --> O;
O --> P;
O --> Q;
O --> R;
O --> S;

TieWay59 avatar Jul 12 '23 13:07 TieWay59

我在整理章节内容的时候碰到一个疑问,

在视频里介绍一些数据或者咱们实验室的一些成果的时候,一般都是以第一人称展开,如下图: image image

那么这里是使用第一人称还是说替换成Xlab实验室更好一些?可能使用Xlab实验室更客观一些~

PureNatural avatar Jul 13 '23 08:07 PureNatural

我在整理章节内容的时候碰到一个疑问,

在视频里介绍一些数据或者咱们实验室的一些成果的时候,一般都是以第一人称展开,如下图: image image

那么这里是使用第一人称还是说替换成Xlab实验室更好一些?可能使用Xlab实验室更客观一些~

是的,用第三人称叙述,作为一个外部开源专家的视角进行阐述。

will-ww avatar Jul 13 '23 09:07 will-ww

第五讲 1689259008109

longyanz avatar Jul 13 '23 14:07 longyanz

第八章

8 团队开源协作 8.1 开源项目的贡献与管理 8.1.1 探索并参与开源贡献 8.1.2 开源实践

8.2 开放式协作与软件价值交付 8.2.1 团队协作与开发 8.2.2 异步协作的思想与应用 8.2.3 从开源协作看软件价值交付

8.3 代码审查:提升质量与知识共享 8.3.1 代码审查的作用、分类及选择方法 8.3.2 代码审查流程的引入与执行

8.4 高效开源协作实例:Hypercrx项目解析

yoyo-wu98 avatar Jul 15 '23 10:07 yoyo-wu98

两章对应了两个WIP中的语雀文档(第三章第四章),目前放在X-lab语雀空间下我的个人团队的一个公开知识库中,相应的链接也更新在本issue的description中,方便查看。两章大纲截图如下:

第三章 软件产业与开源软件商业化 第四章 全球开源软件生态发展
image image
备注:“3.3企业开源办公室”是我加进去的内容,我看到第十一讲企业开源治理和第十三讲开源职业发展都能讲OSPO,但是由于《拥抱开源》这本教材只包括1-5讲内容,所以我就放进来了 备注:第一讲的OpenLeaderboard和第三讲的Hypercxrx我觉得放在那两讲都不是很合适,把它们聚到一起放在这章似乎更相关;这章内容属于比较高大上的,写起来预计会不容易

tyn1998 avatar Jul 15 '23 12:07 tyn1998

graph LR;

A["6. 开源协作与工程全流程"]
    B["6.1 开源协作工具及其演化历程"]
        C["6.1.1 开源协作与Linux社区早期开源协作方式演化"]
        D["6.1.2 现代开源协作方式与协作平台"]
        E["6.1.3 开源协作工具总结"]
    F["6.2 Git的原理及基本操作"]
        G["6.2.1 Git的原理与特性"]
        H["6.2.2 Git的基本操作"]
        I["6.2.3 Git的学习资源"]
    J["6.3 基于git的协作平台介绍--GitHub"]
        K["6.3.1 Issue案例"]
        L["6.3.2 Issue的典型功能及优势"]
        M["6.3.3 Issue的注意事项"]
        N["6.3.4 基于PR的协作流程"]
        O["6.3.5 PR案例"]
        P["6.2.5 PR的注意事项"]


   Q["6.4 总结:深入了解开源协作流程"]



A --> B;
A --> F;
A --> J;
A --> Q;
B --> C;
B --> D;
B --> E;
F --> G;
F --> H;
F --> I;
J --> K;
J --> L;
J --> M;
J --> N;
J --> O;
J --> P;

xgdyp avatar Jul 16 '23 04:07 xgdyp

第七讲 个人贡献开源

7.1 如何完成一次贡献

  • 贡献前的准备(找项目、找issue)
  • 贡献时注意事项(沟通、commit规范、draftPR、内容正确性)
  • 注意反馈
  • 总结

7.2 开源贡献的内容

  • 代码贡献
  • 文档贡献
  • 问题反馈/参与讨论

7.3 开源实习活动

  • GSOC
  • OSPP

xgdyp avatar Jul 16 '23 10:07 xgdyp

graph LR
    9(第九章 DevOps 开源实践) --> 91(9.1 从敏捷到DevOps)
    9(第九章 DevOps 开源实践) --> 92(9.2 DevOps和开源的碰撞)
    9(第九章 DevOps 开源实践) --> 93(9.3 开源项目面临的质量问题)
    9(第九章 DevOps 开源实践) --> 94(9.4 代码的持续集成测试管理体系)
    9(第九章 DevOps 开源实践) --> 95(9.5 传统软件测试体系的变革和发展)
    9(第九章 DevOps 开源实践) --> 96(9.6 基于开源的代码质量管理体系)

    91 --> 911(9.1.1 软件开发历史回顾)
    91 --> 912(9.1.2 敏捷开发的起源和价值观)
    91 --> 913(9.1.3 敏捷开发和瀑布模型的比较)
    91 --> 914(9.1.4 Scrum模型的简介)
    91 --> 915(9.1.5 DevOps的起源和理念)

    92 --> 921(9.2.1 DevOps中的工具和开源工具的重要性)
    92 --> 922(9.2.2 开源和DevOps的相互依赖)
    92 --> 923(9.2.3 开源和云原生时代的新变化)

    93 --> 931(9.3.1 用户对开源项目的期望和挑战)
    93 --> 932(9.3.2 优秀的开源项目的特征和管理要素)
    93 --> 933(9.3.3 开源项目的常见问题)
    93 --> 934(9.3.4 安全问题和开源风险报告)
    93 --> 935(9.3.5 确保开源项目的安全性的责任和策略)

    94 --> 941(9.4.1 持续集成测试管理体系概述)
    94 --> 942(9.4.2 持续集成的原理与流程)
    94 --> 943(9.4.3 持续集成测试流程管理工具)

    95 --> 951(9.5.1 传统软件测试体系的变革)
    95 --> 952(9.5.2 完整的质量管理体系)
    95 --> 953(9.5.3 对未来软件测试体系的展望)

    96 --> 961(9.6.1 开源项目的需求评审和问题管理)
    96 --> 962(9.6.2 开源项目的测试体系)
    96 --> 963(9.6.3 开源项目的代码质量管理)

bifenglin avatar Jul 17 '23 03:07 bifenglin

第九讲内容初版已经整理完毕,地址:https://www.yuque.com/bifenglin/ntr4sv/uheooc29w455vn29?singleDoc# 《第九章 DevOps 开源实践》
最后大纲如下:

image

目前存在的问题

  1. 部分三级小节只有两个(之前建议3-5个)
  2. 一些图片需要PPT的文件,将里面的图片扣出来,但是现在没有PPT原文件。

bifenglin avatar Jul 31 '23 12:07 bifenglin

目前存在的问题

  1. 部分三级小节只有两个(之前建议3-5个)
  2. 一些图片需要PPT的文件,将里面的图片扣出来,但是现在没有PPT原文件。

1 可以自己扩展内容 2 见附件 第07讲 开源的DevOps流程(张琰彬).pptx 第08讲 开源项目代码管理(张琰彬).pptx

will-ww avatar Jul 31 '23 14:07 will-ww

更新了大纲 https://xlab2017.yuque.com/fo4x1u/kb4iyb/vt2cre195mc0gv13 :

flowchart LR
	A["11 实践项目"] --> B["11.1 静态网页博客部署"]
	B --> C["11.1.1 静态网页博客概念"]
	B --> D["11.1.2 SSG 框架介绍及使用"]
	E["11.1.3 Jekyll框架使用"] --> F["步骤 1:安装"]
	E --> G["步骤 2:创建站点"]
	E --> H["步骤 3:构建站点"]
	E --> I["步骤 4:本地预览"]
	B --> K["11.1.5 Frontmatter 和 Markdown 语法讲解"]
	K --> L["Frontmatter"]
	K --> M["Markdown"]
	K --> N["使用优势"]
	A --> O["11.2 Github 基本操作与协作"]
	O --> P["11.2.1 Github 仓库创建"]
	O --> Q["11.2.2 使用 Git 进行版本控制"]
	Q --> R["使用 Git"]
	Q --> S["设置 Git"]
	O --> T["11.2.3 Github 协同工作流程"]
	U["11.2.4 Pull Request 的创建与合并"] --> V["创建拉取请求"]
	U --> W["管理者合并拉取请求"]
	X["11.2.5 解决合作中的冲突"] --> Y["为什么会产生冲突?"]
	X --> Z["解决冲突的步骤"]
	O --> X
	A --> AA["11.3 Github Action 实践"]
	AA --> BB["11.3.1 Github Action 功能概述"]
	BB --> CC["简易示例"]
	AA --> DD["11.3.2 Github Action 的配置 workflow"]
	DD --> EE["创建一个示例工作流程"]
	AA --> FF["11.3.3 Personal Access Token 教程"]
	FF --> GG["创建个人访问令牌的步骤"]
	FF --> HH["如何让仓库访问个人令牌"]
	AA --> II["11.3.4 简单案例 Reaction Listener"]
	II --> JJ["目标效果"]
	B --- J["11.1.4 Github Actions 部署流程"]
	B --- E
	O --- U
	II --- KK["操作过程"]
 

TieWay59 avatar Aug 02 '23 06:08 TieWay59

第九讲Doc版本 第九章 DevOps 开源实践.docx

bifenglin avatar Aug 11 '23 07:08 bifenglin

第三章初版:https://xlab2017.yuque.com/ukybhe/gmmbf2/tp328q1z1g8iqexo

tyn1998 avatar Aug 12 '23 13:08 tyn1998

第一章初版:https://www.yuque.com/shibudengqinsheng/xbgznw/ufvrk5gxz2kgps1u?singleDoc# 《第一章 开源世界漫游》

zhicheng-ning avatar Aug 14 '23 16:08 zhicheng-ning

[WIP]第五讲初版:https://www.yuque.com/g/xiaoya-ei8zw/kb/pmy45zrhmmxyn5x9/collaborator/join?token=EMEYscu8OobEGnba&source=doc_collaborator# 《第五讲-软件工程与数据科学视角看开源》

xiaoya-yaya avatar Aug 16 '23 12:08 xiaoya-yaya

[WIP] https://www.yuque.com/shibudengqinsheng/xbgznw/lc1146fw37akv1nw?singleDoc# 《第二章 认识开源项目及多视角探索》

zhicheng-ning avatar Aug 20 '23 11:08 zhicheng-ning

第六讲初稿: 第六章 开源协作与工程全流程.docx 第七章初稿: 个人贡献开源.docx

xgdyp avatar Aug 20 '23 17:08 xgdyp

第八讲初稿: https://xlab2017.yuque.com/zaritf/penaut/ylx7fgixoewh5xa6?singleDoc# 《8 团队开源协作》

yoyo-wu98 avatar Aug 29 '23 23:08 yoyo-wu98