So, First of all, I don't have much of a background when it comes to programming, I'm a junior web-developer right now, I know/learnt the basics of C++, but no CS degree or anything.
Here's the problem: where to start? I'm really having a hard time looking on where to start, especially when it comes to the hardware, it is easy to say learn MIPS assembly. but I have no experience with assembly in general. For development, C is the main language for developing/programming, right?
Any suggestions are welcome

Thanks!