DevDocsはソフトウェア開発者が共通に使えるよう、複数のリファレンスドキュメントを1つにまとめたWebサイトだ。1つにまとめた利点を活かして、検索インターフェイス、キーボードショートカット、共通のレイアウトや目次など、全API横断して使える機能を提供している。
DevDocのビジョンステートメントにはこう書かれている。
DevDocsの目的は、読めて検索できるリファレンスドキュメントを、高速に簡単に楽しくすることです。このアプリの主たる目標は次の通りです。ブートおよびロード時間をできるだけ短くすること。品質、スピード、検索結果の順位を改善すること。キャッシュやその他パフォーマンス最適化を最大限利用すること。クリーンで読みやすいユーザインターフェイスを保つこと。完全なキーボードナビゲーションをサポートすること。すべてのドキュメントを通して一貫性のあるタイポグラフィおよびデザインにすることで、「コンテキストスイッチ」をなくすこと。特定カテゴリのコンテンツ(API/リファレンス)にフォーカスすること、そして多くの開発者にとって最低限有用なものだけをインデックス付けすることで、がらくたの山にしないこと。
DevDocsは今のところ、主にWeb開発を対象としたドキュメントを提供している。標準(HTML、HTTP、CSSなど)、言語(Ruby、Python、JavaScriptなど)、ライブラリ(jQuery、Emberなど)、プロダクト(Ruby on Rails、PostgreSQL、Redis、Gitなど)。
DevDocsの作者、Thibaut Courouble氏はInfoQに対して、さらなるドキュメントの追加を進めているところだと語った。「私は現在、Linux manページに取り掛かったところで、Bash、C、C++、D3.js、Knockout.jsも短期的なToDoリストに入っています。」
DevDocsのHTMLホームページを見れば、DevDocsがどのようなものかがよくわかる。
DevDocsで公開されているドキュメントはすべてスクレイピングしたもので、即座に更新されるわけではない。Thibaut氏はこう言っている。「既存のドキュメントは頻繁に、通常は新しいバージョンがリリースされて数日以内に更新されます。リリースを見落していれば、ユーザがTrelloボードに更新をリクエストしてくれるとありがたいです」
DevDocsはオープンソース化されており、コントリビュータを歓迎している。だれでもコントリビュート可能だが、新しいドキュメントをリクエストするための投票システムも用意されている。Thibaut氏はこう説明する。
新しいドキュメントをコントリビュートしてくれるのは大歓迎です。新しいドキュメントの追加と既存のドキュメントのメンテナンスに役立つ、柔軟なスクレイパー/ツールチェインを作るのには、たくさんの作業が必要になります。必要なことは、わずかな「品質ガイドライン」とドキュメントのライセンスが変更バージョンの再配布を許可していることだけです(Microsoft、Apple、Oracleは禁じています)。
どのドキュメントに取り組むかの選択については、もちろん投票が大きな要因で、あとは個人的好み(もうやりたいものはほとんど追加してしまいましたが)とオリジナルのドキュメントがどう構成されているか(つまり、追加するのにどれくらい時間がかかるか)です。
サイトの今後の計画については常にGitHubでトラックできるとThibaut氏は言う。
計画についてはGitHubに載せています。目下、スピードと使いやすさを最優先にしており、最適化とUIの調整についてアイデアがたくさんあります。
すぐに使えるオフライン可能なバージョン(今のところ、DevDocsをオフラインで使うにはコードをダウンロードする必要があります)と、スマートフォン/PhoneGapアプリ(現在のアプリはすでにモバイルに最適化されていますが、ネイティブアプリはオフラインで読むためのドキュメントをバンドルすることになるでしょう)を作りたいです。
さらに先には、IDEと密に連携することを考えています。すでにSublime TextやBrackets用のプラグインを作っている人もいます。