> For the complete documentation index, see [llms.txt](https://book.ncrnalab.org/teaching/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://book.ncrnalab.org/teaching/getting-started.md).

# Getting Started

{% hint style="info" %}

#### Work like a professional!

Learn how to do our jobs efficiently and reproducibly.
{% endhint %}

## 1) <mark style="color:red;">Document</mark> your work - GitHub & MarkDown

> **Always document your project**. We suggest always having a README.md file in your project DIR.

[GitHub](https://github.com) 是一个源代码托管平台。

* 我们鼓励学生在 GitHub 上建立自己的仓库（repo）来托管项目，并添加好 `README.md` ，使用下文介绍的 Markdown 语言来解释你的工作。
* 我们也推荐有经验的读者用Git管理自己的代码，可以看这个[简易Git教程](https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000)。
* 在这里还可以找到海量的优秀开源项目代码，共同碰撞出思维的火花，实现 Social Coding。

[Markdown](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet) 是一种通用标记语言，其[语法](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet)远比 LaTeX 简洁，易于上手，使得用户能专心于写作，而不会被排版分心。

* 我们建议在Linux里**每个重要工作目录**都用这个语言来编辑一个README.md文件。
* md可以生成 HTML 文件发布在网站上。
* md也可以生成 PDF，具有很高的兼容性。

实例有：

* github (例如：[README.md](https://github.com/lulab/Ribowave/blob/master/README.md) )
* github page （例如：[Lu Lab Home Page](https://www.ncrnalab.org/publications/) 的 [source code](https://github.com/lulab/ncrnalab/tree/master/publications)）
* gitbook (例如：本文档）

> 我们鼓励利用github，github自带的wiki，gitbook，清华云等云服务；对习惯离线编辑同学有如下软件推荐： Mac: [typora](https://typora.io/), [Bear](https://bear.app/), [MWeb](https://zh.mweb.im/); Windows: [typora](https://typora.io/), [Madoko](https://www.madoko.net/)
>
> [Markdown Syntax](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet) | [Excel Table to Markdown](https://www.tablesgenerator.com/markdown_tables) | [Paste to Markdown](https://euangoddard.github.io/clipboard2markdown/)

{% hint style="info" %}
注意： 国内链接 Github 可能不太稳定，可以尝试国内的替代产品，如：[**Gitee**](https://gitee.com/education) **高校版** (开源中国推出的基于 Git 的代码托管和协作开发平台)
{% endhint %}

## 2) <mark style="color:red;">Backup</mark> your work

> **It is important to backup your work regularly.**

### (1) Basic

* **Cloud storage**
  * [Tsinghua cloud](https://cloud.tsinghua.edu.cn/) based on seafile 清华云，在校内使用速度快。
  * 其他商业云存储，每个月有免费的备份流量，自己申请账号使用。
* **Backup tool that comes with the system**
  * **Mac:** [Back up with Time Machine](https://support.apple.com/en-us/HT201250)
  * **Windows:** [Back up on a Windows-based computer](https://support.microsoft.com/en-us/help/971759/how-to-back-up-or-transfer-your-data-on-a-windows-based-computer)
* **Backup your code with GitHub**
  * Create and edit your repositories (repos.) at [**GitHub**](https://github.com) on line
  * You can use Github in **Terminal** or with [**GitHub Desktop App**](https://desktop.github.com/) to sync your local projects (code) with Github repos.

### (2) Advanced

* **Sync/Backup your data professionally**:  see [How to backup - Advanced](/teaching/appendix/appendix-iii.-how-to-backup.md#2-advanced).&#x20;

## 3) How to use this tutorial

* 除非特殊说明，本章中的命令均是在自己电脑的 **Terminal** （终端）程序中进行。每一章的操作都在 **Docker** 中的一个独立的目录（位于用户家目录`/home/test`下）中进行，我们称其为**章节目录**。

> 例如， GSEA 这一章中提到 “以下操作均在 `gsea/` 目录下进行。”，指的就是在 `/home/test/gsea` 下进行该章所有操作，所有相对目录均是相对于该目录。

### (1) Teaching Materials

* 本教程配套了很多练习所需的文件，docker images, 讲解视频等，见 [Teaching Materials](/teaching/appendix/appendix-iv.-teaching.md) &#x20;

### (2) More Learning Materials

* 我们也推荐了更多的学习资料，见：[Appendix I. Keep Learning](/teaching/appendix/appendix1.keep-learning.md)

## 4) Homework

1. 注册一个GitHub账户，创建一个`repo`(仓库)，写好`README.md`。尝试使用Git（初学者可以用Github的[桌面版软件](https://desktop.github.com/)）管理自己的代码并同步GitHub云端和本地文件。
2. 开始定期 Backup your work.&#x20;
3. 学习使用Markdown语言，熟悉其语法, 利用Github的Github Page功能，用Markdown写一个自己的网页，记录一下：1）自己第一堂课的课堂笔记，尤其要解释一下算法(algorithm)和模型(model)的区别；2）本学期生物信息学的学习计划。（注意内容和格式也是评分的标准，内容上要充实、实用和简洁，不写空话和废话；格式上要利用 Markdown 的格式突出条理和重点）。

> 注： 作业提交一个你的网页的地址即可，提交前请确认互联网可以访问该地址。
