Sakiのプログラミング学習ブログ

プログラミングについて学んだことや、学習の振返りを書いています。

週報 1/18(月)~24(日)

1/18(月)~1/24(日)の一週間の学習の振り返りをざっくり。

今週の目標&結果

今週の目標 結果
TwitterのDB設計の合格 ○ 18(月)にレビューをいただいて再提出し、19(火)に合格🎉
外部キー記事
自己参照/自己結合の理解・記事
正規化の手順
DB設計の手順
自分がDB設計で理解につまずいた所&どうやって理解したか
TwitterURI設計の課題の提出(not必須) ○ 21(木)に提出

今週の学習時間

ラクティス外の学習や勉強会への参加は含めない。

日付 目標 実際
1/18(月) 2:00 2:15
1/19(火) 2:00 1:30
1/20(水) 2:00 3:30
1/21(木) 6:00 6:00
1/22(金) 2:00 3:15
1/23(土) 6:00 3:00
1/24(日) 6:00 4:30
合計 26:00 24:00

今週やったこと/考えたこと

1/18(月)

やったこと

  • 外部キーについて学んだことの記事を書くために、参考記事を読んだ
  • TwitterのDB設計の課題のレビューをいただけたので、再提出した
  • DB設計を学んだ時にわかりやすかった記事のリンク集を作った。また学習する時に一から探すのは時間がもったいないため。
  • 先週の週報ブログを書いた:週報 1/11(月)~1/17(日)
  • DB設計の提出物の合格の目処がたったので、今週の学習計画を立てた

考えたこと

  • 集中できない時・元気ない時用のタスクを用意してみたが、元気がない時はそれすらできないので、あんまり意味が無いと気づいた。。寝るのが一番だと思った。

1/19(火)

やったこと

考えたこと

  • TwitterのDB設計を合格した🎉ボロボロだったらどうしようと不安な気持ちでレビューを待っていたので、「全体的にいい感じです」と言っていただけて、とても嬉しかった!
  • 昨日よく眠れなかったため、今日は全体的に眠く、記事を読む時あんまり集中できず内容が頭に入ってこなかった。睡眠の質は学習に集中する上で本当に大事だなと感じている。
  • マネジメントとスペシャリストについての発表で、

マネジメントとスペシャリストは対立する概念として捉えられがち。しかし、スペシャリストといっても、ソフトウェア開発において個人だけで成果を出すことは少なく、チーム開発が多い。マネージャーも知識が求められる。 なので対立した概念ではない。

スペシャリストとは、その技術と心中することではない。 ❌何かを捨てて何かを得る
⭕興味がある技術がきたら、それも柱にすればいい

というお話がとても勉強になった。

1/20(水)

やったこと

  • TwitterのURL設計課題をスタート。
  • URL設計の課題のため、参考記事&「Webを支える技術」を自分でまとめたscrapbox/輪読会ノートを読んだ。参考記事をたくさん読んで、URL設計が何をするものなのか、どういう手順で行うのかがつかめてきた。
  • PATCHメソッドを学んだ
  • HTTPの一次情報はRFCと知った

考えたこと

  • Webを支える技術で、HTTPやURIの章は一通り理解できたと思っていたが、課題作成にあたり、今、「何がわかれば設計のやり方が分かるのか」が、分からない状態。色々記事を読んで掴もうと思う。

  • 目を全然労れていないことに気づいた。仕事中もデスクワークでPCをずっと見る、プログラミング学習中もずっと見る、休憩中もYouTubeTwitterを見てることが多いので、起きてる間ほぼずっと画面を見ていることになる。。スマホとPCの画面を常にブルーライトカットにしているが、それでも目のダメージは大きいと思う。目は一生ものなので、スマホを見る時間を減らしたり、温めたりして大事にしたい。

  • メンターさんに、「いろいろしっかり調べて、調べたことを咀嚼していますね」と仰っていただけて嬉しかった。

1/21(木)

やったこと

  • 6:00~7:00 Teamgeekの輪読会
  • 卒業生の方のHTTPに関するLT発表動画を見る
  • Webを支える技術の4,6,7章を読む
  • TwitterのURL設計を提出した🎉(今週掲げていた目標を達成)
  • Sinatraのプラクティスをスタート
    • Sinatraをインストール
    • reloaderをインストール
    • GETメソッドを使ってlocalhostに接続してwebページを取得してみる
  • 5時に起きて#hayaoki_girlsに参加。

考えたこと

  • メソッドよりも、URLの構成を考えることが難しい。ホスト名の直下に作るのか、リソースの下にリソース(子リソース)をおくのか。。
  • パスは、「どのリソースに対して」、メソッドが働きかけるのかを指すことに注意する。
  • 時間を見える化して管理したいと思い、Togglを使ってみることにした。なんと、GoogleカレンダーとTodoistと連携ができ、とても便利だったので驚いた。具体的には、Googleカレンダーの予定がTogglの方で見ることができたり、Todoistのタスクから、Togglの機能である作業開始~終了の記録をすることができる。 自分が知らないだけで、世の中はどんどん便利になっているんだな、と思った。そして使いこなしたい!と思った。

  • TeamGeekを読んで、「チームリーダーのアンチパターンの一つは、メンバーを子供扱いすること(≒がちがちに管理する)」「メンバーがリーダーに求めているのは、問題解決ではなく、問題解決の手助けをしてくれること」という話がとても身にしみた。アンチパターンに今から気づけて本当によかったと思う。

1/22(金)

やったこと

