JSTQB Advanced Level テストアナリスト(ALTA)に合格するためにやったこと

8月に開催されたJSTQB Advanced Level テストアナリスト(ALTA)の合否通知が今朝届いていて、合格していました。

ALTAはFLと違ってWebで解ける想定問題や書籍もなく、どんな準備をすれば合格できるのか情報が少ないため、こんな人もいるよ程度ですが書いてみようと思います。

1. ISTQBのSample Examを3周する

ISTQBのSample Exam Questionsを1周目は初見で解いて、JSTQBシラバスから設問に関係のある箇所を読む、ということを1問ずつ繰り返しました。

初めは1問目から解いていって、テスト技法のあたりに突入してみるとさっぱり分からん、となったので今度は後ろから解いていって、その間に後述のシラバス解説動画でテスト技法の知識の穴を埋めて、最後にテスト技法に取り組みました。

設問の解説やシラバスを読むときには、正解の選択肢が正解となる理由だけではなく、不正解の選択肢が不正解の理由も説明できるようになることを意識していました。

翻訳にはDeepLを活用していたのですが、DeepLはJSTQB用語を使ってくれるわけではなかったり、1問の中で同じ単語が別の訳し方をされたりするので、ISTQB GlossaryとISTQBのシラバスJSTQBシラバスとSample Examを行ったり来たりしながら言葉の意味を確認しつつ進めました。

2週目はシラバスを章ごとに読んで、次にその範囲の設問を解いて、間違った問題を記録して、間違った部分のシラバスに戻って...とやっていました。

3周目は試験当日に試験会場に行く電車の中で設問と回答に高速で目を通して、時間が経って記憶の底に沈みかけていた部分を引っ張り上げるために使いました。

2. kuさんのシラバス解説動画を見る

youtube.com

この方の解説動画のおかげでシラバスの言わんとするところを何となく理解しながら読み進めることができました。また、試験範囲となるテスト技法を分かりやすく説明してくださっていて助かりました。

説明に使用されていたGIHOZを自分でも使って、少しずつ条件を変えてテストケースを生成することで、クラシフィケーションツリー、ペアワイズテスト、状態遷移テストについて理解を深めることができました。

3. スマホでもシラバスを読めるようにする

Notionにシラバスを転記して、スマホからでも読みやすい自分専用のシラバスを作りました。職場でお昼休みに少しだけ読んでみたり、マーカーを引いたり太字にしたり、気づいたことをメモしたりすることもできて学習がはかどったので、これはもっと早めにやっておけばよかったと思います。

やらなかったこと

他の合格者の方のお話では必ずと言っていいほど登場する「テスト技法練習帳」を私も購入したのですが、結果的には手を付け(られ)ませんでした。

あくまで試験対策を目的とするならという話ですが、Sample Examの設問を理解して自力で解くことができるようになっていればテスト技法の理解と適用は十分ではないかなと思います。

(試験後に少し余裕ができて、今はテスト技法練習帳を時々開いて解いています。)

以上

オンラインからオフラインの橋渡し、SNSアイコンシールの作り方

先日フィヨルドブートキャンプ内のもくもく会に参加させていただきました。

その際に参加者・主催者の皆さんのSNSアイコンシールを作成したので、その手順を書いておこうと思います。

利用した印刷サービス

ローソンやファミリーマートにあるSHARPのマルチコピー機でシール印刷ができるので、このサービスを利用しました。 smj.jp.sharp

アイコン1つをどれくらいのサイズで出したいかにもよりますが、2L判(300円)なら8個〜12個くらいは入りそうです。

また、今回はアイコンだけでしたが、アイコンの横にSNSアカウント名やIDも入れたら、そのまま名札として服に貼る事もできていいんじゃないかなと思いました。

