Google Cloud Platform in Action teaches you to build and launch applications that scale, leveraging the many services on GCP to move faster than ever. You’ll learn how to choose exactly the services that best suit your needs, and you’ll be able to build applications that run on Google Cloud Platform and start more quickly, suffer fewer disasters, and require less maintenance.
Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.
About the Technology
Thousands of developers worldwide trust Google Cloud Platform, and for good reason. With GCP, you can host your applications on the same infrastructure that powers Search, Maps, and the other Google tools you use daily. You get rock-solid reliability, an incredible array of prebuilt services, and a cost-effective, pay-only-for-what-you-use model. This book gets you started.
About the Book
Google Cloud Platform in Action teaches you how to deploy scalable cloud applications on GCP. Author and Google software engineer JJ Geewax is your guide as you try everything from hosting a simple WordPress web app to commanding cloud-based AI services for computer vision and natural language processing. Along the way, you’ll discover how to maximize cloud-based data storage, roll out serverless applications with Cloud Functions, and manage containers with Kubernetes. Broad, deep, and complete, this authoritative book has everything you need.
What’s inside
The many varieties of cloud storage and computing
How to make cost-effective choices
Hands-on code examples
Cloud-based machine learning
About the Reader
Written for intermediate developers. No prior cloud or GCP experience required.
About the Author
JJ Geewax is a software engineer at Google, focusing on Google Cloud Platform and API design.
Table of Contents
What is “cloud”?
Trying it out: deploying WordPress on Google Cloud
The Artificial Intelligence of Things (AIoT) is the combination of Artificial intelligence (AI) technologies with the Internet of things (IoT) infrastructure to achieve more efficient IoT operations, improve human-machine interactions and enhance data management and analytics. [1][2][3]
This paradigm is also described as pervasive computing,[1]ambient intelligence,[2] or “everyware”.[3] Each term emphasizes slightly different aspects. When primarily concerning the objects involved, it is also known as physical computing, the Internet of Things (IoT), haptic computing,[4] and “things that think”. Rather than propose a single definition for ubiquitous computing and for these related terms, a taxonomy of properties for ubiquitous computing has been proposed, from which different kinds or flavors of ubiquitous systems and applications can be described.[5]
Ubiquitous computing is the concept of using small internet connected and inexpensive computers to help with everyday functions in an automated fashion. For example, a domestic ubiquitous computing environment might interconnect lighting and environmental controls with personal biometric monitors woven into clothing so that illumination and heating conditions in a room might be modulated, continuously and imperceptibly. Another common scenario posits refrigerators “aware” of their suitably tagged contents, able to both plan a variety of menus from the food actually on hand, and warn users of stale or spoiled food.[6]
Ubiquitous computing presents challenges across computer science: in systems design and engineering, in systems modelling, and in user interface design. Contemporary human-computer interaction models, whether command-line, menu-driven, or GUI-based, are inappropriate and inadequate to the ubiquitous case. This suggests that the “natural” interaction paradigm appropriate to a fully robust ubiquitous computing has yet to emerge – although there is also recognition in the field that in many ways we are already living in a ubicomp world (see also the main article on natural user interfaces). Contemporary devices that lend some support to this latter idea include mobile phones, digital audio players, radio-frequency identification tags, GPS, and interactive whiteboards.
Tabs: a wearable device that is approximately a centimeter in size
Pads: a hand-held device that is approximately a decimeter in size
Boards: an interactive larger display device that is approximately a meter in size
Ubiquitous computing devices proposed by Mark Weiser are all based around flat devices of different sizes with a visual display.[8] Expanding beyond those concepts there is a large array of other ubiquitous computing devices that could exist. Some of the additional forms that have been conceptualized are:[5]
Dust: miniaturized devices can be without visual output displays, e.g. micro electro-mechanical systems (MEMS), ranging from nanometres through micrometers to millimetres. See also Smart dust.
Skin: fabrics based upon light emitting and conductive polymers, organic computer devices, can be formed into more flexible non-planar display surfaces and products such as clothes and curtains, see OLED display. MEMS device can also be painted onto various surfaces so that a variety of physical world structures can act as networked surfaces of MEMS.
Clay: ensembles of MEMS can be formed into arbitrary three dimensional shapes as artefacts resembling many different kinds of physical object (see also tangible interface).
In Manuel Castells‘ book The Rise of the Network Society, Castells puts forth the concept that there is going to be a continuous evolution of computing devices. He states we will progress from stand-alone microcomputers and decentralized mainframes towards pervasive computing. Castells’ model of a pervasive computing system, uses the example of the Internet as the start of a pervasive computing system. The logical progression from that paradigm is a system where that networking logic becomes applicable in every realm of daily activity, in every location and every context. Castells envisages a system where billions of miniature, ubiquitous inter-communication devices will be spread worldwide, “like pigment in the wall paint”.
Ubiquitous computing may be seen to consist of many layers, each with their own roles, which together form a single system:
Layer 1: Task management layer
Monitors user task, context and index
Map user’s task to need for the services in the environment
To manage complex dependencies
Layer 2: Environment management layer
To monitor a resource and its capabilities
To map service need, user level states of specific capabilities
Layer 3: Environment layer
To monitor a relevant resource
To manage reliability of the resources
History
Mark Weiser coined the phrase “ubiquitous computing” around 1988, during his tenure as Chief Technologist of the Xerox Palo Alto Research Center (PARC). Both alone and with PARC Director and Chief Scientist John Seely Brown, Weiser wrote some of the earliest papers on the subject, largely defining it and sketching out its major concerns.[7][9][10]
Recognizing the effects of extending processing power
Recognizing that the extension of processing power into everyday scenarios would necessitate understandings of social, cultural and psychological phenomena beyond its proper ambit, Weiser was influenced by many fields outside computer science, including “philosophy, phenomenology, anthropology, psychology, and sociology of science “. He was explicit about “the humanistic origins of the invisible ideal'”,[10] referencing as well the ironically dystopianPhilip K. Dick novel Ubik.
Andy Hopper from Cambridge University UK proposed and demonstrated the concept of “Teleporting” – where applications follow the user wherever he/she moves.
Roy Want, while a researcher and student working under Andy Hopper at Cambridge University, worked on the “Active Badge System”, which is an advanced location computing system where personal mobility that is merged with computing.
Bill Schilit (now at Google) also did some earlier work in this topic, and participated in the early Mobile Computing workshop held in Santa Cruz in 1996.
Ken Sakamura of the University of Tokyo, Japan leads the Ubiquitous Networking Laboratory (UNL), Tokyo as well as the T-Engine Forum. The joint goal of Sakamura’s Ubiquitous Networking specification and the T-Engine forum, is to enable any everyday device to broadcast and receive information.[11][12]
One of the earliest ubiquitous systems was artist Natalie Jeremijenko‘s “Live Wire”, also known as “Dangling String”, installed at Xerox PARC during Mark Weiser’s time there.[17] This was a piece of string attached to a stepper motor and controlled by a LAN connection; network activity caused the string to twitch, yielding a peripherally noticeable indication of traffic. Weiser called this an example of calm technology.[18]
A present manifestation of this trend is the widespread diffusion of mobile phones. Many mobile phones support high speed data transmission, video services, and other services with powerful computational ability. Although these mobile devices are not necessarily manifestations of ubiquitous computing, there are examples, such as Japan’s Yaoyorozu (“Eight Million Gods”) Project in which mobile devices, coupled with radio frequency identification tags demonstrate that ubiquitous computing is already present in some form.[19]
Ambient Devices has produced an “orb”, a “dashboard”, and a “weather beacon“: these decorative devices receive data from a wireless network and report current events, such as stock prices and the weather, like the Nabaztag produced by Violet Snowden.
The Australian futurist Mark Pesce has produced a highly configurable 52-LEDLAMP enabled lamp which uses Wi-Fi named MooresCloud after Gordon Moore.[20]
Ubiquitous computing research has focused on building an environment in which computers allow humans to focus attention on select aspects of the environment and operate in supervisory and policy-making roles. Ubiquitous computing emphasizes the creation of a human computer interface that can interpret and support a user’s intentions. For example, MIT’s Project Oxygen seeks to create a system in which computation is as pervasive as air:
In the future, computation will be human centered. It will be freely available everywhere, like batteries and power sockets, or oxygen in the air we breathe…We will not need to carry our own devices around with us. Instead, configurable generic devices, either handheld or embedded in the environment, will bring computation to us, whenever we need it and wherever we might be. As we interact with these “anonymous” devices, they will adopt our information personalities. They will respect our desires for privacy and security. We won’t have to type, click, or learn new computer jargon. Instead, we’ll communicate naturally, using speech and gestures that describe our intent…[22]
This is a fundamental transition that does not seek to escape the physical world and “enter some metallic, gigabyte-infested cyberspace” but rather brings computers and communications to us, making them “synonymous with the useful tasks they perform”.[19]
Network robots link ubiquitous networks with robots, contributing to the creation of new lifestyles and solutions to address a variety of social problems including the aging of population and nursing care.[23]
Issues
Privacy is easily the most often-cited criticism of ubiquitous computing (ubicomp), and may be the greatest barrier to its long-term success.[24]
Public policy problems are often “preceded by long shadows, long trains of activity”, emerging slowly, over decades or even the course of a century. There is a need for a long-term view to guide policy decision making, as this will assist in identifying long-term problems or opportunities related to the ubiquitous computing environment. This information can reduce uncertainty and guide the decisions of both policy makers and those directly involved in system development (Wedemeyer et al. 2001). One important consideration is the degree to which different opinions form around a single problem. Some issues may have strong consensus about their importance, even if there are great differences in opinion regarding the cause or solution. For example, few people will differ in their assessment of a highly tangible problem with physical impact such as terrorists using new weapons of mass destruction to destroy human life. The problem statements outlined above that address the future evolution of the human species or challenges to identity have clear cultural or religious implications and are likely to have greater variance in opinion about them.[19]
Ubiquitous computing research centres
This is a list of notable institutions who claim to have a focus on Ubiquitous computing sorted by country:Canada
^“Ubiquitous Computing Projects”. Department of Electronics & Information Technology (DeitY). Ministry of Communications & IT, Government of India. Archived from the original on 2015-07-07. Retrieved 2015-07-07.