give IT a try

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

第80回 Ruby関西 勉強会に登壇します(2017年1月13日) #rubykansai

お知らせ

2017年もそろそろ終わろうとしていますが、新年早々勉強会で発表することになりました。

rubykansai.doorkeeper.jp

「第80回 Ruby関西 勉強会」

日時
2018-01-13(土)13:30 - 17:00
場所
株式会社Aiming 大阪スタジオ(グランフロント大阪タワーB 18階)
参加費
無料(学生)、500円(一般)
申込ページ
https://rubykansai.doorkeeper.jp/events/69011

発表内容は例外処理についてあれこれ話す予定です。
告知ページの説明文を転載しておきます。

「プロを目指す人のための例外処理(再)入門」


例外処理はきちんと書くとプログラムの堅牢性やデバッグ効率を向上させますが、間違った書き方をすると逆にとんでもなく扱いづらいプログラムができあがります。そして、僕の経験上、間違った書き方は結構な頻度で見かけます。


この発表では例外処理をよく知らない人だけでなく、例外処理を理解している(つもりの)人も対象にして、あらためて例外処理のベストプラクティスとアンチパターンを説明します。

大阪で発表するのは今年5月の関西Ruby会議2017以来なので約半年ぶりです。
主催者の方から「プロを目指す人のためのRuby入門を持ってきたらサインしてもらえますか?」と聞かれて、「はい」と答えたので、もし希望者がいればサインさせてもらいます(って自分で書くの恥ずかしい💦)。

年が明けてまもない時期なので、すでに予定が入っている方も多いかもしれませんが、お時間がある方はぜひ参加してもらえると嬉しいです。
よろしくお願いします~!😃

rubykansai.doorkeeper.jp

1人アドベントカレンダーとRuby 2.5の新機能紹介記事・第2弾を書きました

はじめに

以前もお伝えしたとおり、12月1日から25日まで、毎日「プロを目指す人のためのRuby入門」の未収録原稿を使ってアドベントカレンダーを記事を書いていました。

未収録原稿を利用するとはいえ、1人で毎日25日も毎日書けるかな?とちょっと不安でしたが、なんとか無事に書き終えることができました!
基本スタンスは「未収録原稿を使う」なのですが、日によってはほとんど新しく書き下ろした記事もあります。

というわけで、このエントリでは孤軍奮闘しながら執筆したアドベントカレンダーの記事一覧と、それとは別に書いたRuby 2.5の新機能紹介記事を紹介します。

「プロを目指す人のためのRuby入門・別館」アドベントカレンダーの記事一覧

アドベントカレンダーの記事一覧(全25本)は以下のとおりです。
「プロを目指す人のためのRuby入門」でRubyの勉強をしている方は、こちらもチェックすればさらにRuby力がアップするはずです!

  1. 変数名やブロック引数をアンダースコア1文字にするイディオム
  2. メソッドの引数をアスタリスク1文字にするイディオム
  3. 代入なしでローカル変数を宣言するトリビア
  4. 自分が書いたRubyプログラムをirb上で読み込む方法
  5. Minitestで特定のテストをスキップする方法
  6. テストメソッドの粒度について
  7. 配列を使ったキューとスタック
  8. 配列の便利メソッドあれこれ
  9. *と変数の代入の関係
  10. 範囲式を使ったフリップフロップ
  11. ハッシュの便利メソッドあれこれ
  12. 配列リテラルで最後の要素をハッシュにする場合のTips
  13. 文字列をfreezeさせるいくつかの方法
  14. 正規表現関連の便利メソッド
  15. privateメソッドとインデントのスタイル
  16. メソッド定義と同時に公開レベルを設定するトリビア
  17. privateメソッドをレシーバ付きで呼び出せるケース
  18. self.classの形でクラスメソッドを呼び出すときの注意点
  19. Structクラスで単純なクラスを手軽に定義する
  20. 特異メソッドが定義されているクラスはどこ?
  21. 正規表現チェッカープログラムのテストを自動化する
  22. Hash#to_proc と Method#to_proc
  23. Procのカリー化と部分適用
  24. 【初心者向け・動画付き】Railsチュートリアルのサンプルコードを文法解析してみる
  25. Ruby 2.5で発生する「プロを目指す人のためのRuby入門」との差異について
動画やGitHubリポジトリと連動している記事もあります

24日目の「【初心者向け・動画付き】Railsチュートリアルのサンプルコードを文法解析してみる」については解説動画や全体的なdiffを確認するためのGitHubリポジトリも用意しています。
RailsチュートリアルでRubyやRailsの勉強をしている人にとってもいい教材になっていると思うので、こちらもぜひチェックしてみてください。

Ruby 2.5の新機能紹介記事も書きました

それから、Ruby 2.5の紹介記事も以前書いた記事の続編としてPart 2を書きました。
preview-1から思った以上に新機能が追加されていて、既存の記事に追記じゃボリュームが大きくなりすぎるな、と思ったのがその理由です。

Part 1、およびPart 2のリンクはそれぞれ以下のとおりです。

たくさんの新機能があるので、Rubyプログラマの方はぜひチェックしてください!

まとめ

