如何提高程序员的键盘使用效率?——ASE第一次作业

引言

Programming is not about typing, it's about thinking. —— Rich Hickey

对于程序员来说,最重要的是代码思想和能力,在编程的过程中真正用于键盘输入的时间是很少的,但也决不能被键盘输入效率拖了后腿。

准备

在正式练习打字之前,一些相关的准备也许会帮助你在练习打字的过程中事半功倍,或是让你更有练习打字的意愿。

键盘

很多人享受打字时机械键盘的噼里啪啦声,不过并不是所有人都有购置机械键盘的计划。这时不妨试试Tickeys这款软件,它虽然不能提供机械键盘的触觉反馈,但是能够模仿机械键盘的声音,让你在没有机械键盘的时候也能享受按键声音的愉悦,让你爱上打字。

键位选择

不少读者可能听说过鼎鼎大名的Dvorak键盘家族,其拥护者宣称Dvorak键盘是更科学高效的键位设计。不过我是不推荐使用Dvorak键盘家族的。我认为,对于写代码来说,键入效率并不是那么重要,只要键入速度不拖思路的后腿就可以了,不值得为了键入效率而花费巨大的精力和时间去适应新键位。同时,还有以下理由:

  • Dvorak键盘家族的效率可能没有想象中的那么高。这些键位基本都是针对英文输入设计的,无法同时满足输入中英文都能提高效率的需求。另外,键位改变之后,各种软件中的原本好用的快捷键会变得难用。
  • Dvorak键盘限制了你的自由。如果你想在所有平台上都使用Dvorak键盘,不但会花费相当大的精力,而且会失去使用一些本身很好用的平台、设备或软件的机会,只因为它们不支持Dvorak键盘的机会。而且不论你怎么努力,你总有被迫使用qwerty键盘的时候,这时又要重新熟悉原来的键位。

总之,使用Dvorak键盘很可能是弊大于利的,如果想深入了解,可以参考这篇文章。所以,我还是推荐使用传统的qwerty键盘。

指法

标准指法是一种公认比较合理的指法方案,强烈建议学习标准指法。有的读者可能会想,我原本的指法打字也很快啊。事实上,标准指法能够提高键入效率的上限,刚刚开始输入效率会降低一段时间,练习一段时间后效率能得到很大的提升。另外,标准指法的手指分工更加科学,能够减少长时间打字产生的疲劳。

关于标准指法的详细介绍,参加标准打字指法;更多基于标准指法的建议,可以参考一个过来人的打字指法纠正之路

打字练习

输入效率的指标

输入效率的通用指标是打字速度和准确率。其中打字速度的单位是WPM,意为每分钟能输入多少单词(字)。有不少测试工具能够检测你的输入效率。在此提供一个在线测速网站:Typeracer。在 Typeracer 中,你可以在线和全世界的打字爱好者同台竞赛,测试出自己的打字速度的同时,还能大致了解自己的输入效率处于一个什么水平。

我认为,打字速度在 30 - 50 WPM即可满足一般的代码输入需求。我在打字练习前的速度只有 20 WPM,准确率在95%左右,看来我还需要一定的练习。

打字练习网站

现在可以开始打字练习了,我找到了几个广为推荐的打字练习网站,并分别体验了一下,我将选择自己最喜欢的一个进行正式的打字练习,你也可以选择自己喜欢的打字网站。

Typing

Typing 提供了从入门到进阶共计45门打字课程,还提供足够的不同领域的练习文本,其中甚至还有针对HTML和CSS使用者的内容。另外,还有8个打字小游戏供你练习。

我体验了几节入门课程,课程包括一些完全从0开始教起的视频教程、键入练习和穿插其中的打字小游戏。键入练习的虚拟键盘也提供了包含按键手势的的指法提示,对于不熟悉标准指法的用户非常友好。

总之,Typing比较适合从0开始,不熟悉标准指法的打字练习者。

Typingclub

Typingclub 提供了648个关卡供你练习打字,经过体验下来,Typingclub和Typing是差不多的,课程内容基本一样,只是字母的学习顺序和一些交互细节有所不同,不妨分别体验一下,选择你喜欢的网站进行打字练习。

Kebr

Kebr 网站只有这一个界面,但是其设计却大有学问。屏幕上的键位图帮助你熟悉键盘,丰富的数据监测帮助你了解自己目前的输入效率。最有特色的是其练习文本:

  • 练习特定字母的时候,文本不再是简单枯燥的“jjjfff”这种无意义的字符串,而是英文中真正会出现的字母组合。
  • Kebr 会根据你打字时的数据针对性设计文本,专门练习你的弱项字母。
  • 练习文本中字母出现的频率符合一般的英文文本中字母出现的频率,字频更高的字母你将练习得更多。

我在体验的过程中发现,屏幕中的键位图在输入时没有指法提示,在对标准指法不熟悉的阶段可能需要适应一段时间。所以,该网站比较适合对标准指法比较熟悉的打字练习者。

Speedcoder

程序员打字的特点是单词分布比较集中,需要输入大量的符号,而 Speedcoder 就是一个针对程序员打字需求的网站,为程序员提供真实的代码作为练习素材,支持 C, C++, Java, Python, Javascript, PHP等十余种编程语言,还可以上传自己的代码作为练习素材。同样的,Speedcoder 支持虚拟键盘以及指法提示,不过不像前两个那样提供按键手势。该网站适合程序员的代码输入练习。

练习方案

对于以上提供的几个网站,你既可以坚持使用一个网站进行打字练习,也可以组合使用,不论如何只要坚持练习,输入效率一定会有所提升。组合使用的话,我推荐的方案是先使用 Typing 或者 Typingclub 练习所有的按键,熟悉标准指法,然后使用 Kebr 进行巩固练习,最后使用 Speedercoder 进行代码输入专项练习,也可以在熟悉标准指法后直接使用 Speedercoder 进行练习。

快捷键

快捷键是程序员提高效率的利器,各种软件都有各自好用的快捷键。但是忘记自己想用的快捷键再去查询设置就有些麻烦,Cheat Sheet是一个克服这个问题的不错的选择。在Cheat-Sheets.orgCheatography这两个网站中你可能会找到你需要的Cheat Sheet。

当然,不少软件查询快捷键也很方便。比如在VS Code中,可以按ctrl+k,ctrl+s来打开快捷键查询和绑定页面;或者是按F1打开终端输入命令shortcuts来打开一个实时更新的VS Code快捷键的Cheat Sheet文档。

你也可以试着建立自己的Cheat Sheet,前面提到的Cheatography即可满足你自制Cheat Sheet需求。

工具选择与非代码输入

猜你喜欢

转载自www.cnblogs.com/litosty/p/11537309.html