Ruby で Google カレンダー

更新日時:

過去「計算数学実習資料集」に私が書いたものを体裁を整えて転載します。

この記事は?

2016 年度 計算数学 II の 4 班は Ruby 入門というテーマで学習をしている。最終目標として「Google カレンダーの操作」を設定した。その関連情報を掲載する。

この資料は、2016 年度 計算数学 II 用の資料です。何かの参考になるかもしれないので実習資料集に置いておきます。受講生向けに書きます。その他の人向けにリライト等はしていません。

Google カレンダー 特有の資料

基本的には、「Ruby Google カレンダー」などと検索するとたくさん出てくる。例えば次のものが出てきた。

「繰り返しの予定」の取扱は難易度がやや上がる。もしチャレンジしたいなら、以下を参照。

サンプルプログラム

Google 公式ドキュメント

わからないことがあったら

基本的には Google 検索をする。「Ruby (わからないこと)」で検索をする。例えば「配列で途中の要素を削除するためには?」という問いを解決したいならば「Ruby Array 削除」と検索して、上から見てみる。

  • バージョンに注意する。Ruby 1.8 未満のドキュメントは現行の最新版(2.3.0)と異なることも多い。
  • 書かれた日付が古いものは、現在と異なっている可能性に注意する。基本的には 1 年未満前に書かれたものを読むのが安全な気がする。

サンプルプログラムを探して読む。サンプルプログラムを書いた筆者が「わからない」などと書かれているところは、別のサンプルを読むか、公式ドキュメントを読む。幸いなことに、Google は公式ドキュメントを整備している。

自分で解決できない場合は TA に質問する。ソースコードや入力を添えて、Slack で質問する。

基本方針

基本的にはヒントとなる文章にリンクを張るだけにします。何がやりたいのかも基本的には自分で考察していただければと思います。わからないことがあったら Slack の該当チャンネルで、ソースコードを添えて聞いてくだされば、可能なかぎりお答えします。

コツを述べます。例えば「Ruby プログラムを処理系で実行すると、指定した Google カレンダーに予定が追加される」といった程度のことができるようになるだけでも、「Ruby 入門」というテーマでは十分な進歩です。そういう簡単なことができるようになると、難しいことはそれを土台にしてできるようになります(例えば配列と繰り返しを組み合わせて、少しずつ違った予定を設定することもできます)。逆に言えば、簡単なことができるようになるまでに、意外と沢山のハードルを乗り越える必要があるかもしれません。

スケジュールを見つつ、時間に余裕を持って、取り組んでいただければと思います。これは、控えているであろう「沢山のハードルを乗り越える」ためでもありますが、次のような意図もあります。

  • 自分のしたいことを考察するための時間を計算に入れておく。
  • サポートを余裕を持って受けられるようにする。

早いうちにヘルプを TA に求めてくだされば応対に時間的な余裕がありますが、時間制限がキツイと周りの人が手伝いたくても手伝えないかもしれません。

プログラム完成後の最終発表の準備の時間も残しておく。ともかく「締め切り直前にまとめて頑張れば大丈夫」とは発想してはなりません。