Cleanup and prepare for a new semester

This commit is contained in:
Hao He 2022-09-05 14:20:28 +08:00
parent aa85e3dfd1
commit 8dc85e47b8
18 changed files with 28 additions and 112 deletions

View File

@ -1 +0,0 @@
2021年秋季课程材料在此文件夹下

View File

@ -1,74 +0,0 @@
# 课程大纲
**主要内容软工基础理论SE + 开源方法、技术和实践OSP + 开源文化OSC + 课程项目PRJ**
* 第1次课开源软件及其开发概述。 2021/09/17
100课程简介课程的目的和内容以及课程的考核形式。 **lecture100**
101开源软件概述开源的定义、历史和现状、社区结构和治理以及开源研究。 **lecture101**
<!--
102开源参与概述怎么参与开源项目和社区如果时间允许课堂上访问github/gitee/educoder设立平台账号了解一个开源项目。**lecture102**
-->
* 第2次课开源开发的支持平台、技术以及参与贡献的过程。熟悉开源平台和相关参与操作布置开源任务的选择OSP-1 10/08
201Git实践入门
202GitHub实践入门
203开源贡献指南criteria to select open source project and task to participate in; learn how the open source community works; how to make the first contribution.
实践在github course社区中创建一个repo, 写下一个md文档阐述目前想到的可能会去贡献的oss project某个特定项目或具有某些特征的项目
<!--
作业:选择一个开源项目,了解其开发过程
-->
* 第3次课软件工程传统软工与开源软工的异同。 <u>SE-1</u> 09/24
201经典软件工程。**lecture201**
202从传统软工到开源开发。**lecture202**
203如何通过互联网了解一个开源项目的开发过程 to be or not to be? TBC
*** call for contribution开发过程实例企业开发一个产品版本的过程&一个开源软件版本的开发过程。 鸣谢王旭提供了2页素材 ***
* 第4次课开源项目maintainer分享其维护/开发的经验。(多个项目,为开源任务选择做准备&提供依据OSP-2 10/15
*** call for contribution围绕其开源项目介绍如何参与、如何贡献以及其项目常用规则 ***
开源项目的分享操作系统容器AI框架项目介绍、技术介绍、如何参与。
openEuler胡欣蔚
kata container王旭
paddlepaddle朱欤。
* 第5次课课程项目的开始选择开源项目和开源任务。 PRJ-1 10/22
学生报告如何根据criteria to select open source project and task来进行开源任务的选择报告模板参见课件
* 第6次课开源软件开发的典型开发活动及支持技术。开源贡献实践篇CI/CDOSP-3 10/29
上机实习了解三种CI流程管理工具Travis CI、GitHub Actions、Gitee Go, 知道如何使用这些工具编写简单的CI流水线并且在实践项目上完成符合要求的成功构建。
实习过程中关于gitee go的建议https://toscode.gitee.com/pitcher/gitee-go-exercise/issues
* 第7次课软件工程经典思想设计原则。及其在开源项目中的应用和变化。 <u>SE-2</u> 11/05
* 第8次课软件项目管理软件过程与软件工程原则。 及其在开源项目中的应用和变化。<u>SE-3</u> 11/12 ---
思想实验假设你发起了一个项目1选择一个你想实现的软件产品what it is? 2想象你怎么组织开发多少人多长时间怎么管理进度和质量
* 第9次课开源社区及开源文化。与开源布道师面对面。 OSC-1 11/19
*** call for contribution***
PingCAP CTO 黄东旭,内容: 开源分布式数据库TiDB概述TiDB社区治理流程+PR实践我眼中的开源文化。
* 第10次课课程项目报告进度报告涉及任务选择/合作反馈/工具使用等。 PRJ-2 11/26
* 第11次课开源许可证和开源基金会。 OSC-2 12/03
* 第12次课开源开发中的沟通。开源贡献实践篇如何沟通如何提交PR等。 OSP-5 12/10
开源软件开发的开发活动和支持技术:协作和沟通。(开源贡献实践篇:讲授+课堂实践)
* 第x次课开源治理开源基金会开源与法律。OSC-2 optional
* 第13次课开源软件开发的挑战和相关研究。 OSC-3
* 第x次课业界开源专家经验分享开源需要的能力。 OSP+C 12/24 ---non---
*** call for contribution***
* 第14次课实践课熟悉PyPI和NPM等包管理系统了解打包和上载过程。
* 第15次课课程项目结题报告。 PRJ-3 12/24 (之后停课)

0
Assignments/Lab1.tex Normal file
View File

9
CONTRIBUTORS.md Normal file
View File

@ -0,0 +1,9 @@
## 项目维护者
[周明辉]( https://minghuizhou.github.io/ ) 北京大学博雅特聘教授
## 项目贡献者
* [张宇霞](https://cs.bit.edu.cn/szdw/jsml/fjs/zyx/index.htm) 北京理工大学
* [谭鑫](https://sites.google.com/view/xintan/homepage) 北京航空航天大学
* [何昊](https://hehao98.github.io) 北京大学

View File

@ -1,6 +1,23 @@
本课程为大学计算机系本科生和研究生设计,课程目的是使得计算机领域的同学们对于开源软件的开发方法、开发过程和支持技术有深入的了解,对于如何将抽象方法和理论知识结合到工程中有更好的锻炼,对于参与开源软件社区有基本的掌握。
## 开源项目招募!
本课程的大作业为学生参与开源项目,完成某个任务。
什么是任务可以是为某个开源项目报告某个issuefix某个bug增加某个featureif possible或者为某个issue添加一个comment以提供solution等等。
在此过程中,开源项目的参与至关重要,
* 可以为学生选择想要参与的开源项目提供线索;
* 可以为学生进入开源项目提供精细化指南;
* 可以为学生宣讲和展现开源技术和文化。
从开源项目的角度,本课程为其提供校园宣传和招新机会。
有鉴于此,我们招募开源项目。
任何乐意参与的开源项目可在此发起issue提供项目介绍和联系方式。或者发送邮件给zhmh@pku.edu.cn。
## 课程背景:
开源软件在科学研究、工业制造、以及日常生活中发挥着重要作用。特别是近年来,开源软件在云计算、大数据、人工智能等新兴领域迅速成为技术主流。开源软件不仅是重要的计算基础设施, 也成为了社会生活依赖的基础设施。此外国内很多IT公司也逐渐推出了一些高质量的开源项目比如openEuler、TiDB、OceanBase、PaddlePaddle等。开源已经成为软件技术创新和软件产业发展的主要模式。
与传统开发模式相比开源开发展现出充分共享、自由协同、无偿贡献、用户创新、持续演化的新特征颠覆了诸多经典软件工程的基本假设和理论。越来越多的IT公司在内部推行开源理念和开发方法以期提高创新能力以及开发效率和质量等。相比传统软件开发开源软件开发有一套新的模型和技术。然而鉴于相关课程的缺乏广大同学们对此缺乏理解和实践。因此我们开设此课程以帮助计算机领域的同学们了解开源软件开发和开源社区参与这是现时代技术环境下亟待掌握的基本知识。

2
Slides/README.md Normal file
View File

@ -0,0 +1,2 @@
#this folder is for courseware, will produce slides based on the outline of the course. ***此文件夹为课程课件***

View File

@ -1,6 +0,0 @@
##maintainers:
北京大学 周明辉
##contributors:
北京理工大学 张宇霞
北京航空航天大学 谭鑫

View File

@ -1,17 +0,0 @@
#this folder is for courseware, will produce slides based on the outline of the course. ***此文件夹为课程课件***
## 实践课程的课件: requirements
1, Version control with git: How to use git?
ppt + video
2, Practice in Github: how to use github?: Open a repo, fork a repo, start discussion/issue, submit pr
ppt + video
学生实践操作在课程organization里创建一个repository并创建一个md文件随意写下自己对开源的理解例如描述自己可能有兴趣贡献的开源项目或任务的特征
3, Select a project/task to contribute: understand what good first issue (GFI) is at GitHub, skim over the repos that have GFI, locate GFIs to understand what skills they require (with examples).
4, Practice of making contribution: understand the protocol of a project: reading CONTRIBUTING.MD -- understand what it says about how to make contribution (with an example).
5, Practice of communication: what to say, how to say it, when to communicate

Binary file not shown.

View File

@ -1,14 +0,0 @@
# 开源项目的招募
本课程的大作业为学生参与开源项目,完成某个任务。
什么是任务可以是为某个开源项目报告某个issuefix某个bug增加某个featureif possible或者为某个issue添加一个comment以提供solution等等。
在此过程中,开源项目的参与至关重要,
* 可以为学生选择想要参与的开源项目提供线索;
* 可以为学生进入开源项目提供精细化指南;
* 可以为学生宣讲和展现开源技术和文化。
从开源项目的角度,本课程为其提供校园宣传和招新机会。
有鉴于此,我们招募开源项目。
任何乐意参与的开源项目可在此发起issue提供项目介绍和联系方式。或者发送邮件给zhmh@pku.edu.cn。