2019年版 爆速プロトタイピングを支えるサービス 7選

NewsPicksエンジニアの久保です。
コミュニティチームという、NewsPicksを利用するユーザのみなさんが、より一層毎日使っていただけるようなアプリにするために、機能の開発や改善を行うチームで働いています。

## サービス作りで大事にしていること 
とにかくサービスを作ることが好きで、プライベートでも様々なサービスを作っています。
普段のサービス作り（特に**0→1フェーズ**）で、大事にしていることが、

### *“最速でMVP（Minimum Viable Product）を作り、ユーザのフィードバックを取り込みながら、プロダクトを高速でブラッシュアップしていく”*

です。

そのため、

```
・できるだけ時間をかけずにアイデアを可視化・具現化する（デザイン）
・開発する機能を限定し、極力開発工数を減らす（開発）
```

が重要になってきます。
そんな MVP = プロトタイプ 作りに、**今年役立ったツール・サービス**をご紹介できればと思います。
ではさっそく行きましょう！


## まずは、デザイン・モック編
### [Adobe XD](https://www.adobe.com/jp/products/xd.html)
<img width="1439" alt="スクリーンショット 2019-12-15 20.41.08.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/107486/94c51738-3221-f64d-17e6-5cfbe689eeba.png">

- `①ワイヤーフレーム・デザイン作成` `②プロトタイプ化（画面遷移）` `③共有・コメント` の3つの機能がメイン。デザイン → プロトタイプ → 認識すり合わせ → デザイン → プロトタイプ → ...のサイクルを回しやすいのが一番の魅力。
- 今年に入ってから、Photoshopとの連携が強化され（Photoshopでの変更内容がリアルタイムで反映）、かつ共同編集機能も可能になり、ますます使いやすくなっています。
- twitterでの[アンケート](https://twitter.com/goando/status/1120508650127265792)でもその人気が伺えます。
- 少人数ででデザインし、管理する分には十分。逆に、複数人で大規模に、かつ高度なデザインをする場合は、[Sketch](https://www.sketch.com/) or [Figma](https://www.figma.com/) がおすすめです。

### [Drama](https://www.drama.app/)
<img width="1438" alt="スクリーンショット 2019-12-15 20.45.50.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/107486/88774ef3-6e65-1937-c906-e50da7584651.png">


- 基本的に、提供している機能にAdobe XDとそれほど大きな違いはないです。
- 一番の違いは、3Dなどの高度なアニメーションが簡単に作成できる点。履歴管理もシンプルで分かりやすく使いやすいのはGoodポイントです。
- 個人的には、Adobe XDとの棲み分けは、 **より高度に複雑なプロトタイピング** がしたい場合は、`Drama`。 **シンプルに早くプロトタイピング** がしたい場合は `Adobe XD` で使い分けています。

## 避けては通れない、バックエンド開発編
### [Firebase](https://firebase.google.com/?hl=ja)
![maxresdefault.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/107486/c1baa427-863f-c3f8-5a64-d6239586d9b7.jpeg)


- mBaaS（mobile Backend as a Service）の雄。
- バックエンドとして必要な機能のほとんどをFirebase1つで賄えるすごさ。
- バックエンドAPIとしての`Cloud Functions`、用途別の異なるデータベース `Cloud Firestore`・`Cloud Storage`・`Realtime Database`、認証基盤（`Firebase Authentication`）、静的コンテンツのホスティング（`Firebase Hosting`）など。
- そして、バックエンド開発だけではなく、アプリの品質改善のための`Crashlytics`や`Peformance Monitoring`、分析・予測、機械学習などなど。豊富すぎて使わない手はないです。
- NewsPicksでは、[こちら](https://qiita.com/masahide318/items/eb3034c7fe57eb4d13cc)でも書いていますが、最近Firebase Predictionsも導入しました!

<img width="924" alt="スクリーンショット 2019-12-16 23.33.01.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/107486/e729fc6a-5b89-8192-7cc9-6dbe028114b0.png">


### [AWS Amplify](https://aws-amplify.github.io/)
<img width="1434" alt="スクリーンショット 2019-12-17 0.01.22.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/107486/30d27d13-507b-3dff-f920-7d3b1697757b.png">


- Firebaseの対となるサービス。
- そこまでガッツリ触ったことはないけど、React、Vue、AngularのSDKもあり、Webアプリケーションの開発だとFirebaseより、Amplifyの方が良さそう。
- [スタートアップが AWS Amplify を使うべき3つの理由](https://aws.amazon.com/jp/blogs/startup/techblog-3reasons-amplify/) で、わかりやすくまとめてくれています。
![Screen-Shot-2019-09-30-at-10.40.56.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/107486/8f87e3d6-2f40-c980-4466-c999069d4f4e.jpeg)

- AWSの他のマネージドなサービスと組み合わせると、よりスピーディーに開発ができるのが、Amplifyの良さですね。

## お次は、静的サイトジェネレーター編
### [Hugo](https://gohugo.io/)
<img width="1440" alt="スクリーンショット 2019-12-17 0.12.30.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/107486/db8187e3-9a9b-7399-ae88-b7b413bfb7b7.png">

- 非常にベタで、恐縮ですが、やっぱりHugo。間違いなく、最速で静的なサイトを構築できるサービスの1つ。
- 個人的には、Reactベースの[Gatsby](https://www.gatsbyjs.org/)もいいが、[Theme](https://themes.gohugo.io/)の多さで圧倒的にHugo。

## 絶対に外せない、コンテンツ管理編
### [Contentful](https://www.contentful.com/)
<img width="1437" alt="スクリーンショット 2019-12-17 0.19.09.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/107486/f27028a7-69d1-f760-ac74-59d2c1a62e04.png">


- Headless CMSの一角。
- コンテンツ作成の管理画面も直感的で非常に使いやすい。ただし、1つのコンテンツを作るのにいくつものオブジェクトを管理画面で作成しないといけないのが、本格導入後の運用を考えるとちょっと手間で負担。
- NewsPicksでも、 [The Academia](https://theacademia.com/)というNewsPicksアカデミア運営のメディアで、contentfulを利用しています。

（ex.コンテンツ作成画面）
<img width="1440" alt="スクリーンショット 2019-12-17 0.22.05.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/107486/e75b0941-f174-121c-c4a2-30a75ff65676.png">

- [SDK](https://github.com/contentful)が提供されているが、[Java SDK](https://github.com/contentful/contentful.java)に関していうと、個人的にはあまりおすすめしない。Contentful独自のオブジェクトの扱いが少し厄介で、REST API経由でコンテンツを取得する方がBetter。

## 最後は、ホスティング編
### [ZEIT Now](https://zeit.co/)
<img width="1435" alt="スクリーンショット 2019-12-17 0.27.12.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/107486/2e64f6e0-c507-fa46-d3cd-bcbbf317f238.png">


- とにかく無駄を排除し、洗練されている。個人的に、今年最も感動したプロダクト。
- Githubと連携し、ボタンを数クリックするだけで、静的コンテンツやJAMStackなシステムをconfigなしでdeployできる。もちろんCLIで、簡単にdeployも可能。
- あの、`Next.js` や `Hyper` を手掛けている[ZEIT](https://zeit.co/about)が開発。さすがとしか言いようがない。
<img width="956" alt="スクリーンショット 2019-12-17 0.31.27.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/107486/148127cb-a850-9f55-cbf0-f2d8193af8c7.png">


## 最後に
以上、2019年、私が使ったサービス・ツールの中で、もっとも良かった7つをご紹介してきました。
プロダクトの、0→1フェーズには、こういったサービスを駆使して、**より重要なコンセプトの検証** や **サービスのコアとなる機能の開発に集中できること** が一番重要ですね。限られたリソースの中で **どれだけ速く、ユーザに触ってもらい、改善して** いけるかが、明暗を分けるように思います。

明日は、Androidエンジニアの @masato2019 です！お楽しみに！