
As computers become more sophisticated, faster, and smaller, including personal computers, smart devices, and wearable devices, and as they are networked with each other, computers become ubiquitous not only in the devices we carry and use, but also in the "environment" such as rooms, traffic, and cities, as an intelligent information infrastructure. "Ubiquitous computing" has become a reality.
In ubiquitous computing, there are various aspects such as sensing of information about real space and humans as digital data, distribution of data through networks, understanding/recognition as "knowledge" through analysis and machine learning at the edge and in the cloud, feedback to humans based on the knowledge, and operation of machines (actuation). These functions constitute the "architecture of ubiquitous systems".
In this lecture, we will discuss mobile/distributed programming, location/context-aware programming, sensing, activity recognition, data communication, and other technologies, including actual examples and actual JavaScript programming.