msksgm’s blog

msksgm’s blog

Webエンジニアです.日々の勉強,読書,映画観賞,美術観賞の記録を載せます.

7月の振り返り

7月の振り返り

生活習慣

運動習慣を継続中です。
健康的なのですが、同じことを繰り返しているのでメリハリがなくなってきました。

プログラミング関連

個人開発

個人開発をおこなっていました。
主に、「認証認可」、「API 設計」、「ER 図」、「デザインカンプ」、「Atomic Design」などに取り組んでいました。
「テスト」がまったく手をつけられていないので、着手したいですが、「Atomic Design」を意識したフロントエンドの実装が難しくで時間をとっています。
また、インフラ、ネットワークの方に時間をまったくとれていないです。

1 週目

一般的な攻撃方法と,Node.js のアプリケーションの脆弱性を学びました.
Firebase Authentication から passport.js と jwt を用いた認証認可の実装に挑戦しました.
一応できましたが,脆弱性がどこにあるのか怖いです.

2 週目

Firebase Authentication を使うと,セッションの管理が難しそうなのと,DB も Firebase に依存してしまいそうなので,やめました.
なので jwt を用いた,認証を導入していました.
時間がかかりましたが,一応完成しました.
次から,認可処理について取り組んでいきます.

3 週目

個人開発をすすめています。
バックエンドの改修していました。
フロントエンドで Atomic Design の練習をしていました。
設計として、draw.io を使って ER 図と画面遷移を作成していました。

4 週目

個人開発を進めました。
バックエンドは一通り完成したので、フロントエンドを作成していきます。

5 週目

フロントエンドを主に注力していました。

フロントエンド

1 週目

useContext を用いた,ログインユーザ情報,ログイン関数,ログアウト関数をグローバルに取得する方法を作りました.
また react-router-dom を用いたルーティングによって,ログイン状態によってリダイレクトするかどうかの処理(と Layout を付与する処理)ができるようになりました.

2 週目

react-router-dom を用いたルーティング処理に,リロード時にもログイン状態を保存する処理を追加しました.
また,AtomicDesign にも興味がでてきたので,この本で学んでいます.

3 週目

AtomicDesign をこの本で学びました。
フロントエンドのパフォーマンスやテストについて学ぶことができました。

4 週目

デザインカンプを作成していました。
配色の選び方が難しいですね。

5 週目

Atomic Design を実践していました。
実践しようとすると逃げ道がいくらでもあること、デザインカンプ通りにつくれないこと、storybook の仕様になれないことなどに苦戦しています。

バックエンド

1 週目

今まで作成したバックエンドに passport-jwt を組み込んでいました.
routing-controller と組み合わせることもできましたが,Cookie にデフォルトで組み込む方法がなさそうなのが残念です.

2 週目

routing-controllers は,いろいろ不完全な箇所があるので,express を用いた,一般的なバックエンドを作ることにしました.
この記事ソースコードがとても参考になります.
過去に参考にしたときには,よくわからない箇所が多くありましたが,今読むと重要性がわかります.
SignIn,SignUp,の API/user/meのエンドポイントを作成しました.

3 週目

typedi やリファクタリングをおこないました。

4 週目

API の作成をしました。
typeorm の中間テーブル作成方法を学びながら実装していました。
orm は多対多を簡単に対応できるのがいいですね。
また、Swagger で OpenAPI の設計もおこなっていました。
一通りの API を作成できたとおもいます。

5 週目

API の修正をすこしだけおこないました。

インフラ

1 週目

特になし

2 週目

特になし

3 週目

特になし

4 週目

特になし

5 週目

特になし

データベース

1 週目

特になし

2 週目

typeorm を使っています.

3 週目

ER 図を作成しました。

4 週目

特になし

5 週目

typedi で中間テーブルを自動生成する方法について学びました。

ネットワーク

1 週目

特になし

2 週目

特になし

3 週目

特になし

4 週目

特になし

英語

7 月 11 日に TOEIC を受け、結果は 835 点でした。
目標点は 900 点なので、道のりが長く感じました。

技術記事

1 記事目 「TypeScript で passport-jwt を用いた api サーバー作成」

7/2(金)に作成

msksgm.hatenablog.com

2 記事目 「"Error: invalid expiresIn option for string payload" の解決方法 (Node.js, passport.js, jwt)」

7/9(金)に作成

msksgm.hatenablog.com

3 記事目 「routing-controllers に passport を適用させる方法」

7/16(金)に作成

msksgm.hatenablog.com

4 記事目 「jwt-decode で unknown」

7/23(金)に作成

msksgm.hatenablog.com

5 記事目 「react-router-domでLayoutとPrivateRouteを導入する」

7/30(金)に作成

msksgm.hatenablog.com

知識の Buffer

  • winston
  • mailggun
  • agenda
  • async await
  • helth エンドポイントパタ=ン
  • nestjs
  • node.js から DB サーバーにヘルスチェックをおこなう
  • jwt

趣味

読書

1冊目「Clean Architecture  達人に学ぶソフトウェアの構造と設計」[2018, Robert C.Martin]

msksgm.hatenablog.com

2冊目「Team Geek Googleギークたちはいかにしてチームを作るのか」[2013, BrianW.Fitzpatrick/BenCollins‐Sussman]

msksgm.hatenablog.com

3冊目 「Atomic Design ~堅牢で使いやすい UI を効率良く設計する」[2018, 五藤佑典]

msksgm.hatenablog.com

4冊目 「ハッカーと画家 コンピュータ時代の創造者たち」[2005, ポール グレアム (著), Paul Graham (原著), 川合 史朗 (翻訳)]

msksgm.hatenablog.com

映画観賞 「龍とそばかすの姫」

msksgm.hatenablog.com

美術観賞 STEPS AHEAD: Recent Acquisitions

msksgm.hatenablog.com

絵を書く

90 秒ドローイングを引き続き続けています。
あまり時間をとれていないのですが、藤本タツキ先生のルックバックを見て創作意欲がわきました。
何か描きたいです。

最後に

モチベーションが低下していて、個人開発の進捗がイマイチなのですが、記録をつけるといがいと進んでいることがわかりました。
8月中にはテストも含めて完成を目指します。