シール作成の流れ

  1. 参加される方に呼びかけてアイコン画像を提供してもらう
    • 400px*400px以上あれば、印刷には充分耐えそうです
  2. 画像処理ソフトでアイコンを並べて1枚の画像を作成する
    • 今回はFigmaを使用して800px*1600pxのPNG画像を作成しました
  3. SHARPのマルチコピー機のサービスに画像を登録する
  4. コンビニで印刷する
  5. カッターかハサミでカットする
    • 私はカッターを使いましたが、用紙がツルツルして滑りやすくカットしづらかったので、ハサミの方が良かったかもしれないです

以上です。

この記事でSNSアイコンシールを用意するのは意外と簡単だと思ってもらって、オフラインイベントでSNSアイコンシールを付けている人が増えれば、私としては大変嬉しいです。

あじさい、山登り、HTTP

フィヨルドブートキャンプのudaさんガラムマサラさんのブログを読んで、ご本人の撮った写真が使われていると人柄が感じられる気がしていいなぁと思っていたので、その真似です。近所に紫陽花を見に行った時の写真。

週末に始発で高尾山に行って登ったりもした。朝は涼しいし、そこまで人も多くなくて良かった。

読んでいる本

www.oreilly.co.jp

扱う製品の性質上、HTTP通信の知識をもっとつけたいとグループコーチングで話して、そこでniiさんに教えてもらったReal World HTTP ミニ版を読み始めた。無料なのに166ページもある。読み終えたら第2版に行くつもりだけどいつになるだろう。

www.oreilly.co.jp

ChatGPTとターミナルで会話するためのCLIツール「Sawara」をリリースしました

Sawaraとは

Sawaraは、OpenAI APIを利用してターミナル上でChatGPTとの会話を可能にするCLIツールです。RubyのGemとして開発しており、Ruby 3.1以上の環境があれば簡単にインストールして利用できます。

OpenAI APIを使うので、事前にOpenAI APIAPIキーを発行しておく必要があります。

Sawaraの特色として、複数のボットを作成・管理する機能があります。ボットにはそれぞれ異なるプロンプト(どのような会話を生成するかを指示するテキスト)を登録できるので、やりたい作業に適したプロンプトを持つボットを適宜呼び出して、会話を始めることができます。

もちろん、あらかじめプロンプトを設定せずに、ボットとの会話を開始することもできます。

開発の背景と動機

個人的に、最近プログラミングが面白いという気持ちが薄れがちで、その状況をどうにかしたいと思っていました。そこでちょうどChatGPTのAPIが公開されたというニュースを見かけて、とりあえず触ってみるだけでもやってみようと思って遊んでみたら、だんだん楽しくなってきました。

更にOpenAI APIについて調べている過程で、料金が格安($1で500,000トークン)という事を知って、CLIツールを自作すれば有料版のChatGPTに $20/月 出すのとはまた別の選択肢を持てるのではないかと考えるようになりました。

また、ChatGPTはプロンプト次第で振る舞いが大きく変わりますが、何度も発生するようなタスクのためのプロンプトを(単純な指示とはいえ)何度も打つのは面倒に感じていました。

そこで、せっかくCLIツールを作るなら、プロンプトを事前に登録しておいていつでも呼び出せるようにしようと思いました。

Sawaraの使い方

はじめて使う時

  1. インストール後、初めて sawara call を実行するとAPIキーの入力を求められます。OpenAI APIAPIキーを入力してください。
  2. APIキーを入力すると、Sawara(デフォルトのボット)との会話が始まります。改行はEnterで、カーソルが行頭にある時に Ctrl + d を押すと送信されます。
  3. Ctrl + d を押すと終了します。

Botを登録する

sawara add <任意のID>Botを登録できます。

Botの名前とプロンプトをそれぞれ入力してください。プロンプトは複数行入力できて、会話と同じように Ctrl + d で送信できます。

sawara -c <ボットのID> でボットを呼び出せます。

このほかにBotの削除や一覧もできます。詳しくは sawara help コマンドか READMEのUsage をご確認ください。

ところでなんでSawara?

出身地である岡山に縁のある名前にしたいなと思って、鰆から取りました。