いやあ、我ながらいっぱい書きましたねえ。

記事を書くときは「みなさんのお役に立つように」という思いが一番にあるのですが、それ以外にも「自分の勉強にもなる」という側面もあります。
下手なことは書けないので「あれ、そういえばこれはどうなってるんだろう?」とか思って調べたりすると、自分の知らない知識が身に付いたりします。

まあ、それはさておき、「プロを目指す人のためのRuby入門」と今回紹介した記事を合わせたら、冬休みのお勉強ネタには十分なボリュームかと思います。
「しっかりRubyプログラミングを勉強したい」と思っている方は「プロを目指す人のためのRuby入門」と今回紹介した記事をセットにして学習を進めてみてください!

地元の中学校で働く楽しさと田舎の魅力とリモートワークについて講演してきました

はじめに

ちょっと前の話になりますが、さる2017年11月24日に地元の西脇市立 黒田庄中学校で中学生向けに講演をしてきました。
対象者は校内の全3年生、66名です。

このエントリではその講演の内容や講演をすることになったきっかけについて紹介します。

f:id:JunichiIto:20171221065035j:plain
こちらが黒田庄中学校です。

講演のタイトルとテーマ

講演のタイトルは「好きな場所に暮らし、好きな仕事に打ち込む働き方」で、以下のような内容をお話ししました。

  • プログラマってどんな仕事?
  • 働くのって楽しいよ
  • 都会もいいけど、西脇もいいよ
  • 西脇を出ていかなくても働けるよ

使用したスライドと講演中に見せたデモ

発表で使ったスライドはこちらです。

冒頭の「プログラマってどんな仕事?」では、僕が作った(本当は同僚のakihitofujiwaraがほとんど作った)「ニシワキロゴメーカー」というスマホで使えるWebアプリをその場で動かして紹介しました(アプリについては以下の動画を参照)。

また、その場でソースコードを編集して、アプリの動きを変えたりするデモも見せました。

最後の「西脇を出ていかなくても働けるよ」では、実際のリモートワークのイメージをつかんでもらうためにRemottyを使って日本各地にいる弊社ソニックガーデンのメンバーとリアルタイムでチャットしたり、Zoomを使って東京にいるメンバーとビデオ通話したりしてみました。

チャットやビデオ通話で遠く離れた人とリアルタイムにやりとりする様子は中学生のみなさんにとってすごく新鮮に映ったらしく、教室がかなり盛り上がりました。

f:id:JunichiIto:20171221065634j:plain
RemottyやZoomを使ったデモは大盛り上がり!(写真はイメージです)

僕から中学生のみなさんに伝えたかったこと

簡単に言えば、この講演ではこんなことを中学生のみなさんに伝えたいなーと思っていました。

  • 働くのって大変そう、つらそうって思ってない?(僕はそう思ってた)でも実際やってみると意外と面白いよ!
  • なんとなく「田舎はダメ、都会がいい」って思ってない?でも都会(大阪)からやってきた僕は西脇の方が気に入ってるよ!
  • 西脇に住もうと思っても仕事がないから結局大阪や東京に行かなきゃならない、って思ってない?でもリモートワークっていう選択肢もあるよ!

さらに最後のまとめとしてこういうお話をしています。

  • 別に僕と同じことをみんなもやれ、と言ってるわけではないよ。
  • でも「仕事はつらい」「都会の方がいい」「都会でしか働けない」としか考えていないとしたら、そうじゃない考え方やそれ以外の選択肢があることも知っておこう。
  • 好きな仕事をしながら、好きな場所に暮らす生き方を模索しよう。
  • 幸せな働き方や幸せな暮らしは、ぼーっと過ごしていてもやってこない。可能性と選択肢を増やすために、今からたくさん努力しよう。

こんな内容を40分ほど話したあと、最後に生徒のみなさんからの質問に答えて全部の講演を終えました。

f:id:JunichiIto:20171221065248j:plain
当日は視聴覚室みたいな教室でお話ししました。

「ちょっと待って、なんでそんな講演をやることになったの?」

そもそもなんで僕が中学生向けに講演をやっているのか不思議に思っている人も多いと思います。
今回の講演は僕の方から西脇市に「やりたいです!」と手を上げて、企画してもらいました。

この背景には僕が西脇市のシティプロモーション会議(いわゆる町おこし会議)に参加していたことがあります。
この会議では「西脇市の人口減少や人口流出を防ぐためには、そもそも市民が地元に愛着と誇り(シビックプライドというそうです)を持ってもらう必要がある」という話が重要な課題として挙がりました。

それであれば、これからの未来を担う中学生や高校生にこそ、地元の良さやリモートワークのような新しい働き方を伝える必要があると僕は考えました。

また、僕は大阪の出身ですし、東京にも一時期住んでいたことがあります。
なので、都会にも田舎(=西脇市)にもいいところと悪いところが両方あるよ、という話を自分の経験を交えて話すことができます。

影響を受けた他の方の講演

加えて、僕が勤めているソニックガーデンの社長である倉貫さん(@kuranuki)が宮古島の中学校で「中学生でもわかるシステム開発と新しい働き方」という講話をしてきた、という話にも影響を受けています。

