こんにちは、デザイナー松本です。
前回フィードに書いた、エンジニアが成長するための取り組みの話し合いから、「エンジニアの成長にはアウトプットが大事。だが文章を書くのは大変なので、エンジニアなんだからとにかくコードを書いていこう」という基本方針が決まりました。そこでアウトプットの一環としてFizzBuzz大会をやってみたところエンジニアが皆とてもワクワク楽しそうだった、というレポートです。
プログラミングをする人にとっては、かなりの基礎問題であるらしいFizzBuzz。発案者がこの話を出した時は「え?FizzBuzz??簡単すぎない?」といった声も上がりましたが、いいえ、それでいいんです。これくらいハードルを下げて、気軽にできることがまずは大切!ということでやってみました。
さて、大会開始
みんなでルールを確認して、一斉にスタート!制限時間は15分。
エンジニアさんたち意外とノリノリで「どの言語で書こうかな」「カッコいい書き方ないかなー」などと言いながら、みな思い思いにコードを書いていきます。みんな熱中してタイピングしていて、その姿がかっこいいです。
お互いのコードを読む
タイムアップ後は、それぞれのコードを読んでみる時間。
シンプルなお題でもお互いに「おー」「すげー」「へー」などと、みんなワイワイ盛り上がりながら楽しくコードを読んでいます。言語が自由選択だったこともあり、言語による違いや、さまざまな気付きや学びがあったようです。
仕事で日々コーディングをしている彼らですが、たまには仕事を離れて、ピュアにアルゴリズムだけに集中できるこんな勉強時間があると、スキルアップにもモチベーションアップにも良さそうです。
今後もまた、エンジニアさんたちのアウトプットへの取り組みをリポートしていきたいと思います。
この勉強会のコードの一部を、エンジニアがブログ「ランチ会でFizzBuzz大会をやってみました」にまとめてくれました。ご興味ある方は読んでみてください。
参考:今回のルール
[レギュレーション]
実行すると以下の挙動を行うプログラムを書いてください。
言語は何でも良いです。
自分の端末で動かして、結果を出力できればOKです。
! 基本問題
* 1~100の数字を、標準出力に1行ずつ出力する。ただし、以下の例外がある。
* 例外1) 出力する数字が3の倍数の時、代わりに Fizz という文字列を出力する。
* 例外2) 出力する数字が5の倍数の時、代わりに Buzz という文字列を出力する。
* 例外3) 例外1 と 例外2 の条件にともに当てはまる時、
代わりに FizzBuzz という文字列を出力する。
! 応用問題
* 1~100の数字を、標準出力に1行ずつ出力する。ただし、以下の例外がある。
* 例外1) 出力する数字が3の倍数、または数字が3を含む時、
代わりに Fizz という文字列を出力する。
* 例外2) 出力する数字が5の倍数、または数字が5を含む時、
代わりに Buzz という文字列を出力する。
* 例外3) 例外1 と 例外2 の条件にともに当てはまる時、
代わりに FizzBuzz という文字列を出力する。