活動日記だけど進捗が悪いと書くのが辛くなる7日目(Instagramクローン作成学習 7日目)
6日目はありませんでした。
とりあえず、やったこと。
index: trueにして重複不可に設定。バリデーションがかけずに重複データ登録しようとしたら500error。
バリデーションで弾かれるのと違い、save時にfalseが返ってくるわけではない。
色々調べたけど分からんので、素直にバリデーションをかけることにした。
現場だとそれに対して設定をするのか自分のやり方がそもそも間違っているのか。
cssの設定に関して
Instagramの新規登録画面のように、入力後右端に値が適切かどうかの画像が表示される。そのcss設定。
参考にしたのはこちら。
画像サイズを固定した場合のflexbox:floatより辛くない「flexbox」でざっくりレイアウト
:beforeで設定されているBootstrapのアイコンを中央揃え:
align-items - CSS: カスケーディングスタイルシート | MDN
厳守目標!:
16日(土)までにInstagramクローンの完成。絶対厳守
本日の目標:
railsでJavaScriptに変数を渡し、結果に応じて画像を変更する。
不明点ごとに足を止める癖をやめよう(Instagramクローン作成学習 5日目)
DIVERのログインシステムのエラーメッセージ表示で詰まった。
新規登録画面のapp/view/users/new.html.erbからcreateアクションに移動。
その後、送信されたデータが保存されたかどうかによって条件分岐。
保存されなかった場合、app/view/users/new.html.erbに戻りエラーメッセージを表示するようにしたい。
方法としては「reder 'new'」でいいのは分かるが、なんでインスタンス関数の値が保存されてるのかが分からん。調べても分からん。
そこで時間使いすぎた。
後日質問して、それ以外を進めればよかった。
昨日は以上。
1日お休み
昨日は休みました。
高田馬場の猫カフェ「cat cafe にゃんこと」で癒されました。
prontでパスタ食ってアボガド大好きなんだと実感しました。
猫カフェでは、猫との正しい触れ合い方や猫の気持ち?を教えてもらいました。
一例として、帰る際に近づいてそっぽ向いてた猫の気持ちについて。
猫も恥ずかしいから素っ気ない態度取るけど、耳はこっち向いてるしめっちゃ寂しがってるよーって。最後は結局こっち向いて撫でさせてくれたし。あーツンデレ可愛い。
海老とアボガドのパスタは美味かったんで、家で作ってみたい。
学習の方針で考えたことですが、新しいことよりまずテキストを完璧に理解します。
復習すると漏れが多かった。まずは一つ一つ出来ることを増やします。
とりあえず毎日振り返るからブログ書いて見ました。
そんだけです。
目標を確認とform_withの初心者なりの理解をする4日目(Instagramクローン作成学習 4日目)
目標確認!
一から自分で考えてアプリを作るのが目標だが、その意図を再度確認。
テキストの内容を理解し、なぞるだけから卒業すること。
そのため、メールアドレス認証実装はとりあえず諦める。余裕があったらやる!以上
あと、form_withについてのまとめも作ろうと思いましたが、予想以上に時間がかかったので断念。代わりに、初学者が理解するための前提条件を記す。
form_withとは?
railsアプリ作成時に、httpのformタグあたりを簡単に記述出来るようになる(ざっくり)
何が簡単になるの?
リクエスト先とパラメーターのハッシュを自動で設定してくれる所。他はとりま大丈夫
前提知識は?
リクエストの仕組み、formタグのaction属性とmethod属性の理解(=リクエスト部分)、routesの理解、inputタグのname属性の理解(=パラメーターのハッシュ部分)、form_withのリクエスト先の決定方法、railsのインスタンス関数がmodelのどの部分を代入されているか。
とりあえず自分で思いついたはこのくらい。
初学者にも分かるように出来るだけ前提知識必要ないように解説しようと思いましたが、色々な前提知識が必要になるのでどうしても省略せざるを得ない。
ただ、疑問点が出た時は大体DIVERに載ってる。
まずはDIVERを完璧に理解しましょう。ということですね。はい。
あまり進展がなかった3日目(Instagramクローン作成学習 3日目)
さらに更新が遅れた3日目。
タイトルの通りほとんど進展がなくて書くことがありませんでした。
一応昨日の振り返り。
loginとActionMailerは教わっているので、Instagtramアカウント登録時のメールアドレス認証実装しようともがいてました。
もがいていた点
・form_withの使い方を理解
・メール認証画面挟む時の.newの登録情報はどこに保存すればいいの?
・メール認証に必要なのは、SendGridとランダム文字列生成があればいいと思っていましたが、他に良い方法あるのでは?
これらの点に関して分かったことを4日目以降に随時まとめていきたいです。
プログラミング初学者の質問力(Instagramクローン作成学習 2日目)
2日目から更新が遅れた学習記録始めます。
今回は手を動かすより、以下の新しい概念について質問などで学んだ。
・vie.js
・O/Rマッパ
・アセットパイプライン
・初学者の質問力
ここでは、特に初学者の質問の仕方について感じたことがあるので記します。
エンジニアの世界だと当たり前なのかもですが、4月期生の多対多の質問を答えることで感じたことがあったので。
結論から言います。
初学者は前提知識漏れによるエラーが非常に多い。それを踏まえて、エラー発生時は作業目的とそのために行った手順を確認。それを他の人に分かるように伝えて質問するのが問題解決の近道だと感じた。
Webでブログなどを検索する場合でも、基本的にはある程度の前提知識を元に書かれている。
けれど、初学者の起こすエラーは前提知識の抜け落ちによるタイプミスや作業漏れ、そもそも前提知識を間違って認識してるために起こることが多いと感じる。
この場合、自分の視点だけだと答えにたどり着くのに時間がかかる。
ただでさえ不慣れな作業なのに、手順や環境を一から洗い出して漏れがないか確認しなければならないため。質問ができる環境なら、第三者に目的と手順を伝えるのが一番かなと。
なんか具体例もなしに書いて分かりづらい文章になってしまいました。
ただ自分の国語力ではこれが限界です。ブログ作成してそれらも磨いていきたい。
Instagramクローン作成学習 1日目
本日やったこと。
ログイン画面作成での調べ物色々
①外部フォントの適用方法
②renderの詳細とredirect_toの違い
③パッケージマネージャ(Homebrew,bundler,yarn)について
④jQuery読み込み時のマニフェストファイルに追記するファイルについて
あれ?丸一日やってこれだけ?やばいやばい。
不明点は出来るだけ理解して進むようにしてるにしても遅すぎる。
明日は改善しよう。
結局調べ物に時間をかけすぎ。
DIVE INTO CODEでブログやまとめより、リファレンスを参照しろと言われたことがやっと理解できた。
時間かけて参照して検討したものが、今はその方法使ってませんとかザラ。
ただ、リファレンス読んで理解できたらみんなプログラミング学習苦労しないんです。
正確な理解はリファレンスを見るが、とっかかりくらいは初学者向けの分かりやすいものを参照したい。