岡山県民に愛される海の幸サワラとは | 岡山観光WEB

おわりに

気になる部分や追加したい機能があるので、もうしばらくこのGemで遊んでみたいと思います。もしお気づきのことがありましたら、GitHubのIssueでお知らせいただけると嬉しいです。

もちろんフィヨルドブートキャンプの方はDiscordにおりますのでそちらでも!

github.com rubygems.org

フィヨルドブートキャンプのカリキュラム以外でやってよかったこと

フィヨルドブートキャンプ Part 2 Advent Calendar 2022 - Adventar の2日目の記事です。昨日は@universatoさんの「【初心者向け】全角スペース・全角英数字を駆逐してQOLを高める - Qiita」でした。


2022年を振り返ると、1月にフィヨルドブートキャンプを始めて10月に卒業し、現在就職活動中ということで、今年はまるまるフィヨルドブートキャンプの年となりました。

どんな切り口で振り返ろうかな~とちょっと考えて、フィヨルドブートキャンプについては卒業生や受講生やメンターの方の記事がたくさんあるので、カリキュラム以外でやって良かったことを振り返ることにしました。

フィヨルドブートキャンプ内のイベントの話が多くなるので、どちらかというとフィヨルドブートキャンプ生向けの内容になるかと思いますが、それ以外の方にもフィヨルドブートキャンプの雰囲気が伝わったら嬉しいです。

りんどく.rb

りんどく.rbフィヨルドブートキャンプ外にも開かれた、プロを目指す人のためのRuby入門の輪読会です。

フィヨルドブートキャンプを始めてすぐの頃に開催された「🎍新春 輪読会EXPO🎍」で知って、参加するようになりました。途中から都合が合わずに行けなくなってしまったのですが、「第7章 クラスの作成を理解する」まではできるだけ毎回参加するようにしていました。

参加してよかったこと

まず何よりも主催者の@fugakkbnさんのお人柄のお陰で、初めての輪読会という場で何をするんだろう?ドライバーってどんなことをしたらいいんだろう?という状態から、一歩踏み出すことができました。

第7章では著者でフィヨルドブートキャンプのメンターでもある@jnchitoさんが来てくださって、みんなで意見を交わしたり伊藤さんに質問したりしながらオブジェクト指向を実践してみるという貴重な体験もできて楽しかったです。

さらにちょうどその頃、フィヨルドブートキャンプのプラクティスもオブジェクト指向に差し掛かっていて、その課題の一つを伊藤さんにレビューしていただくことになりました。りんどく.rbとフィヨルドブートキャンプの相乗効果の恩恵を受けた人ランキングがあったら1位を狙えるのでは?!なんて思ってます。

Everyday Rails合宿

「合宿」というのは、@eatplaynap329さんによって考案された輪読会スタイルで、連続した日程で集中的に1冊の本を読むイベントになります。

5月の連休期間にこの合宿形式でRSpecの入門書であるEveryday Railsを読もう!というイベントが@Paru871さんによって企画されて、ちょうどその頃自動テストのプラクティスに差し掛かる時期だったため、やった~と思って参加しました。

参加してよかったこと
  • 分からないときに思考を実況するのに慣れた
  • コードが分からないときの調べ方を知った
  • RubyMineの使い方を教えてもらえた
  • 自動テストやTDDの考え方を知った
  • RSpecの使い方を知った
  • システムテストはRPAに必要だった知識がそのまま使えると分かった

この合宿で身に付いたことは本当に多くて、贅沢な時間だったと思います。フィヨルドブートキャンプのメンターである@cafedomancerさんと、卒業生の@sanfrecce_osakaさんがほとんどずっと来てくださったので、書いているコードでもテストの考え方でも実際の開発現場ではどうしてるのかといったことでも、分からないことがあったらその場でスルスル解決してしまうという、すごい環境でした。

そしてこの合宿のあと自動テストの課題をRSpecで提出して、なんとこの時もEveryday Railsの翻訳者でもある伊藤さんにレビューしていただきました。Everyday Railsフィヨルドブートキャンプの相乗効果の恩恵を受けた人ランキングがあったら1位はちょっと分からないですが上位に食い込める気はします。

