プログラマーがルービックキューブをやるメリット
プログラマーの皆様はルービックキューブのような多面体パズルをやっているでしょうか?私は速さは気にしていないライト層ではありますがやっております。プログラマーの方々の趣味の話を聞いていると、ルービックキューブをやっている方、昔やっていた方というのは結構いまして、もしかするとプログラマーのキュービスト率は高いんじゃないかと考えております。今回は、そんなルービックキューブのような多面体パズルをプログラマーがやるメリットを紹介します。
メリット概要
- インストールやビルドの待ち時間で暇を潰せる
- 頭の体操と指の体操を同時にできる
- 多面的に物事を考える訓練になる
- 問題解決の際これまでの知識を応用する訓練になる
- 法則を導き出す力を養える
- 日々の積み重ねにより確実に成長を感じられる体験を得られる
インストールやビルドの待ち時間で暇を潰せる
プログラマーは何かと待ち時間が多い職業だと思います。暇つぶしにはもってこいですよ。
頭の体操と指の体操を同時にできる
プログラミングをしていると、考えが煮詰まることありますよね。また、キーボードを扱うため指を酷使します。リフレッシュするのにいいと思いますよ。
多面的に物事を考える訓練になる
今こういう状態の時反対の面はどうなっているだろうか、あの手順をやると次はどういう状態になるだろうかなど、現状見えていない事・あることをした時に起きうる事(副次的現象)を考える力を養うことができます。プログラミングでも、今コーディングしているクラスでないクラスへの影響や、実データを流した時に起きうる現象などを推察する力が必要ですよね。
問題解決の際これまでの知識を応用する訓練になる
多面体パズルを攻略する際は、基礎となる仕組みや手順を覚えてそれで起き(う)る現象を学び応用します。プログラミングは知識の積み重ねと応用がキモです。例えば、基礎となる変数宣言・if文・for文などの制御構文の組み合わせで複雑な機能を実装していきます。基礎を学び応用する力がそのままプログラマーとしての実力になりますから重要です。
法則を導き出す力を養える
多面体パズルをやっていると、「あ、こういう状況は起こり得ないな」とか「実はこれって向きを揃えてるだけじゃなくて三箇所がローテーション的にぐるぐる移動しているな」とか「同じ手順をずっと繰り返していると元に戻るな」とか気づきがやってきて、その積み重ねで法則を導き出せるようになります。プログラミングは再現性のある汎用的なアルゴリズムを組む作業ですから、法則性を導き出す力は養いたいですよね。
日々の積み重ねにより確実に成長を感じられる体験を得られる
日々繰り返してやることで、手順を見ずに揃えられるようになったり、揃えるスピードが速くなったりしていくため成長を実体験することができます。しかも定量的に。この経験そのものがあらゆる別の物事に挑戦するときも活かされると思います。コツコツやれば俺でも何か進歩するんだという自信につながります。
そもそもの誤解
「ルービックキューブのような多面体パズルって難しいんでしょ?」と思っている方が結構いるかもしれませんが、そんなことはありません。特にプログラミングができるような人材であれば朝飯前なレベルだと思います。もちろん、何も攻略法を見ずに初見で直すというのは非常に難しいことですが、攻略法を見ずに直せるようになるだけであれば、誰にでもできるようになる可能性が大いにあると思います。
直せるようになるために必要なことは、パズルの構造や仕組みを理解すること、直すまでの流れを把握すること、各工程の手順を覚えることです。
パズルの構造や仕組みを理解しているだけでも、理解していないのとは大いに違います。起きうる状態と起きえない状態を見極めることができます。また、直すまでの流れを把握すれば、闇雲に揃えようとするのと明らかに違いが出ます。(例えば、下段を揃える→中段を揃える→上段を揃えるのような流れ。)
そして、一番誤解されているような気がするのは、各工程の手順を覚えるのは膨大にパターンがあって大変そうというものです。揃えるまでのスピードを極めている方々(スピード・キュービスト)はある状態から別の状態に変更するための手順を大量に覚えていますが、ただ揃えることだけを目標にするならば、覚えないといけない手順のパターンは片手で数えられるほどのものです。それも各手順で覚えないといけない回し方も8~12ステップ程度のものがほとんどです。状態が鏡写しであれば、鏡写しな手順にすればいいだけですし、実は本当に覚えないといけない手順はそれほどありません。
ルービックキューブのような多面体パズルのメリット
- ジグソーパズルと違い繰り返し遊びやすい
- 小さいので場所を取らない
- 知的なインテリアになる
- そこまで高い買い物ではない
おすすめの多面体パズル
最近は中国企業製の多面体パズルが非常に優秀です。特にマグネティックコアという磁力によるアシストを搭載したシリーズを展開しているGANCUBE製のパズルは少々値は張りますが圧倒的に触っていて気持ちいいです。また、面の色分けをステッカーにより実現しているものと、プラスチックの成形色をそのまま利用しているものがあり、長時間触る内にステッカーが剥がれてくることを考えるとステッカーレスのパズルを購入するのがおすすめです。
速く揃えるのもよし、さまざまな種類の多面体パズルを解けるようになるのもよし、模様を作るのにハマってもよしですので、ぜひみなさん多面体パズルをやってみましょう!
Discussion
GANCUBEいいですよね! 356XS使ってます