しぐまろぐ

勉強したことや読んだ本について書きます。

2024年2月の振り返りと3月の抱負

はじめに

こんにちは、しぐまと申します。
2023年6月11日にHappiness Chainというプログラミングスクールに入会し、約8ヶ月半が経過しました。

入会の経緯については以下に書きました!

また、2023年12月からはHappiness Chainの新サービス『Happiness Chain Euforia』に0期生として加入しています。

入会の経緯・サービス内容・感想は以下に書いています。

本記事は、いつも通り月報として2月にやったことを振り返り、3月の目標を設定します。

2月にやったこと

Happiness Chainの課題

目標96時間に対して92時間でした。。

主にTypeScriptのアウトプット課題に取り組み、次の単元のNext.jsのインプットを少しやった感じです。

  • TypeScript

    • アウトプット1つ目は途中で挫折
    • インプット教材1つ
    • アウトプット課題
  • Next.js

    • インプット教材1つ

課題外

振り返り

1月の月報にも書いたメンタルの不調を結局2月上旬まで引きずってしまい、学習しない日が続いたため、目標時間を達成できませんでした。

戒めとして、より具体的に原因を深掘って書いておきます。

今回のTypeScriptのアウトプット課題は、自分の実力よりもかなり難しそうな課題でした。

元気な状態なら「実力を上げるチャンスだ!」とポジティブに頑張って取り組めるのですが、元々メンタルが不調だったためにそのようには捉えられず、自信がないので課題から逃げてしまい、学習に取り組めませんでした。ただ、逃げても不安が増すだけなので、よりメンタルが崩れ、悪循環でした。。

このままでは駄目だと思い、メンターや卒業生、他の受講生の方にも相談してアドバイスをいただき、改めて自分の弱点を見つめ直し、対策を考えました。

結論として感じたのは、逃げずにやると覚悟してやっていくしかないということです。

今強い人もきっとこれまでに様々な壁にぶつかって、それでも覚悟して逃げずにやってきた人なんだと思います。

だから私も地道に壁にぶつかって、自分の実力の無さに傷つくことに慣れて自分を強くしていきたいです。


ちなみに、覚悟して取り組んだTypeScriptの課題は、今までで一番時間がかかったものの、先日無事にLGTMをもらえました

課題から逃げている時より、できなくてもがむしゃらに課題に向き合っている時の方が精神的には楽でした。どうしても自分の力では無理ならメンターや他の受講生に相談することもできます。そのことを覚えておきたいです。

英語

約17時間。

  • 大岩のいちばんはじめの英文法
    • 超基礎文法編 1周
    • 英語長文編 1周目途中

振り返り

1/28に受けたTOEICの結果が出ました。

1/28TOEIC結果

結果が出る前に書いた1月の月報を見てもらえればわかると思いますが、あまり自信はなく手応えとしては600点くらいだったので、思ったより高得点で驚きました。

ちなみに、私は14年前にTOEICを初めて受けて、その時は確か525点か550点くらいでした。今回が2回目の受験で、9月から受験までに合計120時間くらい英単語・英文法の復習とTOEIC対策の学習をしました。

今回はそのTOEIC対策が上手くはまって、本来の実力より高めに点数が出たのだと思います。なので、これからしばらくはTOEICを受けるのはやめて、英単語・文法・英文解釈など基礎からしっかり身につけ、実力でこれくらいの点数を取れるようにしたいと思います。

3月にやること

Happiness Chainの課題

  • React

    • 発展課題
  • Next.js

    • インプット課題2つ目
    • アウトプット課題
  • Go言語

    • 初級

抱負

学習時間は平日1.5時間、休日6時間として96時間は確保したいです。

Next.jsのアウトプット課題も難しそうで苦戦するかもしれませんが、しっかり取り組みます。

Dockerの復習がずっと後回しになってるので*1、Goと並行してどこかのタイミングでやりたいです。

