One reason Apple’s iPhone/Touch/iPad environment is so popular with developers (and users) is its homogeneity—create one app and it runs on all devices. That’s about to change.
Multitasking, the ability to run more than one program at a time, will only work on their 3rd generation hardware. Perhaps more importantly, this summer’s (2010) release of iPhone OS v4 will not run on the 1st generation iPhone and Touch.
This will create added expenses for the developer and users will need to be certain that a particular app will run on their specific hardware. This was inevitable but it does create a more fragmented sales channel.