- Use a high-level language for native application development unless you absolutely cannot.
- Use the same language for your clients and your backend as much as possible.
- Get your logging straightened out early on.
- Try to encourage widespread deployment of the clients by individuals.
- Rewrite only as dictated by your requirements.
- Don’t be afraid to rewrite if you really need to.
Link to Original Source