记第一个项目

 

周五完成了读数据科学专业以来第一个项目。一个有关数据隐私及其相关瑞士法律的网站。作为两位主力成员之一,贡献了一半代码。在此之前,我从来没有完整地做过一个项目。也没有任何一门掌握很全面的编程语言。这个作品内容上还有很多需要完善的地方。但是作为我第一个参与完成的完整项目,我还是很开心自己能够有这样的成长。

困惑和挣扎

从之前几次月度回顾中以及博客断更几月中可以看出,我那一阵子状态不佳。那会我对自己学习的内容提不起兴趣,学习无法专心。内心一度非常煎熬,又想能够快速进步,补足自己缺失的东西,但是又不想去学这些我不感兴趣也看不懂的内容。
后来和一位朋友聊起我的状态,她说我缺乏毅力。是啊,我不是个有耐心和能够坚持的人。

在迷茫中就迎来了每个学期最忙碌的时刻,一个又一个项目,一个又一个截止日期,这些迫使我忙碌起来,没有心情和时间自怨自艾。但是忙碌也是我需要警惕的状态,自己是在为什么忙碌,这样做是值得的吗?期末为了各个项目忙碌,反过头看看,这门课是值得自己上的吗,反思从这门课里得到了什么?
过度聚焦当下的状态,就很容易丢失对前景的把握。因此我选择在忙碌的日程中,抽出时间写这篇反思性质的博文。暂时停下脚步,看看自己得到了什么,有什么决定是错误的,以及将要去做什么,为什么做这些事。通过一次又一次反思,我希望能够回答这些问题:读这个学位是想要得到什么?最终又能够得到什么?我是否喜欢自己选择的这个方向?还有什么其他可以探索的方向?

说回第一个项目

开始学习一项新技能时要明确自己的预期,希望通过这门课学到什么知识,运用到什么项目上。
自己想要学习 Web Development 相关内容已经有一段时间,曾经也断断续续在 Udemy 和 Fronted Master 等网站上学习过一些东西。但因为我从来没有真正实践过学到的知识,那些在学习过程中产生的结果,只是我随意放置在文件夹里并且不曾回顾的笔记而已。
常在网络上看到人们推荐通过做项目学代码,这个网站项目让我第一次对这条建议有了深刻的体会。

选修的这门课叫做 Artificial Intelligence and Law,是学校计算机学院和法学院合作开设的一门课程。旨在促进计算机相关专业学生和法律专业学生合作,共同做出一些对这两个领域产生影响的作品。

在开始这个项目之前,我对从无到有写一个网站没有很清晰的认知。只有一些搭建博客的经验,以及非常零碎的 HTML 和 CSS 知识。整个项目由队友来把握全局,我则按照她的要求完成部分代码。我写代码的过程是“做中学”,边写边在网上查资料学习。我查了很多之前接触过的概念,但我发现自己对这些概念并没有很深入的认识,只停留在表面。这次通过写项目,掌握了这些知识的实际应用场景,从而加深理解。知识结构得到进一步完善,明确下一步学习内容,对学习路径有了更清晰的认识。

改变学习思路

过去喜欢囤积各种大而全的资料,同时给自己一个心理暗示,只有学习完这些资料,才能够开始做项目。先不说学习方法和效果的问题。但知识的海洋是浩瀚的,资料是无穷无尽的,“学完”几乎是不可能的。正是因为自己心理预期和实际情况不符,我每次都是半途而废。但这次做项目启发我,在最初或许不需要特别清晰完整的知识结构,在掌握最基本的概念后(往往是各类资料的前三章),就开始尝试做第一个相关项目。把资料当作参考书,在做项目的过程中,遇到不了解的概念再回到参考书里去查阅学习。选择课程、项目也要有标准,是否和自己正在学的内容相关(不然什么都知道一点,没有精通),是否可以帮助自己拓宽知识边界,学习新的技术或工具。

注意细节,问有价值的问题

在这个项目上我第一次接触 Javascript,队友要求我帮助她写一个功能,模仿她已经写好的部分即可。第一次接触新语言的情形可想而知,我不断遇到大大小小的各种问题。每次都直接找队友帮忙解决问题。惭愧地说,大多数问题都是我拼写错误或是丢了标题符号之类的问题。在这也感谢不厌其烦帮助我的队友,耽误她太多时间了。当时我着急把东西写出来,很是粗心,现在想来,应该在运行前认真检查代码才是。另外还可以在浏览器里先查看 Console 进行自我 Debug。确认前述步骤都没问题后,再向他人寻求帮助。

