Engineering decisions explained: native versus cross-platform mobile, custom software versus off-the-shelf, and how to choose a stack you will not regret.