热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

『沉浸式Github使用指南』

github-ten.png你要问我这个世界上什么学习方法是坚持下去最有效果—模仿。深度模仿。2014年9月,正式来到上海,不为别的,为了读书。为了获得更高的学历。那时,我没有想好

《『沉浸式Github 使用指南 』》 github-ten.png

你要问我这个世界上什么学习方法是坚持下去最有效果 — 模仿。

深度模仿。

2014年9月,正式来到上海,不为别的,为了读书。为了获得更高的学历。

那时,我没有想好,未来到底应该从事什么工作。也许搞电器、电机吧。因为专业是这相关的。

大学四年的学习,大概让我明白。我可能不太喜欢这门专业。

读研的一段时间下来,发现也不是太喜欢科研,尤其是导师的科研偏向理论化,内心没有太大的想要提高科研水平的想法。

之后的时间内,我开始了摸索。

如何可以只有一台电脑就可以掌握技能,并找到工作呢?
如何只要有网络就可以连接这个世界?

于是,我开始了学习编写代码。

摸索了一段时间,初步确定职业向程序员方向发展。

于是我像小白一样,开始了自学的道路。

《『沉浸式Github 使用指南 』》 github-ten.png

2015年3月17日,注册加入Github, 那时的我远没有发现这个代码托管平台的好处。甚至我远没有理解到整个Github 的功用。

后来自己想要学习Git 这个分布式版本控制工具而注册Github,伊始Github 完全是个人的代码备份空间。

和网盘的功能类似:备份个人代码。虽然代码都是些零零碎碎。不值得看的代码。

渐渐学会了Git 的使用。回头看来,其实知识是无穷无尽的。但是常用的其实并多。

学习需要使用 二八法则

2015年11月,加入一家创业公司实习,正式开始从事写代码的工作。

因为创业公司比较小,碰巧这家公司又给了我这个机会,于是就这样踏上了程序员的道路。

在工作中开始频繁使用 git 和 github。

开始了解 github。 实习时间不是很长,但我渐渐意识到:

  1. 软件行业是一个需要不断学习的行业,这一点也不夸张
  2. 软件行业的学习一般都是靠自学

不管你是在学校、小公司、大公司…,谁都不可能手把手教你。你需要的知识,你想要了解的技术,无一不是靠自学习得。

初级程序员想要学习,会在网上收集大量教程,收集大量PDF 电子书,搜索各种各样的代码实例。

到了一定的阶段,回过头来会发现,其实网上的二手知识,实在是太多了。因为程序员行业的自学的人特别的多,加上程序员又是一个非常喜欢分享的群体。

会出现这种情况:

  1. 高手不愿意分享,或者分享的都是整体思路(架构领域),离初级,中级程序员太远了
  2. 初学者喜欢分享,多是一些代码示例

各种各样的人对知识的不同的理解而产生的二手、三手、四手等知识不断的在网上传播。

包括我自己也产生了很多二手知识。但只要有一点能对人产生帮助,我就不会停止分享。更何况我是抱着真实的态度在分享文章。

工作一年后,我对程序员有了新的认识。我对开源有了新的认识。

我更加热衷程序员的职业,我更加喜欢开源。我更加喜欢官方的知识。一遍看不懂,就多看几遍,随着你看的次数多了,相信我,你会越来越懂。

Github 则是这个世界上最大的开源代码托管平台。有着无数的喜欢分享的程序员在分享接近一手知识的开源代码。有着无数的开源代码可以让我们模仿。

找到几个自己从事行业相关的,坚持阅读下去。坚持模仿下去。坚持创造一些稍有不同的轮子。

即: Github 是程序员的金矿,我们可以模仿任意轮子,优化自己思维,提高自己水平。

