まず公式の言語ドキュメントを頭から尻まで通読しろ
今時 ISO に何万円も払って規格書を買わなくちゃいけない言語は(たぶん)ない。大体ネットで無料で読める
人に見せて恥ずかしくないコードを書くには必要な通過儀礼
あとアルゴリズム入門書は何か読め
一ページの解説と一ページのソースコードが延々繰り返されるような本がいい
一つの話題を掘り下げて知るよりは広く浅く知っといた方がいい
何かを深く知りたかったり原理を詳しく知りたかったらググればいいんだからキーワードだけ仕入れるつもりで
オブジェクト指向をやりたいならこの辺で上手な人のコードを見てクラス階層の作り方を学ぶといい
そしたらデザパタ本を読め
デザパタを意識してコード書く必要はないけど他人のソースコード読むときに
デザパタの用語が結構出てくるんだわ。プログラマの共通言語として知っとくといい
あとオープンソースでやるなら、見よう見まねで誤解したまま用語を使って恥をかかずに済む