できる！アプリケーションコンテストの審査員

こんにちは、はじめまして、[折原ダビデ竜\[1\]](#折原ダビデ竜)です。

2021年の今年1年を振り返り、1番「これやったなー」という仕事は、受講者が自分のプログラムで作成した**アプリの審査員**であろう。
Qiitaにはこのような記事がまだ無いため、今回はこのことについて書く。ポイントを掴むことができれば、他のエンジニアの方にもできるため、私が実際に社内で共有しているポイントを解説する。
*注意してほしいのは、コンテストに応募する内容ではなく、応募作品を見てコメントをする方の内容である。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212903/47088dad-255a-a713-259d-ec1d14232401.gif" width=320 style="width: 200px";><img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212903/a1950087-b70d-a3ae-7cfa-1d71872171a0.png"  width=320>
`写真：コンテストの発表会にてコメントしている様子`


# アプリケーションコンテストの審査員としての経歴

[N予備校のプログラミングコース\[2\]](#n予備校のプログラミングコース)では、プログラミングの学習をした後、自分のアプリケーションを制作し、ポートフォリオサイトを立ち上げ、それを共に面接に臨むことで、[就職\[3\]](#就職実績)やインターンシップ、アルバイトなどの採用に役立てるよう教えている。
アプリケーションの制作を促すため、N予備校では年に２回、夏と冬に[アプリケーションコンテスト\[4\]](#アプリケーションコンテスト)を行なっている。
私は、このコンテストの[審査員\[5\]](#コンテストの審査員)で、制作物を提出した受講者にフィードバックコメントを返すことを、発足から今に至るまで担っているのが元々である。
それから、N高のプログラミングクラス、N/S高とN中等部でプログラミングを学んでいる生徒のLT発表に参加し、コメントやアドバイスなどをしている。
特に今年は、これらに加え、他の企業の新卒研修やリーダー研修として[プログラミングの研修\[6\]](#プログラミングの研修)を引き受けるようになり、そこでも、学んだプログラミングを活かして、問題解決や業務効率化のための便利ツールなどを制作するように教えており、制作物の発表会でコメントしたり、フィードバックレポートを作成している。
さらに加えて、Maker Faire Tokyo 2021 にて開催された「[楽しいmicrobitコンテスト\[7\]](#楽しいmicrobitコンテスト)」の審査員に加えさせていただき、作品にコメントをさせていただいている。

私は、今年だけで数えても**100**を超える作品数を見てコメントをしたり、フィードバックを返してきた。私が制作物である作品を見て、どこに着目し、どのようにコメントやフィードバックを返しているかについても書く。


# 審査員のコメントとフィードバック

審査員は、制作物や発表を見てコメントをする事と、フィードバックを書いて送る事がある。
それぞれについて記載する。

## 発表を見てコメントする時

### 発表会
制作物の発表会は、応募者による、自分の作成したアプリケーションの必要性や、作るに至った経緯の話しから、作ったアプリケーションを画面共有などでデモンストレーションを行ってもらうようにしている。制作したアプリケーションが実際に動作をしてる所を見せるのが最も重要である。最後に制作に苦労した点や、課題についても話してもらう事で、何を必要としているかをアドバイスしやすくなる。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212903/18671f68-2c46-049c-6f80-291fbcf21a11.png" border="1">
`写真：成果物発表会について案内している様子`

### コメント
発表を聞き終わったらコメントをする。
基本的には**褒(ほ)める！**褒めまくっても足りないくらい褒めの姿勢である。
受講者の持つ課題意識や、何かを作りたいという欲求を、プログラムを書いてアプリを制作することで解決を図っているなんて、とんでもなく素晴らしい事ではないか。
こうして制作物を作り発表をしている、賞賛に値する。中には途中で諦めてしまい、発表会に参加しない人もいるくらいだ。
散々褒めちぎったあとは、アイデアを膨らませるようなコメントをする。あなたの作ったアプリケーションのさらなる使い方や、活躍の場がもっとあると。そして公開していろんな人に使ってもらえる機会に恵まれたなら、どれだけ多くの人を助けることができるだろうかとコメントする。
最後に、発表者からアプリの課題を聞いたり、デモを見て課題を見つけたならそれのアドバイスを行う。アドバイスをする時は少し注意が必要である。受講者にとって解決が困難なアドバイスをしてしまうと心が折れて、プログラミングを辞めてしまう切っ掛けになるここともあるからだ。発表者が自分で解決できるだろう方法でアドバイスをすることが重要である。
また、発表されたアプリがより良くなるためのアドバイスがをする事が重要であり、それ自体を否定してしまうようなコメントも控えるべきである。例えば、[似たアプリでもっと良いものを知っている、などは良いアドバイスとは言えない\[8\]](#似たアプリでもっと良いものを知っているなどは良いアドバイスとは言えない)。

また、実力もあり将来エンジニアを目指せるような生徒の場合は、きっとやり遂げてくれると信じて、人壁超えるような挑戦になる課題を伝える事もある。例えば、「WebSocketを使うとリアルタイムで通信ができるようになる」など。


### 質疑応答
発表会によっては、しばし、質問を受け付ける機会がある物もある。その場合は、応募者の製作物の良さを引き出せるような質問を心がける。発表の時にはそれほど触れられていなかったが、実はすごい技術や、大変ユニークな機能があると気づいたなら、もっと見せてもらうよう伝えると良い。作品がさらに引き立つ。


## 作品にフィードバックレポートを返すとき
コンテストによっては、後日、審査員からフィードバックレポートを送る事もある。
審査員は、応募作品とそのソースコードを見て、フィードバックを書く。
この時も、褒めに褒めるという基本的な姿勢は変わらない。

まずは、社内で内製しているフィードバックレポート作成ツールの記入画面を見てほしい。
評価を記入する箇所に細かい説明が書き込んである。これを解説する。
![スクリーンショット 2021-12-12 17.10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212903/2cf0ddc8-12ad-2454-51eb-cda02d1aaf41.png)


フィードバックとして記述する時に意識しているポイントは、一:受講者を褒める、二:作品の機能を褒める、三:デザインを褒める、四:コードを褒める、五:今後も続けるよう勇気付ける、の5点である。各ポイントについて下記に書き出す。

### 一、受講者を褒める
まずは受講者自体を褒める。アプリケーションを制作してきた人を褒めよう。また、受講者について気づきがあれば記載する。
★コメント例★
- いつも一生懸命、授業に参加されていました。
- いつも熱心に作品作りに取り組まれていました。
- 分からない事は自分で調べて解決できていました。
- 分からない時は積極的に質問して理解に努められていました。
- 他の受講者と協力しながら作品作りを進めておられました。

### 二、作品の機能を褒める
応募者が考えてたオリジナルのアイデアや、身の回りの問題解決のために作成した機能を褒める。
★コメント例★
- 複雑な計算を人に変わって行ってくれる機能の作成、お見事です。
- ビジネスメールの自動作成をしてくれる機能の作成、お見事です。
- ドル円の為替レートをリアルタイムで取得し、商品の価格を計算する機能の作成、お見事です。
- 絶対に許してもらえそうな謝罪文章をお勧めしてくれる機能の作成、お見事です。
- 神経衰弱を元にした独創的なゲームの作成、お見事です。
- 難しいカレーのレシピを知ることができて、活用させていただきました！

### 三、デザインを褒める
アプリケーションには必ず、見た目部分の UI が存在する。レイアウトが工夫されていたら、使いやすいデザインだと褒める。色鮮やかであったら、美しいと褒める。シンプルであったら、使い方が分かりやすいと褒める。
★コメント例★
- どんな機能があるかすぐに分かり、ボタンの配置やデザインの工夫が施されており使いやすいです。
- カラフルなブロックが綺麗に並べられているデザインもとても美しいです。
- 色鮮やかなWebページで、要素が中央に綺麗に並べられ、シンプルで分かりやすく使いやすいです。
- 動きが面白く、何度も遊びたくなりました。
- 画像や背景など、とても凝って作っていますね。使う人にとってとても優しいデザインですね。

### 四、コードを褒める
作品と共にソースコードの提出がある場合は、読んでコメントをする。機能の根幹となる箇所や、こだわりのある箇所を見つけたら具体的に褒める。
★コメント例★
- プログラムは、少し複雑な変換の計算式が実装してあり、大変お見事です。
- 繰り返しの forEach文 も上手く使えておりました。
- 商品の価格一覧の取得及び、計算も for文 を上手く使って実現できておりました。
- APIを使うという難しい課題に挑戦されていましたが完成までこぎつけて素晴らしいです。
- プルダウンボックスの文書の変更、それから一括置き換えによる文章作成のプログラムの実装お見事です。

### 五、今後も続けるよう勇気付ける
私がフィードバックの最後に必ず書き加えるのが、私自身、応募作品の１ファンとして今後の活躍も楽しみにしているということである。今後もプログラミングと開発を続けてもらい、アプリ開発の次のフェーズや、次の作品に繋げて欲しいと考える。
★コメント例★
- 今後もプログラミングの学習を続け、便利なWebページを制作していっていただければと思います。
- プログラミングの便利さを実感していただけたかと思います。引き続き素敵なWebページを作っていっていただければと思います。
- 他のアプリを作る際にも応用できるスキルだと思いますので、ぜひ活かしていただければと思います。
- 是非、今後もプログラミングを業務に生かしつつ、プライベートでも趣味として楽しんでいただければと思います。
- ぜひ学校/会社で使って、友達/同僚の方に自慢してみてくださいね。

### フィードバックレポートのサンプル
内製しているフィードバックレポート作成ツールでは、評価を記入すると自動的にフィードバックレポートが出来上がる。
以下の写真は、我々のプログラミング教育について説明する時に使用しているフィードバックレポートのサンプルである。
![フィードバックレポート_研修太郎様.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212903/05f3f88d-f567-0bd4-f44c-95846e8493ab.png)



# 作品を採点し、評価するとき
コンテストによっては採点をする事もある。
「最優秀賞」などの各賞を割り当て、賞品が送られたり、クラスや部署に振り分けるための「プログラミング適正」を評価してほしい、などの依頼が来る事もある。
得点の付け方は、何年も審査員を積み重ね、ようやく自分の評価基準を言語化できたので、これを書き出し、社内では他のエンジニアの方にも評価を付けてもらうようお願いすることあり、評価基準を参考にできるように共有している。
これを紹介しよう。
まず、作品の評価は100点満点であり、評価項目は「コーディング力」40点満点、「完成度」30点満点、「アイデア」30点満点、を合計した得点である。それぞれ5点刻みで評価のポイントを記載している。

## コーディング力（40点満点）
5点刻みで評価のポイントを記載している。
得点が低くてもあまり悪い気持ちにならないよう、ランクは最低でも D が付くようにしている。
D:5点、C:10点、C+:15点、B:20点、B+:25点、A:30点、A+:35点、S:40点
- D :プログラムを書いていない
- C :プログラムを少し書けたが教材未満のレベル
- C+:教材と同じか少しいじった程度
- B :程度は低いが自分でプログラムを書けている
- B+:自分でプログラムを書けている
- A :作りたい機能を実現できる力がある
- A+:教材にない知識や技術も自分で調べて使用している
- S :もはやプロ/圧倒的力作

## 完成度（30点満点）
5点刻みで評価のポイントを記載している。
得点が低くてもあまり悪い気持ちにならないよう、ランクは最低でも C が付くようにしている。
C:5点、B:10点、B+:15点、A:20点、A+:25点、S:30点
- C :未完成
- B :使用できない
- B+:教材と同じか少しいじった程度
- A :使える
- A+:使いやすい
- S :製品として売り出せる

## アイデア（30点満点）
5点刻みで評価のポイントを記載している。
得点が低くてもあまり悪い気持ちにならないよう、ランクは最低でも C が付くようにしている。
C:5点、B:10点、B+:15点、A:20点、A+:25点、S:30点
- C :意味不明
- B :面白くはない/ネガティブ
- B+:教材と同じか少しいじった程度
- A :オリジナルであり良いアイデア
- A+:非常に役に立つ/魅力的
- S :製品化したら大人気爆売れ間違いなし！

<hr>

これらの評価基準に従うと、最高得点の100点とは、「才能に恵まれた方の力作で、製品として売り出せるくらいに完成しており、大人気爆売れ間違いなし」という事になり、最低点の15点とは、「プログラムは1行も書いておらず、未完成であり、企画自体も意味不明」という事になる。
これらを元に、審査員が複数名いる場合は平均点を作品の評価点にしている。

# 最後に
作品数が多い場合に、全てを自分一人で採点したり、フィードバックコメントを返すのは大変であるため、今回紹介したような評価項目や着目点を書き出し、共有することで、他のエンジニアの方にも評価を手伝ってもらったり、時には代わりにやってもらったりと業務を回している。
読んでくださった皆様の参考になれば幸いである。
そして、プログラミング学習者の更なるやる気を引き出してもらいたいと考える。

# 脚注
## 折原ダビデ竜
ドワンゴにて、プログラミング講師、N中等部の共同スクールプレジデントである。
仕事は、教材制作、講義、生徒の制作物へのアドバイス、ときにはデータ集計や、N/S高やN中等部などに一言メッセージを送ったりなど、多岐に及ぶ。
[Twitterアカウント @D_drAAgon](https://twitter.com/D_drAAgon)
![スクリーンショット 2021-12-12 17.16.57.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212903/927bc653-0c8b-cab2-5145-07c107c8d899.png)

## N予備校のプログラミングコース
月額1100円のオンライン学習プラットフォームのことである。[過去の自分の記事](https://note.com/d_draagon/n/nea7c8918993c)を参考にしてください。
N予備校のプログラミングコースのURL: https://www.nnn.ed.nico/pages/programming

## 就職実績
N予備校のプログラミングコースでは、毎年、非常に素晴らしい就職実績を出している。詳しくは各年度の実績ページを参考にしてください。

- [2021年度 主な内定実績](https://www.nnn.ed.nico/pages/programming/interview/)
- [2020年度 主な内定実績](https://www.nnn.ed.nico/pages/programming/interview/2020/index.html)
- [2019年度 主な内定実績](https://www.nnn.ed.nico/pages/programming/interview/2019/index.html)

## アプリケーションコンテスト
N予備校のプログラミングコースでは、毎年２回、夏と冬にコンテストを開催している。応募作品は下記のページで確認できる。

- [N予備校動くWebページコンテスト2021年度夏](https://progedu.github.io/webappcontest/2021/summer/result/index.html)
- [N予備校Webアプリケーションコンテスト2021年度冬](https://progedu.github.io/webappcontest/2020/winter/result/index.html)
- [N予備校動くWebページコンテスト2020年度夏](https://progedu.github.io/webappcontest/2020/summer/result/index.html)
- [N予備校Webアプリケーションコンテスト2019年度冬](https://progedu.github.io/webappcontest2019w-results/)
- [N予備校動くWebページコンテスト2019年度夏](https://progedu.github.io/web-contests/move-webcontest2019-summer/results/)
- [N予備校Webアプリケーションコンテスト2018年度冬](https://progedu.github.io/web-contests/webcontest2018-winter/results/)
- [N予備校動くWebページコンテスト2018年度夏](https://progedu.github.io/web-contests/move-webcontest2018-summer/results/)
- [N予備校Webアプリケーションコンテスト2017年度冬](https://progedu.github.io/web-contests/webcontest2017-winter/results/)
- [N予備校動くWebページコンテスト2017年度夏](https://progedu.github.io/web-contests/move-webcontest2017-summer/results/)

## コンテストの審査員
N予備校のコンテストの審査員は、コンテストページの下部で紹介されている。私も審査員を行なっている。
![スクリーンショット 2021-12-13 15.28.40.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212903/66674b7f-ca3d-f2e6-6040-c8a059dc51a0.png)

## プログラミングの研修
企業向けの、新卒研修やリーダー研修のような、社会人向けのプログラミング研修もやっている。
詳細は下記のURLを参照。
https://www.persol-pt.co.jp/ncode_training/

## 楽しいmicrobitコンテスト
Maker Faire Tokyo 2021 にて開催された「楽しいmicrobitコンテスト」のページでは、自分が参加している様子や、自分の実際のコメントを見ることができる。 https://makezine.jp/blog/2021/10/microbitcontest2021_mft.html


## 似たアプリでもっと良いものを知っているなどは良いアドバイスとは言えない
タイマーアプリを作った応募者に対して「スマートフォンに標準で搭載されている機能だ」と言うだけでは、良いアドバイスは言えない、その場合は、応募作品がさらにどのような機能を伴えば独創的になるかをアドバイスするのが良いだろう。例えば、時間管理をしつつ、毎分「いつも頑張っててえらい！」など癒しの発言をしてくれる機能など。