学习初期的直接反馈

从这次经验还意识到,在接触一项新事物初期阶段直接反馈对我帮助很大。队友一直在给我 Javascript 上的正向反馈,帮助我更好地完成任务。如果没有她的帮助,我一定会在这上面晕头转向,搞不清自己要写什么代码,从而感到非常迷茫。如此我意识到了学习社区的重要性,帮助别人解决问题的同时,别人也会帮助你。而且别人能很直接地给出建议,或是代码写的好坏的评价。

问题及解决方案是最值得记录的经验之一

这不是我第一次做和网站有关的事。我现在的博客也是我快两年前各种倒腾下做出来的网站。主要是设置主机、域名、Wordpress和图床。那会没有养成随手记录的习惯,使得做这个项目时我只能凭借着零星的记忆去完成相关设置。当时如果有记录步骤,整个流程会快很多。受到这件事启发,我现阶段的笔记有专门的 Trouble Shooting 分区,主要记录自己在做一些事时遇到的问题及解决方案。写成笔记的形式,之后也很方便分享给他人。比如我计划写的 AWS S3 图床搭建指南。

从更实用的层面上讨论效率

我之前写过两篇效率相关的方法论,结合这次做项目经验,我想谈谈实际应用层面的困难和新发现。

这次项目完成过程中,我每天在电脑前长坐至少八个小时,有时甚至达到十个小时。结果就是全身上下的骨头都在疼痛,身体给我发出强烈的信号,警告我要停止这样的不健康习惯

避免过度沉迷工作

过度工作可能会出现在以下两种情况:其一是截止日期逼近,我因此精神上有巨大的完成任务压力,希望通过增加工作时长,早点完成工作减轻精神压力;其二是突然思路如泉涌,担心停下容易打断思路,希望通过继续工作,保持思路不要断开。

沟通交流

第一种情况经常发生在工作没有得到妥善安排的情况下,以这次做的网站举例,几次长时间工作都是队友们提出新的建议或功能,临时需要额外增加一两百行代码,还有最初网站运行逻辑没有理顺,功能结构不清晰,几次重写代码。我本来是相对擅长把握团体工作节奏,推进进度的人。但是当我的思路没有被完全打开的情况下,我也会懒得思考,只能是一直拖延。这一点和团队内沟通交流有密切关系。如果团队交流得当,会少做很多重复工作和无用工作,从而一定程度上减小压力。

拆解任务

精神压力还会存在于一种情形下,就是对整体没有把握。对于接下来的步骤没有认知。最好的办法是拆解任务。比如建网站在厘清网站逻辑后大致可以分为四个步骤:域名和主机,HTML,CSS 以及 Javascript。这四个步骤又可以继续拆分。参考这个思路,每一个项目都可以进行拆分至较为简单的任务,如此可以在没有太多心理负担的情况下完成,每天做一点点,在截止日期前可以如期完成。

随手记录灵感

对应过度工作的第二条解决方案则是随手记录灵感,我喜欢使用文字记录灵感。过去使用系统自带备忘录,现在在尝试 nvAlt (Mac)和Simplenote (iOS)组合的模式。后续如果有必要,则在 Xmind 里更细致地整理这些灵感笔记。

良好的生活习惯

根据自己的观察,理想工作时长是六个小时,超过这个时长,身体各部位就会发出疼痛信号,注意力也开始下滑。以及晚上十点后不宜工作,思维容易过于活跃,影响睡眠质量。

健身应该融入生活

身体疼痛也说明我的坐姿有问题,肌肉发力方式不对。之前一直有健身很重要的概念,但也一直没有行动。此次项目经历,让我真正开始严肃思考这件事。今天才发现学校健身房有提供专业的健身咨询,已经预定好下周的课程,希望能够通过力量训练提高背部及腰部的力量,从而改善疼痛的问题。再来就是将健身和生活习惯结合起来,现阶段是想尝试把跑步和处理垃圾结合起来。说实话,我痛恨跑步给我带来上气不接下气的感觉,但这似乎也是我“毅力不足”的另一种体现。所以先这么尝试看看,在每天出门倒垃圾或是回收的时候跑步半小时。每天运动一点点,或许可以能很好地帮助我提高精神及专注力。学校健身房网站也给出了很详细的耐力训练指南,之后有机会再和大家分享。

