give IT a try

プログラミング、リモートワーク、田舎暮らし、音楽、etc.

小学校の卒業式でPTA会長として祝辞を述べてきた

はじめに:PTA会長、祝辞に悩むの巻

昨日は息子の卒業式でした。
僕は今年PTA会長をやっているので、保護者としてではなく、来賓として出席しました。

こういうイベントでやってくるのが、「PTA会長の祝辞」です。
学校側はサンプルとして過去の祝辞をいくつか渡してくれたものの、自分で祝辞を考えるのはなかなか大変でした。

まず、「どこかで聞いたことのあるような平凡な祝辞」はしゃべりたくない。
あと、きれいな言葉が並んでるんだけど、抽象的で具体性のない祝辞もイヤ(「君たちには無限の未来が広がっています」「どんな困難も諦めずに乗り越えていってください」「いつも夢と希望を持って~」みたいなやつです)。

子どもの立場に立ってみると、祝辞って大半が「退屈なおっさんの話」なんですよね。
僕自身、まったく記憶や印象に残っていません。
なので、「ちょっと変わってて」「具体的で」「多少なりとも印象に残るような」祝辞を話したいなーと思いました。

偉そうな祝辞もボツ、苦しむこと数時間、そして・・・

最初は「将来役に立つ人生のテクニック」みたいなことを話そうかなと思いました。
で、最初のひとことふたことを書き始めたのですが・・・あかん!すごく上から目線で偉そうになってしまう!!
子どもたちにしてみたら「おっさんの偉そうな話」もイヤですよねえ💧

というわけで、その案もボツになり、「あ~もう、何を書こうかな~???」と頭を抱えていました。
何か参考になる情報はないかと、経験者のブログ記事やYouTubeにアップされている「PTA会長の祝辞動画」を見たりするのですが、なかなか「おお、これは!」と思うような事例が見つかりません。

うーん、うーんと唸りながら、かれこれ数時間が経過した頃、とあるYouTubeの動画でこんなセリフがちらっと聞こえました。

「~のみなさん、ありがとうございました。子どもたちもありがとう。そして、お世話になった~」

そのセリフを聞いて「ん、子どもたちにもありがとう?あ、この視点はなかなか面白いかも!」と思い、一気に原稿を書き上げました。

というわけで、今回僕がしゃべったのはこんな祝辞です。

お祝いの言葉

本日の卒業式にあたり、保護者を代表いたしまして、一言お祝いの言葉を申し上げます。卒業生のみなさん、ご卒業おめでとうございます。また、保護者のみなさまも、本日はお子様のご卒業おめでとうございます。

ご来賓のみなさま、本日はお忙しい中、ご臨席たまわりましてどうもありがとうございます。保護者を代表して心よりお礼申し上げます。

そして、校長先生をはじめ、諸先生方には子どもたちを優しく、時には厳しくご指導いただき、本当にありがとうございました。先生方のおかげで、こうして本日無事に卒業式を迎えることができました。心より感謝いたしております。

さて、今日は感謝というテーマで少し話をさせてください。

卒業生のみなさん。みなさんは周りの大人から、「今まで育ててくれたお父さんやお母さんに感謝しなさい」「指導してくださっている先生方に感謝しなさい」と言われたりしていませんか?もちろん、保護者の方や先生方に感謝をすることはとても大事なことです。しっかり感謝の気持ちを伝えてください。

ただ、その一方で、これは僕個人の意見なのですが、「親だから偉いんじゃない、大人だから偉いんじゃない、どっちが偉いとかじゃなく、大人も子どもも対等な人間だ」そんなふうに僕は考えています。また、大人は子どもに対してああしろ、こうしろ、と口で言うだけでなく、子どものお手本として、自分がやっている姿を子どもに見せて教えることも大事だと考えています。

そう考えたとき、僕はふと思いました。感謝するのは子どもだけなのでしょうか。我々保護者も子どもたちに対して、「生まれてきてくれてありがとう」「ここまで元気に育ってくれてありがとう」と、感謝の気持ちを伝える必要があるのではないでしょうか。

なので今日は僕から、保護者を代表して、卒業生のみなさんに言わせてください。

「ここまで元気に育ってくれてありがとう。僕たち大人はきみたちが成長していく姿を見るのが大好きです。これからも僕たち大人をワクワクさせてください。きみたちが将来、立派な大人になって活躍してくれることを、心から期待しています。」

