ライブ配信駆動開発を続けて1ヶ月ほど経ったけど、この手法は有用だ!
2021年01月23日
個人開発Contents
00:00 Studioという、クリエイターが作業の様子を淡々とライブ配信するサービスが昨年末に正式リリースされました。
こちらのサービスで約1ヶ月(毎日ではありませんが)ライブコーディングを続けてみました。
そこで、自分の作業の様子を配信することで感じたいくつかのメリットを書いていきます。
ライブ配信を始めようと思ったきっかけ
きっかけは2つのそして後述する2つの記事を読んだことです。
Qiita: 生放送駆動開発を1000日やったら進捗出たのでみんなもやろう!
note:「プロセス・エコノミー」が来そうな予感です
「自分の作業の様子を生放送で配信する」こと、「作業の様子(プロセス)を共有することがお金を稼ぐメインになる時代がきている」ことから、(人に見られているというプレッシャーから)自分の作業の進捗を出すだけでなく、自分や自分の作品・サービスの認知度向上、ファンの獲得が狙えるよ、ということです。
自分一人での開発だとだらけてしまいがちなところも人の目があるとサボることもできないので、「これは良いかもしれない!」と思い昨年末からライブ配信駆動開発を始めました。
ライブ配信駆動開発で何を作ったか
この1ヶ月では、このブログ(https://blog-sorellina-coda.dev/) の開発の様子を配信していました。
ReactNativeで作りたいアプリもあるのでそれに向けた勉強の様子(Udemyで勉強しています)を配信したこともあります。
ライブ配信駆動開発でわかったメリット
モチベーションの向上
先述の通り、見ている人がいる以上作業をサボることができません。
大体1時間から2時間弱毎回配信をしていますが、「ここまでやろう」と決めていたところよりもさらに先まで作るくらいの進捗が出ることもあります。
視聴者が自分の作っているWebサービスの様子を知っているので、よく個人開発で起こりがちな「モチベーションが続かずリリースしないでお蔵入りする」ことが避けられると思っています。
個人開発の敵はある意味「孤独」だと思っていて、誰か他の人に作っている様子を共有することでその孤独感を解消しつつ作業を進めることができるのは大きなメリットだと感じました。
また、配信でしゃべりながら作業を進めることで、ラバーダッキング手法(ゴム製のアヒルのおもちゃに話しかけることで、頭の中で問題が整理されて解決を導く手法)のように詰まった時の解決も容易になることがあります。
しゃべることで後述の「アーカイブを動画メモとして使う」ことの威力も上がります。
アーカイブを動画メモとして使う
暴論ですが、人は自分が書いたコードの意図を忘れます。
だからこそコメントをコードに残すべきで、文字情報をコードに残しておくことで意図を思い出すことができます。
さらに踏み込んだ内容として、自分の配信をアーカイブして、そのアーカイブ動画をメモがわりに見ることができるので、コメントとして文字化したものだけでなく思考・プロセスを確認することができます。
文字情報だけだと欠けてしまうような、「どう考えて、どういうサイトを検索して、どういう解決策を試したか」というプロセスが残るため、次に似たような実装をする時の思い出すきっかけや、「あの参考にしたサイト、どうやって探したんだっけ…」と忘れた時も動画メモを通して確認ができることもあります。
00:00 Studioでは自分の配信をアーカイブすることができるので、上記のメリットを享受できます。
セルフブランディングができる
自分の作業の様子やサービス開発の様子を発信し、視聴者が自分や自分のサービスのファンになってくれることもあります。
SNSが発達した現代において、発信することで「まず、知ってもらうこと」が容易になってきました。
ライブ配信は大きな広告を出すことなく人にリーチできる手段の一つだと思っています。
また、こうしたライブ配信を通じて自分を知ってもらい、仕事に繋がる可能性もあります。
百聞は一見に如かずと言いますか、普段どう勉強や開発をやっているかわからない人よりも、勉強や開発の様子を配信している人の方がプログラミングの実力や普段の様子などを知れる分、採用担当者が経歴書だけを読むより説得力が強いのは明らかだと思います。
00:00 Studioでは「差し入れ」と称して小額から投げ銭がいただける制度もあるのでちょっとしたおこづかいがもらえるかもしれません。
Youtube Liveだといくつか収益化までハードルがあるのでさくっと始めたい人には00:00 Studioの方が敷居が低いと思います。
擬似的モブプログラミング
個人開発だと自分の書いたコードのレビューは誰にもしてもらうことが基本的にはできず、詰まった時も自力で解決する必要があります。
自分のコーディングの様子を配信しているので、視聴者からアドバイスや解決策をコメントしてもらえることがあります。
自分がドライバーで、視聴者がナビゲーターとなる擬似的なモブプログラミングが配信を通してできるので、詰まった時の解消スピードもたった一人で進めるよりも上がります。
動画の配信方法が理解できる
これはかなり限定的なメリットです。
00:00 Studioで配信をする前はYoutube Liveで2,3日ライブコーディング配信をしたことがありました。
Youtube Liveでは配信のためにOBSというソフトを使う必要があり、操作に慣れがいる部分があります。
たまたま業務で動画配信のためにOBSを使う機会があり、操作方法を知っていたのですんなりと作業できたことがあります。
一般に動画の配信はOBSを使うことが多いみたいですね。OBSはかなりメモリを食うみたいで、M1チップでないMacbook Proを使っているのでファンがめちゃくちゃうるさく回っていました。
00:00 Studioは画面共有で配信するスタイルなので負荷が少ないみたいです。
個人開発者や初学者はライブ配信駆動開発をしてみよう
この記事では個人開発をしているエンジニアに向けに書いていますが、初学者のエンジニア志望の方にもライブ配信駆動開発は有用な手法だと思います。
「初心者だと作業が止まりがちで見る人がつまらないのでは…」という心配もあるかもしれませんが、視聴者からのアドバイスを受けられる可能性もあります。
エンジニア転職の際にも「ライブ配信で勉強の様子を配信していました!コードを書く様子はアーカイブ動画に残っているので見てください!」とアピールできます。
学習の様子やポートフォリオ作りを配信していたりすると、自分で考えて、勉強してWebサービス・ポートフォリオを作っている証明にもなりますね。
アピール材料は多いに越したことはありません。
ライブ配信駆動開発で気をつけた方がいいこと
主に画面共有の形で配信することが多いですが、「見せてはいけないもの」を見られてしまわないかは気をつけましょう。
請けている案件のフォルダだったり、Google検索の履歴だったり、.envの秘匿情報だったりと、思いがけず配信してしまうと時に事故の原因になりかねません。
僕は基本的にデュアルディスプレイで配信して、片方を配信用画面、もう片方を退避用のスクリーンとして使っています。
配信を始める前に配信用のディスプレイをchromeとVSCodeだけにして配信しています。
手間はありますが一時的に.envを触る時は退避用のスクリーンで操作することにしています。
おわりに
ライブ配信駆動開発でモチベーションを高めながら開発を進めることがこの1ヶ月はできているので、とても有用な手法であると実感しています。
一つ自分の改善点を挙げるとすると、夜に配信することが多く、子供が隣の部屋で寝ているので音声オフで配信することも多く、動画メモとしての使い方の威力半減や視聴者さんとのコミュニケーションがテキストベースになってしまうことです。
統計など取ってはいませんが音声オフの時はオンの時よりも視聴者さんの離脱率が高いような気がします...音声オンで喋りながらの配信の方がもしかしたら良いかもしれません。
最後に宣伝になりますが、ほぼ毎日、大体22時ごろにライブ配信をしながら開発をしています!
コメントなどいただけたらとても嬉しいです!
00:00 Studioのマイページリンクは↓
https://0000.studio/gengineer
\ Share! /