(之后再分享团队对内和对外交流的内容。)

二、三月回顾:生活,它在哪里?

写作此篇时,正听着周迅所唱《身未动,心已远》。距离三月结束还早,但接下来一周的安排很多,趁着这会有点时间写些从二月延续至今的想法。

先说点和学习有关的

开学一个多月后,事情正逐渐多起来,之后会越来越忙碌。心情从一开始的紧张刺激和一些茫然,慢慢变化到现在的逐渐沉下心来。

这学期最难的课程可能就属 Informatik II,主要围绕《算法导论》这本书用C语言实现一些经典算法和数据结构。我几乎是没有一点相关知识。这门课是学校本科生的必修课,我转专业被要求补修这些课程。本科课程特点是知识点密集,一周两节课,有额外的习题课。对我来说,这是一门需要同时学习算法和C语言的课程,是不小的挑战。

本学期最大的挫败感就是来自这门课。完全没接触过C语言的我,连最基本的运行代码都不会,也不知道它和之前学过的 R 和 Python 有很多不同。不过好在后来查阅了一些教材,《Programming in C by Stephen G. Kochan》这本书第一章对C语言的工作原理、方法介绍得很详细。尽管这本书不是大家会推崇的C语言教材,但是对我这样的C语言小白来说帮助很大。

这门课的老师说话口音非常重,已经到了影响理解的程度,而且他的板书也是一言难尽。但是不听课也不行,写作业完全抓瞎,看教材也不是很能理解。我尝试在网络上找相关的资料,教材作者在 MIT 有开设一门相关的课程,但是他授课所选语言是Python,而且课程设置略有不同。其他也有一些零散资料,但都不成体系。最后我选择了注册“算法时空”知识星球,管理这个社区的星主是西安邮电大学副教授谢勰(xié)。他微博和星球同名,我关注微博有一段时间了,他一直在讲解算法相关内容,而且娓娓道来,讲得很不错。知识星球上算法系列视频前78讲涵盖了《算法导论》这本书的内容。目前我先听他的课程,再读《算法导论》原文并做课后题,最后再快速过一遍 Informatik II 老师上课内容。这样一套流程下来,我感觉整体学习效果提升不少。

这个方法很费时,但是算法是我专业学习的根基,以后不论想朝什么分支发展,都需要良好的算法基础,所以我认为这样的付出很值得。

题外话:“算法时空”的视频在优酷上,优酷网页端和iOS平台端都有一些播放问题。我目前的解决方案是先下载 Mac 端优酷视频应用,登录和 iOS 平台端相同账号。然后在 iOS 平台上先播放一遍目标视频,再在 Mac 上从历史记录里打开视频,即可顺利播放。(别问为什么这么曲折,优酷就有这么难用。)

代码/学习之外的生活

有一天我突然在想,程序员生活中除了代码和科技,还有什么?我也开始回想,自己小时候最喜欢做的事是什么?

现如今,我们只需点点鼠标就可以看到别人的生活。关闭电源后呢,我们自己的生活是什么样的?

开学至今,我的感受很复杂,我感觉兴奋,我感觉力不从心,我感觉疲劳,又感觉充满动力。但是,我控制不住问自己,为什么我感觉不到开心呢?我感到开心吗?

这时候我想起来我小时候最喜欢做的事,我喜欢读各种各样的书籍杂志,读别人的故事,那个时候,这些载体是我的窗口,让我看到别人的生活。那会我好像对教育这个话题特别感兴趣,有专门的文件夹剪藏相关文章。我还特别喜欢看旅游卫视,“身未动,心已远”这个口号似是一直刻在我的心底。

针对我自身有一点很矛盾的是,我做事的时候很喜欢执行一些流程化操作,像是一台电脑在执行算法。我希望事物能遵循某种规律,而且我也一直在摸索这种规律。但是有时候又觉得生活太过模式化了,或者说周围的一些事物让我感觉太模式化了,我也不确定“模式化”这个词在描述此类场景时是否合适。比如我最近在尝试调整书桌设置,在 YouTube 上看了几个相关视频,推荐算法就不停地给我推荐类似视频,已经点了数十次“不感兴趣”。Netflix 的新节目也是换汤不换药。又比如过去很喜欢的一些科技媒体,主题越来越相似,很少再看到让我眼前一亮的标题了。总之,就是在现如今新鲜技术层出不穷的情况下,为什么生活中的科技越来越展示出一种趋同性?

