[ASK]How to learn Linux System Programming? Any Advice?

Hi, Sorry for my bad grammar.I'm here to ask some advice to learn Linux System Programming, actually I was at programming world since 8 years ago with various programming languages at Win32. But since last year I was migrate to Linux, and I quite confused with how can I learn how to program at Linux. I tried to open some Linux program source code like ls, cat and something like that, but I still can't understand. Where I should start? And If you have any resource on that please share it.