考えたこと

  • 昨日Sinatraを触ったときに理解できなかった挙動の意味がこれを読んでわかってスッキリした
  • ブロックの最後の結果を使ってhtmlを作り、ブラウザへレスポンスとして返す →なるほど、たしかにechoとは書いてないのにブラウザに" "内に入力した文字が表示される。これはsinatraがHTMLを作ってくれたからだったのか、と分かってスッキリした。
  • Sinatraは最初、GETを使うとなんだか接続できる、ということしかわかっていなかったが、たくさん文献を読んでいるうちに何をしてくれているgemなのか分かってきた。メモアプリ作るのがとても楽しみ。

1/23(土)

やったこと

  • ドットインストール Sinatra入門:全17レッスン中1~8までをやった
    • 変数
    • ERB
    • テンプレート
    • CSSを当てる
    • HTMLのformタグ・inputタグ
  • 6:00~7:40:TeamGeek輪読会
  • 15:00~16:15 初めてのLT会 Vol.6に聞き手側で参加
  • 20:15~22:00 LT会の感想ブログを書いた → 「初めてのLT会 Vol.6」 に参加させていただいた感想
  • 22:00~23:00 達人に学ぶDB設計 輪読会第4回

考えたこと

  • RailsSinatraを初めてみたとき、なぜこんなにたくさんのファイルがあるんだろう...と理解できるか不安だったが、ドットインストールを手を動かしながら見たらそれぞれのファイルの役割を理解できた!
  • 7時間連続で眠りたいと思っているが、最近5時間程度で起きて目が冷めてしまう。。今日は10時頃眠くなってしまい、2時間寝た。連続で7時間寝てすっきり起きられるようになりたい。寝る前のブルーライトが原因なきがしている。
  • 私は文章を読むよりも、動画のほうが頭に入りやすいので、今回もドットインストールを見ることにした。

1/24(日)

やったこと

  • Q&Aを読んで(Railsの)URL設計の指針を学ぶ
  • Notionを使って、メモアプリ課題のタスク洗い出しをする
    • Notionの使い方を知るのに時間がかかった
  • 22(金)と23(土)の日報提出
  • 8:15~9:15 LT会感想ブログを完成
  • 13:30~16:00 「新しいLinuxの教科書」を読む会 オンライン #9に参加
  • 21:30~ 今週の振り返り&来週の学習計画
  • URL設計課題のレビューをいただいた

考えたこと

  • 自由度が高くて使いこなすのが難しそうで、使っていなかったNotionを、メモアプリ作成のタスク洗い出しで使ってみることにした。なんとかtodoリストは見やすく作れるようになった。
  • 「新しいLinuxの教科書」を読む会で大角さんが発表で、「伝わりやすいメールの書き方」について具体的なアドバイスをくださって、とても勉強になった。
  • メモアプリのタスク洗い出しをしたが、Sinatraを使うのは初めてのため、今の段階ですべて細かく手順を洗い出しすることができない。そのため、公式リファレンスや記事でやり方を調べてタスクに洗い出してから、実装に取り掛かろうと思った。Sinatraを動かしてメモアプリを作りながら手順を考えるのは、あまり良くなさそうだと思ったため。

今週の振り返り

✅ できたこと/できるようになったこと

  • TwitterのDB設計を合格した
  • TwitterのURL設計を提出した
  • URL設計にもっと時間がかかると思っていたが、予想よりかからず、木曜からSinatraに進むことができた。
  • LT会の感想ブログを書くことができた
  • Sinatraの使い方が分かってきた。タスクの洗い出しも実装方法が分からなくて手順を書き出せない所以外は完成できた。

✅ "こうしたらもっと良かった"と思うこと

  • ラクティスに関する学習時間が、目標に対して平日は長く、休日は短い。 休日は6時間はプラクティスに割くと決めたのに、ブログ作成やイベント参加に時間を割きすぎてしまった。あらかじめ、この時間は絶対プラクティスのこの部分を進める、と予定を決めたほうがいいと思った。
  • 学習時間が平日は長く、休日は短い理由は、平日は学習時間が一日の中でとても限られており、「今やらないと今日何も進まないことになる」と、タイムリミットを意識するため、集中して取り組めているのだと思う。
    平日は時間を惜しんで学習するのに、休日は一日自由時間なので、のんびりしてしまう...。来週の雑談タイムかミートアップで相談してみようかと思う。
  • 今週は日報をその日のうちに出せないことがほとんどだった。その日の気持ちはその日しか覚えておらず、書けないので、あとから出すことはなるべく避けたいと思っている。その日のうちに出せない原因は、slackで書いている分報に時系列順で学んだことや感じたことを全部書いていて、それを日報に項目ごとにコピペすることに、時間がかかっている。それが億劫で提出までたどり着けていない。 slackに全部書くのはやめて、日報にこまめに書きながら書くか、あるいはキリのいいところで日報にコピペするか、方法を変えようと思う。

  • DB設計の復習をしなかった。URL設計の課題を提出した後、次のプラクティスに進みたいという誘惑に負けてしまった...。これでは計画を立てた意味がない。どれくらいの理解で先に進むか、ペースは人それぞれなので、スピードと質のバランスが難しい。

  • DB設計を合格する前に、URL設計の課題に着手しても問題なさそうだったので、先週始めればよかった。

来週の目標

学習時間

日付 目標
1/25(月) 2:00
1/26(火)有休 6:00
1/27(水) 2:00
1/28(木) 6:00
1/29(金) 2:00
1/30(土) 6:00
1/31(日) 6:00
合計 30:00

達成したいこと

  • TwitterのURL設計課題の再提出→合格
  • Sinatraのメモアプリの課題を提出
    • できれば。目安時間は26時間だが、みなさんの日報を見てると、もっと時間がかかりそう。
    • 今週、具体的にいつ何をするかは、これから計画する。
  • Sinatraの課題に集中して取り組みたいので、DB設計の復習はSinatraの課題を提出してレビューを待っている間に行う(2月1週目予定)