島までは遠い 〜サークルアラウンド株式会社代表佐藤のブログ〜

佐藤正志@サークルアラウンド株式会社のことが少しわかる場所。プログラマーを育てるトレーナーとして、現役のソフトウェア技術者として、経営者の端くれとして、想うことをつづる。

年末年始で「JSON一発」というシャレみたいなサービスを作った話

はじめに

弊社で一緒にお仕事していたり、バックオフィスを手伝ってくださる方とでささやかな忘年会を開いたのですが、その二次会で「年末年始でなんか作りましょうよ」的な話が上がり、その場の勢いで「やろうやろう」という感じになりました。その顛末となんか出来上がったものの紹介です。

作戦会議

弊社の入ってるシェアオフィスCASE Shinjukuの会議室に、当時同じプロジェクトで働いていたalgolaboの川人さん、1年ほど前のプロジェクトで右腕として働いてくれたアイデア家業の池田さんをはじめ、弊社周辺で働いてくれている技術者数名で集まりました。

作るもの

「ものすごく簡単に公開JSONを作れるサービス」です。JSONは生のJSONだけではなくて、マクロ機能が自動的にダミーの人名を作ったりしてくれます。 利用イメージとしては例えばajaxでデータを持ってくるサービスのプロトを作る際、サーバーサイドを用意することのコストをかけたくない時にサクッと通信先を用意するというシーンです。テストでも使えるんじゃないかと言われてもいます。

作り方

基本的にみんな慣れている形がだいたい同じだったので下記のやり方で。

  • Rails
  • GitHub-Flow
  • CircleCIでHerokuデプロイ

GitHub-Flow周辺の流れは以下です。

  1. タスクを切る
  2. 勝手に自己アサインしてPR
  3. レビュー権限のある三人のうち誰かがOK出したらマージ
  4. CircleCIでテストしてHerokuへデプロイ

期間

12/20 - 1/3(のつもりが1/10まで延期)

一応年末年始でなるべく収めないとモチベーションが維持できないと思ったので超短期でした。 そうしといて良かったです。実際10日以降はほとんど稼働していません。

デザイン

「ファイ◯ー!!イッパーーーーツ!!」 のイメージから考えてくれたキャッチーなデザインです。 弊社トレーニングでJSを学んだ岡田さんに頼みました。

経過

  • 12/31 までに大枠が共有できて、マクロはRubyの関数を作ればいいよという感じで担当者が並行して実装。全てオンライン進行。
  • 1/3 には私の自宅に何人かで集まって最低限の切り口で実装完了。
  • 1/10 までにデザイン調整や仕上げなど。

結果

JSON一発

こんな感じです。下記のようなJSONを返すURLをサクッと作れます。

https://jsonone.herokuapp.com/a690ac6431ce45f4b2c949718d9cad05

ご注意

アカウント管理とかしていないので、プロジェクトのURLがばれると誰でも編集できます(URLが認証キーみたいな扱いをされている感じ)。まぁその辺は許してください。あくまでそのURLがバレない程度(もしくはバレても問題ない程度)の使い方を今はしていただければ幸いです。興味ある人いたら声かけてくれたら色々考えるかもしれません。

お礼

今回開発に関わってくれたメンバーは記事に入っていない方も何人か居ます。名前が出しにくかったり出せなかったりしますが、忙しい時期に色々とアクションしてくれて楽しい開発になりました。ありがとうございました!

私の反省

なんか途中でroutesの設計に苦しんだりして無駄にコストをかけてしまいました。Railsのレールにちゃんと乗った形にこだわった方が結果的に良いのだなと改めて感じた次第です。

ただ、こういうところは本当は若手に任せて成長を促したかったなと思う次第。もうあんまり自分がコーディングのところでリードしないで、レビュアーとかで活躍する方へシフトする方が皆にとって得になると思っています。次回はそういうスタンスもできればなぁ。