IoT Application Development: Shaping the Connected Future