プログラミングを行う際, 自分の頭の中にあるものをコードに書き起こすという作業が必要となります.
この作業をストレスなく行うために自分が試行錯誤してきたことについて, 簡単にですが記述してみようと思います.

タイピング速度について

頭の中にあるものを速くコードに書き起こす方法として, 初めに自分が思い浮かべたことはタイピング速度を向上させるということでした.

高校生のときに, ザ・タイピング・オブ・ザ・デッド, 寿司打などのタイピングゲームを毎日していました.
また当時はプログラミングの本にあるコードを写経して勉強していたのですが, タイピング速度が向上するとそれに比例してコードを写経する速度も当然向上します.
それによって自分はプログラミングが出来ると勘違いしていた思い出もあります.
コードをタイピングする速度を向上させることに多くの時間を使うよりも, コードを考える力を身に付けることに時間を使えばよかったと今では思っています.

タイピングゲームやコードの写経の量が増えてくると, ノートPCのキーボードでは指が疲れるようになってきました.これは改善する必要があると思い, 試しにUSB接続のキーボード(3000円程度の中古のメカニカルキーボード)を買ってみたところ, タイピングすることが楽しくなり, 疲労を感じることも少なくなりました.
この経験がきっかけでキーボードにこだわり始めるようになります.

キーボードについて

先程記述した中古のメカニカルキーボードを四六時中使っていると, 3ヶ月ぐらい経過した頃にいくつかのキーが壊れ始めてきました.

そろそろ買い換えようと思った時, ふとプログラマはどういったキーボードを使っているのかが気になりました.色々な情報を見ていると, RealforceやHHKB(Happy Hacking Keyboard)に関する情報が多くあることに気付き, 自分も使ってみたいと思うようになりました.

色々と迷いましたがHHKB(白, 英語配列, 無刻印)を購入しました.このキーボードは今でも自宅で使っています.ただRealforceは今でも気になっているので, 機会があれば購入して比較してみたいと思っています.

余談ですが, 職場ではArchiss Cherry青軸を使用しています.

タイプ量とタイプミスについて

キーボードを良いものに買い換えることによって, 入力時のストレスや疲労を感じることは少なくなりました.ですがキーボードを換えることによってタイプ量が減ることはないので, キー入力が劇的に速くなるということはありません.

またタイプミスについてですが, タイピングゲームをしている時には, 同じキーの連続入力する時にミスすることが多いことが気になっていました.具体的には「ん」と「っ」の入力です.「nn」と入力する際に押し過ぎたり, 押せていなかったりしてミスになるということが頻繁にあり, 大きなストレスを感じていました.

ですが現在では全くストレスを感じていません.
その理由は「AZIK」を利用し始めたからです.偶然読んだSoftware Designに, るびきちさんが「AZIK」を解説した記事が載っており, 興味が湧いてきたため利用し始めました(現在Web上で公開されています).

AZIKでは「ん」 -> 「q」, 「っ」 -> 「セミコロン(;)」という風に入力しにくいキーを1つのキーに割り当てています.また2文字目に「ん」がある場合には, 1文字目の子音 + 1文字目の母音の下にあるキーを押すと簡単に入力できます.
具体的な例を挙げると, 「かん」という2文字を入力したい場合は1文字目の子音(k)と1文字目の母音の下にあるキー(母音はaなのでaの下にあるz)を入力します.つまり「kz」と入力することで「かん」を入力することが出来ます.同様に「きん」という2文字の入力は「kk」, 「くん」という2文字の入力は「kj」という風になります.
他にもタイプ数を軽減するための組み合わせが多くありますが, 詳細について説明すると文量が多くなってしまうので割愛します.

詳細はAZIK総合解説書に記載されています.
AZIKの理念や効果についても記述されていて, 非常に面白いです.

おわりに

AZIKを使い始めて日本語入力がかなり楽になったように感じています.
ですが現状に満足せずに, これからもプログラミング速度の向上に役立ちそうなことを, 積極的に実践していきたいです.