22
devios1
5y

I found university very worthwhile, mainly for what it exposed me to that I wouldn’t have necessarily learned otherwise. University exposed me to a lot of knowledge which allowed me to discover the fields and concepts that really interested me. It also forced me to learn math, and I’ve come to really love mathematics, even though my knowledge is still not that deep. I really respect and appreciate math now that I have more than a superficial understanding of it.

CS-wise, the things that have been most useful in practice have been complexity, data structures, concurrency, and others, but complexity is probably the absolute most important thing to at least learn the basics of.

I would not say that university is a necessity though. You can absolutely get by teaching yourself, especially if you are disciplined/interested enough to keep doing it. The important thing is to learn *what* to learn.

Comments
  • 0
    I went through FSND at Udacity and are thinking some calculus and other maths at MIT open course ware. Is the maths worth it for a programming career?

    What tips do you have on learning what one needs to learn?

    I want it all, that is, besides the actual school - I'm super curious and am unsure how much / what I actually need to learn. Just research more concepts, and use them in practice?
  • 1
    @Kandelborg That’s a huge question and there’s no short answer. As for the maths, good ole algebra has been the most useful to me personally, but I would imagine statistics would also be very handy if doing stuff like machine learning. I honestly don’t see calculus as being all that helpful, unless you’re doing actual mathematical or scientific programming.

    I would start with classical algebra and geometry and go from there. Linear algebra (matrices) is worth knowing as well, especially if you get into graphics programming.

    As for CS, like I said start with complexity and get a good handle on “Big O” notation and how complexity combines and grows. You will need a general understanding of functions and how they look graphed out (n, n^2, n^3, log n, n log n, 2^n, etc). These relate directly to how computationally expensive an operation is based on its input size. You will relate back to this knowledge with every single algorithm you write.
Add Comment