/oss101

开源软件通识三部曲

oss101

欢迎大家来到《开源软件通识》这门课程,本文档从课程背景、定位目标、课程体系、拓展大赛、课程进程等几个方面,详细介绍这门课程,带你一起畅游开源软件的世界。

《开源软件通识》课程整体设计

1、课程背景

A. 开源发展

随着开源技术体系逐渐成为全球数字化转型的核心驱动力,开源软件已经成为各类信息系统构建的公共基础件,关系着国家数字经济基础设施的未来,开源正在经历着一个全球大发展的过程。以开源开放的**建立各类信息系统,越来越成为当下公平、公开、透明、可信等核心价值观的共识,为国家发展以我为核心的全球化 2.0 战略,提供了一个重要技术要素。包括教育评价、社会信用、法律咨询、政府治理、公益平台等这类具有公共属性的社会服务,均对开源开放的技术体系有着强烈需求。

开源软件与开放系统在各行业的持续发展,离不开开源知识体系的构建开源人才的培养,加速培育以**为主导的开源生态体系也已成为包括国家十四五规划在内的共识。开源软件的基础知识,已经成为现代大学生数字素养与技能中的一项核心能力,需要系统构建通识性课程,来弥补全球产业需求与高校人才培养之间的巨大鸿沟。

B. 定位目标

开源软件的基础知识,已经成为现代大学生数字素养与技能中的一项核心能力,本课程是面向大学生全体的一门软件通识课,培养学生:

  • 了解开源软件领域的全貌,建立开源的基本意识;
  • 掌握开源软件的基本内涵和应用模式,包括使用开源、贡献开源和发展开源的基础内容;
  • 掌握以社区为中心的软件开发基本流程,并做到初步的参与开源社区贡献的训练,以及通过数据理解开源生态的面貌与演变;
  • 让大家感受到开源创新的精神,领略到开源协作的愉悦,体会到开源贡献的成就;
  • 点燃大家参与到开源活动中的热情与兴趣!

C. 学习收益

学员能够从本课程中获得的收益包括:

  • 知识:系统的开源基础知识,包括使用开源、贡献开源以及发展开源;
  • 技能:基于 Git 协作的数字产品协作全流程,以及基于社区的组织治理与运营方法;
  • 品行:融入开源社区的团队协作、沟通交流、道德规范、以及领导力与影响力;
  • 职业:将开源素养和自己的专业能力进行融合,提升自身在各行业中的数字竞争力。

D. 主创团队

本课程主要由 X-lab 开放实验室出品,同时也参考、借鉴、复用了部分互联网上的开放内容。X-lab 开放实验室是一个聚焦于开源软件产业开放式创新的研究群体;专业学科领域主要包括软件工程、数据科学与工程,但也涉及管理学、社会学、经济学等交叉学科;长期思考并实践开源战略、开源测量学、开源数字生态系统等主题;目前已在包括开源治理标准制定、开源社区行为度量与分析、开源社区流程自动化、开源全域数据治理与洞察等方面做出了较有影响的工作。

2、课程体系

《开源软件通识》课程主要包括拥抱开源、贡献开源、以及发展开源三个依次进阶的模块。

每个部分的课程包括五讲的内容(每周一讲),每讲由不同类型的学习资源所支撑,每一讲(每周)大约需要花费 3 ~ 6 个小时的学习与实践时间。

  • 试一试(Trying to Answer):课前课后问答
  • 看一看(Watching Lectures):在线视频观看
  • 读一读(Extended Reading):扩展阅读分析
  • 做一做(Learning by Doing):动手实验/实践
  • 悟一悟(Case Based Learning):基于案例的学习

详细的课程内容安排如下所示:

3、课程进程


周数📆 日期🕣 内容📒 主讲💂‍♂️ 本周任务 📌 电子课本📘 开放资源📂
01 2.27 开源世界漫游 @will-ww 任务01 查看 仓库
02 3.6 多学科视角下探索开源 @frank-zsy 任务02 查看 仓库
03 3.13 软件产业与开源软件商业化 @frank-zsy 任务03 查看 仓库
04 3.20 全球开源软件生态发展 @will-ww 任务04 查看 仓库
05 3.27 软件工程与数据科学视角看开源 @will-ww 任务05 查看 仓库
06 4.3 复习课-拥抱开源
07 4.10 软件开发流程与工具 @frank-zsy 任务06 查看 仓库
08 4.17 个人开源贡献 @will-ww 任务07 查看 仓库
09 4.24 团队开源协作 @will-ww 任务08 查看 仓库
10 5.1 DevOps 开源实践 @AliceCodeZhang 任务09 查看 仓库
11 5.8 深入洞察与参与开源社区 @will-ww 任务10 查看 仓库
12 5.15 复习课-贡献开源
13 5.22 企业开源治理 @zhuangbiaowei 任务11
14 5.29 开源社区运营 @legist 任务12
15 6.5 开源成长与职业发展 @RexWzh 任务13
16 6.12 浅谈谷歌 SRE 与开源技术的新发展
17 6.19 开源人才发展与评价 @will-ww
18 6.26 复习课-发展开源

4、学习模式

课程采取开放课程的模式,将“线下课”和“线上课”的授课内容、时间节奏、实践方式等进行高度统一。每次课程的学习模式与节奏如下:

  • 周五:每周五发布下周学习任务;
  • 周一:线下课,重点知识回顾、课题互动答疑;
  • 周二 ~ 周四:本周课程的关键点内容、补充材料、学员互动等。

Tips:找到自己感兴趣的材料,并进行自主学习,才是王道~

5、学习评价

总体来说采取过程性评价的模式,充分利用“学习行为数据”与“指导老师主观评价”相结合的方式。本课程将学员在本仓库中的活跃行为作为课程参与的重要评价依据,线下课的评分主要包括:

  • 平时成绩:线下出勤与签到
  • 平时作业:本仓库中的活跃行为
  • 期末项目:完成大作业并答辩

对于线上参与的学员,我们通过本仓库中的活跃度计算与排名,给大家提供部份礼品作为支持。

Tips:对错很多时候并不那么重要,参与与协作才是本质~

6、拓展大赛

《开源软件通识》课程同时和今年的“OpenDigger 开源软件生态数据分析挖掘平台全球大赛”(与开放原子共建的形式)充分结合,课程作为大赛的标准配套培训课,供参赛选手进行学习;同时线下班的期末大作业也择优选取,作为大赛作品的推荐。本次大赛共一等奖 1 名,二等奖 4 名,三等奖 8 名,OpenRank 影响力奖 50 名,奖金池总共 50 万元。具体情况后续更新,敬请关注~

Tips:学以致用,以赛促学,也是一个不错的方式~

7、课程参考教材