前景:有很长一段时间,对新领域、新知识充满学习欲望,但总会是一个漫长的过程,学过之后就放在一边,等待落灰后慢慢忘却,这是一种很不系统的学习方法,等想起来的时候,才发现自己之前的学习内容已是一个很模糊的阴影。无意中在HeyDesigner里看到这篇文章,醍醐灌顶、受益匪浅,特意分享出来。
本文转自:https://azeria-labs.com/the-importance-of-deep-work-the-30-hour-method-for-learning-a-new-skill/
深度作业的重要性和30小时学习新技能的方法
技术行业,特别是安全行业,似乎对新人感到无比的压倒性,甚至作为一个中级的“InfoSec Pro”,似乎有大量的路径和主题可以关注。我们大多数人,特别是新来者遇到的问题是,我们不知道要关注什么。即使我们发现要关注的话题,我们似乎也陷入了可供我们利用的大量资源中。
例如,以GitHub存储库Awesome Hacking (强烈推荐)为例。许多人都知道它的存在。同样的人向我发送消息,询问从哪里开始,以及如何不被似乎是有价值资源的结构化集合完全不知所措,但似乎并没有解决我们的问题。但是,我们的问题究竟是什么?当然不是缺乏资源。为什么虽然我们可以获得开发新技能所需的所有资源,但即使我们有时间或可以重新安排时间以便为其腾出时间,但我们仍未能这样做?也许我们已经忘记了我们每天面临的分心让我们无法充分发挥我们的能力。
当我们想要学习新东西时,我们都知道这种感觉。我们等到动机将我们从哪里冒出来,然后我们在没有明确方向的情况下修改几个小时,检查通知,一旦我们意识到我们没有到达任何地方,我们就会灰心丧气并放弃。注意:如果你等待动机,你做错了。根据我的经验,诱导动机的公式以行动开始,激发灵感,激发动力,导致行动,循环继续。
我们也知道并体验到流动的感觉。当你完全专注于一项任务的时刻。你失去了所有的时间感,一切都似乎毫不费力地流逝; 你会忘记你身边的一切,并有一种控制任务的感觉。流畅的感觉最好由心理学家Mihaly Csikszentmihalyi描述:
“最好的时刻通常发生在一个人的身体或精神被伸展到极限时,自愿努力完成一些困难和有价值的事情。”
Mihaly Csikszentmihalyi
为什么这种流动状态似乎如此随意而又罕见,就像偶然碰巧偶然发生的事情一样?我们为什么不努力尽可能频繁地创造流动状态?毕竟,这不仅令人满意,而且非常有成效,并且会产生积极的回报。我们很少达到这个状态的原因是我们不断需要提醒自己,我们生活在一个充满分心的世界里。有时很难按下暂停按钮。
要创造一种流动状态,必须遵循一定的规则,并通过一种称为深度工作的概念来接受有意识的实践。为了产生绝对最好的结果,你需要承诺深入的工作。发展深度工作能力的关键在于超越良好意愿,并增加日常和仪式,以尽量减少从分散国家转变为稳定集中状态所需的有限意志力。根据经验,大约需要25分钟的时间才能达到流动状态。如果您每隔20分钟检查一次Twitter通知(看起来无害),就会阻止您的大脑进入该状态,从而延长完成任务所需的时间。
生产力法则:生产的高质量工作=(所花费的时间)x(焦点的强度)
不要把生产力和繁忙混淆在一起。以可见的方式做大量的东西并不意味着你的工作效率。我们所做的大部分工作都是浅作:
“浅作:非认知要求高,后勤风格的任务,通常在分心时执行。这些努力往往不会在这个世界创造出很多新的价值,并且很容易复制。“
加州新港
Cal Newport是“ Deep Work:在分心世界中聚焦成功的规则”
(我极力推荐!)的作者,他认为如果你花费了足够的时间处于沉溺于浅薄的状态,那么你永远会减少自己执行深度的能力工作。社交媒体过度使用正是他在这里提到的迷恋浅薄的类型,但不是唯一的。他将Deep Work定义如下:
“专业活动在分散注意力的状态下进行,将您的认知能力推向极限。这些努力创造新的价值,提高你的技能,并且很难复制。深层次的工作是艰苦的,浅层次的工作更容易,在缺乏明确的工作目标的情况下,围绕浅层工作的可见繁忙变得自我维护。“
加州新港
刻意练习不能与分心一起存在。当你在相关的神经元周围形成更多的髓磷脂时,你的技能会变得更好,从而使相应的电路更轻松,更有效地起火。因此,要善于做某件事情,就要有髓有力。通过有意识的练习,并专注于特定的技能,你会迫使与该技能相关的特定电路一次又一次地被孤立地解雇。这个重复的过程触发称为少突胶质细胞的细胞开始在电路中的神经元周围缠绕髓磷脂层,这进而有效地增强了该技能。
好。这一切都很有意义,但我可以从经验中知道,仅仅了解这些事情就不会让你更接近你的目标。我已经阅读了关于深度作业的整本书,并且我试图将深度作业实施到我的每日/每周时间表时学到的最重要的一课是如果您不仔细计划并将其设置为强烈习惯,则您将无法开发这个技能并自动回落到非生产性修补。毕竟,你有一定的意志力,在你使用它时会耗尽。事实证明,我们每个人每天都有大约4小时的意志力。试图强迫自己终于开始,而拖延正是你的意志力以最没有生产力的方式耗尽的地方。如果你有一个固定的计划,一个习惯,你可以节省你的实际任务的意志力。
我学到的另一个重要教训是练习!=故意练习。刻意练习是指一种特殊的练习,它是有目的的,系统的,并将你的思想延伸到极限。经常练习可能包括无意识地重复同一项任务,而有意识的练习需要集中注意力,并且要以改善表现为目标来执行。人脑的自然倾向是将重复的行为转化为自动习惯。我们越是重复一次任务,它就会变得越无意识。无意识的活动是故意练习的敌人。行为心理学家詹姆斯明确证实,
“ 通常,我们认为我们正在变得更好,因为我们正在获得经验。实际上,我们只是加强了我们目前的习惯 - 而不是改进它们。“
James Clear
如果我们以正确的方式训练大脑,我们都有能力改善我们在任何生活领域的表现。说起来容易做起来难。我们直接在这里。刻意的练习并不是一项舒适的活动,需要持续的努力和专注。这基本上是一次又一次失败的过程,因为我们知道我们已经超出了我们的极限。以举重为例。你举起重物直到你失败并且必须休息一段时间,这正是你的身体学习的地方,以扩大其当前的极限,并准备在下次你进行这项活动时变得更强壮。强迫自己承担超出限制的挑战。选择一个迫使你学习新概念和新技术的项目。当你阅读一篇科学论文时,
当表现心理学家开始探究专家在许多不同领域与其他人之间的分离时,单一的连贯答案是:刻意练习。我们的文化喜欢神童的故事情节,以及专家拥有将他们与其他人分离的固有天赋的观念。但实际上,要掌握一项认知要求较高的任务,需要具体的实践形式。只有少数例外为自然人才。K.安德斯爱立信在1993年的论文“ 故意实践在获得专家业绩中的作用 ”中介绍了故意实践的概念,他在文中指出:
“我们否认这些差异是不可改变的,也就是说,由于天生的才能。只有少数例外,最显着的是身高,是基因处方。相反,我们认为专家表演者与正常成年人之间的差异反映了一段长时间的刻意努力来提高特定领域的表现。“
K.安德斯爱立信
付诸实践
你需要选择一个适合你的具体情况的策略/理念,因为不匹配可能会在你有深刻的工作习惯固化之前破坏你的深刻的工作习惯。以下是我从“ 深度作业:分心世界中重点成功的规则”一书中提取的一些策略:
修道院:“这种哲学试图通过消除或从根本上最小化浅层义务来最大限度地进行深度努力。” - 长时间隔离自己而不会分心; 不允许浅层工作。
Bimodal:“这个哲学要求你划分时间,将一些明确定义的时间段用于深层次的追求,并让其余时间开放。” - 连续几天(例如周末或周日)奉献深度工作只有,至少每周一天。
有节奏的:“这种理念认为,持续开展深度工作会议的最简单方法是将其转变为一种简单的常规习惯。” - 每天创造三到四个小时的日常习惯,以便对您的项目进行深入研究。
新闻:“你可以在任何时间进入你的日程安排,从而适应深层次的工作。” - 不建议先尝试,因为你首先需要适应自己的深度工作。
对于我目前的生活方式,我更喜欢在Rhythmic和Bimodal之间切换。您不必适合一个盒子,但是在开发适合您情况的方法时,您可以将这些策略用作参考点。
“但我不知道要关注哪个主题”
很公平。事先很难预先知道什么会成为“你的事情”,因为我们的兴趣因人而异,仅仅因为我喜欢ARM利用开发,并不意味着你喜欢做自己喜欢的事情。
这是一个想法:
选择对当前路径有用的技能
如果你还没有一条路径,那么选择一种通常有用的技能或者你可能转化为职业的技能。
尝试至少30小时(深入工作!)。起初你可能不喜欢它。不要立刻气馁。我们不擅长的事情是可怕的,我们不喜欢做我们吮吸的东西。诀窍是克服最初的挫折感,直到你获得第一次有益的经历。
将你的30个小时分成7个4小时的会话(加上缓冲区)。为此项目设定明确的目标。请记住,目标不是要在30小时内成为主人,而是要有效利用您的时间以充分学习,以便您可以判断是否要继续或转换到其他主题。
使用你的第一次会议进行广泛的信息收集。查看可用的资源并选择最适合完成您选择的项目的资源。如有必要,使用第二次会话来设置环境(例如,恶意软件分析的分析环境,包括您可能需要用于首次分析的所有工具)并定义明确的目标(例如分析恶意软件x)。确定明确的目标并将其分解为结构化的部分非常重要。
如果你每周完成两节课,你将在3周内完成。最糟糕的情况:你意识到你不喜欢它,但是你已经花了30个小时来学习一些你不会学习的具有挑战性和新的东西。最好的情况:你意识到这实际上很有趣,并希望继续它。已经开始,你克服了最烦人的部分,现在可以继续开发你的技能。
示例:ARM开发
假设您想探索ARM开发。下面是一个抽象的例子,说明如何构建您的七个深度工作会议:
第一部分:信息收集和阅读
阅读我的汇编基础知识入门教程(第1 - 7部分)
阅读有关ARM上的进程内存和内存损坏的部分
通过去在基于ARM的系统开发由萨沙斯基拉幻灯片
如果你想使用你自己的shellcode ,请阅读如何编写ARM Shellcode ( Execve Shell,Bind Shell,Reverse Shell)
如果您需要查看某些东西,请准备好ARM参考手册
会议2:设置环境和目标设置
设置您的ARM环境。不用等,我已经为你做了。只需下载Azeria-Labs实验室虚拟机
熟悉GDB / GEF
使用其余的时间来谷歌,并查找像objdump,strace,as,ld等常用工具的用法。
第三部分:第一步 - 从简单开始
开始练习简单的堆栈溢出挑战,并阅读本指南如何开始。您可以从exploit-exercises.com获取源代码并在ARM环境中编译它们
第四部分:如果未完成,继续第三部分
第5节:解决ARM挑战
一旦你完成了简单的堆栈溢出挑战,你可以在root-me.org上获得更高级的挑战
第六节:继续解决高级挑战
第七场:继续解决高级挑战