Ubiquitous computing is a computing paradigm where the human interaction with a computer happens anywhere and everywhere and through any device around them. Let's say, for example, that you are working on an important business proposal using your office desktop computer and you are almost done with your proposal document, but it's time to leave the office and pick up your kid from school and take her to swimming practice. You left work, picked up your kid, and took her to the swimming school. While she is doing her swimming practice, you continue to work on the business proposal from where you left off using your smartphone and send the document to the client just before she is done with the swimming practice.
While you are driving home, you get a response e-mail from the client. The computer integrated into the car you are driving is equipped with an app or system like Siri or Alexa that reads the e-mail message you received from the client out loud. And when you reach home, you respond to the client's business proposal using your smartwatch and even set up a date and place for the next meeting.
This example might sound a little exaggerated, but the important point to make here is that it's not the technology taking over human lives, it's the humans doing what they want to do whenever and wherever, seamlessly, and using simple interactions. The devices around them would help them do what they want to do without knowing or feeling that they do. That is the foundation philosophy of ubiquitous computing. It just lets you do things wherever you need to without asking or needing to know if that can be done there.
Human interaction with a computing device can be pervasive and it can happen without even knowing that it happens.
Technologies such as cloud computing and wireless communication protocols and standards such as Bluetooth, Bluetooth Low Energy (BLE), Near Field Communications (NFC), Radio Frequency Identifications (RFID), and ZigBee make such interactions with devices possible by forming the infrastructure needed for all these devices to communicate with each other and build the contexts needed.
Application developers, designers, and service providers should design their apps and services so that the users may interact with them anywhere and using any devices around them. Every device has its own form factor and is built for certain needs. Understanding the user context and the need for interaction with the device is very important when building apps that will provide great user experience. For instance, it may not be practical to have a keyboard-like UI component in a watch app due to its size and form factor, whereas it may be feasible to use voice input using a text-to-speech feature provided within wearable platforms.