ブロックを組み立てるプログラミングでは、キーボードをほとんど使いません。マウスでブロックを動かせば、プログラムが作れます。ところが、その先の「文字で書くコード」に進んだとたん、タイピングが急に大きな壁になります。
私の教室でも、ブロックのプログラミングから、ゲーム制作などで使う文字のコードへ進む子がいます。そのとき子どもたちが止まる場所は、だいたい決まっています。記号と英字、そしてスペルミスによるエラーです。この記事では、その2つについて、教室で見ていることと、おうちでできる準備をお伝えします。
いちばん止まるのは「Shiftを押したまま打つ記号」
コードには、ふだんの日本語の文章では使わない記号がたくさん出てきます。その中でも、教室でいちばん手が止まるのは、Shiftキーを押したまま打つ記号です。
理由ははっきりしています。ローマ字のタイピングは、キーを1つずつ順番に押せば完成します。Shiftを使う記号だけが、「1つのキーを押したまま、べつのキーを押す」という、まったくちがう動きを求めるのです。日本語のタイピングゲームをどれだけ練習しても、この動きには一度も出会いません。
たとえば、画面に文字を出す1行を見てみましょう。
print("Hello")
たった14文字ですが、Shiftが必要な文字が5つあります。( と )、2つの "、そして大文字の H です。3文字に1回はShiftを使う計算です。ローマ字だけを練習してきた子が、ここで急におそくなるのは当然のことです。
コードでよく使う記号と、キーの場所
日本語キーボード(教室のWindowsパソコンもこの配列です)で、コードによく出てくる記号の打ち方をまとめました。変換や確定の教え方と同じで、ここでも大切なのは「場所から教える」ことです。記号は、キーの上のほうに小さく書いてあります。まず一緒にキーボードをながめて、「この小さい字は、Shiftを押したままで出るんだよ」と見せてあげてください。
| 記号 | 打ち方 | コードでの使いどころ |
|---|---|---|
( ) | Shift + 8、Shift + 9 | 命令のうしろにつける |
" | Shift + 2 | 文字をかこむ |
= | Shift + -(0の右どなり) | 変数に値を入れる |
{ } | Shift + [、Shift + ] | まとまりをかこむ |
+ * | Shift + ;、Shift + : | たし算、かけ算 |
< > | Shift + ,、Shift + . | 大きさをくらべる |
_ | Shift + \(右Shiftの左どなり) | 名前の区切り |
- . , / ; : [ ] | Shiftなしで、そのまま打てる | ひき算、区切りなど |
とくに = は、日本語キーボードではShiftが必要です。英語のキーボードとは場所がちがうので、海外の解説動画を見ながら打つと混乱しやすいところです。
Shiftは、反対の手で押す
Shiftキーは、キーボードの左と右に1つずつあります。打ちたいキーと反対がわの手の小指で押すのが基本です。( は右手で 8 を打つので、Shiftは左手。" は左手で 2 を打つので、Shiftは右手です。片手で両方を押そうとすると、手がホームポジションから大きくはなれて、次のキーが打てなくなります(→ どの指でどのキーを打つか)。
スペルミスは、エラーになる
もう1つの壁が、スペルミスです。日本語の文章なら、1文字まちがえても意味は通じます。コードはそうはいきません。
pirnt("Hello")
print の r と i が入れかわっただけで、プログラムは動かず、エラーになります。大文字と小文字もべつの文字としてあつかわれることが多く、Print と print はちがうものです。
そして、エラーが出ると、まちがえた場所をさがす時間がかかります。打つのは数秒だった1行の、どこがまちがっているのかをさがすのに、何分もかかることがあります。エラーが続くと、「プログラミングはむずかしい」と感じてしまいます。でも、つまずいているのはプログラミングの考え方ではなく、タイピングのほうなのです。
だから教室では「速さより正確さ」と伝えている
私が教室で子どもたちに伝えているのは、この1つです。「ミスタイプをすると、直すのによけいな時間がかかる。だから、速く打つことより、正しく打つことのほうが大切だよ」。
これは気持ちの話ではなく、時間の計算の話です。ゆっくりでも正しく打てば、1回で動きます。速く打ってまちがえれば、エラーをさがして、直して、もう一度動かす時間が上乗せされます。結果として、ゆっくり正しく打った子のほうが、先に完成します。
カタカタランドの花火タイピングが、ミスをするとコンボが切れてフィーバーが終わるルールになっているのも、同じ考え方からです。速さだけを競うのではなく、正しく打ち続けた人のスコアが伸びるようにしています。
コードを書き始める前に、おうちでできる準備
ここからは、教室で見てきたつまずきをもとにした、私からの提案です。
- アルファベットのキーの場所に慣れておく:コードは英字で書きます。英単語タイピングは、すべて小文字でShiftを使わないので、英字のキーの場所を覚える最初の練習になります
- 記号のキーを、一度いっしょにながめる:上の表を見ながら、「かっこはどこ?」「イコールはどこ?」とさがしてみてください。場所を知っているだけで、最初のとまどいが大きく減ります
- Shiftを押したままの動きを、ゆっくり何回かやってみる:メモ帳に
()""{}を打つだけで十分です - スコアより正確率を見る:タイピングゲームで遊ぶときも、「何点だった?」より「ミスは何回だった?」と声をかけてみてください
まとめ
- 文字のコードに進むと、子どもは「記号と英字」「スペルミスのエラー」で止まる
- いちばん止まるのは、Shiftを押したまま打つ記号。ローマ字の練習では出会わない動きだから
- 記号も、キーの場所から教える。Shiftは反対の手の小指で押す
- コードは1文字のまちがいでエラーになる。直す時間のほうが長い
- だから「速さより正確さ」。ゆっくり正しく打つ子が、先に完成する