I have always heard that programming (software developing) is much more complicated, intricate, and requires more math than networking. However, I have heard that networking has its own difficulties in the fact that a Network Administrator needs to be sort of a "Jack of All Trades" in regards to IT hardware and software. He needs to know how to deal with all kinds of networking and system issues that may arise, whereas a programmer just mostly concentrates on programming. And because of this, Network Administrators have more real-world knowledge that can be applied to everyday life such as fixing hardware problems, whereas programmers’ knowledge is usually much more specifically geared towards programming, and some programmers don't even know how to build a PC, whereas Network Administrators are usually very proficient in dealing with hardware. In other words, Network Administrators know hardware and software really well, whereas Programmers just specifically deal in software, but have much more intricate knowledge of programming code. Finally I have heard that a Network Administrator's job is usually a little more physical than a Programmer's job. In other words, Programmers sit in a cubicle all day typing code, whereas Network Administrators have to get up, fix things, sometimes drive places, etc. And because of the nature of his job, a Network Administrator needs to be physically present "at work", whereas a Programmer can sometimes work from home. And because of this, more programming jobs are being outsourced overseas, whereas networking jobs tend to be staying in the United States.
I know all of these things are generalities.
I am trying to find out the real differences between these occupations.