自学笔记及指南
前言
这是一个涵盖了我此生从2020年开始到今天的自学生涯,涵盖了很多曾经认识或曾经深入了解的知识,也算是对自己的一个备忘录。
目前仍处于早期阶段,持续更新中。
在开始之前,首先需要具备一些基本的知识,就像开车,必须知道哪里是油门哪里是刹车一样的基本。
你缺失的那门计算机课
这是一个几乎可以说是从零开始的书籍,教会你使用你的Windows电脑最基本的知识
目录
通用工具
- Windows 实用软件推荐
-
Obsidian
Obsidian是一个免费的笔记软件,可以本地储存以及拥有数千个插件和主题,并且并不限定某一格式,在功能上,支持在笔记之间双链连接,也就是说,我在这个笔记当中提到过事物,在另一个笔记当中也可以引用,其次在笔记之间拥有一个图表,可以更加直观地看到笔记之间的联系,最后,它还拥有一个画布,和思维导图不同的是,你可以像一块白板一样随便地去做你想做的。
-
logseq
这是一个开源免费的笔记软件,本地储存数据,支持IOS和Android,插件和主题,功能上支持无限画布,双链链接
-
Notion
Notion更像是一个多人合作的知识库软件,把你的所思所想贡献到知识库当中。
-
AppFlowy
这是一个Notion的开源平替
-
GoodNotes
GoodNotes是一个更加专注于手写的笔记软件,你可以打开一个PDF文件,然后在这个PDF文件里直接手写你的笔记。
-
plane
这是一个开源项目管理工具
-
huly
同样也是一个项目管理工具
-
Forest
这是一个兼具游戏性的番茄工作法软件,使用时会种下一棵树,并随着世界慢慢长大,最终将一篇空地编程一整片森林。
-
Peazehub
这是一个类似于多邻国的软件,有着和Github提交日期一样的图标,以及成就,排行榜还有总专注时长,To do等等,如果想要得到类似于Steam游戏游玩时长这种快感时,值得推荐。
-
Pomoroom
这个软件和Peazehub的体验差不多,看个人喜好。
-
Focus
如果你很在意数据安全,让数据本地储存,以及不想云同步,让软件连接互联网,可以试试。
-
LofiGirl-YouTube
LofiGirl-bilbil
很优秀的学习电台,在Youtube的直播里有一个番茄工作法的直播,也有打游戏和助眠的音乐,以纯音乐为主
-
The Good Life Radio
如果你只想听英文歌,可以听听这个频道的直播
-
数字素养网
提供学习所需要的网站
- SaltyLeo 的书架
-
大学数字图书馆
-
全国图书馆参考咨询联盟
一个可以查询中文和外文图书的引擎,能查得到就说明起码在国内有这本书,但如果是某种未出版的书籍则没有
-
国家中小学智慧教育平台
提供教材下载
-
熊猫搜索
一个搜书引擎的导航,涵盖了很多搜书引擎
-
一单书
一个推荐书籍和搜索集一体的网站
-
书舟搜索
纯粹的搜书引擎
-
鸠摩搜索
只有搜索功能的搜书引擎
-
Yiove 书源仓库
一个阅读的书源仓库
-
HathiTrust Digital Library
一个致力于收集世界上所有图书的组织,并提供数字化版本
-
书格
-
时光图书馆
一个提供老照片,老期刊,老杂志,老报纸,书籍等资料的网站
-
Forgotten Books
一个提供国外古籍的付费网站
-
老画报
一个提供当今社会几乎消失不见的连环画网站
-
国家高等教育智慧教育平台
-
The Missing Semester of Your CS Education 中文版-编辑器 (Vim)
这是一个对于Vim进行了简单讲述的文章,很适合刚打开Vim,一头雾水的时候看
-
Vim从入门到精通
这是Eric's Blog里的一篇文章,个人觉得非常直接,所教的是Vim自带的教程后的内容
-
Vim Adventures
这是一个Vim小游戏,通过游戏教你怎么使用Vim
-
Vim Tips Wiki
一个Vim的Wiki
-
StackExchange
一个Vi和Vim和论坛
-
Learn Vimscript the Hard Way
一本深入了解Vim的书籍,建议在学习并对Vim有了初步了解以后再看
-
尚硅谷新版Git快速入门(3h迅速掌握git)
一个视频教程
-
The Missing Semester of Your CS Education 中文版-版本控制(Git)
这是一个对于Git进行了的使用和来历进行了简单的描述
-
Pro Git
这是一本对Git进行了详细解析的书
-
Learn Git Branching
这是一个教你怎么使用Git的游戏
-
Write yourself a Git!
这是一个教你怎么自己写一个Git的指南
-
SVN教程
这是一个菜鸟教程里的SVN教程,入门可看
-
Subversion 与版本控制
这是一本在SVN官网上列出的推荐书籍
-
SVN Tutorial
这是一篇在tutorials上的SVN教程
-
Material for MkDocs
一个简单的文档系统,可以在几分钟内创建出一个静态网站,支持搜索,可定制。
- 官方文档
-
Getting Started with Material for MkDocs
一个按照官方文档构建的教程
-
CS50
这是哈佛大学推出的一套课程,详细地从零开始讲述了计算机科学的理论,从0和1的二进制到数据结构再到HTML等等,是入门计算机科学很好的起点,同时你也可以在哈佛大学的界面里了解更多
-
CS50 Docs
这是CS50的文档,里面有一些工具和软件推荐,以及一些库文件,指的注意的是如果你没有使用CS50课程里基于云端的VSCode,那么这里是CS50库的Github仓库,使用时只需要在编译时添加
-lcs50即可
-
CS50 Manual Pages
这是CS50的一个有关于C语言库以及CS50库的手册页面,取消选择frequently used in CS50以后可以查看C语言标准库以及CS50所有库的介绍,拥有两种介绍,一种是更加底层但复杂,另一种则是浅显了些但对新手友好。
-
CS50 Docs
-
计算机自学指南
一个快速通关计算机科学的指南
- 清华大学计算机系课程攻略
- 中科大课程资源
- 浙江大学课程攻略共享计划
- 华中科技大学计算机学院学习资料合集
-
一个操作系统百科
-
Linux101
由中科大推出的从零开始认识Linux的书籍
-
CTF Wiki
CTF(Capture The Flag,夺旗赛)起源于 1996 年 DEFCON 全球黑客大会,是网络安全爱好者之间的竞技游戏。
-
Wargames
The wargames offered by the OverTheWire community can help you to learn and practice security concepts in the form of fun-filled games.
-
Mathematica
一个商用数学工具
-
Maxima
一个开源免费数学工具
-
desmos
一个免费数学工具。
-
LaTex
LaTeX 是一个高质量的排版系统;它包含为生产技术性和科学性文档而设计的功能,你可以用它来列出你的公式。
-
佟大大还是ETT
讲得很详细很全面的一个UP主
-
数学微课帮
一个UP主,涵盖了初中和高中的知识
-
可汗学院
如果你更倾向于玩游戏类型,傻瓜式教学的话可以看看,支持中英文,建议过完幼儿小学课程后连同初高中视频一同使用
-
Windows 常用软件
笔记软件
在学习的过程当中通常有很多没办法第一时间理解,记忆和熟练的知识,因此笔记显得尤为重要,每个人做笔记的风格和习惯都不经相同,因此推荐各方面的笔记软件,根据自己的风格和习惯挑选软件。
但是你想要超高自由度的话,可以尝试VScode,Vim文本编辑器。
翻墙
学海无涯苦作舟。
计时软件
劳逸结合也非常重要,当下有很多工作法,姑且叫作工作法,例如番茄工作法,可以参考这篇Reddit上的帖子
番茄工作法及日程管理
电台及助眠直播
如果你需要一些国内的电台软件的话可以查看这篇帖子
如果你需要一些国外的电台软件的话可以查看这篇帖子
文献期刊及电子书和网络课程
文献期刊
这里有一些导航
电子书
-
书籍搜索
-
图书馆
-
古籍
网络课程
-
中文
社会百科及上升通路
社会百科
上升通路
计算机
CS自学指南
一个很高效的指南,很多课程都很有用。
HDU-CS-WIKI
一个从零入门计算机课程的中文指南
The Missing Semester of Your CS Education 中文版
一个来自MIT的课程,这里是课程简介,这个课程更多地是教提高效率的,在一些课程里并不会对Shell脚本,文本编辑器作过多的介绍,这个课程就补充了这一点。
Linux System Administration DeCal
一个来自UCB的课程,这里是课程简介,这个课程更像是一个已经开始学习编程以后的补充,比方说如何使用Linux,理解系统的进程,文件系统是如何实现的等等,在归档当中有历年课程的存档。
build-your-own-x
这是一个教你怎么从零开始造轮子的仓库。
project-based-learning
这也是一个教你从零开始造轮子的仓库。
Awesome C++
一个提供了许多精选的C/C++ 框架,库和资源的列表
编程入门
工具
工欲善其事必先利其器,在我们学习编程的路上呢,有很多可以提高效率的工具,我个人认为在学习编程的路上可以使用一些工具来辅助学习,并且可以养成良好的习惯,这是我学习了许久之后总结出来的,避免错误的使用方法可以在未来发现问题时减少改正的痛苦。
文本编辑器
作为一个程序员,我认为VSCode和Vim是必须精通的工具,一个是图形界面下最受欢迎的文本编辑器,一个是命令行环境下最受欢迎的文本编辑器。
对于我来说学习编程的基础,首先需要一个良好的文本编辑器,我个人的选择是需要经久不衰,这样可以最大程度上避免更换工具带来操作上的不习惯以及新的配置文件,文本编辑器就和输入法一样,如果突然从双拼改成笔画输入,带来的极大的效率降低以及肌肉记忆的改变,通常没有几个月是无法改变的。
Visual Studio Code
VSCode是微软推出的一个文本编辑器,如果你在意是否开源的话,它也有开源版本,叫作VSCodium,内置了非常强大的插件系统,如果你喜欢的话,也可以当作IDE来使用,在学习如何使用ESP32时,官方文档当中就提供了三种编程方式,其中一种就是通过VSCode插件编程。
Vim
Vim的历史悠久,可以追溯到上世纪,可以说非常适合我非常在意的经久不衰这个点了。而且最重要的是完全不需要鼠标操作,用熟悉以后效率提高地非常快。
-
中文
-
英文
版本控制系统
Git
Git是一个分布式版本控制系统。
-
中文
-
英文
SVN
SVN是一个集中式版本控制系统,建议在需要集中存放操作文档,多人编辑同一文档的情况下使用,而且非常好上手,很适合做一个内部的知识库。
-
中文
-
英文
知识库
有时候我们开发了一个体量稍大的程序时,通常需要有一个文档来说明程序的作用。
文档框架
C语言
计算机科学
计算机科学涉及的领域很广,具体可以查看Wikipedia-Computer science
计算机科学入门
大学课程资料
https://overthewire.org/wargames/
计算机网络
硬件
数学
数学单拎出来是因为就我个人而言,还是很感兴趣的。
工具
初等数学
开始之前,可以看看这篇Reddit帖子
数学入门涵盖小初高三个教育阶段的数学知识课程。
高等数学
英语
音标
义务教育
语文
语文方面,作为义务教育阶段三大学科,自然是很重要的。
音乐
「保姆级吉他零基础教学」入门吉他只需两周!32集全(吉他弹唱/吉他教程/吉他自学/吉他基础/吉他练习/吉他演奏)4K
一个算是很清晰的吉他教程。


