読者です 読者をやめる 読者になる 読者になる

Shoichi Matsuda's diary

このブログは移転しました。 https://shoma2da.net/ が新しいブログです。

少人数チームにおすすめ!無料で使える便利ツールまとめ

Travis CI heroku 継続的インテグレーション GitHub チーム 効率化

私事ですが会社とは別に少人数チーム(〜3、4人前後)でチーム開発してます。

これまでもいくつかのプロジェクトをやってきたのですが、少しずつ使うツールが固まってきたので一度まとめておきたいと思います。

お気に入りのツールたち

今回は以下の6個のツールを紹介したいと思います。

  • Facebook
  • Line
  • Trello
  • GitHub
  • Travis CI
  • Heroku

連絡系

連絡のためのツールは「ほぼ必ずみんなが普段から使っているもの」というのを意識して選ぶことが多いです。

こうしたツールであればコミュニケーション手段の導入コストはほぼ0です。

最近流行りのChatWorkやHipChatも確かに便利なのですが、やはり普段使いのものではないので中にはレスポンスが遅くなってしまう人も現れてしまうでしょう。

 

Facebook

f:id:shoma2da:20140417190906p:plain
http://facebook.com/
まずはみなさんご存知のFacebookです。

使い方としてはチーム名を付けたグループを作成してメンバー間でコミュニケーションします。
後からチームメンバーが増えても過去のログは全て追えます。また、ファイル管理/整理ができる点もポイントです。

LINEやChatWork、HipChatとの違いとしては会話がスレッド単位で進みます。

プロジェクト内で話す内容は常に一つとは限らないので(例えばDB実装の話とプロモーションの話、みたいな感じです。)、そんな時にはスレッド単位であることにありがたみを感じます。

LINE

f:id:shoma2da:20140417191246p:plain

http://line.me/ja/
もはやインフラ、LINEです。

こちらもFacebookと同じくグループを作って管理します。

LINEの場合はFacebookよりもスピードが求められる場面で使うことが多いです。
「ログインidなに?」「あれって誰が知ってるんだっけ?」といったちょっとした疑問や「レビューお願い!」という取り急ぎのお願いなどです。

ソースコード系

続いてソースコードや、リリース周りのお話です。

主にエンジニアが担当する部分ですね。

個人的には以下に紹介する3つはどれも欠かせない必須のツールです。

GitHub

f:id:shoma2da:20140417193746p:plain

https://github.com/
まずはGitHubです。

無料だとソースコードは公開されます。ただ、公開といってもほとんどの場合誰も見てませんw(後述しますがTravisのことを考えるとむしろ公開されていたほうが都合が良いです。)

個人的にはプロダクトが小さいうちは減るものも特に無いので公開でも全く気にしていないです。

あとは意外と使っている人が少ないような気がするのですが、複数人で進める場合はOrganization機能が便利です。グループ機能のようなものですね。
Introducing Organizations

複数人をOrganizationの管理者や開発者として権限登録できます。

heroku

f:id:shoma2da:20140417210340p:plain

https://heroku.com/
無料で使えるPaaS(平たく説明するとアプリケーションを動かすための環境を用意しているサービス)です。

開発者がやることとしてはソースコードを書いてherokuのサーバにpushするだけです。これだけでアプリケーションを動作させられます。
メール送信やDB、Cron処理などもプラグインを使って自由自在です。

無料の範囲は月あたりの使用時間やデータ量などで決まっていますが、相当なユーザが集まらない限り無料の範囲を超えることはほとんどありません。

Ruby、Java、Python、Clojure、Scala、Node.js、Playなど様々な言語に対応しているので特別言語を使った開発をしていなければほとんどの場合に対応可能でしょう。

Travis CI

f:id:shoma2da:20140417211900p:plain

https://travis-ci.org/
CI、と名の付いている通り継続的インテグレーションサービスです。

GitHubのリポジトリを監視していて自動テストや自動ビルド、herokuと連携して自動デプロイまでできます。

GitHubの公開リポジトリが対象の場合はずっと無料です。素晴らしい!

設定も非常に簡単でかなりの使いやすさです。

タスク管理系

最後にタスク管理です。いくつか試したのですが以下に紹介するTrelloが一番しっくりきています。

Trello

f:id:shoma2da:20140417213010p:plain

https://trello.com/
かんばん風のインタフェース(Trello内ではBoardと呼んでいます)を提供しているサービスです。サクサク操作できてかなり心地よいです。

もちろん複数人で同じBoardを操作できるので、チームでの管理もお手のものです。他の人が何をやっているのかがわかるだけでかなりスムーズにプロジェクトは進むはずです。

Board内の各列には以下のような使い方をしています。1つのタスクは長くても2〜3日以内で終わる大きさのイメージですね。

  • アイディア:思いついたことをとにかく誰でも入れていく場所。タスクに分解前
  • やること:終わりが明確になった、これからやるタスク
  • やってること:たった今着手のタスク
  • レビュー中:作業が終わってレビューしているタスク
  • 終わったこと:レビューも終わって作業終了したタスク

Android / iPhoneアプリも出ているので手軽にチームの状況を把握できます。