1. Github 历史

  • 2008 年 Github 上线
  • 2009 年 BTC 源码开源,之后成为各种币的重要参考
  • 2009 年 Nodejs 源码托管在 github 上
  • 2010 年 Rails Girls holds its first workshop
  • 2011 年 Travis CI 持续集成
  • 2012 年 Javascript 成为在Github 上最热门的语言
  • 2013 年 Github 用户突破 300 万
  • 2014 年 Docker 发布
  • 2014 年 Django workshop
  • 2014 年 .Net 开源
  • 2015 年 Unreal Engine 开源
  • 2015 年 GitHub Classroom
  • 2016 年 Apollo 11 code takes off
  • 2017 年 The Python team opens their first GitHub pull request
  • 2017 年 30,000 nonprofit accounts created
  • 2018 年 10 年

Github 10 年 Github Ten

如何使用好 Github?

2. 个人项目

  1. markdown
  2. emoji
  3. 创建个人项目
  4. 美化项目
2.1 markdown、rst

大凡热门的项目一定有非常详尽的使用文档。而Markdown 成为 Github README 的标配,甚至成为程序员的标配。

程序员都应该熟悉 Markdown 语法。

对于组织项目的文档说明,另一种比较好的标记语言是 reStructuredText 。

Markdown 入门:Markdown Cheatsheet

reStructuredText 入门:RestructuredText

语法很详尽,看上去很难入门。相信我:

照着下面的流程走:

  1. 标题怎么搞: 一级标题?二级标题….?
  2. 段落怎么搞: 如何分割…?
  3. 文本怎么处理:加粗?斜体?
  4. 超链接怎么处理? 图片? 网址?视频?…?
  5. 表格怎么处理?

好了,想要更丰富的语法? 入手了上面几个问题,可以查文档了。

2.2 emoji

emoji 图形符号, 是一个文字,被渲染成图形。

这里是一份 对照表手册: emoji

Twitter emoji: emoji

《『沉浸式Github 使用指南 』》 twitter-emoji.png

Emoji Search: emoji search

《『沉浸式Github 使用指南 』》 emoji.png

Emoji 在你提交 commit message 、写 markdown 格式文档、讨论 issues 的时候显得更有趣一些。

2.3 项目

github 项目分为个人开源项目和隐私项目,后者付费。对普通开发者而言,个人开源项目即可。

  1. 可以代码托管,比如自己的一些函数封装等
  2. 可以创建轮子,项目的受欢迎程序一定程度上体现作者水平

现在Github 个人的项目一定程度上能体现作者的代码水平。甚至越来越成为程序员面试、跳槽等的指标之一。

2.4 美化项目

即借助一些微图标、图形,美化项目的简介,配合Markdown 语法使用

  • 微标:Badge

《『沉浸式Github 使用指南 』》 shields.png

常见微标:

CI : 持续集成

《『沉浸式Github 使用指南 』》 jianshu-go.png

  • 进度微标: 进度微标

《『沉浸式Github 使用指南 』》 progressed.png

进度示例:

《『沉浸式Github 使用指南 』》 awesome-python.png

比如:想要学习 Go

Awesome Go

《『沉浸式Github 使用指南 』》 awesome-go.png

比如:想看 cheatsheet

Awesome cheatsheet

《『沉浸式Github 使用指南 』》 awesome-cheatsheet.png

比如:想要学习任意知识

Awesome Awesome

《『沉浸式Github 使用指南 』》 awesome.png

好了,知识集有了,可以针对感兴趣的学习了。

当然你也可以使用自己的关键字搜索,但相信我 Awesome 系列一定能满足你

5. trending

假如你想了解当天的,或者近期的Github 热门项目,追追趋势?

没问题:

方法一

  • 掘金浏览器插件

chrome 商店下载地址

《『沉浸式Github 使用指南 』》 掘金.png

方法二

方法一就是调用的方法二的API.

  • Github API3 API

《『沉浸式Github 使用指南 』》 github-trending.png

Github 满足你作为程序员需要的所有知识,你唯一缺少的就是踏实的学习。

6. 分享几个好玩的项目

  • 面试

  • 独立开发者项目集合(这个项目 emoji 用的就很好)

  • 程序员挣钱唉

Follow 下?[1]
Star 下?[2]

