Skip to content

Latest commit

 

History

History
224 lines (170 loc) · 15.9 KB

2024-06.md

File metadata and controls

224 lines (170 loc) · 15.9 KB

My Release Notes v2024.6.0

問題解決や、難しいことを後回しにしがちだったので、そうならないために改善をはじめました。

取り組んだこと、そこから学んだこと

技術関連

  • Bootstrap の概要を学習
  • Bootstrap を使ってサイト模写:
    • スタイルの当て方を学習
    • CSSのカスタマイズ方法をざっくり把握、実践はまだ
  • ドットインストール
    • PHP の基礎を復習
    • PHP 入門 基礎文法編
    • PHP 入門 制御構造編
  • Intro to Vue3: Vue の公式チュートリアル
    • Vue と React の違いを知った

成果物

  • practice-typescript-apps
    • 作業目的: TypeScript の記述を知る、慣れるため
    • 作業内容: 2つ簡単な動きを作成、1つは保留
    • 学んだこと
      • 非同期処理のエラーハンドリングの知識があまりないこと
      • 認証が必要なものは Node.js が必要であること
      • 何の情報が正しいのかわからないと感じたこと(信頼できる本から学ぶ手段があったことを思い出した)
  • practice-vue
    • 作業目的: Vue を使い、React との違いを体験するため
    • 作業内容:
      • TIL での勉強時間の合計を表示するページの作成
      • daisyUI を使って UI を作成する
    • 学んだこと:
      • Vue は 1 つのファイルにスタイル、CSS、スクリプトを書くこと
      • GitHub Actions を使って、Vite で構築したサイトを GitHub Pages として表示する方法
  • practice-swiper
    • 作業目的: Swiper の使い方を知るため
    • 作業内容:
      • 3つほどスライダーを作成
    • 学んだこと:
      • ギャラリーや記事をスライドして表示させる実装方法
      • 簡単なものであれば作れるようになった
  • practice-api-with-nodejs-express
    • 作業目的: Node.js、Express をしっかりと理解するため
    • 作業内容:
      • Node.js、Express を用いて初歩的な API を作成
      • 作成の過程・解説を README にまとめた
      • 基本的にドキュメントの内容を確認しつつ作成
    • 学んだこと:
      • HTTPリクエストの種類は思ったより少ないこと
      • Node.js を使えば、JavaScript でバックエンドの処理を作れること
      • 「ルーティングを作る」というのは、特定のURLをリクエストした際の動きを指定すること
  • practice-bootstrap
    • 作業目的: Bootstrap に慣れるため
    • 作業内容: Bootstrap の Example からコピペで 1 ページ作成
    • 学んだこと:
      • Bootstrap 記述にあたってよく使うコードの把握
      • React と一緒に使った方が効率が良いこと
  • practice-react-bootstrap
    • 作業目的: React と Bootstrap を使って Web サイトを難なく作れるようになるため
    • 作業内容:
      • React を復習(Tic Tok Toe)
      • 単純に Web サイトを作るライブラリとしてサイトをいくつかページを作成
      • useEffectuseState などは一旦保留
    • 学んだこと:
      • Hooks 関係を使わずに、シンプルにコンポーネントを作り、それを組み合わせてユーザーインターフェイスを作る方法

英語

  • TOEIC 受験
    • 受験目的: 英語力を証明する何かしらの資格が欲しかったのと、自分の学力英語力を把握したかったから
    • 初受験でパニックになったが、受験当日はあえて勉強しないことでパニックに「なりすぎること」を防いで、自分の想定より安心して試験を受けられた
    • リーディングは日常の成果が出ており、わりと読めた自信がある
    • リスニングがボロボロだったので、今後はディクテーション、シャドーイングで話せて聞き取れることばを増やしたい

  • リーディングログを作成
    • ルールに従い、学んだことをひたすらまとめている
  • リーダブルコード: 購入、パラパラとめくっただけ
  • 勉強法が変わる本 心理学からのアドバイス: 読了
    • 毎日「何を学んだのか」を意識する、覚えておく、書き起こすことを意識するようになった
  • エンジニアの知的生産術: 読了
    • 情報収集、抽象化、検証という学習プロセスを学んだ
    • 学びを深くするためのルールを定めた
      • 単語・概念の簡潔な説明、具体例を述べられるようになる
      • 本は目次をざっくり読んで、気になる項目や疑問を書き出す、それらを解決するために本を読む流れを守る
  • JavaScript本格入門
  • 文章力の基本 簡単だけど、だれも教えてくれない77のテクニック
    • 自分の文章を直す指標として手元に置いておきたくて購入
    • 日常勢いで書いた文章をこれを見ながら直していきたい

