I am gradually teaching myself various programming languages, but I am not very familiar with particular computer science concepts. Which concepts do you think would be most practical if I want to try to break into Silicon Valley? (I’m a second semester mechanical engineering sophomore) Thanks!
http://cs10.org/ is a broad introduction to CS for non-majors and intended CS majors with little computing experience.
http://cs61a.org/ is an introductory CS course for CS majors.
“Which concepts do you think would be most practical if I want to try to break into Silicon Valley? (I’m a second semester mechanical engineering sophomore)”
If you want to break into Silicon Valley, why not change your major to CS or Comp. Eng.?
Thanks for the links @ucbalumnus
@Much2learn - well, firstly I want a fallback, secondly I enjoy the material, thirdly it might be a little late to realistically do that while graduating in four years.
What do you even think you’re asking about? Variables? Loops? Recursion? Pointer arithmetic? Enclosures? OOP? Database design? Search algorithms? Embedded programming? Desktop apps? Mobile apps? Web design?
Without knowing your current skill set, it’s hard say what your next step should be. The same is true of your goals. A person who maximizes the efficiency of a database search (think Google) does not also design GUIs, and vice versa. The person who knows a little about all those things is set up to run a boutique web design company, but, with little experience, not to manage the website of a large corporation.
Again, what do you think you’re asking?