英語

  • 英単語クリティカル+
  • 大岩のいちばんはじめの英文法
    • 超基礎文法編 1周
    • 英語長文編 1周目途中
  • 英語学習方法の本を2冊読む

覚えてない単語、文法の重要ポイント、例文をAnkiを使って覚えていきます。

単語や例文は音読して脳と耳に刻みつけていきます。

TOEIC HUNTER

上記の教材は自分で選んだものですが、Happiness Chainを経営されているゆうだいさんが作ったTOEIC HUNTERの900点コースのロードマップを先日購入したので、これからはそちらを参考にして教材を選んでいきます*2

toeic-hunter.notion.site

抱負

↓ 忘れないように毎月書いています。

英語の学習目的は、技術系の動画を自動字幕ありで見られるようになることと、技術系のドキュメント・エラー文を読めるようになること。

*1:今のところ使ってないので後回しでもいいのですが

*2:Happiness Chainの教材と同じく、TOEIC HUNTERの教材も公開できないので、ぼかして書いていきます

2024年1月の振り返りと2月の抱負

はじめに

こんにちは、しぐまと申します。
2023年6月11日にHappiness Chainというプログラミングスクールに入会し、約7ヶ月半が経過しました。

入会の経緯については以下に書きました!

wsigma.hatenablog.com

また、2023年12月からはHappiness Chainの新サービス『Happiness Chain Euforia』に0期生として加入しています。

入会の経緯・サービス内容・感想は以下に書いています。

wsigma.hatenablog.com

先月の月報は以下です。

wsigma.hatenablog.com

本記事は、いつも通り月報として1月にやったことを振り返り、2月の目標を設定します。

1月にやったこと

Happiness Chainの課題

目標110時間に対してちょうど110時間やりました。

  • React上級

    • インプット課題1つ目残り
    • インプット課題2つ目
  • TypeScript

    • インプット教材3つ
    • アウトプット教材1つ途中

課題外

感想

今月はReact、TypeScriptを中心にやりました。

目標時間は達成できたのですが、TypeScriptが難解で進みが遅いのと家庭内の問題でメンタルを乱され、学習時間がゼロの日が6日間くらいありました。

戦略的に休むならゼロでも良いのですが、私の場合は「やらなきゃ」と思いつつやらないままズルズル過ごしてしまうため、全然リフレッシュになっていません。。

今回の原因となった家庭内の問題は私がすぐに解決できることではないので、食事・運動・睡眠を整えてできるだけ心身を健康に保ち、外部に左右されないようにしたいと思います。

TypeScriptの進捗に関しては、メンターにも相談し、細部にこだわりすぎず、実践的なアウトプット課題に取り組みながら適宜復習する方針にしました。

そして今月報を書いていて気がついたのですが、1月は業務のキャッチアップのために結構PythonやFastAPIの学習をしていました。そちらに時間を割いていれば、ロードマップの学習の進捗が遅いのは当然ですよね。。

「学習開始から何日も経ったのにTypeScriptが全然できていない」などと落ち込む必要はなかったのかなと思いました。

英語

約20時間。

  • 英単語クリティカル+
    • mikan
    • 本の参照2周目途中
  • スタディサプリ ENGLISH
    • パーフェクト講座
      • 31~61/150

感想

1/28に現状把握のためにTOEICを受けてみて色々わかったので、それを元に学習計画を立て直します。

  • 時間配分がうまくいかず、Part7の大問3つくらい解けなかった
    • 次回受ける時は何度か模試を解く
  • リスニング中に他のことを考えてしまった
    • 集中力がない
    • リスニングの練習はしたが、一度にたくさん解く練習が必要だった
  • 文法力、単語力が圧倒的に不足

2月にやること

Happiness Chainの課題

  • TypeScript 残り
  • Next.js

課題外

抱負

学習時間は平日2時間、休日6時間として94時間は確保したいです。

TypeScriptの残りとNext.jsをしっかりやって、3月からGoに入れるようにします。

また、Dockerをずいぶん忘れているので、Goに入る前に復習しておきます。

