{'fraction_non_alphanumeric': 0.015812431842966195, 'fraction_numerical': 0.0, 'mean_word_length': 5.553571428571429, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Methods and technologies for experimenting with ubiquitous computing

Interest in ubiquitous computing (ubicomp) has increased dramatically during the past ten years. This trend is driven partly by the availability of enabling technologies and partly by the increased understanding that computers will eventually be everywhere and their use will change accordingly. This thesis presents work with two important subtopics of ubiquitous computing: context awareness and intelligent user interfaces. Methods are developed that firstly will make it easier to increase context awareness especially with personal technology devices and secondly enable the implementation of intelligent user interfaces as part of a smart environment. Context awareness is studied together with hand-held devices. The use of personal technology devices is analysed in order to find out possibilities for obtaining and exploiting context awareness. A sensor-box has been developed that is unobtrusively integrated into a hand-held device the user is carrying continuously with them. In this case context awareness is self-supportive, operating without the support of the surrounding infrastructure. Experiments with this device concentrate on improving the context awareness of a mobile phone used in everyday settings. Intelligent user interfaces are studied as a part of smart environments. By starting from smart environment scenarios a stack-based approach is used for defining more and more detailed requirements for each subsequent level. Finally a general-purpose platform, the SoapBox, that integrates sensors with wireless communications and computing in a small and versatile module that is easy to use in different designs and in various application domains has been defined, designed and implemented. The design examples consist of: a maze, dice,