Jeroen: In my experience, most "for older OS versions" alternatives are simply old versions that are kept around precisely because they are useful for people with older OS versions. It's a good extra mile to go for your users, but what happens when bugs are found and need to be fixed in the old version?
In my opinion, maintaining two codebases should be done only when you have a very strong desire to both appease the group of users that have the old OS version and use the newer capabilities to build a better application, and have the resources (time, developers if you're a company) to be able to turn on a dime to fix a bug *for any of the two versions*. Actually maintaining two codebases in order to be able to write less, better code in one of them sounds really, really inefficient. I see how there can be motivators, but it's not a position I personally would put myself in.
by Jesper — Jan 03
In my opinion, maintaining two codebases should be done only when you have a very strong desire to both appease the group of users that have the old OS version and use the newer capabilities to build a better application, and have the resources (time, developers if you're a company) to be able to turn on a dime to fix a bug *for any of the two versions*. Actually maintaining two codebases in order to be able to write less, better code in one of them sounds really, really inefficient. I see how there can be motivators, but it's not a position I personally would put myself in.