Upgrade to Pro — share decks privately, control downloads, hide ads and more …

孤独な個人開発からの脱却: バトグラ技術部への憧憬 / 個人開発祭り #2

Arthur
April 12, 2023

孤独な個人開発からの脱却: バトグラ技術部への憧憬 / 個人開発祭り #2

Arthur

April 12, 2023
Tweet

More Decks by Arthur

Other Decks in Technology

Transcript

  1. 孤独な個人開発からの脱却
    ── バトグラ技術部への憧憬
    2023/04/12 (Wed.) 個人開発祭り #2
    1
    Arthur

    View full-size slide

  2. 自己紹介
    Arthur
    株式会社はてな Mackerel 開発チーム
    アプリケーションエンジニア
    id:arthur-1
    @Arthur1__
    @Arthur1
    https://blog.arthur1.dev/
    2

    View full-size slide

  3. 今日話すこと
    大体ここに書いてあることを話します
    AgricolaDevJP という org を作りました - Diary of a
    Perpetual Student
    3

    View full-size slide

  4. Arthur の個人開発
    4

    View full-size slide

  5. ボードゲーム関連の Web アプリ
    ボードゲーム(とりわけ「アグリコラ」)関連の Web サービス
    を個人開発・運用しています
    2017年からはじめて、かれこれ6年
    5

    View full-size slide

  6. AgricolaDB
    膨大なカード情報(和訳つき)を掲載している Web サイト
    6
    https://db.buratsuki.page/

    View full-size slide

  7. Randomizer for Agricola
    ランダム要素のあるカード効果を解決するためのツール
    7
    https://app.buratsuki.page/

    View full-size slide

  8. National Economy Online
    National Economy というボードゲームで対戦できる
    起業家や経営者のコミュニティで流行ってるらしく問い合わせが
    結構くる
    8
    https://neo.buratsuki.page/

    View full-size slide

  9. 個人開発周りの最近の取り組み
    • GitHub Organization を作ってリポジトリ移管
    • テストの用意
    • ユニットテスト、E2E テスト、Visual Regression Test など
    • CI / CD をちゃんと整備
    • Dependabot 導入
    • コンテナ化
    • パブリッククラウドのマネージドサービスに載せる
    • 監視の導入
    9

    View full-size slide

  10. 個人開発周りの最近の取り組み
    • GitHub Organization を作ってリポジトリ移管
    • テストの用意
    • ユニットテスト、E2E テスト、Visual Regression Test など
    • CI / CD をちゃんと整備
    • Dependabot 導入
    • コンテナ化
    • パブリッククラウドのマネージドサービスに載せる
    • 監視の導入
    10
    なぜやるのか?

    View full-size slide

  11. バトグラ技術部への憧憬
    11

    View full-size slide

  12. Battlegrounds
    Hearthstone というゲームの1モード
    オートバトラー(オートチェスライク)ゲーム
    戦略性と運のバランスが良くてたのしい(麻雀的)
    note の CXO の方もこう申している
    全スタートアップ は、いますぐ社員研修にバトルグラウンド
    を導入すべきだ|深津 貴之 (fladdict)|note
    「バトグラ」ってなんだ?
    12

    View full-size slide

  13. バトグラ技術部
    バトグラ技術部 (@BGTechLab)
    • Battlegrounds のプレイデータ収集ツールの提供
    「BGSupportForStreamer」
    ゲームと一緒にツールを動かすと、手入力しなくても戦いの結果や
    場の状況などが記録される
    仕組みわからないけどなんかすごい
    • Battlegrounds 向け Twitch Bot の提供
    • 集めたデータを分析して戦術考察
    13

    View full-size slide

  14. 14
    https://twitter.com/reotyobirin/status/1628337167352365057

    View full-size slide

  15. どこが良いのか
    自分
    ひとりで黙々やってる
    バトグラ技術部
    ユーザーとのコミュニティを
    持っている
    15
    なかなか速を出せない フィードバックがすぐに反映さ
    れる
    データは集めるだけ 集めたデータを活用して戦略の
    知見を還元している

    View full-size slide

  16. 自分の取り組み分野との相似性
    • 特定のゲームをターゲットにしている
    • 対象ユーザが明確に限られている
    • データを元に戦略を研究し、対戦シーンを盛り上げられる
    じゃあ自分もその気になれば
    バトグラ技術部になれるはずじゃん
    16

    View full-size slide

  17. 自分がバトグラ技術部に
    なるための最初の一歩
    17

    View full-size slide

  18. 負のループ
    18
    やる気が
    起きない
    新機能・サービスが
    出せない
    ユーザと触れ合う
    時間がない
    データの利活用が
    足りない

    View full-size slide

  19. 負のループを生む根本原因
    世に出したものを維持し続ける大変さ
    • デプロイやメンテナンスが toil
    • コンテナ?そんなものはない
    • 1つのサーバで無秩序に複数サービス動かしている
    • 手作業ワンオペ
    • デグレが怖い
    • テストがない
    • 監視もない
    19

    View full-size slide

  20. (再掲)個人開発周りの最近の取り組み
    • GitHub Organization を作ってリポジトリ移管
    • テストの用意
    • ユニットテスト、E2E テスト、Visual Regression Test など
    • CI / CD をちゃんと整備
    • Dependabot 導入
    • コンテナ化
    • パブリッククラウドのマネージドサービスに載せる
    • 監視の導入
    20

    View full-size slide

  21. (再掲)個人開発周りの最近の取り組み
    • GitHub Organization を作ってリポジトリ移管
    • テストの用意
    • ユニットテスト、E2E テスト、Visual Regression Test など
    • CI / CD をちゃんと整備
    • Dependabot 導入
    • コンテナ化
    • パブリッククラウドのマネージドサービスに載せる
    • 監視の導入
    21
    なぜやるのか?

    View full-size slide

  22. なぜやるのか?
    やる気を取り戻し、真に価値を提供するため
    • 自分依存を減らしたい
    • あわよくば、他人に任せられる状態にしたい
    • 他人を廃墟に招き入れたくない
    • やっぱりエンジニアとしてはモダンな技術使いたい
    • 普段の仕事にも還元できる
    これら取り組みは後にジャンプするための先行投資(しゃがみ)
    トレードオフとして、一時的に速は落ちる
    22

    View full-size slide

  23. 23
    ご清聴いただき
    ありがとうございました
    Arthur

    View full-size slide