Future proofing CS knowledge
6 comments
In addition to what's been said, design patterns will serve you well for a long time.
I don't think logic (including syntax and grammar) will get outdated, I'm not trying hard but the maths and logic from the Greeks has lasted longer than their theories on matter, gods and treatment. The trends will be slow enough for even those rarely active to keep up (triply so in enterprise).
Actually learn computer science.
I wish someone would have told me this before I started school but Computer Science and programming/ Software Engineering...
are not the same thing
Pay attention in your data structures and algorithms classes, ask questions of your professors and TAs, and most importantly work on as many of the problems as you can.
Those things are important because they help you understand and decipher about why programs and languages work the way they do. And the trade offs you make in designing them.
If you do you'll be able to pick up any language that is thrown at you because you'll understand the underlying concepts.
I wish someone would have told me this before I started school but Computer Science and programming/ Software Engineering...
are not the same thing
Pay attention in your data structures and algorithms classes, ask questions of your professors and TAs, and most importantly work on as many of the problems as you can.
Those things are important because they help you understand and decipher about why programs and languages work the way they do. And the trade offs you make in designing them.
If you do you'll be able to pick up any language that is thrown at you because you'll understand the underlying concepts.
Thanks for the responses. Yeah, I was thinking that it was very important to actually learn the "computer science" part and not just the programming part.
However, I'm wondering about how a programmer would try to "future-proof" his CS knowledge. Is it more important to learn the math, algorithms, and logic instead of focusing primarily on languages?
What are the trends you guys see in computer science right now? What knowledge will still be valuable in the future, 30-50 years from now?