Etsy といえば、「お母さんにも分かるWeb 2.0」などと紹介されていたのも今や昔、少し前に Netflix で『メイドの手帖』を観ていたら、Etsy の名前が当たり前のように出てきて、もうそういう存在なんだなと思った次第。
その Etsy の開発ブログで、Docs-as-code の取り組みが紹介されている。
正直、ワタシはこの Docs as Code という言葉すら知らなかったのだが、ソフトウェア業界における長年の問題であるドキュメンテーションについて、コーディングと同じツール、手順を採用することで開発にドキュメンテーションを統合する手段として出てきたのが、この docs-as-code というアプローチなんですね。
ソフトウェアのソースコードの管理と同じくらいの厳密さをもってそのドキュメントを管理することを目的とするもので、ドキュメントの作成、バージョン管理、レビュー、公開をよりスムーズで効率的に行いながら、信頼性をあげることを目指すものである。
そのためにはドキュメンテーションをコードの付属品ではなく、ソフトウェア開発プロセスにおいてコーディングと同じくらい重要視しないといけないし、バージョン管理や共同作業を考えるなら Markdown などのプレーンテキスト形式を作成しないといけないし、ドキュメントの信頼性やユーザ体験を向上させるためにワークフローはできる限り自動化しないといけない。
Etsy では Docsbuilder という Markdown ベースのツールを使っているみたい。現在、150もの Docsbuilder のプロジェクトサイトで、6200ものページがホストされているというのだから、もはや Etsy の開発並びにデプロイのプロセスに統合されていると考えてよいのだろうな。
この手の話で文芸的プログラミングの話を持ち出すのは、さすがに時代がもう違うということなのだろう。ソフトウェアが複雑になれば、ドキュメントの利便性はチームの生産性に関わる問題になるだろう。docs-as-code アプローチについての決定版となる書籍が書かれる日はくるのだろうか。
ネタ元は O'Reilly Radar。