生活也有一种趋同性,而且这种感觉是割裂的。每天看新闻有一种这个世界越来越分裂的感觉,但生活却越来越趋同,太割裂了。又或者是我的视野太小,需要跳出去看看外面的世界。

我希望是以一种身体力行的方式去看外面的世界,尤其是看那些不太常出现在大众媒体上的世界,可能是去旅行,但我感觉旅行有些太走马观花,更倾向于住上几个月。但这些都是后话了。

希望能找到代码之中的意义以及代码之外的生活吧!

我最看重的三件事(下篇)之安排优先级的基本思路和对策

新学期开学第一周,自己进入非常忙碌的状态。上一篇文章中设定的时间全部打乱,但基本的结构仍然保留,我也试图探索其中的规律,于是有这一篇总结的文字。

之前提到,我将健康、人际关系(尤其是家人和朋友)和工作视为我生活中的三个优先级。每一条具体的原因都在上文有所阐述。整体来看,是这三件事直接或间接地让我感到快乐且享受其中。

如这个 TED 视频(我们如何掌控空闲时间)提到,我们对待时间的思路或许需要有所转变。从“我想做这件事,但是我太忙了,我没时间做这件事”,转变到“当前这一段时间,我选择做这件事情,而不是那件事,因为那件事不是我优先做的事情“。

需要做哪些事

优先级将我的生活划分为三个区域。那么我需要做哪些事呢?

文章《我们究竟需要怎样的时间管理工具 》提供了思路,作者将事务划分为两类:

  • 生活事务:容易遗忘,需要提醒。缺少时间和精力完成,容易造成拖延。
  • 工作事务:事情繁杂,需要计划梳理。面临强烈的外部压力。

读完这篇文章我有一个疑问,这两类事务从何而来呢?基于这篇文章,我认为可以在事务分类纬度上增加两个纬度:角色和环境。

角色这个纬度比较好理解,和不同的人有不同的关系,也就涉及不同的事务。自己需要关注自身健康,衣食住行等事项。和家人朋友可能有重要的生日、节庆、纪念日等,需要一起或帮助对方做一些事情。学生则是上课和完成作业。博客作者则是写博客,维护网站,和读者沟通等。

环境纬度分为实体和虚拟。实体环境主要是指我们的居住场所、办公场所、学习场所以及可能有的汽车一类。虚拟环境主要是指我们的电脑等移动设备。我们不可避免需要定期对其中的一些物品进行清洁、更换或维护工作。

我的分类是依据自身情况而定的,大家可以进行更细致的分类或其他分类方式。

如何安排这些事

在理顺事务后,从优先级出发,所有事务汇入日历,使用日历做时间安排。

以一周为单位,确定每日主题(day theming)。

工作日早九点到晚七点,除去饮食及休息时间,约七到八小时工作时间,这段时间专注于学习。晚七点到晚十点,约有三小时工作时间,这段时间大部分用于学习,小部分时间用于写博客。

周六不定,可能是工作也可能是娱乐。视一周情况而定。

周日主要用于休整。复盘工作及生活情况,和家人朋友通电话,以及做必要的打扫清洁工作,为下一周做好准备。

以一天为单位,那么中午有一个小时左右吃饭及简单家务。随后午休半小时,起床后运动半小时。晚餐时段也是吃饭和简单家务的组合。晚上十点结束工作,睡前准备。第二天早上九点前主要是起床后吃早饭等事宜。

然后将上述时间安排加到 Management(管理)日历并设置提醒:

生活事务

生活事务:容易遗忘,需要提醒。缺少时间和精力完成,容易造成拖延。

Management(管理)日历除了一周的安排,还有一些非常重要的生活事务。比如吃饭、运动、午休、和家人通电话和清洁等事务。

仍有一些细碎的事务需要花费精力完成,我使用 Taskpaper 记录这些事情。而且有些细碎的工作事务我也会记入 Taskpaper,主要是为了针对一类事情形成固定的工作流。以写博客流程为例:

Taskpaper 能和 iOS 系统自带的提醒事项同步,有选择地将需要提醒的事项同步后,即可在日历上显示。

Taskpaper 和提醒事项同步功能

学校事务

我有四个关于学校事务的日历,分别是:Uni, Uni-Homework, Uni-Revision, Uni-Done。

