Many devices in our daily environments are being connected to the network, building what has been called the Web of Things. Although these things offer a web interface to interact with, this interaction must be performed manually and for each one of them. In a near future in which we will be surrounded by dozens of connected devices, technology must evolve to make the interactions automatically and adapt the behavior of these devices considering the needs and context of their users. To this extent, in previous work we proposed the Internet of People model to empower the smartphones with the capability of automatically inferring virtual profiles of their owners. However, in order to build complete virtual profiles with information about the user’s environment and context, we also need the contribution of these surrounding devices. In this paper, we propose a framework in which users and smart devices are integrated seamlessly and in real time, allowing programmatic adaptation and update of both virtual user profiles and connected devices. We present the architecture of this framework and define how the virtual profiles should be, coming from our experience in the field. Virtual profiles are the key element in the way to an effective Programmable World, in which everyday things connected to the network can be programmatically adapted to their users.