My background is in developing web applications, and have used PHP, Ruby, Python and JavaScript heavily over the years. I don't have a formal education in computer science.
I've recently started looking at Rust[1], and have found myself having to learn about things like memory, pointers, lifetimes, ownership, (de)referencing and so on. I've found that I've been spoiled by dynamic languages over the years in not having to think/worry about any of that.
Where did you start in learning all of this? Can you show me any resources which would help me in learning this sort of thing?
What computer science concepts do you find most valuable when it comes to systems programming?
Thanks for the help in advance!
1. Rust - http://rust-lang.org