Compare commits

...

3 Commits

Author SHA1 Message Date
Xu Weiwei c16a1ccd36
Update README.md 2024-09-04 14:38:14 +08:00
Xu Weiwei 20abe09ff1
Merge pull request #13 from osslab-pku/patch-1
Update date in Syllabus.md
2024-09-04 13:45:40 +08:00
Xu Weiwei 5ef8a5f0f2
Update date in Syllabus.md 2024-09-04 13:44:55 +08:00
2 changed files with 25 additions and 25 deletions

View File

@ -57,6 +57,6 @@
## 使用本仓库的课程 ## 使用本仓库的课程
1. 北京大学信息科学技术学院,《开源软件技术》 1. 北京大学信息科学技术学院,《开源软件技术》
* 2021-2022学年秋季学期、2022-2023学年秋季学期 * 2021-2022学年秋季学期、2022-2023学年秋季学期、2023-2024学年秋季学期、2024-2025学年秋季学期
2. 跟头歌共建的实训课程参见https://www.educoder.net/paths/9i8a7og6 2. 跟头歌共建的实训课程参见https://www.educoder.net/paths/9i8a7og6

View File

@ -8,21 +8,21 @@ EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE. MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
See the Mulan PSL v2 for more details. See the Mulan PSL v2 for more details.
# 2023年秋冬学期——课程大纲 (subject to change) # 2024年秋冬学期——课程大纲 (subject to change)
**主要内容: 开源开发方法、技术和实践OSP + 开源文化OSC + 上机实习lab + 课程项目PRJ** **主要内容: 开源开发方法、技术和实践OSP + 开源文化OSC + 上机实习lab + 课程项目PRJ**
授课教师:周明辉 授课教师:周明辉
助教: 谷海桥 助教: 徐卫伟
## 第1次课开源软件及其开发概述课堂lecture 09/13 ## 第1次课开源软件及其开发概述课堂lecture 09/11
* 100课程简介课程的目的和内容以及课程的考核形式。 **lecture100** * 100课程简介课程的目的和内容以及课程的考核形式。 **lecture100**
* 101开源软件概述开源的定义、历史和现状、社区结构和治理以及开源研究。 **lecture101** * 101开源软件概述开源的定义、历史和现状、社区结构和治理以及开源研究。 **lecture101**
* 102往年贡献: 以特定GitHub项目/任务为例,展示如何做贡献;以及讲述往年同学的贡献历程和体会。(消除畏惧感) * 102往年贡献: 以特定GitHub项目/任务为例,展示如何做贡献;以及讲述往年同学的贡献历程和体会。(消除畏惧感)
## 第2次课开源开发的支持平台和关键技术熟悉开源平台和Git操作课堂lecture 09/20 ## 第2次课开源开发的支持平台和关键技术熟悉开源平台和Git操作课堂lecture 09/18
* 201Git实践入门 **lecture201** * 201Git实践入门 **lecture201**
- 了解版本控制了解使用Githttps://missing.csail.mit.edu/2020/version-control/ - 了解版本控制了解使用Githttps://missing.csail.mit.edu/2020/version-control/
@ -41,9 +41,9 @@ See the Mulan PSL v2 for more details.
> - 提交一个issue描述自己的想法相比较于第一次提交做出了哪些变化 > - 提交一个issue描述自己的想法相比较于第一次提交做出了哪些变化
> - 将仓库fork到自己的账号下对README.md做出相应修改并提出一个PR并解决产生的冲突 > - 将仓库fork到自己的账号下对README.md做出相应修改并提出一个PR并解决产生的冲突
> >
> Lab 1详细要求参见[WriteUp](Assignments/Lab1.md)**截止日期2023.10.05 11:59am** > Lab 1详细要求参见[WriteUp](Assignments/Lab1.md)**截止日期2024.10.03 11:59am**
## 第3次课开源贡献指南课堂lecture 09/27 ## 第3次课开源贡献指南课堂lecture 09/25
* 301开源贡献指南 **lecture301** * 301开源贡献指南 **lecture301**
- learn how the open source community works; - learn how the open source community works;
@ -57,14 +57,14 @@ See the Mulan PSL v2 for more details.
> - 了解并报告CONTRIBUTING.md的形式和内容 > - 了解并报告CONTRIBUTING.md的形式和内容
> - 回答有关其贡献流程、质量管理方式等若干问题 > - 回答有关其贡献流程、质量管理方式等若干问题
> >
> Lab 2详细要求参见[WriteUp](Assignments/Lab2.md)**截止日期2023.10.12 11:59am** > Lab 2详细要求参见[WriteUp](Assignments/Lab2.md)**截止日期2024.10.10 11:59am**
## 第4次课开源项目maintainer分享其维护/开发的经验。(多个项目,开拓视野&为开源任务选择做准备) 10/11 ## 第4次课开源项目maintainer分享其维护/开发的经验。(多个项目,开拓视野&为开源任务选择做准备) 10/9
* 开源项目的分享:项目介绍、技术介绍、项目常用规则、如何参与。 * 开源项目的分享:项目介绍、技术介绍、项目常用规则、如何参与。
* 飞桨开源社区分享的介绍请看这里内含课程的ppt在线浏览[飞桨开源社区走进北京大学课堂](https://pfcc.blog/posts/pku-course)。 * 飞桨开源社区分享的介绍请看这里内含课程的ppt在线浏览[飞桨开源社区走进北京大学课堂](https://pfcc.blog/posts/pku-course)。
## 第5次课开源任务的选择。课堂lecture 10/18 ## 第5次课开源任务的选择。课堂lecture 10/16
* 501如何选择开源任务参与GitHub Good First Issue **lecture501** * 501如何选择开源任务参与GitHub Good First Issue **lecture501**
> **Lab 3在开源项目中选择开发任务8分两周** > **Lab 3在开源项目中选择开发任务8分两周**
@ -73,29 +73,29 @@ See the Mulan PSL v2 for more details.
> * 是否具有Good First Issue机制 > * 是否具有Good First Issue机制
> * 如果你需要在其中选择开发任务,你会如何做 > * 如果你需要在其中选择开发任务,你会如何做
> >
> Lab 3详细要求参见[WriteUp](Assignments/Lab3.md)**截止日期2022.11.02 11:59am** > Lab 3详细要求参见[WriteUp](Assignments/Lab3.md)**截止日期2024.10.31 11:59am**
## 第6次课课程项目开题报告选择开源项目和开源任务 10/25 ## 第6次课课程项目开题报告选择开源项目和开源任务 10/23
* 学生报告, * 学生报告,
1初始选择了什么开源项目和任务 1初始选择了什么开源项目和任务
2对此开源项目及其指南的认识 2对此开源项目及其指南的认识
3贡献计划。 3贡献计划。
## 第7次课CI/CD上机实习 11/01 ## 第7次课CI/CD上机实习 10/30
> **Lab 4CI/CD流水线搭建10分两周** > **Lab 4CI/CD流水线搭建10分两周**
> >
> 了解CI/CD流程管理工具GitHub Action知道如何编写简单的CI/CD流水线并且在实践项目上完成符合要求的成功构建 > 了解CI/CD流程管理工具GitHub Action知道如何编写简单的CI/CD流水线并且在实践项目上完成符合要求的成功构建
> >
> Lab 4详细要求参见[WriteUp](Assignments/Lab4.md)**截止日期2023.11.16 11:59am** > Lab 4详细要求参见[WriteUp](Assignments/Lab4.md)**截止日期2024.11.14 11:59am**
> >
> 4Fun: 2021课程实习过程中关于gitee go的建议https://toscode.gitee.com/pitcher/gitee-go-exercise/issues > 4Fun: 2021课程实习过程中关于gitee go的建议https://toscode.gitee.com/pitcher/gitee-go-exercise/issues
## 第8次课从经典软工到开源开发。课堂lecture 11/08 ## 第8次课从经典软工到开源开发。课堂lecture 11/06
* 501从经典软工到开源开发 **lecture501** * 501从经典软工到开源开发 **lecture501**
## 第9次课PyPI/NPM等包生态系统/包管理工具,使用/打包/上载软件包(上机实习) 11/15 ## 第9次课PyPI/NPM等包生态系统/包管理工具,使用/打包/上载软件包(上机实习) 11/13
> **Lab 5Python开源软件包安装/管理/打包/上载10分三周** > **Lab 5Python开源软件包安装/管理/打包/上载10分三周**
> >
@ -104,9 +104,9 @@ See the Mulan PSL v2 for more details.
> - 将自己的Python包手动发布到TestPyPI > - 将自己的Python包手动发布到TestPyPI
> - 配置自动化的CI/CD流水线实现从GitHub直接发布Python包到TestPyPI注意不是PyPI平台。[TestPyPI](https://test.pypi.org)是与PyPI分离的Python包发布平台使练习时发布的Python包不会影响到真正的生态 > - 配置自动化的CI/CD流水线实现从GitHub直接发布Python包到TestPyPI注意不是PyPI平台。[TestPyPI](https://test.pypi.org)是与PyPI分离的Python包发布平台使练习时发布的Python包不会影响到真正的生态
> >
> Lab 5详细要求参见[WriteUp](Assignments/Lab5.md)**截止日期2023.11.30 11:59am** > Lab 5详细要求参见[WriteUp](Assignments/Lab5.md)**截止日期2024.11.28 11:59am**
## 第10次课开源开发中的沟通实践课堂lecture 11/22 ## 第10次课开源开发中的沟通实践课堂lecture 11/20
* 601: 协作和沟通的重要性如何沟通分布式沟通中的要点如何提交PR等。**lecture601** * 601: 协作和沟通的重要性如何沟通分布式沟通中的要点如何提交PR等。**lecture601**
> **Lab 6开源项目中的沟通实践8分两周** > **Lab 6开源项目中的沟通实践8分两周**
@ -118,17 +118,17 @@ See the Mulan PSL v2 for more details.
> - 提交issue时如何参与讨论如何沟通 > - 提交issue时如何参与讨论如何沟通
> - 提交pr时如何沟通 > - 提交pr时如何沟通
> >
> Lab 6详细要求参见[WriteUp](Assignments/Lab6.md)**截止日期2023.12.07 11:59am** > Lab 6详细要求参见[WriteUp](Assignments/Lab6.md)**截止日期2024.12.05 11:59am**
## 第11次课课程项目进度报告任务选择/合作反馈/工具使用等 PRJ-2 11/29 ## 第11次课课程项目进度报告任务选择/合作反馈/工具使用等 PRJ-2 11/27
## 第12次课开源的几个关键问题课堂lecture 12/06 ## 第12次课开源的几个关键问题课堂lecture 12/04
* 开源为什么能成功? * 开源为什么能成功?
* 开源模式会主宰未来吗? * 开源模式会主宰未来吗?
* 什么是“卡脖子”问题? * 什么是“卡脖子”问题?
## 第13次课开源相关的研究课堂lecture和讨论 12/13 ## 第13次课开源相关的研究课堂lecture和讨论 12/11
* Talks from Daniel and Sean; * Talks from Daniel and Sean;
* Talks from Phd students. * Talks from Phd students.
* 开源数字社会学(数据驱动的开源研究,研究对象:软件~开发者,软件供应链~个体效率/群体协作/生态持续性) * 开源数字社会学(数据驱动的开源研究,研究对象:软件~开发者,软件供应链~个体效率/群体协作/生态持续性)
@ -137,15 +137,15 @@ See the Mulan PSL v2 for more details.
* 新手任务推荐,从理解新手任务的性质到智能推荐工具 * 新手任务推荐,从理解新手任务的性质到智能推荐工具
## 第14次课开源商业模式课堂lecture 12/20 ## 第14次课开源商业模式课堂lecture 12/18
* 公司为什么参与开源? * 公司为什么参与开源?
* 开源商业模式有哪些? * 开源商业模式有哪些?
* 学生选择案例(特定公司和特定开源项目),说明其开源商业模式。 * 学生选择案例(特定公司和特定开源项目),说明其开源商业模式。
## 第15次课课程项目结题报告 PRJ-3 12/27 ## 第15次课课程项目结题报告 PRJ-3 12/25
英明神武的同学们的最终报告。 英明神武的同学们的最终报告。
> 最后一次课之后需要提交课程项目最终报告LaTeX格式**截止日期2024.1.10 11:59am** > 最后一次课之后需要提交课程项目最终报告LaTeX格式**截止日期2025.1.8 11:59am**
> >
> 课程项目的详细要求参见[WriteUp](Assignments/Project.md) > 课程项目的详细要求参见[WriteUp](Assignments/Project.md)