Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
5
Help us understand the problem. What is going on with this article?
@3S_Laboo

【個人開発】約25時間でバレンタインなTwitter webサービスの作成してリリースしました!

はじめに

2日くらい前に突然webサービスのアイデアが浮かびました。
バレンタインにも合いそうなwebサービスなので、とにかく速く製造してリリースするという目標でやってみました。

どんなwebサービス

chocopoi

「ちょこぽい」というwebサービスです。

2021-02-12_22h10_50.jpg

twitterで見かけた気になる人にchoco(≒いいね)をひそかに送るサービスです。
(twitter認証が必要です)
※ホントのチョコを渡すわけではありません。「いいね」を送るとお考え下さい。

バレンタインに、下駄箱を開けるとチョコが入っててドキドキみたいなのが体験できないかな?
という思いつきから作ったwebサービスです。

2021-02-12_22h20_13.jpg

chocoを渡す方法は簡単!
まず送りたい相手のユーザー名や@の名前を入れて、検索してください。
送りたいユーザーがでたら選択し「chocoをあげる」ボタンを押すだけ!

これでchocopoiちょこぽいアカウントさんにchocoが送られました。

chocopoiちょこぽいアカウントさんでログインします。

2021-02-12_22h35_18.jpg

chocopoiちょこぽいアカウントさんで見るとchocoが届いていることがわかります。
chocoのお返しもできます。

choco(≒いいね)をひそかに送って、気づいてもらえるかは相手次第です。
もらった側も少しうれしい(と、信じたい)

といったwebサービスです。

とにかく開発時間がない!

chocopoiは、いつご利用いただいてもいいと思っていますが、
バレンタインも近いので、とにかくバレンタインまでにリリースしたい。
でも思いついたのが2/11の朝7時でした。
ただ、ラッキーなのは、この日が建国記念日だったのです。
家族にごめんなさいして、頭の中で設計を始めました。

設計

こちらが設計書です。

IMG_20210212_224307.jpg

まぁ、急いでいるのでこんなもんです(笑)
というか時間がないので、とりあえず画面遷移とイメージ作って、製造に着手したかったです。

製造・テスト

インフラどうする?

これはGoogle App Engine一択でした。
インフラをほとんど気にしない 且つ PGに専念できること 且つ 慣れ親しんでるものがGoogle App Engineなので。(笑)
AWS Elastic Beanstalkは勉強中だったので、除外です。すぐにリリースできません。

サーバーサイドの言語

私の経験で一番長いのはjavaなので、javaにしようかと考えましたが、少し前にpythonがこんなに簡単なのかと感動したのでpython(Flask)を選択しました。
gaeにテンプレートが用意されているので、すぐにgaeにデプロイできる。
こんなに幸せなことはありません。

git clone https://github.com/GoogleCloudPlatform/python-docs-samples
cd python-docs-samples/appengine/standard_python3/building-an-app/building-an-app-1
gcloud app deploy

これだけでgaeにデプロイできます。
building-an-app-1配下のモジュールを加工したり、追加したりして作っていきます。
出来上がればデプロイコマンドを打ってgaeに上げるを繰り返せば出来上がります。

フロントエンドどうする?

フロントエンドにモダンjsフレームワークを導入することは諦めました。
Reactは覚えたのですが、開発速度が速いかと言えばまだ速くない。

なので、お久しぶりjQuery!

またお前を使う日が来るとは。。。

そして、久しぶりbootstrap!
君はあんまり使ったことないけど、少しでもおしゃれなサイトにしたいからよろしく!

そして
初めましてFlat-UI
https://designmodo.github.io/Flat-UI/

2021-02-12_23h08_12.jpg

これはFlatでそこそこおしゃれな仕上がりになりそうと期待して使用しました。
結果、大正解でした。フォントサイズのバランスとかちょうどいい!
手軽におしゃれな検索窓が出来たり、もう開発速度速い速い!

Twitter API

これはちょっと前にTwitter API使って遊んでいたので使用申請などは苦にならず。
こちらhttps://www.itti.jp/web-direction/how-to-apply-for-twitter-api/
のサイトとか見ればすんなりいくと思います。

データベース?

これもGoogle Cloud Datastore一択
python書くだけでテーブルみたいなの出来上がるし、もう言うことなしですね!

ドメイン

経費でドメインを買えるのがフリーランスのいいところ
chcopoi.pageはGoogle domainsで購入
https://domains.google/intl/ja_jp/
ここで買うとgaeの設定が楽
こことかを見て楽々ドメイン設定
https://www.apps-gcp.com/gae-apply-customdomain-and-ssl-setting/

材料はほぼそろった

ハートchocoのイラストは妻に依頼。妻は現在イラストレータ修行中。
あ、少し宣伝させてください。
妻が生み出したキャラクターの『たまご家族』がLINEスタンプで販売中です。
こんな感じ


よろしければ買ってください!
https://line.me/R/shop/sticker/author/1538377
https://store.line.me/stickershop/author/1538377
以上、宣伝でした(笑)

あとはもくもく作ってテスト!

本当はサーバー処理はapiで、フロントにはおしゃれなモダンjsフレームワークが理想でしたが。
ガリガリにサーバー処理を組んでテンプレートhtml設定するだけ。
Flask超速い!画面遷移ってこんなに速く作れるようになっていることに改めて感動。
12年前はxmlにjavaのクラス名書いてたなーなんて思い出が駆け巡りましたが、振り切ってガリガリ記述しました。

そして夜になり夜が明ける

メシと仮眠を除いてもほぼ丸一日作ってました。
気づけば2/12の朝9時でした。仕事1時間前
最終的にgaeにデプロイして、PG製造・テストを完了。
あとは、軽くスマホとかで動作確認して、ちょっとした不具合を直して昼休みに再度リリース。
誰もまだ見てないから大丈夫でしょ。
利用規約にも予告なく変更できるよう書いたし。

開発を終えて

今後も開発はしていくので、反省しているとやる気がなくなるのですけど、ちょっとコピペが多かったですね。
次は部品の再利用を考慮していきます。
あと、個人開発の場合、今のところ一人で作業するので、サーバーサイドでhtml出力までを担う作り方が一番速く開発できると思います。
しかし、この作り方だとフロントエンドのモダンjsフレームワークを習得することが出来ないので学習のためにサービスを作るのであれば、開発スピードは遅くなることを覚悟したほうがいいかもしれません。

ただ、ちょっとしたwebサービスですけど、作成完了してデプロイできた喜びはなかなかの興奮でした。

今後どうする

広告を入れたい!!

広告は入れたいですね。
別で作成しているwebサービスの広告の審査が下りてからやろうと思います。

このwebサイトを紹介したい!!

あとはこのサービスをどこかで紹介したいのですが、どこか良いところないですかね?
ご意見いただけたら嬉しいです。

トータル

あー楽しかったー!!
個人開発最高!!

次は何を作ろうかな?

ありがとうございました!

chocopoiをよろしくお願いいたします!

5
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
3S_Laboo
普通のソフトウェア開発会社でプログラマ兼リーダー(orサブリーダー)やって2019年にフリーランスSEになりました。色々初めてやった事を書いていこうと思います。 基本何でも書けます。 主な実務経験のある言語・製品などは python/java/js/html/css/sql/C#/VB/Oracle/Mysql/Postgre/git/svn/cvs

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
5
Help us understand the problem. What is going on with this article?