前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >我体验开源世界的这几年

我体验开源世界的这几年

作者头像
灵魂画师牧码
发布2019-08-20 16:34:21
7830
发布2019-08-20 16:34:21
举报
文章被收录于专栏:灵魂画师牧码

开源软件在好多年前就已经在软件开发技术人群中火热起来,最著名的开源软件平台GitHub也成为了程序员聚集地,甚至于GitHub上的Star数量一度成为了招聘加分项,以至于出现了专业刷Star的现象。

虽然本科读了4年软件工程,但是我真正接触开源世界是从研一开始的,而在开源世界中积极参与并有所输出,也就是1年前研三的时候。

尽管我体验开源世界的日子并不长,但是依然想介绍一下我融入开源、做开源项目的过程。因为我猜测有很多同学和当年的我一样有以下特点:

  1. 对于开源软件好奇
  2. 想参与到开源软件的开发中
  3. 但是又不知从何下手

无论上面是否描述的正是你当前的状态,不妨看看我的参与体验过程,也许会有所收获或者有所共鸣。

开源软件协会

研一时候,最开始了解开源软件,是加入了中科院开源软件协会[1]

当时的我是及其懵懂的状态,说两个例子就大概知道我的水平了。

  1. 还不会用 Git
  2. 还不会访问外国网站

现在说出来感觉很丢人,这四年本科真是白读了,哈哈。

加入协会之后,大概了解了当时在做的开源镜像站是什么,开源软件都有什么,知道了GitHub的存在。

中科院开源软件协会

后来研二我又继续留了下来,作为负责人之一,尝试着做开源项目,我的第一次尝试是刷算法题,当时建了一个QQ群叫做中科院开源软件自习室,每天都以作业的形式发一道算法题和题解,群里一度有500多人,当时主要的目的就是希望督促自己刷题为找工作做准备,另外也号召了一些研一的学弟学妹一起做事情。

在有了一定的基础之后,第二次尝试就是做开源软件推荐,同样是每天推荐一个软件,然后分好任务大家值班完成,同时还有同学使用上述内容去每天更新协会的公众号,上述事情大概做了有几个月的时间,后来由于种种原因没有继续做下去。

研二结束后也结束了我的协会生涯,总体来说协会给了我机会让我去了解开源,也让我迈出了第一步。

参与项目

首先要感谢乐神,尽管码蜂社[2]的工作我做的很少,但是官网开发是我参与的第一个有协作相关的项目,正式开启了我的GitHub之旅。

码蜂社官网

在整个过程中熟悉了JavaScript的使用,更多的接触了前端开发并对之产生兴趣。后续就开始接触了更多的开源工具:

  • 使用GitBook维护文档
  • 使用GitHub Page建立博客
  • 将一些相关的文档放到GitHub上
  • 大量使用在线工具,包括石墨文档、nodeppt、draw.io等

在整个过程中了解了React、Koa等开源框架,使用hexo做博客并开发了一个主题,看到了two.js、three.js等图形库的使用,可以说这个阶段几乎是我个人的前端之旅。

idea与产出

开源平台在那里,但是做什么往往是最难想到的一件事情,而我又是一个希望做有意义项目的人,所以在很久一段时间除了写写博客、上传一些文档之外,并无其他建树。

直到刚上研三找工作的那段时间,idea渐渐成熟,一直到毕业的这一年,产出了大概10个左右的小开源项目,说起来感觉很多,实际上都是基于平时生活中的经验和知识向前走了一小步,列举一下我的开源产出(只列举作为主要参与者参与开发的项目):

1. awesome-books[3]

  • 简介:开发者推荐阅读的书籍,整理了相关技术书单,并提供电子版下载和购买链接
  • 类型:收集资料
  • 相关技术:Node.js
  • Star:447

书单推荐

2. markdown-nice[4]

  • 简介:支持自定义样式的在线微信Markdown排版工具,这个工具绝对是Phoebe的良心之作,开发的原因是为了用Markdown写公众号且苦于没有好用的工具
  • 类型:网页应用
  • 相关技术:React
  • Star:119

