プログラマだったら当然知ってるよね?という知識一覧 | anopara

anopara.net

データ構造 計算量(計算複雑性)
アルゴリズム
数値計算
グラフ理論
理論計算機
セキュリティ・暗号化
プログラミングパラダイム
並列・非同期処理の基礎

可能なら下記も、とのこと

ソフトウェア工学
現代コンピュータの性能
CPUの仕組み
OSの仕組み
ネットワーク(7階層モデル, IP, TCP, UDP, HTTP, HTTPSなど)
セキュリティ
統計・データマイニング機械学習系の基礎知識

コンピュータサイエンスの基礎を学ぶと何ができるようになるのか|masuidrive|note

note.mu

一番は「先の技術を読めるようになる」ことです。
「寿命の長いコードを書けるようになる」事も大きなメリットです。

プログラミングは総合格闘技である(前編)|erukiti|note

note.mu

僕の主張は、コンピュータサイエンスも、ソフトウェアエンジニアリングも、コミュニケーションや、言語学、あるいは他のあらゆるものも含めて、プログラミング(設計、実装、テストその他全部含む)はそれらの集合体(総合格闘技)であるというものです。

(中略)

プログラミングは、数学、工学、文学、コミュニケーションその他の総合格闘技である以上、どれかを毛嫌いしたり、どれかに傾倒しすぎるのは勿体ないので、少し興味を持ってみませんか?というのがこの記事です。

NTTコミュニケーションズのソフトウェアエンジニア向け研修内容・資料を公開します | NTT Communications Developer Portal

developer.ntt.com

公開してくれるのはいいことですが、グループワークや実習がメインなのでこれだけで独習には限界がありますね。
「これぐらいのことをしています」という外へ向けての発信ですね。

コンピュータ・サイエンスやりたくなって1年ちょっとコツコツやってる/やったことたち - でこてっくろぐ ねお

dekotech.dekokun.info 経済学部→Web系エンジニアの方がCSを学ぼうとして努力していることのまとめ。
1日の具体的な時間の使い方や続けるための仕組みも。

これは水です。 | quipped
https://j.ktamura.com/archives/this-is-water
j.ktamura.com

大学で得るべき真の教育というのは、「自分の頭で考えられるようになること」ではなく「考えるべき対象を選べるようになること」だからです。

もう少し謙虚になること、自分の存在や確信していることを見つめ直すことこそが、「自分の頭で考えること」の意味するところではないでしょうか。

でも大抵の場合、何を考えるか選択する心の余裕があれば、レジで並んでいる、目の死んだ厚化粧の母親が子供を怒鳴る光景を、少し違った目で見れると思います。ひょっとしたら彼女は普段は穏やかなのかもしれない。

神秘的な一体感ってのは違うかもしれませんが、唯一無二のシンジツとは、「どう物事を見るかは自分で選択できる」ということです。これこそが君たちが受けた教育が生み出す自由の意味です。「適応力がある」という表現の意味です。何に意味があって何に意味がないのか自分で意識的に決められること。何を信じるか自分で決められること。

その中でも特に大事な自由が、まわりに注意を払い、意識的にものを見つめ、自制心を持つことで得られる自由。誰にも見えないところで、毎日毎日、自分以外の人々のことを思い、彼らのために犠牲をはらい生きる自由。

それこそが本当の自由です。それこそが本当に教育を受けるということです。それこそが自分の頭で考えるということです。無意識、デフォルト設定で、小競り合い、モノやカネを持っている持っていないに執着する無限ループの対極にある生き方です。