u/Extra-Engineering374

CS is more mathematical engineering?

I've been learning CS (let's say here, both computer science and engineering) for some time, and while I recently played KSP I found that CS, at least its theoretical part, is a bit different from traditional system engineering. I've been programming in higher and higher-level languages, building things by making layers of abstractions, and making incremental additions to projects.

However, in more realistic engineering, e.g., to build a rocket in KSP, there are always limitations & different factors could influence each other, thus should be considered and designed overall at the very beginning; pure incremental method obviously wouldn't work, and abstractions is hard to extract either. The only incremental method I use when building a rocket is building the upper levels first, and trying to abstract out the upper part as a black box "payload" when building the next level.

I understand CS has a wide range of topics, and building an OS is apparently distinct from application programming. But overall it seems the problems "codable" always share some useful properties, and thus act like a hybrid of math & engineering.


There must be some properties lying in the problems that divide them. One I can come up with: when building abstractions you always try to restrict dependencies to be unidirectional, but in some domain bidirectional dependencies are unavoidable.

reddit.com
u/Extra-Engineering374 — 5 days ago