ドリル

  • 小6国語をひとつひとつわかりやすく
    • 導入理由: 国語力が著しく低く、基本に立ち返って学び直すため
    • 熟語の構造の理解
  • 高校入試 中学3年間の総復習 英語
    • 導入理由: ライティング、スピーキング力向上にあたり、確実に基礎をおさえるため
    • any と some の違い

その他

  • First Contributions JA
    • v2ローンチ
    • 1ヶ月ぐらい抜けていた時期があったが、参加者に助けていただき再度参加
    • ひとまず v2 のローンチができた
  • ロジカルシンキング調査、日常思考の注意点まとめ
  • 就職に求められる能力の調査: 現実は厳しいことを思い知った、心が折れた

変えたこと・挑戦したこと

勉強時間を記録することを中止

「勉強法が変わる本 心理学からのアドバイス」を読み、勉強時間ではなく「何を勉強したか」に焦点をあてることにしました。

実は「とりあえず何時間やっていれば良いか」といった感覚がありました。毎日少しでも前進できればと。ただ、中身が伴っていないことに少し気がついていました。

本当に恥ずかしいです。頑張っているつもりでしたが、実際はあまり前に進んでいませんでした。いつかわかる日がくるから今はいっか、と理解できないことを永遠に放置したり。段階的に学ぶことを意識しすぎて初歩的なことしかできなかったり。「わからない」「理解するの辛い、頭がこんがらがる」といったことをなるべく避けていました。

この状態から脱出したかったので、毎日自分に「今日、私は何がわかるようになったのか」を問いかけるようにしました。こうすることで、何か1つ学習をおえるたびに「これは、こうだったね、覚えておこう、メモをしておこう」と意識するようになり、知識の定着が進んでいるように感じます。

TIL を使っての活用として、コミットメッセージに学習した内容の概要、コメントにそれに対してのまとめを一言で書いていました。しかし、この方法だと復習したい内容をざっと確認できないと気がつきました。そのため、6月分の記録をアップするブランチを作成し、今月の内容をそこにコミットすることにしました。プルリクエストを確認すれば今月何を学んだのか、何のファイルを追加したのかが一目瞭然なので、復習に役立ちます。この方法で来月も取り組んでみようと思います。

小学生向けのドリルで国語力の底上げにトライ

私は国語力が著しく低いです。今まで文章力の本をたくさん読んできましたが、なんだか腑に落ちない、実践に活かせない感覚がありました。そのため、今回思い切って小学生向けのドリルを買って「基礎」を学び直すことにしました。

大変遠回りな気もしていますが、基礎を学ぶことで、応用のきく力をつけられるのではないかと思っています。こちらにあわせ、「簡単だけど、どれも教えてくれない 77 のテクニック 文章力の基本」を読み、人に伝わる文章を書けるようになれたら、と思います。

React と Bootstrap を使い始めた

転職に向けて求人情報から、求められている技術を整理しました(not 日本)。その結果、React と Bootstrap が必要だとわかりました。現在の技術レベルから考えると、一番早いのはフロントエンドエンジニアとしての就職なので、こちらに集中して取り組むことにしました。胸を張って「私は React と Bootstrap を使って、Web サイトを作れます」と言えるようになりたいです。今まで「これができるよ!」と言えなかった Web 制作人生とさよならしたいです。

振り返り

全ての物事への理解が曖昧だと気がついた

最近「A を説明して」と言われた時、何も答えられないことがありました。それから身の回りのものや、最近学んだはずの物事を説明しようとすると、驚くほど言葉が出てこないことに愕然としました。色々な本やネット記事で「説明できない」は「理解できていない」とイコールだと知っていたので、とても恥ずかしかったです。こんなにもわかったつもりになっていたんだ...、と自分に失望して、悲しくなりました。

自分が恐ろしかったので学習の仕方が書いてある本をいくつか読みました。そこで「説明と具体例を言えれば理解できてるよね」ということだったので、何かを学ぶ時は「言葉の定義・説明、具体例」をまとめることにしました。

自分はふわっととらえて突き進むことはできても、細かいこと、複雑なことに対処することができなかったので、きっとここが原因なのだろうと推測しました。地道ですが 1 つ 1 つの用語、概念を見直して、正確な知識をきちんと身につけていこうと思います。

Web 技術関連の本を読んでバックエンドへの理解を深められた

