对于开发者而言,如何做好技术分享是必备的技能之一。
技术分享是一个学习、整理与输出的过程,在此从【学习整理】、【提高倾听者的体验】、【处理技术分享的问题】三个方面记录一些个人做技术分享时的小反思,以此激励自己更好地完成技术分享,也希望对大家会有所启发~
一、怎样学习整理
要想做好分享,首先自己要把分享主题相关的知识理解学习透彻。 学习、收集知识主要有以下几种途径:
本质:GitHub(源码库分享)/官方文档
- ReadMe 文档
- 官方文档
收集:搜索资料
- StackOverFlow
- 掘金
实践:show the code
- 自己用 Demo 工程验证
输出:整理大纲,完成学习笔记
- 使用笔记软件填充、记录(Bear、MWeb、马克飞象…)
- 根据学习笔记的结构做 PPT
二、怎样改善倾听者的体验
做技术分享自己当然是受益者,但如何让倾听者有良好的体验也是做好一次分享的重要因素。 改善倾听者的体验主要有以下几种方法:
1. 分享前
首先需要注意准备充分:内容充实、详略得当
- 自己预演分享时间,一般来说 PPT 的讲解不应超过一个小时。单场分享全长不应超过两个小时(包括Q&A),避免听众的疲倦
- 根据听众群体的接受度,把握内容的充实程度(例:面向非技术人,要更注意基础概念的分享理解,再进一步解释;面向技术人,则可以少一些都懂的概念)
其次需要注意信息同步:让大家知道要讲什么,并有所预期和提问,这样分享会更有针对性。
- 至少提前一天预订会议室,并发送会邀至参加会议的人
- 至少提前半天公布 PPT 并收集提问
2. 分享中
分享中需注意的是信息展示的明确性,确保大家都能跟上分享进度。
- 使用 PPT 来做主要演讲展示,使用学习笔记的 pdf 来做为演讲的文档。PPT 和学习笔记均发送给所有与会者,且要考虑不同平台的打开能力(windows 不能打开 keynote,所以最好将 PPT 转成通用格式的 pdf 再发送)
- PPT 应调大字体、放大图片,如有 Demo 工程展示,提前放大编译器(Xcode…)的字号,确保后排的听众也可以看清
- 在每个 part 结束关注与会者的理解,适当互动
- 留出充足的 Q&A 时间
3. 分享后
- 会上若有争议或未解决的疑问,应在会后探究并得出结论,及时同步所有与会人
- 将分享落实在 wiki 等处,结果落地化并同步所有与会人,文档持续更新
三、怎样处理技术分享的问题
1. 被问到没有准备完整的问题
这其实是很正常的情况,抱有积极的“分享”心态而非‘教学“心态很重要。被问到没有准备完整的问题时,大可以真诚地表示这里确实没有准备到,分享之后研究清楚再同步
2. 分享的内容很多,难以压缩
当遇到与主题相关但并非重点的问题,可以在文档里适当加入链接,不影响文档表达的同时提高可靠性
3. 分享的内容看起来很少,难以扩充
可以多一些横向比较:同一种功能的不同实现方法等
4. 没有那么重要的细节点就不讲了么?
细节小点可以用一句话带过,但细节小点是有必要的。可以把这样的点放在文档里,讲得时候说感兴趣的同学可以阅读一下。