英語

  • TOEIC L & R TEST 出る単特急 金のフレーズ
    • Ankiを使って周回し記憶に刻みつける
  • 大岩のいちばんはじめの英文法
    • 重要ポイントや例文をAnkiを使って覚える

抱負

英語の学習目的は、技術系の動画を自動字幕ありで見られるようになることと、技術系のドキュメント・エラー文を読めるようになること。

次のTOEIC受験は夏頃にして、しばらくは単語・文法・英文読解など基礎力を上げていきます。

2023年12月の振り返りと2024年1月の抱負

はじめに

SE5年目のしぐまと申します。
2023年6月11日にHappiness Chainというプログラミングスクールに入会し、約6ヶ月半が経過しました。

入会の経緯については以下に書きました!

wsigma.hatenablog.com

また、12月からはHappiness Chainの新サービス『Happiness Chain Euforia』に0期生として加入しました。

入会の経緯・サービス内容・感想は以下に書いています。

wsigma.hatenablog.com

本記事は、いつも通り月報として12月にやったことを振り返り、2024年1月の目標を設定します。

12月にやったこと

Happiness Chainの課題

目標100時間に対して約150時間できました!

  • React初級
    • インプット課題2つ目 最後まで
  • React中級
    • インプット課題
      • 苦手なところは2周
    • アウトプット課題 初回提出・修正
  • React上級
    • インプット課題1つ目1/3くらい
  • React追加アウトプット課題2つ
  • Happiness Chainアドベントカレンダーへの参加

課題外

  • ソニックガーデン主催のコードレビューの勉強会への参加
  • Vue 3 Composition API入門
  • 『Vue 3 フロントエンド開発の教科書』
    • 8章の途中まで
  • Qiitaでのアウトプット記事11本作成、公開

感想

Euforia加入でモチベーションが高まり休みの日にコンスタントに6~8時間学習でき、そのうえ年末年始休暇もあったので、先月までと比較してかなり学習時間を確保できた。

そのわりには進捗が遅れ気味。予定ではReactを全て終わらせるはずだった。

遅れた理由は、想定していたよりもReactが難しくてインプット・アウトプットともに時間がかかったことと、現職のキャッチアップのためにVue.jsの学習が必要だったこと。

Reactに関して具体的に書くと、中級のインプット課題を終えた時点であまり理解できていなかったために、次の中級アウトプット課題に行く前にメンターにお願い*1して、別途少し易しいのアウトプット課題を2つ用意してもらった。

それを解いて、レビューしていただいて修正して、インプット教材でもきっちり復習して、それから中級アウトプット課題に納得がいくまで取り組んで......というふうにしていたら、時間がかかってしまった。

ただ、そうしてクリアした中級アウトプット課題は、その時点でできることを全て盛り込んで、納得がいく出来になったと思う。

完成したものの動画をXに上げたので、ポストを貼っておきます。

予定より進まないことはこれからもあると思うが、焦って進めるのではなく、理解することを大切にして着実に身につけていく

11月くらいから学習する過程で調べたことやつまづいたことを意識的にアウトプットするようにしていて、12月はQiitaで記事を11本書けた。これも、今後も続けていきたい。

英語

約48時間。

  • 英単語クリティカル+
    • mikan
    • 本の参照1周目終わり
  • スタディサプリ ENGLISH
    • パーフェクト英文法講座
      • 1周目終わり、復習
    • パーフェクト講座
      • 30/150くらい
  • キク英文法
    • 2周目途中
  • TOEICパート別完全攻略

感想

英単語は単語帳を読む前にmikanで2周くらいしていたおかげで、いざ単語帳を見て音声を聞いて本格的に覚えていく段階になった時に、だいぶ記憶に定着させやすかった。

TOEICパート別完全攻略』の動画でTOEICの特徴と学習方法がわかったので、スタサプのパーフェクト講座で実践している。