Uni:在新学期开学第一周,拿到教授的教学计划后,将课程时间和授课内容以及Zoom 上课链接输入日历。查看当周日历就可以熟悉那一周的安排。

Uni-Homework:教学计划上一般也写明了作业和考试相关信息。我集中将作业信息汇入 Airtable 上的一个数据库,每天通过 Integromat 自动将新的作业信息同步到日历。经过一些设置后,只同步我既设置了开始日期也设置了截止日期的作业。

Uni-Revision: 从上学期开始,我不断提醒自己,学习的目的是理解和定期复习。不是做脑图或是做笔记,造成本末倒置的局面。这学期只有部分课程有期末考试,借助 Excel 我将这些课的课程及时间汇入 Airtable 数据库。每节课结束后,我手动将“Lecture(讲课)” 标记为完成,随即 Airtable 就会自动生成一个“Study(学习)“时间,并将相关信息和时间通过 Integromat 同步到日历上。充分利用上课时间跟着教授理解内容,这样课后就不需要花太多时间跟上进度。同理,在学习结束后,我手动将“Study(学习)“标记为完成,Airtable 则会生成四个复习时间,分别是x天后,x天后,x天后以及一个月后,并同步至日历

Uni-Done:把上述事务中完成的项目手动存到这个日历上,不在每天的日历视图中显示,周末复盘时再拿出来回顾,看看自己一周完成了哪些事。

涉及到的 Airtable 以及 Integromat 设置之后写文章介绍。

Airtable 以及 Integromat 流程

专注与休息

专注

持续探索效率相关的话题这些年后,我想明白一件事:我们需要意识到自己能力的局限性,整体流程越简单直接,事情越容易办成,一次只做一件事。

就像上文所说,上课时间段就好好听课,跟着教授顺思路比自己摸索快很多,课后解决个别疑难点也不需太多时间。

上篇结束时我说下篇会谈一谈如何专注:

  1. 抵抗外界干扰
    1. 尽可能屏蔽外界干扰。日常生活中最大的干扰之一就是消息提醒。我关闭了所有社交软件的提醒,不在手机之外设备上登录微信,另外在手机上给微信设置了屏幕使用时间限额。当手机再弹出其他提醒时,判断是否有价值,没有的话我会直接在设置里关闭这些 App 的提醒。
    2. 一些应用程序有“专注模式”,比如我使用的写作软件 Ulysses,可以仅显示写作界面。且写大纲、写主题内容、修改以及添加参考资料等事情,我一次只做一件。
    3. 使用番茄钟以及笔记本。我很容易走神,在番茄钟时间段,想到的事情可以先在笔记本上写下来,在番茄钟结束后做。
  2. 减少情境切换是一次只做一件事的另一种说法。情境切换,即我们一会做这件事一会又做那件事。比如写博客写到一半,突然收到邮件提醒,去查看邮件,看到一半,微信上来了个消息,又去看微信。Doist 博客这篇文章提到一些情境切换的坏处。
  3. 减少内部干扰。心静下来,才能做成事情。尤其适用我现在转专业之后的情况,DS 这个专业有太多新鲜事物,但在开始阶段能力有限,尚不能探索这些话题。现阶段扎实基础,不去设想可能会一事无成的场景,那会使得自己无力前进。也不去设想自己可能会很成功,一不小心就会建成空中楼阁,造成好高骛远,眼高手低的局面。我将两句话写下来提醒自己:
    1. Do not learn if you do not understand it. (先理解,再学习。)
    2. Make it happen first. Then make it perfect. (先让它发生。然后使之完美。)

休息

该休息的时候好好休息。

一份特殊的待办清单:开学忙碌起来后,我最直接的感受是疲劳。是啊,坐久了也很累。所以在时间安排上,也即我的日历上,我在每一次课程结束后,都安排了一些可以远离电脑的事务,让我能够休息双眼并且活动身体。多数情况下,课程结束后一般紧跟着午饭和晚饭,正好可以站起来活动。其他情况下,我则有一份清单,里面包含诸如去楼下倒垃圾、回收瓶子等事务,视情况选择要做的事情。

珍惜睡眠时间: 当人们感到时间不够用时,就很容易产生牺牲健康以换取时间的念头,首当其冲的就是睡眠时间。但睡眠不仅仅是睡觉而已,还可以帮助我们恢复精力,更好更专注地投入到后续的事务中。当我有“该睡觉但是我想做点别的事”的念头时,我会使用 Balance 这个应用。这是一个教大家如何冥想的应用,其中又一些助眠指导我觉得很实用,不论是午休还是晚上睡觉都会使用。

