Webサービスは新しい何かを生み出すプラットフォーム | [書評]Webサービスのつくり方 ~「新しい」を生み出すための33のエッセイ


Webサービスとは

Webサービスが何を指すのかは、冒頭の「はじめに」のところで、著者の和田祐介さんが定義しています。

それは、私達が日々インターネットで使っているような、特有の価値を提供するWeb上のサービスやコンテンツを指します。

困ったことに、「Webサービス」って別の意味で使われることもあるんですよね。ウィキペディアの場合は、次のように定義しています。

HTTPなどのインターネット関連技術を応用して、SOAPと呼ばれるXML形式のプロトコルを用いメッセージの送受信を行う技術、またはそれを適用したサービス。

私は、後者の方が馴染み深いので、著者の定義は、「Webサービスサイト」の方がわかりやすいと思います。ちなみに、私はウィキペディアの方のWebサービスの意味で述べるときには、Web APIとか、Web Services APIとか、必ずAPIを付けてわかり易くしています。著者も本文では、「Web API」を使用しています。

ここでは、「Webサービス」は著者の定義に従いましょう。

難しいコンピュータ本ではなく、エッセイです

著者も述べていますが、この本は、Webサービスの作り方を書いているものの、教科書にはなっていなくて、散文を書き連ねてできています。読みやすさ重視ですね。気楽に読めます。

目次を見ると、全5章は次のようなタイトルが付いています。
・第1章 心構えとした準備
・第2章 企画
・第3章 設計
・第4章 開発
・第5章 プロモーションと運用

教科書ではないので、第1章は心構えから始まります。ここで、最初に著者が言いたいのは「とにかくコードを書け」ということです。リーナス・トーバルズさん(Linuxの生みの親)の言葉を引用しています。

だけど最終的には、唯一重要なものは現実のコードと技術そのものだよ。向上心もなくコードを書こうとしない人でもコメントはできるし、こうするべきだとか、ああするべきだとか、そうしちゃいけないとか言うこともできるけど、結局はそういった声は問題にならない。唯一重要なものはコードなんだ。

あとは、Macの使い方とかEmacs(エディタです)の使い方とか、本当に散文なので読み飛ばしても良いぐらいです。「ふうーん」ぐらいで可。

第2章の「企画」から、本当の「Webサービスの作り方」です。とは、言っても、著者の頭の中に入っている情報が書き出されているものなので、「先達は、こんな風にして企画していたのか。よし、参考にしてみよう」程度で読んだ方が良いです。ただし、リスク分析が書かれていて、その点については、「なるほど」と思わされました。

第3章の「設計」は、ユースケース作成、DB設計、ページ作成(少しだけ)なのですが、URI(Webページのアドレスだと思ってください)が変わった場合の影響について書かれています。ここは「なるほどね」と思わされました。

第4章の「開発」では、いきなり「Instagramの今の写真を検索するサービス」を、JavaScriptを使用して30分で作ることが書かれています。私は、「マジか!そんなに早くはできない。バグる!」と思いましたが、著者はできたみたいです。すごい。ここのポイントは、「フロントのブラウザで動作するJavaScriptだけでも、Webサービスのモックアップはできる」ということです。「とにかくコードを書く」趣旨だと思います。そのあとは、Web API(さっき書きましたね)を使い倒す、MVC、O/R Mapper、WAF、テストと、「Webサービスに関係あるんだけど、本当にこれでいいの?」と思わせる書き方です。

第5章は、他と比べるとまとも(!?)で、リリース時からその後の運用まで考えるべきことが書かれています。

最後に

タイトルにあるようにこれは33個のエッセイをまとめた本です。

エッセイですので、著者の思考・経験に左右されますので、人によっては物足りないかもしれません。しかし、実務でWebサービスと格闘して活躍されている著者の和田さんが、「Webサービスはこうして作るのだ」と示してくれている、道標です。

これから、Webサービスを作る人、またはすでに作っているが他の人の考え方も学んでみたいという意欲的な方は、この本を読んでみて損はないと思います。


あわせて読みたい