TOEICで身につくのは英語力ではなくTOEIC力だという批判も耳にするが、ビジネス英語で大切な基礎力を身につけるには良い試験だと思うので、引き続きTOEIC対策を通して英語力を身につけていきたい。

1月にやること

Happiness Chainの課題

  • React 中級
    • インプット課題の復習(2周目)
    • アウトプット課題
  • React 上級
    • インプット課題1つ目残り
    • インプット課題2つ目
  • TypeScript
  • Next.js
    • インプット教材1つ目
  • Go初級
    • インプット教材1つ目

課題外

抱負

学習時間は平日2時間、休日6時間として110時間は確保したい。

今月は、ロードマップとしてはReactの残りを終えてから、いよいよGoに入る。ただ、Dockerをずいぶん忘れているので、サーバサイドに入る前に復習しておきたい。

【2024/01/08追記】TypeScript -> Next.js -> Docker復習 -> Goの順で行うことにしたため、一部変更

Reactはロードマップを終えてももっとできるようになりたいので、自主的に100本ノックに取り組んでいく。

あとは現職のキャッチアップ。あまりロードマップの内容とは被っていないが、Vue.jsをやったのはReactの理解にも役立つ(逆も然り)し、PythonAPIの学習も必ず生きてくるので、頑張りたい。

英語

抱負

英語の学習目的は、技術系の動画を自動字幕ありで見られるようになることと、技術系のドキュメント・エラー文を読めるようになること。

短期的な目標として、1月28日TOEICを受験するので、そこで自分の現在の実力を確かめたい。

*1:Euforiaのサービスの一環だと思います

【Happiness Chain Euforia】1ヶ月目の月報

はじめに

2023年6月11日にHappiness Chainというプログラミングスクールに入会し、6ヶ月が経ちました。
入会の経緯については以下に書きました。 wsigma.hatenablog.com

Euforiaへの加入

12月からHappiness Chainでは新しく『Happiness Chain Euforia』というサービスが始まったので、私は0期生として加入しました。

Euforiaとは

Euforiaは、通常のHappiness Chainでの学習に加え、CEOから直接コンサルしていただき、CTO(メンター)から技術指導を受けられます。 具体的には以下を行なっています。

  • 学習する日は、開始時にslackに目標(学習以外の目標も可)を投稿し、終了時に達成状況の振り返りを投稿する
  • 週1回必ずCEO・CTO・0期生メンバーと進歩報告会を行う
    • 学習のことはもちろん、生活習慣やマインドの相談ができる
  • 最低月1回はCTOとペアプログラミングを行う

今はまだ始動したばかりなので未実施すが、今後開発合宿を行なったり、転職するタイミングが近づいたらコミュニケーション能力改善の指導、面接対策、コーディング面接対策も受けられるそうです。

入会の動機

目標である「自走できるエンジニア」になるため、より厳しい環境に身を置きたいと思いました。 メンターの方がとても技術力のある方なので、何度もペアプロが受けられたり、コーディング面接対策を受けられたりするのがとても魅力的に感じました。

1ヶ月目の振り返り

まだ開始して1ヶ月も経っていないですが、Euforiaに加入して良かったなと思っています。

今月は仕事が忙しく、取り組んでいたReactも難しかったので、Euforia加入前だったらそれらを言い訳に学習時間が減っていたかもしれません。

Euforiaで毎日slackに目標を投稿することで、「もうやると宣言したから頑張ろう」と学習に取り掛かることができました。

今までは「わざわざ相談するほどのことでもないな」と思うようなことでも毎週の進歩報告会で相談できるので、不安が減り、より学習に集中できます。

Reactに関しても「インプット教材が身についているか自信がない」とCTO(メンター)に相談したところ、追加で課題を出していただきました。
まだ取り組めていないのですが、解いた後にペアプロしていただける予定になっています。すごく実力がつきそうで楽しみです。

生活面では、頑張ろうとするあまり睡眠時間を削りがちだったのが反省点です。無理に朝型にするのはやめますが、夜更かししないようにしていきたいです。

