Programing 34日目

【本日の勉強内容】
・ransack selectbox(8h)

 

【解決済み】

【未解決】
・ransack selectbox ドロップダウン形式の選択リスト表示
 →どうやら配列にしたときの要素が非スカラー値でないといけないらしく、モデルを分ける必要がやはりあるみたい。

 

【新出単語】
クロスサイトリクエストフォージェリ(CSFR)= Webアプリケーションに存在する脆弱性、もしくはその脆弱性を利用した攻撃方法
・非スカラー=配列・ハッシュ(他のデータを要素としてもつデータ)
スカラー=文字列・数値・真偽値
・単一テーブル継承=オブジェクトの継承関係を1つのテーブルで表現

【時間】
8h

【メモ】
完全にハマってしまい、少し気分が落ち込んでいた。ディスプレイに向かい合う時間が減ってしまったので、これはマズイと思い、明日は気分転換に少しサイクリングでもしようかと思う。

 

時間をかけて、丁寧にやれば必ず解決できる問題だと思うので、明日はもう一度モデルを分けるところから始めてみようと思う。

Programing 33日目

【本日の勉強内容】
・Ransack selectboxの実装(1h)

・Ransack selectboxの実装を2つしたら起きたエラー(2h)

・Ransack selectboxのドロップダウンメニューの重複を避けるための方法探し(5h)

 

【解決済み】
・Ransackのセレクトボックスの書き方がよくわからなかった。
・セレクトボックスを複数にしたら片方の検索機能がなくなった。
 →value,属性ともにproductの該当カラム名にしたらうまく行った

【未解決】
・ransack selectbox ドロップダウン形式の選択リスト表示が重複データも含まれてしまっている→そもそも別のmodelを作るべきでは?

【新出単語】

【時間】
8h

【メモ】
理解していなくても自分の直感でコードを色々試してみると意外と動くことがある。
色々試した方が「こうすると動いた」というデータが得られるので、ただググるだけよりも効果的に学習ができると感じた。
こういう側面は座学ではどうしても得られない。

1日かけて考えて、「あれ、そういえば重複してるデータって基本的に別のデータベース用意した方がいいんだっけ」と気づいた。明日トライしてみたい。

Programing 32日目

【本日の勉強内容】
・seed.rbの実行(1h)
・image_tagにimgファイル不在の時のファイルを設定(1.5h)
・ransack selectbox(1.5h)

 


【解決済み】
・新しいカラムを追加した後データ表示がバグった→そもそもカラム追加する前の商品で空データが表示されているだけだった。
・Seed.rbがうまく動作しない。「ActiveRecord::RecordInvalid: Validation failed: Admin must exist」と出る。
→productを全て削除したため、それと結合されていたadminも削除された。エラーは文字通り「Adminを作れ」と言っていたのだが、
  結合されてるという意味がよくわかっておらず「adminがない・・・?(どゆこと?)」と思い込んでいてずっとスタックしていた。
・DBにimg初期値を設定して、imgの登録がない時はそれを表示しようとしたらproducts/showのimage_tagが上手く動作しない。
 →viewに条件分岐でimgがない時no-imgの画像を表示するように変更したらこちらはうまく行った。


【未解決】


【新出単語】
・外部キー=Foreign Key

【時間】


【メモ】
やはり体調=勉強の調子だなと感じた。絶好調で4hできた。早く朝方にして、残りの4hも集中できるようにしたい。
自分で勉強したことはわかってるつもりでもやはり全然頭の中で繋がっていない。自分で手を動かして自分で考えるしかない。

Programing 31日目

【本日の勉強内容】
・ransackの設置(1.5h)
・新しいパラメータ3つ設置(2.5h)

・読書(AWS 基礎からのネットワーク&サーバー構築)4h


【未解決】


【新出単語】

 

【時間】8h


【メモ】
自分でパラメータを始めて増やした。DBの関係をちゃんと把握していないのでよい勉強になった。seeds.rbをいじったり、validationをいじったり、
mvc全部いじったり、DBに1つデータを追加するにしてもやることが沢山ある。

サロンでオススメされていた本を読んだ。実際にサーバーを立てたりサブネットなどをいじっていたので、単語全般には不安はなかったが、やっぱりインフラ周りは苦手・・・今から同時並行で少しずつAWSのサービスを頭の中で整理していこうと思う。

Programing 30日目