そして、今日は保護者のみなさんもぜひ、ご自身の口から、お子さんたちに感謝の気持ちを伝えてあげてください。ありがとうの言葉だけでなく、お子さんの大好きなところや、偉いところもぜひほめてあげてください。僕もこのあと帰ったら、がんばって息子に伝えます。

というわけで、今日は感謝というテーマでお話をさせてもらいました。僕からの話は以上です。卒業生のみなさん、保護者のみなさん、本日はご卒業おめでとうございます!

平成30年 3月22日
〇〇小学校PTA会長 伊藤淳一

祝辞の反応

当日は他の来賓の方も何名か祝辞を述べる中、僕の祝辞だけ明らかに浮いていたので「ヤバい、完全に空気読んでない感じ?」と思いましたが(いや、あえてその路線を選んだのは僕自身なんですけど)、意外と子どもにも保護者にも好評だったようです。

子どもたちはニコニコしながら聞いてくれているのがよくわかりましたし、息子いわく「お父さんの話が一番良かったって友達が言ってた」とのことです。

保護者の方からも「この祝辞を聞くまで涙が出るようなシーンはなかったけど、これを聞いたら涙が出てきた」という話を何人かから聞きました(妻経由で)。

伝わる人にはちゃんと伝わったようで、ひとまずほっとしました😄

この祝辞の裏テーマ

ところで、この祝辞には実はちょっとした隠れたテーマがあります。
それは「すべての子どもが親に感謝をしているとは限らない」「すべての子どもが親から感謝されるとは限らない」という僕の推測です。

今回の卒業式では125名の児童が卒業したのですが、百数十も家庭があれば、親子関係が良好とは言えないご家庭もたぶんいくつかあると思います。
また、最近児童虐待を扱ったこんな本が話題になっていたので、その気持ちがより強くなっています。

日本一醜い親への手紙 そんな親なら捨てちゃえば?

日本一醜い親への手紙 そんな親なら捨てちゃえば?

もし親子関係が良好でなかったら、そんな状況下で子どもから親へ「一方的に」感謝の気持ちを述べさせるのはかなり酷だと思います。
また、祝辞の中では「保護者の方からもお子さんに感謝の気持ちを伝えてください」と述べましたが、親子関係が良好でなかったら、親から子どもへ感謝の言葉が出てくる可能性もかなり低いんじゃないでしょうか。

ご家庭によってはそんなケースがあるかもしれないので、今回は「子どもだけが大人に感謝するのは変だよね」「もしかしたら、あなたのお父さんやお母さんはありがとうって言ってくれないかもしれないけど、僕は保護者の代表としてあなたにありがとうって言うよ」と思いながら、祝辞の内容を考えました。

たかが祝辞ひとつで考えすぎかもしれませんが、そんなメッセージも多少含まれたりしています。

まとめ

というわけで、このエントリでは僕がPTA会長として述べた祝辞を紹介してみました。
みなさんも、もしPTA会長になる機会があれば(あまりないと思うけどw)、このエントリを参考にしてみてください。

何はともあれ、息子は大きな怪我や病気をすることもなく6年間無事に通学してくれたので良かったです。
勉強や友達関係は今のところ順調っぽいので、中学校もこの調子でがんばってほしいです。
息子よ、卒業おめでとう!

f:id:JunichiIto:20180323062900j:plain
卒業式が終わって友達のランドセルに寄せ書きをする息子

おまけ:家に帰ってからの話

祝辞の中で「僕も帰ったら息子に感謝の気持ちを伝えます」と言ったのを息子がしっかり覚えていて(そりゃそうだ)、息子から「さあ、感謝の気持ちを伝えてもらおうか!」と詰め寄られました(苦笑)。
いやあ、実際に息子本人を目の前にして「何か感謝の言葉を伝えろ」と言われると、結構しどろもどろになっちゃいますね~💦

あわせて読みたい

地元の中学生の前で講演したこともあります。
これも内容を考えるのにすごく苦労しましたが、結果的にはとても好評でした😄

「プロを目指す人のためのRuby入門」を1円でも安く手に入れる方法を考える💰

僕が執筆したRubyの入門書、「プロを目指す人のためのRuby入門」の定価は3278円(2980円+税)です。

f:id:JunichiIto:20180313054500j:plain

技術書としては少し高めかもしれませんが、僕は筆者として、価格に見合うだけの、いや、価格以上の価値がある本だと自負しております。

とはいえ、人間の心理として、同じものを安く手に入れられるなら1円でも安く手に入れたいですよね(もちろん僕もそうです)。
そこで、このエントリでは「プロを目指す人のためのRuby入門」をちょっとでも安く手に入れる方法をいくつか紹介してみます。

