SE Can't Code

A Tokyo based Software Engineer. Not System Engineer :(

Udacity「Intro to Theoretical Computer Science」を修了した.

エンジニアとしてキャリアをスタートさせて3年半が経つが、コンピュータサイエンスの理論をしっかり学ばないと今後辛くなっていくな、という勝手な思い込みがあった。特に自分は文系出身なのでその思いは強く、今年に入ってからSICPを始めとしてコンピュータ理論に関連したいろんな文献を読み漁るようになり、その中の一つとしてUdacityの「Intro to Theoretical Computer Science」のコースを受講していた。そして二ヶ月近くかかったが、ようやく修了することができた。ノートにまとめながら進めていたので凄まじく遅かった。



Lesson 1: Challenging Problems

  • An introduction to tough problems and their analysis

Lesson 2: Understanding Hardness

  • What we mean when a problem is “hard” and the concept of NP-completeness

Lesson 3: Showing Hardness

  • Tools to let you recognize and prove that a problem is hard

Lesson 4: Intelligent Force

  • Smart techniques to solve problems that should – theoretically – be impossible to solve

Lesson 5: Sloppy Solutions

  • Gaining speed by accepting approximate solutions

Lesson 6: Poking Around

  • Why randomness can be of help – sometimes. An introduction to complexity classes.

Lesson 7: Ultimate Limits

  • Problems that no computer can ever solve. In theory.