【本日の勉強内容】
・Docker toolbox インストール(2.5h)
・ヘッダーロゴimgの作成/設置(0.5h)
・2カラム化、各種変更(小)(5h)

 

【解決済み】
・仮想環境の設定(windows10)
・2カラムレイアウト


【未解決】


【新出単語】
・Docker Toolbox(Windows 10 HOME editionでも使えるDocker)

【時間】

8h
【メモ】
色々今日もエラーと格闘なんだけれど、作るもののスペックがだいたいはっきりしたので、気持ちはかなり楽になった。
サロンに入っていてよかったー。ただの2カラムにする作業もhamlに落とし込むのが四苦八苦して時間がかかった。

エラーになってもすぐに次のトライに移れる人は、タフというよりエラーが気になってないんだろうなと思った。午前中の自分がそんな感じだった。

自分にないマインドなので、是非手に入れたい。体調が絶好調で脳がフル回転するときだけ、「なんでもこい」っていう無敵状態になるけれど、体調が悪くても、脳が開店していなくてもこの無敵状態にならないと。

Programing 29日目

【本日の勉強内容】
・バックエンドの環境構築の勉強

・環境構築の構想 

 

【解決済み】

・IAMの権限設定

・EC2のインスタンス作成

【未解決】

【新出単語】
・ECS=コンテナ化サービス
・ECR=コンテナイメージの保存/管理/デプロイ
・RDS=DB
・S3=ストレージ
・CroudFront=CDNサービス
ACM=証明書管理/作成
・Route53=DNSサーバーサービス
・CircleCI=コンテナ内でビルド・テスト・デプロイのCI/CDをする
・CI/CD=変更に対するチェックやリリースを高速化・自動化するやつ
VPC=仮想ネットワーク
・EC2=サーバー
・ElasticRoadBalancer=トラフィック分散
・ホットスタンバイ=予備機。いつでも起動しておく
・テストカバレッジ=テストで確認した率。網羅率。
・エンドポイント=ネットワークに接続された端末全て。携帯、PC、サーバー他
DNSサーバー=ドメイン名⇔IPアドレスを翻訳するもの
CDN=ファイルをDL配信するための技術
・ALB=トラフィック分散
・コンテナ化=PCの中にPC環境を構築
・Terrafomr=インフラを生成するツール
Capistrano=デプロイ自動化ツール
・SES=Emailサービス
RSpec=テスト用フレームワーク

【時間】
8h

【メモ】
まず、ありえないミスをしていたことに気づいた。
EC2とCloud9を間違えていて、Cloud9で作成したインスタンスにEC2からアクセスできなくて勝手に積んでいた。
Cloud9のインスタンスは全く影響を受けていないし、データはどこにも消えていないのに、一人でパニクっていた。
そこで、ようやく「サロンの他の人が使ってるAWSのサービス全部調べるか・・・」となった。インフラのことが全く分かってないのに勉強もなにもないですよね。
RDSとか触って、単語の意味の分からなさにタジタジになって、ようやく勉強しなくちゃダメだな・・・と。
でも、こういうのは必然性が重要なので、こういうやり方でつまづきながら勉強していくのが自分にはあっているかな。
座学みたいなものは本当に最小限にしないといけないので、あくまで各サービスの概要だけ知る程度にした。
あとは実際に作ってみるしかない。
まずは構成を考えて、サロンで評価をしてもらうのが良いらしいので、そこから。

友人は8hの仕事の後に3h自学習している。ということはフリーターの自分は1日11hはやれるのは当然なはず・・・。

これからは1日11hを目標に勉強したい。今日はバイトしてたからよく考えなくても11hは無理だった。

Programing 28日目

【本日の勉強内容】
・バックエンドの環境構築(7h)
・ドットインストール、AWS入門(0.5h)
・rubocop導入(0.5h)

【解決済み】

 

【未解決】
・IAMの権限がない、ということでRDSが使えなかった。

・EC2のインスタンスにアクセスできなくなった。


【新出単語】

・テストカバレッジ

・ホットスタンバイ
【時間】

8h

【メモ】

DBにRDSをしようとしたら、IAMのエラーを引き起こしてしまいインスタンスに接続することもできなくなってしまった・・・恐らくインスタンスにはデータが残っているけれども、アクセスできるようになるだろうか?

 

10hくらいあれば作れるポートフォリオなので、無くなってもいいやと思いつつ、焦る・・・

 

私は機械、私は機械・・・・