方法1:技術評論社のサイトで電子版を購入する

「プロを目指す人のためのRuby入門」の電子版は、Amazonで販売しているKindle版のほか、EPUB版とPDF版があります。
EPUB版とPDF版は技術評論社のサイトでも売っているのですが、実は販売価格が2980円になっており、定価より298円安くなっています。

f:id:JunichiIto:20180313043829p:plain

しかも、技術評論社のサイトで購入すると、EPUB版とPDF版が両方セットで手に入ります。
この電子版はDRMフリーなので、PCやスマホなど、自分の好きなデバイスに入れて読むことが可能です。

f:id:JunichiIto:20180313044105j:plain
EPUB版をiPadのiBooksで開いた場合

紙の本やKindleで読むことに強いこだわりがない、という場合は技術評論社のサイトで購入するのがお得です。


方法2:地元や大学・高専の図書館で借りる

もしかするとお近くの図書館に「プロを目指す人のためのRuby入門」が置いてあるかもしれません。
図書館なのでずっと手元に置いておくことはできませんが、借りて読むことは可能です。
お近くの図書館の蔵書検索やカーリルで「プロを目指す人のためのRuby入門」を検索してみてください。

f:id:JunichiIto:20180313044827p:plain
カーリルを利用して兵庫県の図書館を検索した場合

また、大学や高専の図書館にもあるかもしれないので、学生の方は学校の図書館を検索してみるのもいいと思います。
以下のページには「プロを目指す人のためのRuby入門」が置いてある大学・高専の図書館の一覧が載っています。

CiNii 図書 - プロを目指す人のためのRuby入門 : 言語仕様からテスト駆動開発・デバッグ技法まで
f:id:JunichiIto:20180313045341p:plain

方法3:会社や学校で一括購入する

会社や学校の教材としてまとめて購入したいという場合は、技術評論社のサイトから一括購入することができます。
一括購入するといくらか割引してもらえるそうです。

f:id:JunichiIto:20180313050414j:plain
一括購入の例:プログラミングスクール・DIVE INTO CODE様(すごい量!!)

一括購入として扱われる冊数は5冊以上と聞いています。
もし、社内で「プロを目指す人のためのRuby入門」という同僚が5人以上いたら、会社経由で一括購入してもらうといいかもしれません。

一括購入のお問い合わせは技術評論社の商品ページからどうぞ。

f:id:JunichiIto:20180313050049p:plain

方法4:古本を探す

本を安く読みたい場合は古本を探す、という人も多いと思います。
ただし、古本の場合は欲しいと思っても、常に在庫があるとは限らないのが難点です。
たとえば、Amazonのサイトを見に行くと、この記事を書いている時点では定価より安い古本(中古品)の在庫はありません。(というか、定価より高い古本って何・・・??)

f:id:JunichiIto:20180313051003p:plain

ちなみに、古本として売るのも買うのも自由なのですが、著者としては「ああ、誰か僕の本を手放した人がいるのか・・・😢」という寂しい気持ちが全くないわけではありません。
いや、僕もたまに古本を買うことはあるので古本を否定するわけではないのですが、自分が著者になると少し複雑な気持ちになりますね(苦笑)。

❌やってはいけない:電子版をコピーして回し読みする

いくら安く読みたいと言っても、電子版をコピーして回し読みしてはいけません。
利用規約を守ってご利用ください。

Q:電子書籍の回し読み,貸し借りはできますか?


A:電子書籍はその性質上,他の人と共有したり,貸し出したりできません。目的によらずコピーして第三者に渡すことは不正利用となりますのでご注意ください。不正な利用が見つかった場合は必要な措置を執らせていただくことがあります。
 

電子書籍の回し読み,貸し借りはできますか? | Gihyo Digital Publishing … 技術評論社の電子書籍

まとめ

というわけで、このエントリでは「プロを目指す人のためのRuby入門」を1円でも安く手に入れる方法をあれこれ紹介してみました。
「プロを目指す人のためのRuby入門」をこれから購入しようと考えている方は、ここで紹介した方法を参考にしてみてください。
Rubyプログラミング用の教材として、企業やプログラミングスクールで一括購入していただくのも大歓迎です!

「プロを目指す人のためのRuby入門」について

「プロを目指す人のためのRuby入門」は「他の言語での開発経験があり、これからRubyを始めたい人」や「Rubyプログラミングの経験はある程度あるものの、まだまだ自信がない人」に向けて、Rubyの言語仕様や開発の現場で役立つ知識を詳しく、ていねいに解説した技術書です。