あとはシステムスペックに関してはRPAのブラウザ操作とやっている事は同じだと分かって、知識の足場にできそうだなとこの時思いました。

目覚まし会

Everyday Rails合宿は朝7時開始という朝型のイベントだったのですが、その時に「朝早くても人との約束があれば起きられますね」といった話が出て、確かに!と思って無ければ作ろう早起きイベントの精神で始めました。

フィヨルドブートキャンプにログインできる方限定になりますが、当時の日報にその頃のことが書いてありました。

Day102: 朝の雑談タイム(?)を振り返る | FBC

主催してよかったこと
  • ミニサイズながらもイベントを進行する経験ができた
  • 毎日7時には起きている癖がついた
  • いろんな人と話すことができた

目覚まし会をやっていなければ今よりもっとフィヨルドブートキャンプの中に知り合いと言える人は少なかったと思います。時間的な都合などで輪読会のようなイベントへ参加するのが難しい方にこそ、ミニサイズの気軽なイベントを主催してみるのをお勧めしたいです。

1分間スピーチ会

1分間スピーチ会は、毎週月曜日に@wata00913さんが主催しているイベントです。お題を決めて順番にスピーチをして、スピーチに対して参加者同士で質問したり感想を伝えたりします。

ずっと家にいて夫とハイコンテクストな会話しかしていないので、いずれ就活を始めた時に何も話せなくて困るぞという問題を何とかしたくて参加し始めました。

参加してよかったこと
  • 話す練習ができた
  • 内省する機会になった

これは主催者のwataさんの質問力の高さによるところが大きいと思うのですが、質問に答えようとしてみた時に、今までぼんやりとしか認識できていなかった自分の考えが明瞭になってくるようなことが何度もありました。

この会で話したことのいくつかを発展させた内容は実際に職務経歴書にも盛り込んだので、特にフィヨルドブートキャンプを卒業したら就職/転職する予定の方にもっと知られていいイベントじゃないかな~と思っています。

グループコーチン

グループコーチングというのはメンターの@_yoshitsuguさんが紹介してくださった手法で、コーチングといっても誰かが導いてくれるようなものではなくて、基本的には自分で目標を立てて実践したことを話す場です(と私は捉えています)。 6月頃から今まで続いていて、私のいるグループは今は2人になってしまいましたが少し前まで4人でやっていました。他にもいくつかのグループがあります。

参加してよかったこと
  • 一年・一ヶ月・一週間の予定を立てるので、進捗迷子にならない
  • 計画を立てることで、逆に休むときは休む決断ができるようになる
  • 他の方の視点からコメントを貰うことで、視野が広がる

一人だけでやっていると「今週はあんまり進まなかったな」などネガティブな面にばかり意識が行きがちですが、グループコーチングの場で話すとポジティブな面を見つけてもらえたりして、視野を広げる機会であったり、他の方の良い取り組みを知って自分も取り入れてみる機会を得られたのが良かったな~と思います。

この記事を書くにあたって今までのグループコーチングのログを見てみたところ、一週間レベルだとブレはあっても一ヶ月単位でみるとほとんど計画した通りに進捗していたので、改めてグループコーチングの力を感じました。

自作サービスのポイント付け会

こちらも前述のeatplaynapさんが始めたと伺っている会で、自作サービスを開発中で予定が合う人が集まって、各自のスプリントプランニングをする場です。

先に自作サービスのプラクティスに入っていらした@Saki_ht3150さんがお誘いくださって参加するようになりました。

参加してよかったこと
  • 話すことで次にやるべきことが明確になる
  • 同じようなステージで試行錯誤している仲間がいると分かる

人によっては孤独でしんどくなってくることもあると聞く自作サービスのプラクティスですが、私は基本的にずっと楽しくやっていました。そう言える理由の一つには、ポイント付け会のお陰があったと思います。

