セットプチフォッカ

勉強したアウトプット、ときどきフォッカチオ作っていました

⚡️初めてのLT会 Vol.5でRubyMineの話をしました!

f:id:ikmbear:20201025125820j:plain

⚡️初めてのLT会 Vol.5に参加しました!

昨日FJORD BOOT CAMP(フィヨルドブートキャンプ)で開催された、ライトニングトーク初心者のための発表会、「⚡️初めてのLT会 Vol.5」に参加しました!

今回のテーマは「フィヨルドブートキャンプの歩み方🏃‍♂️」ということで、私は開発ツール「RubyMine」を使うことでRubyの学習が捗るよ〜という話をさせていただきました。

文字通り初めてのLT参加だったので、参加に至る経緯〜発表を終えるまでを振り返ってみようと思います!

参加の経緯

前回のLT会に感化され、参加を決意

初めてのLT会は、今回でVol.5となるFJORD BOOT CAMPの継続コンテンツです。 私が初めて参加したのはVol.4だったのですが、皆さんの発表を見て「自分もやってみたい」「こういう機会でやらなきゃ、死ぬとき絶対後悔する」と思い、その日の日報にやってみようかなと書いてみました(2020/8/22のこと)。

f:id:ikmbear:20201025095220p:plain

この日報に心配ごとへのTipsや後押しのコメントをいただき、参加の決意を硬くしたのでした。 後押しいただいたみなさま、ありがとうございます🙏

テーマはぼんやりと「RubyMineを布教する」

こちらも日報でのやりとりからです。

メンターの伊藤さんの「RubyMine布教してみては」というコメントから、「たしかに自分も使いこなせていないし、アウトプットを通じてRubyMineについて詳しくなるのもいいな」と感じ、ぼんやりと次の機会があったらRubyMineについて発表しようと思っていたのでした。

資料作成

発表内容を決める

前述の経緯から、ぼんやりと「RubyMineを布教しよう」ということは決まっていたのですが、具体的なところは未定状態でした。

RubyMineについて調べる

まずは情報収集ということで、RubyMineを知るところから始めました。

ということで、世間一般で言われている「RubyMineどこがいいのよ」という話をかたっぱしから読んでみたり、公式マニュアルをみて試したことをマインドマップ(Xmindを使用)にまとめました。

※実際に読んだ記事はこの記事の参考に載せているので、チェックしてみてください!

f:id:ikmbear:20201025101401p:plain

調べたことにツッコミを入れる

次は調べたことにツッコミ(本当にそれ便利なの?)を入れました。

  • コードジャンプでGemの中がみられるのは嬉しいけど、FJORD BOOT CAMPのプラクティスではgemなしでRubyの課題解くよな
  • rails系の機能って、後半戦にならないと使わないのよね。私もまだrailsやってないし
  • SearchEverywhereもよく便利と言われるけど、ファイル1つで完結するようなRubyの課題ではそれほどメリット感じないよな(もちろんアクションとかの検索にも使えるけど)
  • Gitもめちゃくちゃみやすいし使ってるけど、今のプラクティスの順番だとRubyの方が先なんだよな

...などなど。ツッコミの結果から、競合分析ってほどではないですが、自分が話すことで他の人にメリットをありそうなところを確認。結果として「初心者=PureRubyでFJORD BOOT CAMPRubyラクティスを進める人」への機能に絞って、発表することに決定しました。

f:id:ikmbear:20201025103019j:plain