本書の内容や特徴については、以下のエントリをご覧ください。

【Everyday Rails Blog 翻訳】RSpec 3.7.2へのアップグレードとシステムスペック

はじめに

先日もお伝えしたとおり、電子書籍「Everyday Rails - RSpecによるRailsテスト入門」はRails 5.1とRSpec 3.6に対応しました。

ただし、RSpecについては現在すでにバージョン3.7がリリースされています。 RSpec 3.6と3.7は機能的な差異はほとんどないのですが、一点だけ、「システムスペック」という新しいタイプのテストが増えています。

このシステムスペックについて、原著者のAaronさんがご自身のブログで紹介されているので、その内容を翻訳してみました。 Everyday Railsの読者の方は(もちろんそれ以外の方も)ぜひ参考にしてみてください。

RSpec 3.7.2へのアップグレードとシステムスペック

原文: Upgrading to RSpec 3.7.2 and system specs | Everyday Rails

数ヶ月前(それはまさに、私がRails 5.1とRSpec 3.6に対応した「Everyday Rails - RSpecによるRailsテスト入門」の改訂版をリリースした数日後です)、RSpecチームは新たにバージョン3.7をリリースしました。本書の各章の内容はインクリメンタルに積み上げられていくことと、 rspec-rails gemは最初の方で本書のサンプルコードに導入されることから、本書の内容を無理に書き換えないことにしました。そのかわり、ここでは私が本書のサンプルアプリケーションをRSpec 3.7に対応したときの体験談をみなさんに共有します。この話の一番重要なポイントは、 Rails 5.1のシステムテスト(system test)がサポートされたということです。

システムテストが導入されたことにより、Railsフレームワークでは本書の第6章で説明したフィーチャスペックのように、ブラウザ上で実行するエンド・ツー・エンドのテストをデフォルトで書けるようになりました。このテストは システムテスト と呼ばれています。個人的な意見ですが、この種のテストはRailsのデフォルト機能として早く実装してほしいと、ずっと望まれていたように思います。私はRailsチームがシステムテストをシンプルに設定でき、なおかつシンプルに書けるように頑張ってくれたことに大変感謝しています(私のように、Railsアプリケーションのテストの書き方を教えている人にとっては、ちょっと仕事が増えてしまいますが!)。

ご存じかもしれませんが、RailsはデフォルトのテスティングフレームワークとしてMinitestを採用しています。しかし、RSpec 3.7を使えば、Rails 5.1のアプリケーションに対してシステムスペック(system spec)をテストスイートに追加できます 。RSpec 3.7は5.1より古いバージョンのRailsでも動きますが、その場合は統合テストとしてフィーチャスペックを使い続ける必要があります。もしかすると、みなさんはRails 5.1のシステムテストで提供されている機能のいくつかを使いたいと思うかもしれません。ですが、後述するような代替案も存在します。

アップグレード方法

私はこの手順の各ステップをそれぞれ独立したコミットにしています。よかったら、このコミットを見ながら進めてください。このアップグレードの準備を進めている際、私は jquery-railsrspec-rails が、お互いの依存関係からコンフリクトする問題に遭遇しました。そのため、このチュートリアルを執筆する目的で、私はRailsのパッチバージョンをアップグレードしています。

RSpecをアップグレードする前に既存のスペックを実行し、全てのスペックが期待どおりパスすることを確認してください。しばらくさわっていないプロジェクトの場合、この手順はとくに重要です。テストスイートが全てパスしたら、プロジェクト内の Gemfile に書かれたgemのバージョンをアップグレードします。

group :development, :test do
  gem 'rspec-rails', '~> 3.7.2'
  # 他のgemが並ぶ ...
end

bundle update rspec-rails を実行すると、インストールが完了します。場合によっては、ここで作業を止めることもできます。フィーチャスペックはRSpec 3.7でも動かすことができますし、しばらくはこれまで通り使い続けられるはずです。しかし、本書のテストスイートは積極的に新しくしていきたいので、既存のフィーチャスペックをシステムスペックに移行していきましょう。

最初は spec/support/capybara.rb にある、テストドライバの設定変更をお勧めします。ブラウザを使った基本的なテストでは高速な Rack::Test ドライバを使い、より複雑なブラウザ操作が必要な場合はJavaScriptが実行可能なドライバ(私はヘッドレスChromeを使うのが好きです)を使うように設定します。ファイルの内容を次のように変更してください。