特に誘ってくださったSakiさんとは一番よくお話をさせてもらって、自作サービスのリリース後も今度はプロジェクトを就職活動に変えたような形で会が続いていて、それこそ孤独になりやすい就活に何とか取り組む力を貰っています。

おわりに

振り返ってみると本当にいろんな人に助けてもらっていて、この記事に名前を出していない方も含めてお一人お一人にお礼のお手紙を書きたくなってきたのですが、それを始めると今日中に投稿できなさそうなのでこの辺りで投稿することにします。

明日はMinoru Maedaさんの「Herokuの代替OSSを試した話」だそうです。Herokuの代替、気になりますね~👀

adventar.org

adventar.org

プログラミングでハマって消耗しないためのアプリ「はまったいまー」をリリースしました

今年の1月から始めたフィヨルドブートキャンプの最終課題として、個人開発のWebアプリはまったいまーをリリースしました。

この記事では、今回リリースしたアプリについてと、その開発の過程を紹介します。

アプリについて

hamattimer.app

はまったいまーの概要

はまったいまーは、ハマった時に時間を浪費してしまう問題を解決したいプログラミング学習者のためのタイマー付きメモアプリです。

タイマー機能で時間に区切りを設け、メモ機能で何を考えて何をやったのか客観視しやすくすることで、問題解決までの道のりをサポートします。

screenshot.png

はまったいまーでできること

タイマーによるリマインド

image.png image.png

メモ

はじめに「解決したいこと」を宣言して、それから「試したこと」を書く形式にすることで、何の問題に取り組んでいて何をしたのか意識しやすくしています。

メモの保存

作成したメモはMarkdownファイルとしてGistにエクスポートできます。また、Markdown形式のテキストとしてクリップボードにコピーして、お好みのメモツールで管理することもできます。

使用技術

フレームワーク

Next.js + Vercel

テスト
外部サービス連携

開発の過程

開発に至る経緯

フィヨルドブートキャンプの課題に取り組んでいる時、思わぬエラーに遭遇することがちょくちょくありました。すぐに解決策が見つかることもありますが、1つのエラーであっという間に2時間経ってた!とか、何も解決してないけど2時間経ってた!という事もありました。

ところで私はフィヨルドブートキャンプに入る前までは、情報システム部の一員としてバックオフィス業務の自動化などに携わっていました。またそれ以前には企業向けSaaSのテクニカルサポートとして、問題発生時の切り分けと、解決方法(時にはワークアラウンド)の提供を行ったりもしていました。

そういった今までの仕事では、例えばタイムリミットから逆算して今この位置にいると間に合わなくなりそうだ、となった時点で代替策に切り替えるというように、限られた時間で問題を解決するために作業時間を常に意識して業務にあたっていました。

フィヨルドブートキャンプを始めた当初は自然と仕事と同じスタンスで課題を進めていましたが、仕事でやってきたように学習をすると学びが少ないまま先に進んでしまうと気づいてからは仕事のやり方を持ち込まないように意識していました。それでも、プログラミングでハマってる時間はもうちょっと何とかできるんじゃないかと思ったのが始まりでした。

そこで、ハマっている時の自分を振り返ってみて、改善できそうなポイントとして次の3点に着目しました。

  • 仮説を立てて検証することに没頭して時間を忘れてしまう
  • 検証した結果を記録していないために同じ作業を繰り返してしまう
  • 仮説を手放せない

そして、タイマーで時間を教えてくれて、自分がやっていることを整理するためのメモを取れる、この2つをワンストップで実現できるツールがあれば解決できるのではないかと考えました。

開発の進め方で工夫したこと

1. プロトタイピングの手法を取り入れる

着想を得てからリリースまで、プロトタイピングを繰り返しました。

最初はこのアイデアで本当に問題が解決するのか検証するため、次の段階では実際に自分で使いながら必要な機能を見極めるため、そしてその次は他の受講生の方にも使ってもらってUIが分かりやすいかどうかフィードバックを得るため、というようにそれぞれの段階で目的を持って進めました。

