はじめに
現在、工学部3年生のtaishi16と申します。
11月の始めから2か月と少しの時間をかけて初めての個人制作となる「meshi」を開発しました。
https://meshi-go.herokuapp.com/
「Meshi」の概要
Twitterでとにかく気軽にご飯に行く人を募集できるウェブサービスです。
Twitter上の関係から現実の関係へと、とにかく円滑に、とにかくスムーズにステップアップできるようなアプリを作りたいと思ったのが開発するきっかけでした。
仕様
1.募集する内容を入力
2.文章を画像化
3.Twitterに投稿
あとは興味を持った人からサイト内でメッセージが送られてくるのを待つだけ という仕様です。
開発
環境はAWSのcloud9
開発で用いた言語はRuby フレームワークはRuby on Railsを使用しました。
ログイン、ログアウト等のユーザー周りはdevise gemを使用
「Twitter連携」と「気軽」という点をとにかく重視した為、omniauthを併用して、メールアドレス、ログインID、パスワードの入力を全て省き、Twitter連携ボタンを押すだけで登録&ログインを行えるようにしました。
このサービスの一番の特徴である入力した文章を画像化するという処理ではmini_magickを使用しました。
ここで作成した画像は一度ストレージに保存する必要があるため、Amazon S3にcarrierwaveを使って保存。
画像の削除等の操作は一般に許可せず、アクセスのみを可能に設定する上で、S3のパブリック設定は非常にややこしかった。。。
そして最後に作成した画像を埋め込み形式でツイートできるようにOGPのひとつであるTwitter cardの設定を行いました。
(Twitterのようにメッセージが来たら非同期で➀等のバッヂが表示される処理を実装したかったのですが、javascriptの習熟度が浅く、結局同期通信で実装することにしました。現在開発中のサービスでjsをある程度使えるようにがんばる・・。)
初めて一人で何か作った感想
とても大変だったがとても楽しかった。
特にメンターを付けていたわけでもなく、スクール等に通っていたわけでもなかった為、相談や質問できる相手が全くと言っていいほどいませんでした。
そのため情報収集がQ&Aサイトや技術ブログからのみだった点が大変であり、非常に時間がかかりました。
しかし、プログラミングを通じて何かを作るという行為自体はすごく新鮮で楽しくて時間を忘れて没頭していました。
そしてもう一つ、先人の知恵は偉大だなと感じました。
沢山のブログ、Q&Aを参考にさせていただきました。
とても助かりました、ありがとうございました。
最後に
progateでHTML,CSS,Ruby,Railsを学んで、Railsチュートリアルも学習したよって方
最低でも僕レベルの制作物なら今からでも作れると思うので、何かの参考にして頂けたら幸いです。
具体的なことは何一つ書きませんでしたが、最後まで読んで頂きありがとうございました。