微信Markdown排版工具

3. markdown-resume[5]

  • 简介:支持Markdown和富文本的在线简历排版工具,这个idea绝对是我的独创,基于对设计和简历的理解,因为排版Word写简历麻烦故而开发了该工具
  • 类型:网页应用
  • 相关技术:React
  • Star:91

Markdown简历工具

4. java-concurrent-programming[6]

  • 简介:这是一本书《实战Java 高并发程序设计》的笔记和源码整理,在我整理前是没有现成的源代码可用的。
  • 类型:收集资料
  • 相关技术:Java
  • Star:63

Java高并发笔记

5. LeetCodeDrawing[7]

  • 简介:力扣精选题解,画解算法合集。除此之外还记录了公众号的全部原创文章
  • 类型:生活记录
  • 相关技术:VuePress
  • Star:42

画解算法合集

6. awesome-pronunciation[8]

  • 简介:明确计算机词汇发音,收集了大量的计算机词汇和音标,并制作了一个小测试页面,欢迎体验。
  • 类型:收集资料
  • 相关技术:Vue.js
  • Star:34

计算机词汇发音

7. interviews[9]

  • 简介:个人的2019年春招和秋招的全部面试经历,记录了面试时间、公司、题目和体验。
  • 类型:收集资料
  • 相关技术:Markdown
  • Star:20

面试经历

8. github-annual-report[10]

  • 简介:用于获取GitHub 2018年度代码报告的网页H5,和网易云音乐的年度报告很像,这个是我网页应用开源的开端。
  • 类型:网页应用
  • 相关技术:React
  • Star:13

GitHub代码报告

9. guanpengchn.github.io[11]

  • 简介:通过读取GitHub Issue渲染GitHub Page的博客系统,曾经想过是否可以做成类似hexo一样的工具,后来发现没有SEO是硬伤,所以作罢。
  • 类型:网页应用
  • 相关技术:Vue.js
  • Star:11

博客主题

10. reading-list[12]

  • 简介:主要存放自己的读书、观影和idea记录,并且每月增加书单,这是我督促自己读书的仓库
  • 类型:生活记录
  • 相关技术:Markdown
  • Star:1

读书记录

总结

不知不觉3年的研究生时光过去了,已经入职工作了1个月有余,回想自己的开源世界经历,本质是督促自己前进、学会宣传自我的过程。

最后送给大家一句话:参与开源,学会分享,乐在其中

参考资料

[1]

中科院开源软件协会: https://www.opencas.org/

[2]

码蜂社官网: https://www.mafengshe.com/

[3]

书单推荐: https://github.com/guanpengchn/awesome-books

[4]

微信Markdown排版工具: https://github.com/zhning12/markdown-nice

[5]

Markdown简历工具: https://github.com/guanpengchn/markdown-resume

[6]

Java高并发笔记: https://github.com/guanpengchn/java-concurrent-programming

[7]

画解算法合集: https://github.com/guanpengchn/LeetCodeDrawing

[8]

计算机词汇发音: https://github.com/guanpengchn/awesome-pronunciation

[9]

面试经历: https://github.com/guanpengchn/interviews

[10]

GitHub代码报告: https://github.com/guanpengchn/github-annual-report

[11]

博客主题: https://github.com/guanpengchn/guanpengchn.github.io

[12]

读书记录: https://github.com/guanpengchn/reading-list

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-08-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 牧码啦 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 开源软件协会
  • 参与项目
  • idea与产出
    • 1. awesome-books[3]
      • 2. markdown-nice[4]
        • 3. markdown-resume[5]
          • 4. java-concurrent-programming[6]
            • 5. LeetCodeDrawing[7]
              • 6. awesome-pronunciation[8]
                • 7. interviews[9]
                  • 8. github-annual-report[10]
                    • 9. guanpengchn.github.io[11]
                      • 10. reading-list[12]
                      • 总结
                        • 参考资料
                        领券
                        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档