また、実装に入ってからは早い段階でコア機能を作り上げて改善する形をとったことで、少なくとも最低限の機能は実現できると自信をもって取り組むことができました。

イデアを検証するための最初のプロトタイプ(Discord) image.png

ペーパープロトタイプ image.png

コアの機能だけ先に実装して使いながら改善するためのプロトタイプ image.png

2. Issueのサイズを小さくする

前提として、フィヨルドブートキャンプでは自作サービスの課題に入ると毎週水曜日に進捗報告の場があり、その進捗は受講生が自分のGitHub Projectを作って管理します。

未知の事ばかりの自作サービスの開発でできるだけつまずかないようにするため、1日から半日以下で終わるサイズにIssueを分解して取り組むようにしていました。 *1

こうしたことで、以下のメリットを得られました。

  • 見積もりのブレを少なくする
  • やることが明確なので迷わない
  • 毎週一定の成果を報告できる
3. 進捗報告や質問タイムを活用する

一人だけで考えて妙な方向に進んでしまうと結局は手戻りになるので、そうならないように気を付けていました。

対策として、進捗報告・質問タイム・受講生の集まりの場で、開発の進め方やアプリの機能について自分が考えていることを話すようにしました。それに対してメンターの方のプロのエンジニアとしての視点であったり、他の受講生や卒業生の方のユーザーとしての視点からフィードバックを貰うことで、大きな手戻りを発生させることなく開発を進めることができました。

4. ロゴとイラストは専門家にお願いする

今回、アプリの顔となるロゴとイラストは専門家の方にお願いしたいと考えて、それぞれフリーランスの方に依頼をしました。

今までのお仕事で自分が依頼を受ける側の時に、要望を引き出すのに苦労することもあったため、お願いした方に存分に力を発揮していただくためにはどういう風に伝えれば良いか、自分が逆の立場だったらどう受け取るかなど考えて工夫しながらやり取りをしました。

いざ依頼する立場になってみると、依頼を受ける側にとってはやりづらい要望を出してしまう方の気持ちに納得することもありました。今後、依頼を受ける側の開発者として仕事をしていく上でも、貴重な経験となったように感じます。

苦労したこと

1. 意思決定

振り返ってみると、どんな技術を採用するか、どの機能を入れてどの機能は入れないかなど、次から次へとやってくる意思決定の場面に対応するのが一番大変だったと感じます。プロダクトオーナーとしての自分と、開発者としての自分と、ユーザーとしての自分がそれぞれの立場で意見を言ってくるので、開発中はだいぶ頭の中が騒がしかったです。

大変だったと同時に、コミュニケーションミスの起きようがない自分1人だけのプロジェクトであっても視点の違いでこれだけ違うことを言うと実感したので、今後意見のすり合わせが必要な場面に出会った時は今までよりも気持ちに余裕が持てそうです。

2. 分かりやすさを実現する

過去のお仕事では画面設計に携わったこともありますが、いずれも業務システムでした。業務システムの場合でも使いやすいに越したことはないですが、仕事を回すために必要なシステムを使わないという選択肢は無いので、そこが今回の個人開発のサービスとは大きく違う点になります。

そのため、このアプリを必要としていてまだ使ったことがない人に届けるために、分かりやすさをどうやって実現するか考えたり実装したりする部分では苦労しましたし、まだまだだなぁと思う部分です。

フィヨルドブートキャンプでは個人開発のサービスを完成させたらデザインに関してもレビューをしていただけます。そこで教えていただいたことを元に、今後も少しずつ改善していくつもりです。

おわりに

実は個人開発の課題を本格的に始める前は、全く違う題材のWebアプリを作ろうと考えていました。ですが今は、はまったいまーにして良かったと思っています。

これは何とかしないと、と心底思える題材なので、開発を始めてから今までずっと楽しくここまでたどり着くことができました。

