Whether Apple has literally used magic or not in the creation of the iPad, it seems primarily targeted at everyday users with common needs. One can't run arbitrary software on it, so it can't do the same thing for me as my Dell Mini where I frequently use Eclipse.
But the iPad can run office software, games, other apps, and HTML. My understanding is that JITs aren't supported on the iPhone, but I guess you could do interpreted program execution.
I think that HTML is the important item here. If the iPad or other limited devices gain enough traction to impact usage of traditional notebook computer, what does that do to programmers like me? I can always still be a minority notebook user or stick to desktops, but what do I do when cheap and convenient leave me behind?
I predict that such market trends will push even more app usage onto the web. Development environments like Mozilla's Bespin might eventually catch on. All I need is a browser to code, and the iPad has that.
Further, what is the best deployment platform? Sure, I can write iPad apps ... or I can make web apps which can work all around. Firefox 3.6 includes support for device orientation detection. I don't know where HTML5 or other browsers are in relation to support for such features, but I imagine it's coming.
So, where do we code? The web. What do we code for? The web. It's not a completely true story today, but devices like the iPad push it closer. Web domination marches on.