做了什么事情

安排和实施之后便是回顾。周末检查计划进行的情况,以及我们的生活是否围绕着我们设定的优先级展开。时间是有弹性的,有时候计划和实际情况会有所出入,突发事件占去我们预先计划完成其他事的时间,事情就需要在其他时间完成。

记录时间的工具

由于我大部分工作和学习都在电脑上完成,且我订阅了 Setapp 的年会员。Setapp 上有两个很好用的记录时间的工具,TimingSession

Timing 主打的是在你使用电脑的时候在后台记录你在每个应用以及网站上所花的时间,并且可以为这些活动设定分类,以及得到一个“效率”评分。Timing 最近的更新中增加了 Web 版本,在手机上通过使用网页端 Timing 也能记录离开书桌的时间。我自己则是通过 iOS 上的快捷方式来使用 Timing 的服务。具体的使用和设置在之后的文章中介绍。

另外我也在使用 Session,一个工作模式为番茄钟的应用。我没有在电脑上使用原先在手机上使用的 Flat Tomato,我发现它在两台设备上数据无法很好地同步。因此转而使用Session,除了最基础的番茄钟功能,我还很喜欢它的记录同步至日历以及背景音功能。使用番茄钟类应用的原因在上文也有提及。一方面提高自己的专注度,在番茄钟没有结束的时候不能分心去做其他事,把想做的事先记下来。另一方面则是通过番茄钟定时打断,改善久坐的生活习惯。

如何回顾

回顾发生在周末早晨,首先关闭电脑上打开的窗口,清理下载文件夹里的文件,备份电脑文件,然后开始一周的回顾。

打开日历和任务管理工具,我通常可以看到这些内容:

  • 一周的安排
  • 一周的时间记录
  • 个别提醒
  • 一周已完成的事项和未完成的事项
一周回顾

通过对比安排和实际的记录,我想知道以下几个问题的答案:

  1. 有哪些我计划完成但是却没做的事情?
    1. 为什么没有完成?
    2. 不想做?没有时间做?因为外部资源拖延?
  2. 有哪些计划内的事情我完成了?
    1. 哪些事做的很好?我可以从中梳理出工作流程吗?
    2. 哪些事做的一般?我的反思是?
  3. 做了哪些计划外的事情?
  4. 是否需要调整下周的安排?

这套方法是我这些年的知识和经验的大合集,并且已实施过一段时间,目前运行良好。

之后随着周围环境和事务的改变,这套方法也会迭代,稍后再和大家更新。

2021年1月数据科学学习记录

从16号开始进行系统的数据科学学习,目前的学习重心是Python。

具体的学习进度以及安排可见Notion,这个页面正在建立中,目前还不是特别完善。

学习进度

目前读完《A Bite of Python》这本书,适合入门,讲的十分通俗易懂。中文翻译链接。

一位专业课老师建议上这门MIT开设的Introduction to Computer Science and Programming Using Python,27号开课,在这之前的学习计划是复习和完善之前的学习。

环境搭建

学习的过程中,需要尝试跑一下教材里提及的代码。我使用的设备是Apple M1 Macbook Pro,具体的环境设置可见这里(需注意,为了和之后的学习内容统一,所有相关的计划和笔记内容都是英文为主,中文为辅)。

学习收获

平衡学习进度

这篇文章介绍了20条高效学习的方法,其中最为受用的是第一条:Do Not Learn If You Do Not Understand (没有弄懂就不要学习)。我将这一条抄写下来,贴在书桌前的墙壁上,每天提醒自己。切勿为了追求效率、完美主义,制造看起来学的很多、进度很快的假象。

根据我每天都会写的记录(2020年总结提及了这个习惯),自己的学习状态除了受到精力、注意力影响,也会受到章节内容难易情况影响。如果内容简单,一天可以学三个章节以上。如果难度增加,学习的热情就会减少。因此,为了平衡学习进度,每天的目标是两个章节。精力充沛的情况下可以多学一些。

学习方法—掌握整体脉络

学习开始之前需要掌握整体脉络,我的做法是通读目录,以及每一章节的大小标题。对于接下来需要学习的内容做到心中有数。

学习方法-笔记和复习

