In short, programming is fun. Software development is not.
There is essentially no difference between the two, except that what geeks and normal people call programming, business people call software development (I think the size of the words they use shows that they are trying to reflect their big...ego). In fact, I would have to say that the term "development" doesn't quite reflect what actually goes on. Development implies some sort of growth, as in "the economy of South Korea has developed quite quickly over the last few decades" or "I have developed a tumour in my ear". Software doesn't develop, it is designed and programmed. While the design may change, I would never call it growth - unless you're talking about the Windows underlying system, which from my perspective has just been growing (like a tumour) since the dark days of the 1980's.
Programming, sometimes referred to by geeks as coding, is fun - provided you're a geek. You program random things for the hell of it, not caring when or if it will be finished, or what people will think of it. You do it because you want to. I find myself a lot of the time re-inventing other people's work, just to see if I can also do that. Maybe other programmers do the same, or they program to do cool stuff or to try something new. Whatever their reason, they do it because they want to.
For many of us, we realize that we like programming and think, "Hey, maybe I could do this for a career." And why not? We like it and it pays well, what's not to like? Unfortunately, fun stuff is usually not what makes the money. Making massive changes to software, planning the software, or debugging the software for hours, etc. You design it not to your specifications, but to what the users/bosses want. It is not coding for you, it's coding for them (see Jeff Atwood's UsWare vs. ThemWare). This reduces the fun factor of programming by a lot.
So what do we do? All things considered, we don't have it so bad. A lot of jobs don't really take all the fun out of programming. We get paid very well for people fresh out of university, and we can pretty much just sit our butts all day.
Personally, I see software development as a great way to butcher a long-time hobby of mine. I no longer want to program when I go home, I just want to sit around and watch movies or play games, or blog about how programming in the real world sucks. Why not just get a job in another field and do programming in your spare time?