(完)

  1. Github 个人地址:https://github.com/wuxiaoxiaoshen ↩

  2. Jianshu-go API 地址: https://github.com/wuxiaoxiaoshen/Jianshu-go ↩


推荐阅读
  • 图像中的边缘信息主要集中在高频部分,因此图像锐化或边缘检测实质上是进行高频滤波。微分运算能够增强信号的高频成分,从而在空间域中通过计算微分实现图像锐化。本文将详细介绍如何使用 Python 实现 Canny 边缘检测算法。 ... [详细]
  • 立志要引领电视行业趋势的荣耀,最终还是向价格“弯了腰”
    文|佘凯文来源|智能相对论(aixdlun)5月份,“大屏”市场又起风云,各大品牌不约而同地发布了自家新产品。5月26日࿰ ... [详细]
  • 导读上一篇讲了zsh的常用字符串操作,这篇开始讲更为琐碎的转义字符和格式化输出相关内容。包括转义字符、引号、print、printf的使用等等。其中很多内容没有必要记忆,作为手册参 ... [详细]
  • 在近期的百度大数据开放会议上,计算机科学领域的专家怀进鹏教授的演讲引发了广泛关注。尽管演讲内容高深复杂,但对于那些对计算机科学和人工智能领域有所了解的人来说,这场演讲无疑揭示了未来技术发展的无限可能性。 ... [详细]
  • Python图像处理库概览
    本文详细介绍了Python中常用的图像处理库,包括scikit-image、Numpy、Scipy、Pillow、OpenCV-Python、SimpleCV、Mahotas、SimpleITK、pgmagick和Pycairo,旨在帮助开发者和研究人员选择合适的工具进行图像处理任务。 ... [详细]
  • 快速排序是基于分治策略的一种排序算法,其平均时间复杂度为O(n log n),在大多数情况下表现优于其他排序算法。本文将详细介绍快速排序的工作原理,并提供一个Java语言的具体实现。 ... [详细]
  • 本文详细探讨了字符编码的发展历程,从最早的8位字节编码到现代的UNICODE和UTF8,解释了各种编码方式的原理及其在不同场景下的应用。 ... [详细]
  • 快速排序是一种高效的排序算法,以其在多数情况下接近最优的性能而著称。本文将详细介绍如何在 Java 中实现快速排序,并分析其工作原理。 ... [详细]
  • 本文提供了一套详细的步骤,指导用户如何通过科学上网方法注册一个美国地区的Apple ID,包括设置地区、语言及完成注册的具体操作。 ... [详细]
  • mysql 分库分表策略_【数据库】分库分表策略
    关系型数据库本身比较容易成为系统瓶颈,单机存储容量、连接数、处理能力都有限。当单表的数据量达到1000W或100G以后,由于查询维度较多, ... [详细]
  • Python作为一种广泛使用的高级编程语言,以其简洁的语法、强大的功能和丰富的库支持著称。本文将详细介绍Python的主要特点及其在现代软件开发中的应用。 ... [详细]
  • ipvsadm命令简介:ipvsadm是LVS在应用层的管理命令,我们可以通过这个命令去管理LVS的配置。在fedora14、Linux6.0之后系统中 ... [详细]
  • 0-1背包问题的两种解决方法:动态规划与回溯法
    本文探讨了0-1背包问题的两种主要解决方案——动态规划与回溯法,详细介绍了每种方法的实现逻辑、算法流程及具体示例。 ... [详细]
  • databasesync适配openGauss使用指导书
    一、database-sync简介database-sync作为一种开源辅助工具,用于数据库之间的表同步,更确切的说法是复制,可以从一个数据库复制表到另一个数据库该工具支持的功能如 ... [详细]
  • 本文档详细介绍了服务器与应用系统迁移的策略与实施步骤。迁移不仅涉及数据的转移,还包括环境配置、应用兼容性测试等多个方面,旨在确保迁移过程的顺利进行及迁移后的系统稳定运行。 ... [详细]
author-avatar
寒月繁华叶落尽
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有