kuranuki.sonicgarden.jp

あと、iOSプログラマとして有名な堤修一さん(@shu223)も学生向けに「プログラマとして食べていく」というお話をされています。

d.hatena.ne.jp

プログラマの講演というと同業者向けに話すことが大半だと思いますが、こんなふうに「大人から若者に自分の働き方を伝える」というのもすごくいいなあ、と考えていました。

こういう背景があって、僕も地元の中学生や高校生に何か将来の参考になるような話をしたいなと思い、講演の企画を自ら持ちかけたのでした。

この講演の正確な主旨

この講演はもう少し正確にいうと、西脇市が少子化対策のために取り組んでいる「3世代パパ育て事業」の中の「次世代パパ・ママ講座」という講座の一環、ということになっています。
「次世代パパ・ママ講座」は中高生を対象にした、将来の子育てや夫婦の役割分担について考えてもらうための講座です。

ちょうど僕が話そうとしていた「西脇で住んで、西脇で働いて、西脇で子育てをする」というテーマと、「次世代パパ・ママ講座」の狙いがマッチしたので、西脇市の方からもぜひ、という運びになりました。

講演後のアンケート結果

講演が終わった後に西脇市のスタッフの方がアンケートを取ってくれました。
アンケート結果を見る限り、今回の講演はすごく好評だったようです!

Q. 内容はわかりやすかったですか?

なんと、全部の回答で「はい」が選択されていました!

  • はい = 60
  • いいえ = 0
  • どちらとも言えない = 0

f:id:JunichiIto:20171221051531p:plain

Q. 考え方が変わったところがありますか?

「西脇市にもいいところがあるんだよ」「リモートワークという働き方もあるんだよ」という講演テーマがうまく伝わったようです。

  • はい = 54
  • いいえ = 3
  • どちらとも言えない = 3

f:id:JunichiIto:20171221070424p:plain

Q. 西脇で子育てするのもいいと思いましたか?

講演の中では長男の誕生がきっかけで西脇に移住することを決めたことや、田舎で子育てするメリットについてもお話ししていました。

  • はい = 50
  • いいえ = 1
  • どちらとも言えない = 9

f:id:JunichiIto:20171221070435p:plain

生徒のみなさんの感想

アンケートには生徒のみなさんがたくさん感想を書いてくれました。
その中からいくつかピックアップして載せてみます。

ここに載せた感想はごく一部ですが、「面白かった」「考え方が変わった」といった好意的なコメントがほとんどでした😊

私は「絶対に都会に出る!!」と思っていたので、今日の話はすごく心を動かされました。「ずっと西脇にいたい」とも思わないけど、他の場所から来た人からしたら西脇っていいんだなーと思いました。いつも長く感じる50分間も今日はあっという間でした。今は勉強がんばろっ!って思いました。

この講演を聞くまで、僕は京都や大阪で過ごすことを夢見ていましたが、今日で世界が180度変わったような気がします。きっといつか西脇に帰ってくると思うし、リモートワークというのもとても魅力的に感じました。今日はありがとうございました。

今までは会社で働いて、という考え方だったけど、家で働いて子どもの世話もできるようになってきているので、いい風に変わってきたので良かったです。とても楽しい講座でした。いろいろな可能性を持つために努力を積み重ねていきたいです。

とてもわかりやすかったです。僕はプログラミングはしたことはありませんが、ゲームを作ることはしたことがあります。とても参考になりました。僕も時間があればプログラミングの勉強やプログラミングをしてみたいです。今日はとても楽しかったです。

いろいろな働き方があるんだなと思いました。自分のやりたい方法で能力を伸ばすことをできるのがすごくいいなと思いました。何がしたいのか、どんな風に将来なりたいのか、もう一度しっかり考えていきたいです。都会に行かないと何もできないと思っていたけど、あらためて西脇市の魅力を知ることができました。

講演を聞く前は都会に住みたいと思っていたけど、西脇で暮らしたいなと思いました。将来子育てをするなら西脇やなと思いました。仕事と家事も両立して素敵な家庭を築きたいです。最後の質問タイムでも夫婦の仲の良さを知ることができてすごく楽しかったです(※)。最高の1時間でした。ありがとうございました。

※この講演には妻も同席していて、最後の質問タイムで「奥さんのどこが好きですか?」みたいな質問を出されて2人で夫婦漫才みたいなやりとりをしてました(笑)。

まとめ

というわけで、このエントリでは地元の中学生に向けて講演した話を紹介しました。

中学生向けの講演は今回が初めてでうまく話せるか心配でしたが、黒田庄中学校の生徒のみなさんは熱心に僕の話を聞いてくれてとても嬉しかったです。
どうもありがとうございました!

あわせて読みたい

「好きな場所に暮らし、好きな仕事に打ち込む働き方」という講演タイトルは昔僕が受けたインタビュー記事のタイトルから借用させてもらいました(了承済み)。

mydeskteam.com

西脇市のシティプロモーション活動に関する記事も書いています。

blog.jnito.com

都会と田舎の比較はこちらの記事でもあれこれ書いています。

blog.jnito.com