これから改善していくこと

  • 予定のない休日は6時間は必ず勉強する
  • 毎日最低でも7時間は寝る

11月の振り返りと12月の抱負

はじめに

SE5年目のしぐまと申します。
2023年6月11日にHappiness Chainというプログラミングスクールに入会し、約5ヶ月半が経過しました。

入会の経緯については以下に書きました!

wsigma.hatenablog.com

11月が終わったのでやったことを振り返り、12月の目標を設定します。

11月にやったこと

Happiness Chainの課題

目標96時間に対して約106時間できました!

  • JavaScript 中級
    • アウトプット課題2つ目
  • JavaScript 上級
    • インプット課題
    • アウトプット課題
  • React初級

    • インプット課題 2つ目の途中まで
  • Webセキュリティ

    • インプット教材2つ

課題外

感想

十分な学習時間を確保できた。

Reactの初級は終わらせられなかったが、追加でWebセキュリティをやったし、代わりにVueのチュートリアルもやったので目標達成

Qiitaでのアウトプットもたくさんできた。

英語

約33時間。

  • 英単語クリティカル+
    • mikan
    • 本も読んでいく
  • スタディサプリ ENGLISH
    • パーフェクト英文法講座 4/5くらい
  • キク英文法
    • 1周目終了

感想

スタディサプリを試してみた。

インプット・アウトプット教材両方あり、英文法の構造が理解できてとても良い。1本の教材の時間が短く進めやすいし。

12月にやること

Happiness Chainの課題

課題外

今読んでいるこの本がとても良いので、記事にまとめたい。

抱負

今月はReact月間。年末にかけて仕事が忙しいが、100時間勉強する。

基礎に時間をかけることを恐れないこと。ただし、一周目で完璧に理解しようとしない。何度も繰り返す。

自分の理解に関心を持って、どこまでわかっていてどこからわかっていないのか把握する。

エラーが起きたら仮説と検証を繰り返す。やみくもに試行錯誤しない。

英語

抱負

目的は、技術系の動画を自動字幕ありで見られるようになることと、技術系のドキュメント・エラー文を読めるようになること。

キク英文法が1周終わったので、移動中や作業中にキク英文法を聞いて、あとはスタサプをゴリゴリ進めていきたい。

1月28日にTOEICを受けることにした。高得点を目指すというより、まずは自分の現在地を知っておきたい。

10月の振り返りと11月の抱負

はじめに

SE5年目のしぐまと申します。
2023年6月11日にHappiness Chainというプログラミングスクールに入会し、約4ヶ月半が経過しました。

入会の経緯については以下に書きました!

wsigma.hatenablog.com

10月が終わったのでやったことを振り返り、11月の目標を設定します。

10月にやったこと

Happiness Chainの課題

目標99時間に対して約66時間と2/3しかできなかった。

  • DB設計
    • インプット教材2つ
    • アウトプット課題
  • REST
  • テスト技法
  • JavaScript初級
  • JavaScript中級
    • インプット教材
    • アウトプット課題1つ目

課題外

  • アウトプット記事作成
    • Qiita記事1本

感想

目標以上に進められたが、学習時間はかなり少なかった。

原因は、9月末の葬式と10月初めの体調不良で学習の習慣が乱れてしまい、その影響を引きずってしまったから。完全に言い訳だが、テスト技法やJavaScript中級のインプット教材が単調だったせいもある。。
「多少の体調不良や不安ややる気に左右されず、淡々と学習する!」と意識を改め、月末までにリズムを取り戻せたのは良かった。

DB設計課題では初めて再提出になって、むしろ嬉しかった。自分が真剣にやった課題に対し、より良くするための指摘がもらえるのは嬉しい。

英語

約10時間。9月の1/3。

  • 英単語クリティカル+
    • mikanを使って隙間時間に毎日最低50単語ずつやるのが習慣になった
    • 1周目終わり
  • 英文法基礎10題ドリル
    • 1周目終わり
  • 発音マスタークラス
    • Chapter2, Chapter3途中
  • キク英文法
    • 1周目 Chapter6 Introductionまで

