2021年で勉強したことと2022年の目標

2021年目標の達成状況

  • 1冊以上の技術書を読み終える -- 達成
  • 英語の語彙を10000語以上にする(測定はWeblioのテストを用いる) -- 未達成。去年と大きく変わらず8000語程度と出る。

勉強内容

英語

iKnowで英単語を2020年5月ごろから勉強している。

f:id:blue_jam:20211231155131p:plain

iKnowで「マスターした」とされる語数は2316(2021年12月31日現在。サービス利用開始時から)。2020年12月26日に600、2021年1月4日に700を達成したとiKnowに記録されているので、2021年開始時は650ほどだったようだ。よって、今年「マスターした」単語の数は1666になる。

現在は1日1回、学習モードiKnow!、学習アイテム数50、学習アイテムタイプおまかせでやっている。元気がない時期や忙しい時はアイテム数を5にしてstreakを維持していた。カレンダー機能を使って見る限り、1-3月はサボり気味で、逆に10月以降は安定している。(ともに調子が悪かった時期だが)

ドイツ語

Duolingoでドイツ語を2020年5月ごろから勉強している。ドイツ語↔日本語のコースは存在しなかったので、ドイツ語↔英語のコースで勉強している。たまに、ドイツ語の訳として表示される英単語を知らないことがあり、英語のコースをちゃんと勉強したほうがいいんじゃないかと思うこともある。gummy bearってなんだよ。

iKnowとは違い、(streak freezeの恩恵もあり)streakが現在も続いている。今日中にレッスンをすると560日になる。

現在はDiamond Leagueというリーグから落ちない程度にやっている。

技術書

4月ぐらいから、1日1節程度を目標に読むことにした。iKnowやDuolingoと違い、streakが自動で管理されないため実際にやった日にちの記録はない。真面目にやっていたのは4ヶ月ぐらいだったと思う。

今年読み終えた本は次の3冊

  • 体系的に学ぶ 安全なWebアプリケーションの作り方 (リンク先は2版だが、自分が読んだのは初版)
    • 著者に怒られそうだが、電子版でCDがなく環境を準備するのが面倒だったので読んだだけにとどめた。どこかでタイミングを見つけて環境を再現し実際に動かしてみたい。
    • ガラケー用Webアプリケーションのところは時代遅れだと思ったので完全に飛ばした。
  • 6日間で楽しく学ぶLinuxコマンドライン入門
    • コマンドラインまじで何もわからんので読んだ。使えそうなコマンドが色々紹介されていたが、全然覚えていない。暇があったらまた読み返したい。
  • 1冊ですべて身につくHTML & CSSとWebデザイン入門講座
    • 自分のHTMLとCSSの知識は2005年の田舎の市立図書館に存在した書籍程度で止まっているので、改めて勉強し直そうと思って購入した。一応、書店で中をざっと見てから買ったが、自分にはかんたんすぎた。本当にHTMLとCSSを書いたことがない人が読む本(タイトルにそう書いてあるだろ)。新しく得られた知識がまったくなかったわけではないが、MDNを読んだほうが良かった。

現在読んでいる途中の本・資料は次の4つ

  • ウェブ開発を学ぶ (MDN Web Docs (進捗停止中)
    • HTMLとCSSの入門書を読んだあとで、「やっぱMDNを読んだほうがいいな」と思ったので読み始めた。はじめは日本語で読んでいたが、読み進むに連れて日本語訳がこなれていない感じになってきたので、英語で読んでいる。
    • CSSStyling tablesに差し掛かったあたりで、自分の元気がなくなり、読み勧めていない。12月はじめから技術書を読むことを再開したが、今は他の本(次の3冊)に浮気中である。
    • 早めにCSSの章は読み終えておきたい。
  • Effective Java 第3版
    • 4年前に買って、初めの方を読んだだけで積んでいたのを改めて読み始めた。毎日1アイテム読んでいる。
    • イキって買った当時は3版の邦訳がなかったため、英語で読んでいる。
    • 読んでいると、「Kotlinがああなっているのはこのせいなんだな」とわかり、ちょっとおもしろい。
    • 手を動かしながら読んでいないのはあまり良くないと思っている。一応、動かしたほうが良さそうなところには栞をつけているが・・・
  • 1日1問、半年以内に習得 シェル・ワンライナー160本ノック
    • シェル芸を身に着けたいコマンドラインを使いこなしたいので読み始めた。
    • 1日2問(練習問題を含む)を目標にやっている。
    • パズルゲームをやっているようで面白い。
  • Googleのソフトウェアエンジニアリング ―持続可能なプログラミングを支える技術、文化、プロセス
    • 日本語訳が発売されたばかりだが、イキってO'ReillyのOnline Learningで無料で読めるので英語版を読んでいる。しかし、英語が難しい。(自分には)難しい語がガンガン出てきて、たまに複雑な文が出てくる。日本語訳買うかと思っていたら、翻訳が良くないというレビューをAmazonで見かけた。次に書店に行ったときに中をちょっと確認してみよう。
    • 1日1小節(というのか、最も小さい見出し1つ分)のペースで読んでいる。上の2冊と違い、もうちょっと広い範囲を時間をかけて読んだほうがいい気がする。

アプリケーション開発

これは勉強とはちょっと違うかもしれない。

去年の10月頃からRainbow Shoesという、オタクグッズが発売されたときに通知してくれるサービスを作っている。

現在はお気に入りのアイマスのアイドルを登録したら、そのアイドル関連の商品情報がメールで届くようになっている。次は、ユーザーが検索クエリを登録してそのクエリにヒットする商品が発売されたら通知をするように変更したいと思ってから、準備を始め3ヶ月が経過した。最近は開発をする元気がない。デプロイ周りがイケてないのでもうちょっとうまくやりたい。

来年中にはどういうふうに作っているかブログ記事でも書きたい。

現在は月2000円ぐらいかかっているので、AWSに移行したらどれぐらいかかるかも試してみたい。

あと、最近はこういうことも考えている。

2022年の勉強目標

  • 4冊以上の技術書を読み終える
    • 四半期で1冊のペース。
  • iKnowで新たにマスターした語数1400以上(累計で3716以上)
    • Weblioの語彙テストは影響があまり観測できなくてイマイチだった。
    • 今年マスターした分にはすでに知っていた語が多く含まれていると思うので、目標を今年の実現値よりも減らした。
    • 普段やっている設定だと1日で新しい語を5つ学ぶ。そのうちの8割をマスターを目指す。(iKnowではマスターした語もテストに出題され、不正解を出すとマスターした語から外される)
  • AtCoderの問題を1週間に1問解く
    • 最近やっていないので。
    • コンテストに参加したほうがいいんだけど、時間の拘束がきつい。コンテストが開始する時間が風呂に入る時間とかぶっている。あと、精神的にめっちゃ疲れる。
    • 典型n問でもやるか
  • 参加したことがないコンテストに1回参加する(AtCoderヒューリスティックとか、Kaggleとか)
    • 長期間参加する必要があるコンテストにかなりの期間参加していない。参加した結果、無為に時間を使ってしまう気がして、二の足を踏んでいる。
    • 1回参加して、復習するところまでやっておきたい。(Kaggleはちゃんと練習をしたほうがいいと思うが。まじで何をやるのかわからないので)