roy > naoya > 基礎プログラミングII[月2] > (11)自由課題実施期間[1]&trr

(11) 12/22の授業内容:自由課題実施期間[1]&trr

trr

授業開始直後より20分間trrの試験を行う。150点で1点。以降25点ごとに1点加点で、最大5点まで。つまり250点以上は何点でも5点となる。

出席、レポート、trrの合計得点により試験免除者を決定する。発表は1月に入ってからであり、出席は免除者発表の直前までの状況を全て加味する。未提出のレポートがある場合は早めに提出すること。また、採点結果が戻ってきていない課題がある場合は今年中に申し出ること。

20分経過後、念のためこの間にマークした最高得点をメールで報告してください。

  • 提出先:課題提出用メールアドレス
  • メールのSubject:trr
  • 本文の構成:1行目で学籍番号、氏名を記載する。2行目に得点を記載する。

自由製作課題について

これまでは一人で限られた時間の中でプログラムを作成してきたため、規模の大きなものを作成することが難しかった。1年間続いたRubyの授業もそろそろ終わりを迎えようとしている。そこで、これまで学んだ技術を駆使して、グループで長めのプログラムを作ってみよう。

作成条件は以下の通りとする。

  1. プログラムを作成し、Webページに掲載する。
  2. 発表会では、Webもしくはプレゼンテーションソフトを用いてプログラムの概要を説明し、デモも実施する。
  3. 発表時間は10分とする(グループ数が確定した段階で正式に定める)。

参考までに過去の自由製作課題の例を示す。

2007年度(後期)自由製作課題

2006年度(後期)自由製作課題

2005年度(後期)自由製作課題

今後の予定

本日の後半より自由製作課題を実施する。5〜6人のグループで規模の大きなプログラムを作成する。以降の予定は以下の通りである。1月の授業は19日からであるが、すでに発表1週間前であるため、本日中に作業分担を行い、各自で作業を進めておくとよい。

  • 12月22日
    • 楽しいプログラムを作るためのテクニック
    • 自由課題グループ分け
    • グループ名の決定
    • 役割分担の決定
    • 作成するプログラムの検討
  • 1月19日
    • プログラムの作成
    • Webページの作成
  • 1月24日(土)
    • プログラムの完成
    • Webページの完成
    • 発表方法の検討
    • 発表練習
  • 1月26日
    • 自由課題発表会

本日の作業内容

役割分担を決める。その上で何をいつまでにやるのかを相談する。役割としては例えば以下がある。準備期間中、当日それぞれについて役割を決定し、何もすることがない人が出ないようにしよう。

準備期間の役割(例)

  • プログラム作成
  • Webページ作成
  • 画像作成(Webページやプログラムで使用)
  • プレゼンテーションファイル作成
  • 発表シナリオ作成(時間配分や発表の流れ)

当日の役割(例)

  • 発表役
  • タイムキーパー
  • コンピュータ操作役

「応援」や「遊軍」、「パシリ」などの実質的に仕事のない役割は定めず、各人が何かしらグループ活動に貢献できるように分担を考えること。

役割分担が決まったら、作成するプログラムやWebページのイメージ、作成する画像などについて相談し、早速作成に取り掛かること。

作成するプログラムについて

技術的な側面

1年間Rubyを学んできた結果の集大成のプログラムである。単に楽しい/役に立つだけではなく、技術的にもレベルの高いものを目指そう。if文を使ったシナリオ分岐型のプログラムは、ストーリーとしては面白いかもしれないが、それほど難しい技術を使っているわけではない。open-endやハッシュ、CGIなどを使うことを考えてみよう。

使いやすさ

インターネット上では数多くのプログラムが公開されているが、全てが広く利用されるわけではない。利用の可否を決める上では機能だけでなく「使いやすさ」も重要となる。いくら機能的に優れていても使い方がわかりづらいものは使われない傾向がある。

Webページや、プログラム内で表示させるメッセージを工夫し、初めて使う人でも使い方がわかるように作ること。

また、複数の人で分担をしてプログラムを作成する場合、プログラム内に#を使ってコメントを残しておくと、わかりやすくなる。

作成するWebページについて

いくら素晴らしいプログラムが出来上がったとしても、Webページが訪問者の目を引くように作られていなければ、読んでみようという気持ちすら起こらない。デザイン、内容いずれも工夫しよう。

デザイン

背景と文字のコントラストを考えよう。背景に画像を使った場合は、背景色の変化が大きくなるため、それにあう文字色を決めるのが難しい。背景は淡色にするか、出来る限り淡い色の画像を使用すると良い。

適切な色の組み合わせ。白背景に黒文字が最も読みやすい

内容

以下の項目をもれなく記載しよう。

発表シナリオについて

メンバーの紹介、プログラムの概要、プログラムのデモ、プログラムの売りなどについて発表すれば良いが、内容や順番、時間配分については自由とする。

出席課題

問題1(2点満点):グループのメンバー、チーム名、役割分担、作成するプログラムの案について報告する。グループの他のメンバーにお任せにしていないことを確認するため、グループの代表者のみではなく、全員が提出する。

問題2:これまでの累積得点があまり高くないと感じる人は、問題1に加えて、tgifでとっても素敵な絵を描いてpng形式で保存して添付ファイルで送る。提出点として別途3点を追加する。出来栄えにより芸術点をさらに加算することがある。

提出要領は下記の通り。

  • 提出先:課題提出用メールアドレス
  • メールのSubject(問題1):attend11
  • メールのSubject(問題2):課題8
  • 提出期限(問題1):授業終了時まで
  • 提出期限(問題2):1月18日(日)23:00まで

Tips:emacsでの日本語入力のオンオフはCtrl-oです

Tips:Mewによるメールの送り方はMewコマンドを参照