As many of you know, with the release of iOS 4.0 Apple discontinued support for the iPhone 2G as well as the iPod Touch 1G. This left iPhone 2G and iPod Touch 1G stuck on iOS 3.1.3 for life. Furthermore, while Apple did end up upgrading the iPhone 3G (which has the same amount of RAM/processor as the iPhone 2G), 3G owners experienced a great deal of problems after updating to 4.0. The OS was incredibly slow and was barely usable.
After various reports and angry iPhone 3G users, Apple began to look into the issue and stated the issues would be resolved in iOS 4.2.1. When iOS 4.2.1 came around, performance had been improved on the iPhone 3G, but it was still quite slow. Most users decided to downgrade/remain on iOS 3.1.3.