感想

発音は日々の練習不足のせいもあって途中からついていけなくなり、一旦中断。発音記号が理解できるようになったのは収穫。

英文法入門・基礎ドリルで文法の本当の基礎のところは理解できた。これからはキク英文法を使ってしっかり身につけていく。

キク英文法は一日の学習範囲が区切られ、音声はアプリで聴けるので取り組みやすい。学習方法についてはイングリッシュおさるさんの動画を参考にした。

11月にやること

Happiness Chainの課題

  • JavaScript 中級
    • アウトプット課題2つ目
  • JavaScript 上級
    • インプット課題
    • アウトプット課題
  • React初級

課題外

  • 『ステップアップJavaScript
    • JS初級者から中級者になるための本
    • 簡単なアプリを作りながらAjax、非同期処理、this、クロージャなどJSの重要ポイントを押さえる

抱負

JavaScriptをある程度理解し、今後のフレームワーク学習の土台を築く。

現職でVueが必要になるかもしれないので、そうしたら一旦ReactではなくてVueをやるかも。

学習時間の目標は、平日2時間、休日6時間として合計94時間確保したい。

英語

抱負

目的は、技術系の動画を自動字幕ありで見られるようになることと、技術系のドキュメント・エラー文を読めるようになること。

キク英文法をメインに使って文法・リスニング・発音を同時に身につけていく。

REST APIについて簡単にまとめてみた

はじめに

REST APIについて学んだので、簡単にまとめていきます。

REST APIとは

  • REST APIとは
    • パラメータを指定してHTTPでURIにアクセスすると、JSON形式等で記述されたデータを返すサービスや、そのための規約のこと

補足

APIとは

  • Application Programming Interface
  • 機能やデータを外部から呼び出して利用できるように定めた規約や、その規約に則ったサービスのこと

RESTとは

  • REpresentational State Transferの略
  • 日本語では「分散型システムにおける設計原則群」
  • 2000年に考えられた抽象的な設計原則
  • 現代では、この設計原則をWebシステムに適用し、REST APIとして使われることが多い

REST APIの設計ポイント

実現したい操作に合わせて、HTTPメソッドとURIを組み合わせて設計する。

ここでは例として、movieをリソースとしたCRUD操作のHTTPメソッド、URIを定義する。

操作 HTTP method URI
映画一覧の取得 GET http://example.com/movies
特定の映画をidで取得 GET http://example.com/movies/123
特定の映画をidで検索 GET http://example.com/movies?id=123
特定の映画の更新 PUT http://example.com/movies/123
映画の新規登録 POST http://example.com/movies
特定の映画の削除 DELETE http://example.com/movies/123

ポイント

  • URI
    • 入力ミスを防ぐため短めにする
    • URIはリソースの集合のため、単語は複数形moviesにする
    • クエリパラメータとパスパラメータを適切に使い分ける(後述)

補足

基本のHTTPメソッド

メソッド 意味 CRUD操作
GET リソースの取得 Read
HEAD リソースのヘッダ(メタ情報)のみ取得
POST 新しいリソースを送る Create
PUT 現在のリソースをリクエストしたデータ形式で置き換える Create/Update
DELETE リソースの削除 Delete
  • CreateのPOSTとPUTの使い分け
    • PUTはリソースの名前が決まっている場合、POSTは決まっていない場合

クエリパラメータとパスパラメータの使い分け

リソースの絞り込み方法として、クエリパラメータとパスパラメータの2種類があり、以下のように使い分ける

種類 概要 用途
クエリパラメータ URLの末尾に"?"がある
「GET http://example.com/users?id=123
検索条件など、特定のリソースに条件を加える時に利用する
パスパラメータ URLの中にパラメータが埋め込まれている
「GET http://example.com/users/123
ユーザーのプロフィール画面など、一意なリソースを表す時に利用する

参考