そして個人開発を通じて気付いたのは、目の前に現れた問題に対する何とかしないと!という思いが今までの仕事でもずっと、自分の一番の推進力になってきたということでした。今後のキャリアを考えるに当たって、大事な指針になりそうです。

オブジェクト指向も自動テストもGitのお作法も何も分からなかった私が、小さいながらも1つのWebアプリを作り上げることができるようになったのは、フィヨルドブートキャンプのカリキュラムとメンターの皆さま、一緒に学んできた受講生・卒業生の皆さまのお陰です。本当にありがとうございました。

hamattimer.app

*1:1日あたりの作業時間は7~8時間としていました

初めてのLT会 Vol.11 に登壇しました

3月12日にフィヨルドブートキャンプ内で行われたLT会に登壇しました。

フィヨルドブートキャンプ関係者の方は発表内容をこちらからご覧いただけます。

bootcamp.fjord.jp

発表で話した「行動して結果が出るというサイクルをできるだけ小さく回すとうまく行きやすい」がこの発表準備の中でも起こっていて、まさに今回のLT会のテーマ「今自分が学んでいること、取り組んでいること」だなぁなどと思いながら準備していました。

発表準備

ここから、発表準備の流れを振り返ってみます。

登壇4週間前

LT会の告知と登壇者募集が始まったのがフィヨルドブートキャンプに入って1か月も経っていない頃だったので気が引けつつも、小さく挑戦できるチャンスだと思って登壇させていただくことにしました。

LT会関連の資料が充実しすぎていてどれから読めばいいかと圧倒されつつ、心構えとして重要そうな伊藤さん(フィヨルドブートキャンプのメンター)のブログ記事を読んで、準備が大事と認識しました。

私は考えながら話すと言葉が出てこなくなる事がよくあるので、なおさら事前に準備して何とかなることなら何でもやろうという気持ちでした。

登壇3週間前

仮決めしたテーマでまずは草稿を作成して、スライドの作成に着手しました。ですが、スライドマスターを作る?タイトルの位置はどうする?など、本筋ではないところが気になって2枚くらいで進捗が止まってしまいました。

また、先輩方の背中を追いかける気持ちで過去の登壇者のブログ記事をいくつか読んだのですが、すごい人ばかりで「こんな立派なスライド、自分には作れない」「ここまで念入りな準備、考えもしなかった」という風に圧倒されてしまいました。

登壇11日前

  • 方針転換

LT準備を数日寝かせていて、正に「大きな目標を前にして足がすくんで動けなくなってしまった」状態に今なってるわーと気づきました。

LTの台本より
大きな目標を前にして足がすくんで動けなくなってしまった時は、高くなりすぎた目標を意図的に下げてみたり、小さな目標に分解してみたりすることで、前に進むことができるようになって、そうやって進んできたことが自分を支えてくれるようになる

原因を考えてみると、先輩方のブログを読んで自分の中のハードルが上がってしまっていることに思い当たりました。

そこでもう一度、このLT会登壇のゴールを以下のように整理しました。

  • LT登壇の実績解除
    • 5分間、頓挫したり無言になるようなことなく話すことができれば実績解除と考える
  • フィヨルドブートキャンプの中に自分の事を知ってくれている人を増やす

洗練されたスライドじゃなくていいし、役に立つ内容じゃなくてもいい。初めてのLT会という場で皆さんの胸を借りるつもりで、自分にできる範囲で頑張る。至らない点があるのも現状の自分という事で受け止めて、今後のレベルアップに生かそう。

そう考えなおして、まずLTの内容からお役立ち情報をなくして自分の個人的な話に振り切ることにしました。それから、スライドもシンプルにMarkdownから生成できるMarpを使うことにしました。

登壇10日前

  • 草稿作成
  • スライド作成

個人的な話に振り切ったことで、話の筋を通しやすくなりました。

草稿を改めて書き直して、そこからMarpを使ってスライドにしていきました。デフォルトのテーマだと少し寂しいのでちょうどいいテーマが公開されていないか探してみて、marp-themes を使わせてもらうことにしました。 github.com

