「このコード、他でも使えそう」をシェアできるWebサービス「Comopet」のα版をリリースしました







「このコード、他でも使えそう」をシェアするWebサービス「comopet」をローンチしました。

https://www.comopet.space/

githubアカウントがあればフルに機能を使うことができますが、なくても使用することができます。

着想

自分がコーディング作業をしているときに結構「あとで使えそう」なコードスニペットは保存しておくのですが、それをシェア、他人のコードスニペットも見れるようになると役立つのではないかという発想が丸亀製麺でうどんを食べているときに浮かんだので、1日程度でリリースまでいけるならやってみようかな、という気持ちで実装しました。

Qiitaやブログサイトなども役に立つのですが、自分はブログなどに書かれた文章を読んでいくより「コードさえあれば十分だ」という気持ちになることが多々あるので、あえてコードと検索用のタイトルのみ入力する形式を取っています。

コーディング時に直面する問題と解決するコードが一対一に対応できれば良いな、とか思っていたりします。

ファーストローンチまでの期間

着想から実働時間12時間程度でファーストローンチしました。

途中、ローンチを急ぐためドロップした機能が多数あるので、後を追ってリリースしていけたらと思っています。

アーキテクチャ

サーバーサイドはRails,フロントエンドはBootstrap+Vue.jsとerb、インフラはherokuを使用しています。

nuxt.js+firebaseというアーキテクチャにも挑戦してみたかったのですが、ファーストローンチまでの期間が長くなると自分のモチベーションが折れてしまいそうだったのでそこそこ慣れているアーキテクチャで組みました。

また、普段はslimを使用していたのですが、今回思い切ってslimを捨ててerbを使いました。

slimだと記述量が少なくなるというメリットはあるのですが、フロントエンドのコンポーネントをVueへ移行するときのコストを上げてしまう(VueComponentでは当然ながらSlimは使えません)という難点があります。

Ruby 2.5でerbも大幅な高速化をしましたし、IDEの補完を駆使すればerbでもそれほどストレスなく書けるかな、とも思いましたし、実際書いていて苦痛には感じませんでした。