あとから振り返ると、ペルソナを仮定して準備を進めると、発表の粒度の指針ができていいな と感じました(今回だと、「IDEってなんのことか説明する」「RuboCopとは何かを説明する」など。

手書きでざっくりと話したいことをまとめる

f:id:ikmbear:20201025104100j:plain 最初は手書き(ipadのGoodNotes5を利用)で、話したいことをどういう風にスライドを配置するかを考えます。

またスライドを作るとどうしようもないネタ(およそ自己満足)が生まれることがあるので、そういうことを客観視するための機会でもあります。

今回も「RuboCopハードモードってキャッチーでええやん!」と思いつきで書いてみたものの、

  • 全然本質ではない、そんなにキャッチーでもなく面白くもない
  • 話すときに文字数を食う
  • RuboCopがゴゴゴしてるイラスト作るの大変

などの理由で手書きの段階で却下しました。

この段階で30枚くらいのスライドになりそうだったので、全体のバランスをみながら集約できそうな情報はまとめ、いらない情報は削りました。

よくビジネス本で言われることですが、スライドにいきなり取り掛かるとレイアウトに気がとられてしまうので、まずは手書きがおすすめです(RuboCopのゴゴゴも、もしスライドにいきなり作っていたらサンクコストが原因で変なスライドになっていた可能性があります)。

スライド作り/Keynoteに挑戦!

話すことが決まったら、実際にスライドに落とし込んでいきます。 普段の仕事ではWindowsPowerPointユーザなので、今回Keynote初挑戦!

せっかく初めて使う機会なので使い方を覚えるために、テンプレートを使用せずに一から自分で作って見ることにしました。

PowerPointユーザがKeynoteを使ってみた感想はちょっと長そうなので、また別の記事で。 今回はデザインの部分だけを簡単に。

配色選び

配色選びにはPalettableというサイトをよく使っています。f:id:ikmbear:20201025110511p:plain

このサイトでは表示された色に「Like」「DisLike」を選択していくだけで、自分の好きな色を使ったよさげなカラーパレットが出来上がります。

今回はRubyMineのブランドカラーから、「赤系」と「黒系」をマストでチョイス。 加えて配色の裏テーマとして、「錦鯉」を選び、錦鯉にはいってそうな色を「Like」していきました。 (鯉の登竜門伝承と「はじめてのLT会は、LTの登竜門」というところでシンパシーを感じたのです😅) f:id:ikmbear:20201025110905p:plain

というわけでできたカラーパレットがこちらです。実際には一番右は使っていなかったり、ディスプレイをみて赤の彩度を調整したりしてます。 f:id:ikmbear:20201025110732p:plain

レイアウトを考える

今回のレイアウトはそんなに複雑ではないですが、一応ポイントはやっぱり「錦鯉」です笑。

錦鯉の丸い模様をスライドのあしらいとして利用しました。なので表紙のスライドはこんな作りになっています。 f:id:ikmbear:20201025123724p:plain

他にアクセントとして使っているのはふきだしですが、こちらはデザイン研究所というデザインのいろはを教えてくれるアカウントが呟いていた「プロっぽい吹き出しの話」を参考に作りました。

2日で1万人のフォロワーが増えた? 話題の吹き出しデザインをプロっぽくするテクニック「プロと初心者のフキダシの違い」 - Togetter

twitter.com

スライド完成!練習

1人web発表会

今回はオンラインでの登壇なので(もちろん初)、見ている側の見え方を探るためにPC2台を用意し、zoomでプレゼンしてみました。

すると当然ですが、オンライン故にスライドをめくるところにタイムラグがあることが判明。

f:id:ikmbear:20201025112428p:plain

上図のようないわゆるLTっぽい、秒で通過するスライドが非常に使いづらい(話すタイミングとスライド切り替えのタイミングが若干ずれる)ことがわかったので、ほとんど消しました。

keynoteのスライドショー記録機能で録音

f:id:ikmbear:20201025112655p:plain f:id:ikmbear:20201025112816p:plain

keynoteにはスライドショーを記録してくれる機能があります(再生 > スライドショーを記録)。これを使うと、スライドの切り替えと音声を記録してくれます。

自宅でmacで録音→iCloudで自動同期されるので、通勤中にiPadで確認、という感じでセルフレビューを実施(iPadでは録音はできませんが、同じように全画面再生が可能)。

話していて練習不足以外で詰まるところは、そもそも論に無理があるので、スライドを適宜修正しました。

お風呂で練習

とはいえ嫁さんも家にいるので、録音を大体的にするのは恥ずかしかったりします。なので、お風呂でプレゼンの練習もしております。

中学で生徒会長をやっているときから、演説の前には毎回お風呂で練習していたのですが、これがなんだかんだ一番きいている気がしますね〜。

当日リハーサル

当日の本番直前に配信テストをやったのですが、その際に表示されるスライドが思いのほか小さいことに気がつきました

そこそこデカイ字で書いていたつもりですが、見えない可能性を危惧して、本番開始前に少しだけ画像やフォントサイズを大きくしました。

これがSpeakerDeckに上げている版。 f:id:ikmbear:20201025114310p:plain こっちが当日用に大きくしたスライド。 f:id:ikmbear:20201025114247p:plain

ここらへんは前回のLT会の動画をみていれば気づけたので、もうちょっと研究しておくべきでした。

本番!たのしかったLT会!

いよいよ本番。緊張しましたが、なんとか喋り切ることができました! (なんだかんだ本番が一番つまらずに喋ることができたという😅)

この発表の後に、何人かRubyMineを試している方がいらっしゃって、「自分の経験したこと、調べたこと」が誰かの役に立つんだ!ととてもうれしく思いました😆

皆さんも「自分のレベルでは話すことなんてないな」と思わず、「自分の経験を自分の言葉でアウトプットすれば、まず自分の知識が深まる!そしてきっと誰かの役に立つ。」と思ってぜひLTに登壇してみてください!

おまけ。RubyMineのはじめの一歩。

LT後の懇親会で、「どうやってRubyMineの使い方を覚えました?」と聞かれたので、ざっくりと。

公式ヘルプをみる

f:id:ikmbear:20201025115517p:plain RubyMine 入門 - 公式ヘルプ | RubyMine

RubyMineには公式で日本語ヘルプがあります。インストール含めて必要な機能は大体ここにあるので、まずはここを見るのがいいと思います。

日本語化プラグインを入れる

f:id:ikmbear:20201025115905p:plain

RubyMineを日本語にするには、日本語化パッケージを別途配置して設定ファイルに記述する方法とプラグインを使用する方法があるのですが、後者がおすすめです。

どちらも日本語訳の範囲と訳語のレベルはそこまで変わらないのですが、プラグインの場合は切り替えが楽(設定の書き換えが不要)だというメリットがあります。

機能を知りたい!という意味では日本語の方がわかりやすいのですが、プログラミングで使う用語は英語の方がわかりやすいことが多いです。例えば、「属性アクセサー」より「attribute accessor」の方が個人的にはわかりやすい気がします(人によるのかもですが...)。

f:id:ikmbear:20201025120415p:plain

こういうときに気軽に言語をスイッチできた方が個人的には便利かな〜と思うので、プラグインの方がおすすめです!

KeyPromoterXを導入する

RubyMineではどんなことでもShift二回押せば検索できるのですが、より適切なショートカットを覚えて直接起動できた方が、効率的に作業できます。

ショートカット を覚えるのに便利なプラグインが「KeyPromoterX」です。 f:id:ikmbear:20201025120918p:plain

このプラグインは、ショートカットが割り当てされているメニューをクリックで起動すると、そのショートカットと今までショートカット を忘れた回数を表示してくれます。

RubyMine 公式ショートカット一覧 (日本語版) Macと一緒にショートカットを覚えるのがおすすめです!

今日のTipsを確認する

f:id:ikmbear:20201025121247p:plain

ヘルプメニューの中に今日のTipsということで、RubyMineの便利機能を教えてくれるメニューがあります(非表示にしていなければ起動時に勝手に出現するはず)。

f:id:ikmbear:20201025121417p:plain

開発の息抜きがてら、「こんな機能あるのね〜」と覚えてみるのもいいかもです。


以上、初めてのLT会参加レポでした〜。

参考

調査の過程で読んだ記事