-
Notifications
You must be signed in to change notification settings - Fork 90
script howto
Peter Wang edited this page May 5, 2018
·
40 revisions
本篇展示 haoqicat.com 上的课程的文字稿的内容组织安排,书写规范。另外总结了一个小节写作模板:script-template
- 不求全面,求实用
- 每个概念都通过实际代码讲解,没个代码案例都是实际中我自己天天用的代码,或者是实际代码的简化版,
- 我自己不用的概念,不讲
讲述一个精美的案例是怎么一步步做出来的。整个故事就是以动手为主线的,不要以理论为主线。如果有理论知识的讲解要穿插到动手过程中。
- 课程标题醒目清晰,例如《React&Redux 搭建一个论坛》。
- 注意,一定要是做一个什么东西,而不是讲一个什么知识
- 课程分多关
- 每一关,拆分成多个任务
- 每一关相当于一节,取消章的概念
- 除了促成基本的承接分块逻辑之外,基本不要套话。
- 总结性的,概述性的内容,可以很精彩,但是我不要
操作失误是最浪费时间的事情。所以尽量做到每次的内容就控制在二十到四十秒,而且过程是完全可以回滚重来的。起码在这二十秒内要能保证自然。
写文字稿的时候注意把步骤分好,每一步做出一个 commit 。我讲的时候,脑子中就完全想着这一步,努力自然流露。而下一步和这一步承接好不好,完全由文字稿来负责。
目前总结的各种思路都没有问题。不过语言风格还需要更口语化,让我再讲的时候能形成环环相扣的气场。
[git-try][https://github.com/happypeter/a-haoqicat/wiki/git-try]
- 采用我的 MBP pro15inch 机器,display -> 选择最大字体
- screenflow 导出的时候按 50% 导出,这样最终尺寸是 1024x640
- 最大限度的考虑到了对手机友好,同时视频小,加载也快
- 使用 Yeti 话筒
- 视频中不允许读错字
- 语气中要有 cheerful 元素
- 根据一个小节不超过十分钟原则,为了控制小节时间,同时也为了突出内容主线,可以对内容进行略讲
- 快进缩时可以,但是同时旁白不能停
以前效率低,不是没有步骤而是,一步没有完成,就进入下一步,导致改来改去。所以下面的步骤一定是做过一步,前面尽量不改,这样才有效率。
- 定题:例如《跟 Peter 做腾讯云客户端》。
- 代码实现:代码不能在录的时候改来改去,浪费最多的事件就在这一块。其实如果定题有充分自信了,代码就可以 100% 敲定。跟后续的文字稿该怎么写,课该怎么讲,完全没关系。
- 参考资料整理:代码实现过程中,肯定伴随着查阅并记录资料。资料内容要紧跟代码,或者写到代码的注释部分,或者写到 github.com 代码评论中。不太适合写到 wiki 中,或者小节文本中,后续要调整的工作量很大。
- 章节划分:先写每一节的中心句。然后根据中心句,代码重新做一遍历史,每个 commit 对应一节内容。不考虑小节内部讲解逻辑。
- 小节讲解:再做一遍历史,把上面的一个 commit 拆分成10个左右的 commit ,同时把小节中每一部分的文字稿写完。
- 文字稿中代码全部以 diff 形式提供。便于以后用自动化手段处理。
后续考虑用程序的方式生成课程。
-
介绍视频
- Hi,你好我是 Peter 。欢迎来到《XXX》课程。先来介绍一下课程中都用到了哪些技术,然后介绍一下都做出哪些功能。
- 先看用到的技术(使用 keynote 展示各个技术图标)
- 第一个,XXX ,一句话夸一下
- 第二个...
- 再看都做出啦哪些功能点
- 第一个,XXX 。复现演示
- 第二个...
- 好介绍就到这里,让咱俩一起携手,过关打怪,完成这个项目吧。
-
一关如何拆分成多个任务
- 每个任务都要有 deliverable ,也就是一个完整的,functional 的东西
- 这个需要有一定的劳动量,因为原本分到这一关的代码,整个就一个 deliverable ,本身不可拆
- 所以为了避免每一部分过大,就要自己强行拆开,通过对一些地方添加 placeholder 的形式来实现
- 每一任务不太大,这样观众才能听得懂,每一任务都有 diliverable ,这样思路才能真正清晰。
-
每个任务内分多幕
- 画面显示的是命令行操作/UI演示/代码操作
- 下面跟一个自然段,是这个操作的旁白。
- 开始动手,操作,或者写代码
- 每个任务就是一步,录制时候分多幕完成。
- 每个任务的最后是复现本任务的劳动成果。
- 问:为何不能联想展开?
- 联想出来的内容有时候很精彩,但是也有时候容易带跑题。本着节省时间提高产出的原则,内容一概不许发散联想。
- 问:一部分内容一定要是做一个东西么?不能是讲一个知识点么?
- 不能。我们这里做的是动手教程。要讲知识点,只能在动手完成后对本步骤略作解释,然后给出参考资料。不允许展开讲。
- 问:能不用书面语的一些格式?例如“注意”,引用格式等等
- 不能。因为咱们这里写的不是书稿,而是台词。
- 问:代码只能是 diff 格式?
- 是
- 问:什么样的内容能够构成一节视频?
- 简单回答:一个特定问题的最佳解决方案。不扯别的,什么替代方案啊,你也应该了解呀什么的。那这个特定问题可以是基础问题,比如 react 基础环境怎么搭建,css 使用策略是什么,也可以是大项目中具体一步的解决方案,比如 登录,授权,这些功能用什么方案是最佳的。