lineっぽいサービスの作成(期限:一週間以内)をしようとしたお話【ダメでした】
目的
とある所の宿題→lineっぽいサービスの作成(期限:一週間以内)
実際にやろうとしたこととか
作成する環境を吟味。
AWS Lambda [node]やCodeigneterでひな形なしに、lineっぽいサービスを一週間で立ち上げることは無謀と判断。 唯一チュートリアルをやったことが有り、コードやモデルの自動生成が出来るrailsを利用することにした。
やろうとしてたコード生成的なこと
rails g scaffold user string:name string:description string:nick_name string:password_digest string:email boolean:activated string:activation_digest datetime:activated_at rails g scaffold session integer:user_id string:session_id datetime:expiration_date rails g scaffold chat integer:chat_room_id integer:user_id string:comment rails g scaffold chat_room string:chatroom_name string:description rails g model user_chat_room user:references chat_room:references boolean:activated rails g model friend user:references user:references chat_room:references
最低限必要だと見積もった機能
sign_in セッションの作成 sign_out セッションの削除 sign_up アカウント作成 search_friend 友達検索からの追加 add_friend_from_url 友達のURLからの追加 make_chatroom チャットルームの作成 join_chatroom チャットルームへの参加 defection_chatroom チャットルームからの脱退
UI
bootstrapを適当にまぶして、全体的に作成
(ただし、UIの完成図が全く思い浮かばない、Lineぽくって目標はわかるけど)
その他(非機能要求?)
- 全体的なvalidationの充実
感想
全く作れなかったので残念。
環境構築の時点で時間かかったので残り時間とこれから作りこむ量を考えた結果、やる気が落ちた。
システムの構想は出て来ても作れなきゃ意味ない。
失敗要因一覧(言い訳一覧)
- 前にrails tutorial 4.2を触ったのが1年前。なのに最新の5.0でやろうとしたこと
- UI出来ないのに、UIから先に始めなきゃって思ったこと
- scaffoldを利用したことがないのにscaffoldでやろうとしたこと
- herokuを使おうとして、postgresをubuntu 16.04の中に建てようとしたこと
- giboで自動生成のgitignoreを確認せずに
config/secrets.yml
でハマったこと
思い返せば、やったことのない作業の部分で戦おうとしていたようだ。
私は効率的なWebサイトの建て方は知らないことを痛感した。
UIの不勉強だからこそ簡単なデザインも出来ないで、パニクる。
結局、Webサイトの構築もコードも白紙だった。
実務経験が
- serverless(AWS Lambda [node])
- Codgneter(多分1.X系)
だけだと厳しいのかもしれない。って改めて思った。
これをやっている間に学べたこと。
この記事を書きながら調べて気になったこと【時、既にって奴】
- heroku用のruby開発用コンテナがあるとか
- railsでER図を書けるプラグインとか
- rails tutorial 5.0の完成版から弄ればよかった可能性
- heroku以外の選択肢はなかったのかな
ただ、実力を見たいって話なんだから一から作ろうと思ってた。
今後の課題
- Webサイトを建てられる環境的知識の取得
- 短期間の〆切でやったことのない作業の部分で戦おうとするのを直す
- テンプレートを使ったUIの作成回数を積む
- ……検索ワードの変更、新鮮な情報の収集が上手く出来るようになりたい。。。