Haptic technologyHaptic technology (also kinaesthetic communication or 3D touch) is technology that can create an experience of touch by applying forces, vibrations, or motions to the user. These technologies can be used to create virtual objects in a computer simulation, to control virtual objects, and to enhance remote control of machines and devices (telerobotics). Haptic devices may incorporate tactile sensors that measure forces exerted by the user on the interface. The word haptic, from the ἁπτικός (haptikos), means "tactile, pertaining to the sense of touch".
Unit testingIn computer programming, unit testing is a software testing method by which individual units of source code—sets of one or more computer program modules together with associated control data, usage procedures, and operating procedures—are tested to determine whether they are fit for use. It is a standard step in development and implementation approaches such as Agile. Before unit testing, capture and replay testing tools were the norm. In 1997, Kent Beck and Erich Gamma developed and released JUnit, a unit test framework that became popular with Java developers.
Passive housePassive house (Passivhaus) is a voluntary standard for energy efficiency in a building, which reduces the building's ecological footprint. It results in ultra-low energy buildings that require little energy for space heating or cooling. A similar standard, MINERGIE-P, is used in Switzerland. The standard is not confined to residential properties; several office buildings, schools, kindergartens and a supermarket have also been constructed to the standard.
Passive solar building designIn passive solar building design, windows, walls, and floors are made to collect, store, reflect, and distribute solar energy, in the form of heat in the winter and reject solar heat in the summer. This is called passive solar design because, unlike active solar heating systems, it does not involve the use of mechanical and electrical devices. The key to designing a passive solar building is to best take advantage of the local climate performing an accurate site analysis.
Regression testingRegression testing (rarely, non-regression testing) is re-running functional and non-functional tests to ensure that previously developed and tested software still performs as expected after a change. If not, that would be called a regression. Changes that may require regression testing include bug fixes, software enhancements, changes, and even substitution of electronic components (hardware). As regression test suites tend to grow with each found defect, test automation is frequently involved.