BETA

【個人開発】ツイッターにカウントをシェアできるwebサービスをリリースしました【ツイッター1000いいねover】

投稿日:2018-12-14
最終更新:2018-12-15
※この記事は外部サイト(https://qiita.com/retoruto_carry/items/be8...)からのクロス投稿です

こんにちわ。れとるときゃりー(@retoruto_carry)と申します。

1年前からwebを勉強しはじめて、ひとりでwebサービスを作りまくっている大学3年生です。

新しくwebサービスをリリースしたので、

  • 何を作ったか
  • どうして作ったか
  • どういう技術を使ったか
  • 苦労したこと
  • 感想

等を書いていこうと思います。

作ったもの

かぞえったーというwebサービスを作りました。

ツイッターに、カウントをツイッターにシェアできるサービスです。

「うでたて」「勉強」「プログラミング」「つらいときに押すカウンター」など、なんでも数えてツイッターにシェアできます!

サービスのメイン画面はこんな感じです。

例えば、こういう感じで使ってくれています!

私のカウンター

ここから、みんながどんな感じで使っているのか見ることが出来ます。

試してみてください かぞえったー

どうしてこのサービスを作ったか

少し前にみんなのボタンメーカーというサービスを作りました。

みんなのボタンメーカーについてはこの記事にまとめています
「ツイッターでつぶやけるボタン」を簡単に作成できるサービスをリリースしました【個人開発】

このサービスはかなりヒットして、リリースから3ヶ月間の累計で20万PVほどの規模に成長しています。

ただ、みんなのボタンメーカーのようなネタ系のコンテンツは、ユーザーの継続率があまり高くありません。

次は、ユーザーが毎日戻って来てくれるような、「継続性」を意識したサービスを作りたいなと思い、新しく作ったのが、かぞえったーというサービスです。

ノリと勢いで、紙にデザインを書き上げてしまって、勢いで2日間でプロトタイプを作りました。

↓企画を考えたときのメモ(汚い)

どういう技術で動いているか

バックエンド

Laravel

超有名なphpでwebサービスを作る用のフレームワークです。いつもこれを使ってwebサービスを作ってるので、慣れています。

Laravel Socialite

laravelでtwitterログインをできるようにしています。

Intervention Image

画像生成に使っています。画像に文字を入れたり、画像を上から描写したり色々出来ます。この記事がとても参考になりました。
画像生成は苦労しました。そのあたりのことは、後述しています。

laravel-uuid

例えば、https://count.yaruzo.me/post/{postのid} の {postのid}をランダムなものにできます。
サービス全体での記事数等が推測されないために使っています。

フロントエンド

jQuery

bootstrap4

いい感じにレスポンシブルなサイトが作れるcssフレームワークです。いつもこれを使っています。CSS書かなくていいので最高に便利。

Google Fonts

サービス全体にかわいいフォントを適用しています。「M PLUS Rounded 1c」というフォントを使っています。

CSS3 Animation Cheat Sheet

CSSアニメーションのライブラリです。ボタンをふわふわさせるのに使っています。
ログインやシェア等の誘導に便利です。

odometer

カウンターがくるくる回るライブラリです。カウントを増やしたときにそれっぽいアニメーションをするのに使っています。

fontawesome

アイコンライブラリです。めっちゃいっぱい種類あります。超便利です。
↓こんな感じで、UIにアイコンを使うと可愛くなります。

twemoji

twitter絵文字ライブラリです。twiiterの絵文字をwebサイトでも使えるようなります。
↓このへんの絵文字に使っています。

googleアナリティクス

アクセス解析に使うやつです。

PWA(Service Worker)

「ホーム画面に追加」だけできるようにしました。通知とかは実装してないです。
これを参考にしてやりました。めっちゃ簡単でした。

インフラ

ConoHaのVPS

バーチャルホストを使って、一つのサーバーで複数サイトを運営しています。サーバー代が節約できて良いです。
ConoHaは最低価格月額630円で安いしデポジット制で楽です。
同一サーバーにてみんなのボタンメーカーや、やるぞ宣言という別サービスも運用しています。

deployer

PHP製のデプロイツールです。コマンド一発でデプロイできます。

AWS S3

画像を保存するのに使っています。Laravelとの連携が容易です。
これを参考にして、cloudflareに通してリクエストを抑えてるつもりだけど、効果のほどは不明です。
flysystem-aws-s3-v3というlaravelが公式で出しているAWS S3用プラグインを使ってlaravelと連携できます。

頑張ったこと

デザイン

画像生成

自動生成される画像のデザインにめっちゃ悩みました。
↓こういうやつ↓

デザインを先にオンライン画像編集ツールで「あーでもないこーでもない」といいながら頑張って作りました。

また、自動生成される画像の中の文字がはみ出ないように調整していい感じにピッタリハマるようにするのが大変でした。
結局、以下のようなコードを書いて無理やり解決しました...
クソコードなのは理解している。

public function calcTitleFontSize($title_mb_length)  
    {  
        //割と適当  
        if ($title_mb_length < 34) {  
            $fontsize = 27;  
        } elseif ($title_mb_length < 38) {  
            $fontsize = 24;  
        } elseif ($title_mb_length < 42 ) {  
            $fontsize = 22;  
        } elseif ($title_mb_length < 48 ) {  
            $fontsize = 20;  
        } elseif ($title_mb_length < 54 ) {  
            $fontsize = 18;  
        } elseif ($title_mb_length < 58 ) {  
            $fontsize = 17;  
        } elseif ($title_mb_length < 62) {  
            $fontsize = 16;  
        } elseif ($title_mb_length < 66) {  
            $fontsize = 14.3;  
        } else {  
            $fontsize = 13.6;  
        }  
        return $fontsize;  
    }  

トップページ

かぞえったーのトップページはいらすとやを駆使して作りました。
コーディングしながらデザインを考えるのはしんどすぎたので、以下のやりかたで作りました。
流れとしては

①紙で考える

②パワポで考える

③コードに落とし込む

GitHubをかなり活用して開発した

こんな感じで開発していました。

GitHubのプロジェクト機能がとても便利で、カンバン方式でissueを管理して開発を進めました。これめっちゃ良いぞ!

開発期間など

かぞえったーの開発期間は、2ヶ月間です。しかし実際にコードを書いていたのは、17日間です。
途中で謎のエラーが解決できず、やる気なくし1ヶ月半ほど放置していました。
結局、エラーが出ていてたツールをすべて切り捨てて、イケてない案の方のツールに変えて再開しました。

ちなみに、放置してた間は、webサービス開発RTAをしておふざけサービスを作ったり、ポートフォリオサイトを作ったりして遊んでました。

不安

正直、サービスが本当に使ってもらえるか心配でした。
「みんな何につかうのか思いつかなくてスルーするんじゃないのか」みたいな気持ちが大きかったです。
人に聞いてもいまいちな反応しか帰ってこないですし、どんどん自信がなくってやる気が完全になくなりました。
ただ、結局やりきらないと気がすまない性格なので、最後までやりきりました。

リリースしてみてどうだったか

思ったより、たくさんの人の目にかぞえったーに触れてもらうことはできました。記事を書いてる時点で、リリース報告のツイートは1000いいねを超えました。

作られたカウンターは、原稿やイラストを書いてる人のカウンターが以外と多くてびっくりしました。あまり予想していなかったです。また、想定通り、読書や勉強、プログラミングに使ってくれている人もいます。

しかし、やはり懸念していた通り、「面白そうだけど何に使っていいのかわからない」みたいな人が少し多かった印象です。
「なんにでも使っていいよ」というサービスより、何に使うかを絞って提供するほうがいいんだろうな、という知見を得ました。

一方で、「こういうサービスが欲しかった!ありがとう!」とわざわざリプライを送ってくれる利用者の方もいました。
「サボった日が表示されず、ただカウントがどんどん溜まっていくのでやる気が失われない」というコンセプトが受けたようです。
創作活動の日記のように使ってくれています。

感想

「このサービスは本当にウケるんだろうか」「今私はゴミを作っているのではないのか」という不安に苛まれながらサービスを作っていました。

しかし、結局のところ「サービスは出してみなければ世の中の人が使ってくれるかなんてわからない」という面が大きいことを実感しました。

作る前に悩んだり、人にアイデアのよしあしを聞くより、開発サイクルを早めて、どんどんリリースしてバットを降る回数をふやすことこそが、個人開発者にとって効率が良いのではないかと思います。

今回もたくさんの知見と経験が身につきました。

これからもどんどんバットを振っていきたいです。

ここまで読んでくれた方へ

ここまで読んでくださりありがとうございます。

かぞえったーでカウンターを作ってみて遊んでください。

  • プログラミングしたら押すカウンター
  • 作業したらおすカウンター
  • にゃーん
  • つらいときに押すカウンター
  • うでたて
  • イラスト

など、何でもいいので試してみてください

フィードバックやバグがあればツイッター: @retoruto_carryまで報告してくれると喜びます。

いいねやコメント、SNSでの共有等をしてくださると、今後の励みになります。よろしくお願いします。

それから、こちらのツイートがもう少しで1000RTなので、よろしければRTしてくださると嬉しいです。

良かったらツイッター(@retoruto_carry)もフォローしてね

技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

@retorutocarryの技術ブログ

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
目次をみる
技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
or 外部アカウントではじめる
10秒で技術ブログが作れます!