社内LT大会の資料
Excelは殺す絶対にだ発表: Excelの用途外利用を許さない市民の会
View Slide
自己紹介奈良阪@Webアーキ●taro(中?規模長期運用中ゲーム)運用勢(歴1年)●Windowsと仲良くするマン●JavaScript/ElectronでGUI●今期の嫁 宮瀬未尋(ワガハイのピンク)
私は如何にして心配するのを止めてExcelを憎むようになったか
そもそもなぜExcelか
Excelは便利●非常に使いやすい表UI●一般向け表計算ソフトとして十分な機能●複雑なテーブルも1ファイルで受け渡し可能●みんな開ける●みんな使える
一方でExcelが不得意なこと●複数人でのデータ編集●構造化データなど二次元データではないデータ●データの差分をとる●自動化(VBAは保守性が悪い)●バージョン管理ツール(git等)との相性←やってる ↓使ってる←やってる←やってる↑入れてるつらいtaroチームの運用
なぜつらいかExcelの用途外利用
Excelは個人作業用ソフトです●ゲームデータ作成は複数人作業●「ブックの共有」は力不足●Excel Onlineの共有もWeb編集のみ&並べ替え不可など無理矢理感あふれる機能→チャットワークのタスク機能で編集ロック違う!複数人編集は出来ないものなんだ!
Excelは二次元表を扱うソフトです●再帰構造を持つスキル用JSONのパラメータ制御→Ruby/JenkinsでExcelと雛形のJSON読んで値を挿入してファイル生成それ用のツール作りましょう本当にお願いします
Excelは表計算ソフトです●クエスト・ガチャなどの複雑な関連データを自動生成→VBAマクロでフォームに入れて自動 生成ボタンポチーVBAの保守性は本当にヤバい複雑ならツール作るべき「VBAナメてた」でSpeaker Deckを検索!
Excelは非エンジニア用ソフトです●マスターデータソースとして差分確認、バージョン管理の必要●差分についてはWinMergeでプラグインがあるらしいが…→YAMLに変換して差分確認→数GB~数十GBのリポジトリ変換必須のマスターデータつらいのでやめよう
ゲームのデータ投入はExcelにとって苦手なことばかり
新規PJでもつらみを抱えないために用途外利用をなくそうExcelの用途外利用を許さない市民の会
(解決策1)ExcelをUIとして使う●Excelは表計算UIとして優れている●複数人編集、バージョン管理、差分確認にはファイル分割やYAMLが優れている→Excelを差分データを編集するUIとして 部分的に利用するdmaster(社内ライブラリ)
(解決策2)Excelを使わない●Excelはゲームデータ投入ツールとして不向き→GoogleSpreadsheetは複数人編集可能、API アクセスもありUIとして利用しやすい→SeedTableというExcel風UIのseed YAML 編集ツールを開発中●taroの方式でExcelを使うとつらさから逃れられない
どちらにせよ●自動化必須な複雑データや非二次元データ等そもそもデータもExcelの用途外なものは別ツール利用を!→編集管理画面や「WithSchemaEditor」等
まとめ●複数人で中長期運用するゲームのデータ投入という用途に対して、Excelは非常に不向きな側面があるので単純に採用してはいけない●代わりにdmaster、GoogleSpreadsheetなどの解決策がある●運用以前にデータからしてExcel用途外というものはしばしば存在するので、適切にツールを作るべき
広報●Excelの用途外利用を許さない市民の会(代表:奈良阪)は脱Excelのためのツールを制作しています。– SeedTable– WithSchemaEditor●お気軽にご利用・ご協力・お問い合わせ下さいExcelの用途外利用を許さない市民の会
すでにExcel運用のチーム向け●またExcel運用のつらみの一つである「データ投入の遅さ」解消のためのツールも制作しています– xlsx2seed●是非ご活用下さいExcelの用途外利用を許さない市民の会