“You have to wash your teeth”.
If you are a parent this might be a common scene to you. This happens pretty often with my kids when I try to force them to do something. Usually my technique to persuade them is argumentative.
“If you don’t floss daily you will probably have a bad tooth, that will hurt, and we’ll have to go to the dentist”.
It takes a while but eventually they understand.
I apply the argument strategy also with clients.
“If we do it the way it’s designed it’s gonna take ten more hours than planned. If we modify it like this we stay on budget”.
Some understand and accept the modification. Others “force me” to do it as designed, often because the design is bound to a contract signed with blood. I am not a fan of these situations but when I have to pay the bills I do it, clearly with a bit of reluctance. The reason is simply because they are forcing me without providing an argument or, if you like, the argument is simply “because we say so”.
Now think of iOS release cycles. There’s a new one every year and it forces everybody to update your apps at least once a year (but probably more often). Again there’s no argument behind this. Clearly Apple knows the rationale about this crazy pace, but we have no access to it. It sounds like a parent that says “you have to do this because I say so”. I swear that if the App Store were a place where you can still build a sustainable business I’d probably accept the yearly pace.
Then I look outside of the App Store. I see developers and small companies building sustainable businesses while deciding their pace. You are probably using some service that is built on top of Ruby 1.9.3, Postgres 9.0 or Ubuntu 10.04 and “they just work” (zing). Nobody forced anybody to update to a new version. You still might need to tweak the CSS to deal with some new browser release but if you keep the UI simple I am sure it’s not gonna take a long time. Not to mention that you can roll out your modifications instantly, without going through a review process (zing). Coding is just 20% of a product. The rest (marketing, support, growth just to name a few) deserves a lot of time which you shouldn’t spend updating your code to prevent crashes or weird behaviors due to a updated SDK/API.
Am I the only one on this boat? No. Somebody even quit because they couldn’t keep up with the pace.
Honestly, the complexity of every single thing we do has shot up in the last few years. My brain no longer has the time and energy to deal with Apple forcing me to relearn how to program every few years.