Spotify Web API を実装しつつ、Node.js や通信について調べていると、知らない単語がたくさんありました。ネット記事やドキュメントを読んでも読んでも理解ができませんでした。そこで基本に立ちかえり、Web 技術の概要を学ぶことにしました。Webの技術的な本をいくつか読んだ結果、「通信の仕方、HTTPリクエスト、セキュリティ、Web API」あたりの感覚をつかむことができました。ただ、プログラムを学べば全てがわかるようになるわけないですよね。「エンジニア1年目が読む本、おすすめの本」として取り上げられる本がなぜ必要なのかを理解しました。何か分からなければ基礎に立ちかえることを忘れずに...!

考えるの嫌だな、面倒臭いなは逃げずに手書きで解決すること

今月、大きな壁にぶつかった結果「あぁ、自分って本当に面倒なことって嫌いなんだな」と実感して、それを受け入れられました。細かいことをつめることが昔から苦手だったのもここにあるのかなと。苦手なものはしょうがない、それをもとに対策を考えるしかないということで、以下のように自分で対策をたてました。以下をトライしてみます。

  • 実装して作業が止まるのが嫌な場合
    • 事前にわかっている難しい事柄は、小分けにして試してある程度理解してから実装する
    • いきなりプロジェクトで実装しない(絶対わかんないから)
  • 頭が拒否するような難しいことを理解する場合
    • とにかく焦らない、こんなこともわからないなんて...と落ち込んでもいいけど落ち込みすぎない
    • 1 つ 1 つ言葉の定義や意味を調べて必ず書き残す、具体例も納得して言えるまで理解する
    • 構造が複雑であれば、図にかいてみる
    • 概要がわからなければ 1 つ 1 つざっくり調べて図などで関係性を理解して、そこからわいてくる疑問を1つ1つ調べて潰していく

来月の計画

技術関連

できるようになりたいこと

  • React と Bootstrap の組み合わせに慣れること
  • React を使って、複数ページの Web サイトを作れるようになること
  • React でミニアプリをいくつか作って、基本的な Hooks への理解を深めること(8月も)
  • Prettier を確実にプロジェクトに取り込めるようになること

(慣れれば、9月はバックエンドにいきたい、TypeScriptも使っていきたい...)

具体的な行動

本関係は圧倒的に時間がたりないので、Reactの本メインであとは息抜きに読む。一気に頼みすぎた。

  • Web 技術の基本に関する本を読み、知らない単語や概念を 1 つでも理解する
    • 作業理由: Web 技術の基本知識を埋め、開発への解像度を上げるため
  • 本: これからはじめるReact実践入門:コンポーネントの基本からNext.jsによるアプリ開発まで
    • 読む理由: 実践ではどうするのか具体的に学びたいから
    • 本を借りれる期間いっぱい取り組んで事例を学ぶ
    • 7月結果: Boostrapがぞもそも全然扱いきれなかったのでそちらの習得に時間を費やした、来月やる
  • 本: ほんの一手間で劇的に変わるHTML&CSSとWebデザイン実践講座
    • 読む理由: 再度 Webサイトのデザインや基礎を学ぶため
    • ざっと読む、わからないところ、知らなかったところだけを重点的に
    • 7月結果: 読む時間なかった、ぱらっとはめくったけど記憶なし
  • 本: しっかりわかるLinux入門
    • 読む理由: Linux が何かを理解するため
    • 7月結果: 今必要ないとの判断で読まなかった
  • 本: 入門Node.jsプログラミング 各種フレームワークのインストールからサイト公開まで
    • 読む理由: Node.js の動きを理解するため
    • 時間ないのとまだ先でも良いので最後にやる
    • 7月結果: 今必要ないとの判断で読まなかった
  • 本: 「技術書」の読書術 達人が教える選び方・読み方・情報発信&共有のコツとテクニック
    • 読む理由: 技術書の読み方がわからないから...分厚すぎて...片っ端から読めない
    • ざっくり概要を掴む
    • 7月結果: 読んだ、エンジニア知的生産と内容は似た感じ
  • 本: 動くWebデザインアイディア帳 jQuery、CSSアニメーションの初心者でもコピペで動く!
    • 読む理由: まともに動くサイト作れないから
    • 返却期限などの関係でできそうだったらやる
    • 7月結果: 時間ないので読まなかった

英語

しばらく意識的な学習はしません。

ドリル

継続

覚えておくとと

  • 言葉の理解: 概念、説明、具体例
  • 本の読み方: 目次読み、気になること全て書き出し、それを解決するために読書
  • 英語を使わず日本語を使う: 適切な用語を使えるようになるため
  • 新しいコードを学ぶ時: ざっと概要を把握、GitHubやCodePenなど様々な場所で同じような記述を検索・使用例を集める、何がどうなっているのか解明、自分で実践してみる