记录笔记的方法采用Ali Abdaal介绍的Active Recall方法(Youtubeb站)。使用Notion的Toggle List功能,以问题和答案对应的方式记录笔记,每次复习的时候给自己一点小测验。

我有一点编程基础,因此学习的过程中遇到的知识,有些是旧知识只需要备忘,不做特殊处理。有些是新知识,通过阅读教材上的讲解可以梳理清楚,标记为绿色。另外一些新知识,要么是读不懂教材,要么是教材省略了讲解,需要我后续查阅资料进行梳理,则标记为粉色。示例如:这些有特殊颜色标记的内容都是我复习时会关注的重点。

至于复习间隔,我仍然在摸索如何使用Notion达到这一目标,后续再和读者朋友们分享。

如何使用iPad搞学习

iPad

我将描述我如何在日程学习生活中使用移动设备,如iPad (iPad Pro 10.5)和 MacBook (MacBook Pro 2016)。
提示:个人使用均为苹果设备和系统,对其他系统没有了解。

在正文开始之前,首先推荐阅读少数派作者@Vanilla的文章iPad Pro 学术指南 | 2016 与我的数字生活iPad Pro:建立在假想与妥协上的生产力

参考@Vanilla的文章,与他相同,学习流程分为四个部分:学习计划安排学习资料收集和储存学习资料处理和消化学习成果创作和存档