RSpec.configure do |config|
  config.before(:each, type: :system) do
    driven_by :rack_test
  end

  config.before(:each, type: :system, js: true) do
    driven_by :selenium_chrome_headless
  end
end

driven_by の設定はテストごとに変更することもできます。ですが、私は可能な限りシステム全体の共通設定とします。

では、既存のフィーチャスペックを新しいシステムスペックの構造と構文に移行していきましょう。必要な変更は以下のとおりです。

  • spec/featuresspec/system にリネームします。(diff
  • 各ステップのtypeを type: :system にします。(diff
  • RSpec.feature の代わりに、システムスペックを定義する RSpec.describe を使います。(diff
  • フィーチャスペックで使っていた scenario エイリアスを、標準的な it 構文に置き換えます(この変更は任意のようです)。(diff

以上です!スペックは以前と同様にパスします。さらにこのあと、新しい統合テストを今回作成した spec/system ディレクトリに追加していくこともできます。

新しいシステムスペックを作成する

バージョン3.7.2の時点では、rspec-rails はシステムスペックを作成するジェネレータを提供していません。ですが、私がこの記事を執筆している時点で、すでにプルリクエストが進行中です。ジェネレータが提供されるまでの間は、次のような定型コードを使用して手作業で新しいスペックファイルを spec/system ディレクトリに追加する必要があります。

require 'rails_helper'

RSpec.system "Test name", type: :system do
  it "does something" do
    # ... your test
  end
end

スクリーンショット

私たちがCapybaraを使い始めたときから、ブラウザベースのテストでは save_screenshot メソッドを使って、実行中のテストのスクリーンショットを保存することができました。Rails 5.1とRSpec 3.7では代わりに take_screenshot メソッドを使い、テスト内のあらゆる場所でシミュレート中のブラウザの画像を作成することができます。画像ファイルはデフォルトで tmp/screenshots に保存されます。また、テストが失敗したら、自動的にスクリーンショットが保存されます!この機能はヘッドレスブラウザで実行している統合テストをデバッグするのに大変便利です。

Rails 5.1を使っていない場合は、同じような機能を capybara-screenshot gemを使って実現できます。多少のセットアップは必要になりますが、このgemはRails 5.1がデフォルトで提供している機能よりも、さらに充実した機能を備えています。

Database Cleaner

本書のRails 5.1版では、Database Cleanerの説明を削除しました。なぜなら、これがなくてもサンプルアプリケーションのテストが動くようになったからです。しかし、以前のバージョンのRailsとRSpecからアップグレードした場合、みなさんはテスト間でデータベースの状態が予期せず共有されてしまわないよう、このツールを使い続けているかもしれません。Rails 5.1ではDatabase Cleanerはもう必要ありません。少なくとも、私の経験と私がこれまでに読んだ情報の上では不要になっています。もしみなさんが例外的な状況に遭遇したら、ぜひコメントを残して教えてください(訳注:日本語のフィードバックはこちらにお願いします)。

さらに前進する

RSpecのドキュメントではフィーチャスペックよりもシステムスペックを使うように推奨しています。この方針は合理的なものだと感じます。少なくとも、実際に私が既存のフィーチャスペックを新しいシステムテストに移行した経験上、そう思います。私は、みなさんが他のタスクよりも優先度を上げてこの変更に取り組む必要があるとは思いません。ですが、もし時間があればやってみてください。私はこの新機能を隅から隅まで試したわけではありませんが、これはあなたにとってCapybara gemをアップデートするいい機会にもなるかもしれません。特に、エラーや非推奨の警告(deprecation warning)に遭遇した場合は、きっとアップデートが必要になるでしょう。

みなさんが自分のRailsアプリケーションをシステムスペックに移行した際に経験したことをぜひ聞かせてください。ポジティブな話でもネガティブな話でも結構です。コメント欄はこの下にあります(訳注:英語版ブログの話です)。みなさん、いつも読んでくれてありがとうございます!

参考文献

(翻訳ここまで)

まとめ

というわけで、このエントリではEveryday Railsの原著者であるAaronさんのブログ記事を翻訳してみました。 システムスペックを導入してみたいと考えている方はぜひ参考にしてみてください。

Everyday Railsは今後もできるかぎり最新のRailsとRSpecに追従していきますので、引き続き「Everyday Rails - RSpecによるRailsテスト入門」よろしくお願いします!

Everyday Rails - RSpecによるRailsテスト入門 | Leanpub f:id:JunichiIto:20180219082935p:plain

「Everyday Railsって何?」「いったいどんな本?」と思われている方は以下のブログ記事をご覧ください。