Ruby on Rails初心者ですがWebアプリケーション「ポケット糖質量」をリリースいたしました!
Ruby on Rails初心者ですがWebアプリケーション、「ポケット糖質量」をリリースいたしました!
よろしければ使ってみていただけるとうれしいです。
現在こんな見た目です。
前提
一応Androidアプリを作ることが出来ます。
ここのところRailsを勉強しています。
ドットインストールとRailsチュートリアルを一度やっただけなので、まだまだ初心者です。
何故Webアプリ(ミニWebサービス?)を作ったのか
- まずは勉強目的です。一人でWebアプリが作れることを実感したかったし、これをきっかけに個人開発を加速させたかったのです。
- 糖質量を検索できるアプリは体重を支える技術にとって必要なので、最悪ユーザーが一人(自分)確保出来ているので失敗してもまあいいかと思えました。
- ウェブサイトの運営は未知の領域ですがやってみたいと思っていました。今後もメンテナンスをして少しでも収益を出せたらいいなと考えています。
「ポケット糖質量」について
これがどんなアプリなのかといいますと、非常にシンプルです。
- メニューから選択すると糖質量が一覧表示出来る。
- 検索フォームから検索すると糖質量が一覧表示出来る。
以上であります(*^_^*)
初期データはcsvファイルから投入しております。全て手入力のデータです。
それだけなんですが、Rails及びRuby及びWebフロントエンド及びサーバー運用及びサイト運営初心者の私には恐ろしく勉強になりました。
というか、Web開発は範囲がやたら広くてどこに行っても無知の海が広がっていてめっちゃ大変でした。
これぐらいのミニアプリが修行にはちょうど良かったです。
もっと複雑なユーザー管理などを最初から作り込もうとしていたら挫折してた気がします。
開発期間は2ヶ月ほどなのですが、Railsでコードを書いている時間は以外と短く、大量の糖質量データの入力とWebページの見た目作り(とRailsの連携)に時間がかかりました。
Railsは便利なgemやメソッドがたくさんあってコードが非常に短く書けたりするのですが、そこに至るまでひたすら調べ物をするという感じでした。
この程度のアプリでは「プログラミング」はほとんど必要がなく、RailsのAPIやRubyのgemやたまにRubyの構文を勉強すれば大体まかなえました。
少し脱線しますがプログラミングの初学者であれば、Railsをいきなり勉強するよりじっくりRubyを勉強した方が絶対いいと思います。
私はAndroidの開発をやる前はプログラミング自体初心者だったので、Javaの勉強を半年ぐらいやって、OracleのJava6の認定試験を取ったりしましたが、今思うと正解だったなと思います。
この過程がなかったら今よりもっとコピペウーマンであったことでしょう。
学習方法
学習サイト
本
実のところ学習サイト、本ともに完走してません。
Railsチュートリアルは最後の章をやってないのですが、Railsの知識がほぼゼロでも解説が詳しく、実際にサーバーにアプリをデプロイするので大変勉強になりました。
またRailsのチュートリアル本ではありませんが、
「Webを支える技術 ── HTTP,URI,HTML,そしてREST」
を事前に読んだのが大変良かったです。RESTって?みたいなRailsで当たり前の概念が解説されています。
作った感想
- 出せて嬉しい♡
- まだまだわからないことだらけ。もうぜーんぜんわかってない。
- Railsすごい。噂通り素早く開発ができる。
- サーバーにデプロイすると上手くいかなかったり思ってもいないことが起きる。サービスを動かし続けるって大変なんだろうなあ。
- いっぱいぐぐった中で知見を提供してくださった見知らぬ方々への尽きない感謝の気持ちがむくむく湧いた。
- 実際にリリースすると色々やることがある。すごく時間かかる。
出来てないこと&今後
システムの構成
- 開発用PC MacBook Pro 15inch 2015 mid OS/X 10.11.6
- Ruby on Rails 5.0.1
- Ruby 2.3.0
- サーバー Heroku(production/staging環境) Hobbyプラン月7$
- データベース production/staging:PostgreSQL, ローカル:sqlite3
- ドメイン取得 お名前.com
- デザインテンプレート Material Design for Bootstrap(Bootstrapベースのマテリアルデザイン)の無料で使用できる部分のみ使用
- 写真、イラスト素材 ぱくたそ,いらすとや
- エディタ IntelliJ IDEA ULTIMATE2016.3.6
- その他 Google Analytics, Search Console,SNSシェアボタン,メタタグ
- デフォルト以外で使っているgem dotenv-rails, ransack, kaminari, google-analytics-rails, meta-tags, config, bootstrap-sass