学习计划安排

  • 使用App:Google Calendar(日程管理,免费,全平台)& Trello(项目管理,免费,全平台)
    • TrelloTrello
    • Google CalendarGoogle Calendar
  • Google Calendar和Trello都可以设置提醒,两者可以双向同步(需要一点设置
  • Google Calendar列出有具体时间和地点的课程和活动,用作提醒以及规划。
  • Trello的使用方式如图所示,一个列表代表一门课程,对应列着这门课需要完成的任务,设置到期日和时间。待和Google Calendar同步完成,即可在日历上一目了然地看到接下来要完成的学习任务。
  • Google Calendar和Trello均使用颜色来区分任务属性,以Trello为例(图),区分不同任务类型,另外特别标记小组任务,因为任务进程并不取决于你一人。
    • Trello Label

学习资料收集和储存

这一步主要是获取老师提供的课件。不仅是课前,课堂中老师也会提供资料让学生下载,因此要满足即取即用的需求。课件没有统一的来源,下列是我尝试后,涵盖绝大多数来源的应用:

  • 百度云(文件管理,免费,iOS),就不多说了
  • Files(文件管理,自带,iOS),苹果设备自带的文件应用,可以集合多个云服务(如果你和我一样同时使用百度云、Onedrive、Google Drive、坚果云……会发现这个服务很好用),主要用于和电脑同步学习资料。

    • files
  • Moodle(学校,免费,iOS),学校主要使用Moodle来方便教师上传资料,部分老师会使用。Moodle在iPad上有App,科大的朋友登录时在网址输入http://moodle.must.edu.mo,再正常输入学生号和密码即可使用

  • Documents(文件管理,免费,iOS)和后面要提及的Scanner Pro和PDF Expert都是Readdle旗下的应用。Documents有非常多功能,以下几个是我常用的:

    • FTP&同步文件夹:学校也给老师提供FTP上传文件的方式,Documents可以登录FTP等云服务,并同步特定文件夹,联网即更新文件夹。和老师上传同步。
    • 解压缩:部分从经管之家下载的资料是压缩文件,想在移动设备上阅读必须先解压缩。Documents支持多种文件类型,其中就可以解后缀为zip和rar的文件。
      • Documents
  • Scanner Pro(文件扫描&OCR,付费,iOS),扫描纸质文件,另外可以用来扫描老师的板书。

    • scanner pro

学习资料处理和消化

  • 处理学习材料:材料收集来,需要进一步处理,绝大部分材料都是pdf格式文件,因此需要一些pdf阅读器来帮助我消化材料里的知识,这时候需要用到以下三个App:

    • Notability (PDF 书写,付费,iOS & MAC OS,MAC上很难用):主要用来上课记笔记,看课件

      • 手写体验:Notability手写体验可以说一流,反应速度很快,手感很好
      • Notability

      • 录音:结合手写笔记的录音,可以同步记录笔记和录音

      • 分屏:Notability 有一个笔记切换器的功能

      • bijiqiehuanqi

    • PDF Expert(PDF 轻度阅读,付费,iOS & MAC OS)

      • 批注 & 导出批注 & Zotfile
      • 编辑PDF
    • MarginNote(PDF 重度阅读,付费,iOS & MAC OS)

      • MarginNote有非常多的使用场景,我没有使用它全部功能,这里仅介绍自己最常用的几个功能和方法,更多用法可以查询官网、少数派社区以及b站。下面两张图简单示例两个用法
      • 看词汇书,制作单词卡 English
      • 看教材,梳理脉络banking
      • 思维导图,消化知识点
        • 如上面示例所示,MarginNote最好用的功能之一是阅读整本书,整理知识点脉络。另外MarginNote可以在一个笔记本内打开多本书,制作多本书的思维导图,互相联系。
        • 思维导图、个别卡片都支持导出到其他工具,如印象笔记、Anki等。
  • 消化学习内容

    • 个人学习习惯之一是在课后整理上课内容,期末期间甚至会多次进行整理,提炼知识点,最终得出精华版应对考试。这次期末考试期间把自己的笔记分享给朋友们,自己在复习过程也有阅读笔记,感觉内容还是过于冗长,不过部分原因是因为上课没认真听讲,不知道知识点的重要性,以及知识点的联系。

      • note
    • 经过一个学期实践,个人觉得这一个习惯需要继续保持。但不论是记录和整理方法,还是效率都要进一步提高。下学期我计划尝试TheStriveToFit的方法,在课前先根据PPT或教材打出笔记,对上课内容有个基本了解,然后上课,效率或许会高一点。

      • Pages(文本编辑,自带,iOS & MAC OS)
        • 这学期所有笔记均用Pages完成,设置标题、小标题、正文和重点的样式和快捷键,效率比较高。
        • Pages 个人感觉缺点之一,是不太适合在已完成的笔记内添加新的笔记 ,如果一份笔记包含很多图片,排版的过程有点繁琐。
      • OmniOutliner (逻辑框架,付费,iOS & MAC OS)
      • Xmind(思维导图,基础功能免费,iOS & MAC OS)
        • 个人认为章节内容适合前面提及的Pages和OmniOutliner,线性呈现一章的内容,按照大标题➕小标题的模式。
        • 但当临近考试,需要记忆大段内容,理解整个学期的学习内容,我更倾向提炼关键字,在思维导图排列知识点,全局掌握整本书的内容。
        • Xmind的优点是美观全平台,且Xmind通过iCloud同步,因此目前使用下来,它的付费功能基本没必要购买,基础功能免费。
          • xmind

学习成果创作和存档

  • 创作—写Report,做个Pre,写个代码(当我没说)
    • Office 全家桶,学校赠送,为什么不用,还可以和小伙伴实时完成作业(网够好的前提下,不然会误删,嗯)
    • Kodex(写码,免费,iOS)下了没用过
    • Pythonista(Python,付费,iOS)
      • iPad上来个python,一年没更新
  • 存档
    • 短时间内,一些随时要用的文件,我会存储在云端
      • iCloud—手机、平板、电脑无缝同步,好用
      • Google Drive—登录最方便,使用学校电脑登录最快的网盘(放弃微信传文件吧,那个登录时间真的要命),很适合存放临时要打印的文档
      • 百度云—身边朋友都在用,群共享文件夹很好用
      • Onedrive—学校赠送,1T内存,用来存放Office共享的文件最方便
    • 一个阶段结束,就会把文件按照时间和类别存档。比如学期结束,存档这学期所有的课件、笔记、作业。
      • DEVONthink & DEVONthink To Go(文件管理,付费,iOS & MAC OS),一个很强大的应用也很贵,一两句话介绍不清楚,大家可以在网上搜索相关介绍
      • DEVONthink主要是在电脑上操作,DEVONthink To Go方便在移动端获取文件,可以导出到其他App,也可以直接在App内修改
        • devonthink

结语

期末考试在今天画上句点。一个学期来熬过许多夜,也翘过一些课。从大一到大三,学习越来越认真,对于自己想要的东西也越来越明确,但总是缺了一些求知欲,缺了一些耐心和毅力。有时候真的很想不在乎GPA,去学一些可能没法掌握的东西,仅凭着一点兴趣,在知识的海洋里摸索。爸妈替我选了这个学校和专业,金融是自己选的,未来也应该由自己决定。对自己的期望是,持续探索自身兴趣,学习真正有意思的内容,做一些帮助别人也帮助自己的事,更健康地活着!新学期加油,2019加油。(可别再让我背书了!)