登壇9日前

  • 台本作成
  • 過去のLT会の動画を見る
    • 2回分(Vol.9とVol.10)
    • いいなと思った方のLTを何度も再生して、フレーズなどを取り入れる

社内研修の講師などでの経験から、最終的には空で話す場合でも最初は台本を作らないと話せないことが分かっているので、台本を作成しました。ここで言葉を絞り出す作業が一番しんどかった気もします。こういう時になんて言ったらいいか分からない、となったら過去のLT会の動画を見て、いいなと思ったフレーズを真似させてもらいました。

そして、Marpはpresenter viewとして下の画像のように発表者向けの画面を出すことができて、発表者ノートも表示されるので、ここに台本を入れていきました。

f:id:cerasite:20220310211130p:plain

実空間のイベントだと発表者ノートがあったとしてもそこまでガン見するわけにもいかないと思うので、リモート開催じゃなかったら登壇はもっと先だったかもしれません。

登壇8日前

  • 台本を読み上げてみてスライドと台本を修正

ひとまず形になった台本を実際に読み上げてみて、話し言葉として硬すぎたり不自然だったりする部分を修正していきました。

登壇7日前

  • 時間計測しながら台本読み上げ
  • 5分を目安に削れる部分をカット

最初から最後まで読み上げて時間を計ってみると7分半程度でした。自分の中の目標として5分に収めるつもりだったので、無くても話が通じそうな部分を台本とスライドから削っていきました。

初めてのLT会はそこまで時間の制約は厳しくないとのことで、実際に過去の動画を見てもその通りだったのですが、よく知らない人の個人的な話に耳を傾けてもらえるのは5分が限界だろうという考えと、この内容で5分以上かかるなら冗長な部分があるという事だろうという考えもあって、目標5分としました。

登壇6日前&登壇5日前

  • 旅行中のため進捗無し

犬山市いいところでした。

登壇4日前

  • 通し練習
  • リハーサル
    • 会場の操作、接続確認
    • プレゼン時のスライドとカメラの映り方を確認
    • 発表練習

詰まらずに話せるようになるまで録音しながら通し練習を行いました。

また、LT会オーガナイザーのやつはしさん(https://yatsuhashi168.com)がリハーサルを設定してくださっていたので、そこで当日利用するリモートイベントシステムの操作を確認したり、プレゼンする際のスライドの表示状態やカメラの映り方を確認しました。ここでも一度通しで発表練習をさせていただいて、時間の方は想定通りになりました。

登壇2日前

  • ブログ記事下書き

ここまでの準備の振り返りをブログ記事の下書きとして作成しました。

登壇1日前

  • 動画収録

この記事の冒頭にも貼り付けた、フィヨルドブートキャンプ内で公開されるポートフォリオに載せるための動画を収録しました。

通し練習にもなって一石二鳥で、Macがあれば標準ソフトだけで画面収録も動画編集もできてしまうので、これはやってみて良かったです。

登壇当日

準備してきた分の結果は出せたんじゃないかなと思います。

Discordのチャット欄はあとから読みましたが、皆さま温かくてフィヨルドブートキャンプをますます好きになってしまいました。

おわりに

こうして「初めてのLT会に登壇する」という小さく行動して小さく結果を出す取り組みは幕を閉じました。LT中でも言っていましたが、こういったフィヨルドブートキャンプの文化がありがたいし素敵だなと思います。

本当に、挑戦してみて良かったです。

f:id:cerasite:20220313124345p:plain

これから初めてのLT会に登壇される方へ

LT後のフリートークの場で、伊藤さんからLTっていうのはもっとラフでいいんだよと伺いました。

私も過去の登壇者の皆さんのレベルに引っ張られたところがあるので、それで得られたものはもちろんあるとしても、もっとラフなLTが増えて敷居が下がるといいな~と思います。ラフでいいんです。ラフなLTこそがリアルなんです(多分)