Full Learn ARCore Fundamentals of Google ARCore Learn To Build Augmented Reality Apps For Android Unity and The Web With Google ARCore 1 0 1st Edition Micheal Lanham Ebook All Chapters
Full Learn ARCore Fundamentals of Google ARCore Learn To Build Augmented Reality Apps For Android Unity and The Web With Google ARCore 1 0 1st Edition Micheal Lanham Ebook All Chapters
com
https://textbookfull.com/product/learn-google-flutter-fast-65-example-
apps-mark-clow/
textbookfull.com
https://textbookfull.com/product/beginning-ios-ar-game-development-
developing-augmented-reality-apps-with-unity-and-c-1st-edition-allan-
fowler/
textbookfull.com
https://textbookfull.com/product/big-data-factories-collaborative-
approaches-1st-edition-sorin-adam-matei/
textbookfull.com
Misadventures of Max Crumbly 3 Masters of Mischief The
Misadventures of Max Crumbly 1st Edition Rachel Renée
Russell Russell Rachel Renée
https://textbookfull.com/product/misadventures-of-max-
crumbly-3-masters-of-mischief-the-misadventures-of-max-crumbly-1st-
edition-rachel-renee-russell-russell-rachel-renee/
textbookfull.com
https://textbookfull.com/product/in-situ-electron-microscopy-
applications-in-physics-chemistry-and-materials-science-1st-edition-
gerhard-dehm/
textbookfull.com
https://textbookfull.com/product/pre-clinical-models-techniques-and-
protocols-paul-c-guest/
textbookfull.com
https://textbookfull.com/product/goa-mumbai-8th-edition-lonely-planet/
textbookfull.com
https://textbookfull.com/product/blended-learning-designs-in-stem-
higher-education-putting-learning-first-christopher-n-allan/
textbookfull.com
The Molecular Theory of Adsorption in Porous Solids 1st
Edition Yu. K. Tovbin
https://textbookfull.com/product/the-molecular-theory-of-adsorption-
in-porous-solids-1st-edition-yu-k-tovbin/
textbookfull.com
Learn ARCore - Fundamentals
of Google ARCore
-FBSOUPCVJMEBVHNFOUFESFBMJUZBQQTGPS"OESPJE6OJUZBOE
UIFXFCXJUI(PPHMF"3$PSF
Micheal Lanham
BIRMINGHAM - MUMBAI
Learn ARCore - Fundamentals of Google
ARCore
Copyright a 2018 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form
or by any means, without the prior written permission of the publisher, except in the case of brief quotations
embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented.
However, the information contained in this book is sold without warranty, either express or implied. Neither the
author, nor Packt Publishing or its dealers and distributors, will be held liable for any damages caused or alleged to
have been caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the companies and products
mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy
of this information.
ISBN 978-1-78883-040-9
XXXQBDLUQVCDPN
NBQUJP
Mapt is an online digital library that gives you full access to over 5,000 books and videos, as
well as industry leading tools to help you plan your personal development and advance
your career. For more information, please visit our website.
Why subscribe?
Spend less time learning and more time coding with practical eBooks and Videos
from over 4,000 industry professionals
Improve your learning with Skill Plans built especially for you
PacktPub.com
Did you know that Packt offers eBook versions of every book published, with PDF and
ePub files available? You can upgrade to the eBook version at XXX1BDLU1VCDPN and as a
print book customer, you are entitled to a discount on the eBook copy. Get in touch with us
at TFSWJDF!QBDLUQVCDPN for more details.
At XXX1BDLU1VCDPN, you can also read a collection of free technical articles, sign up for a
range of free newsletters, and receive exclusive discounts and offers on Packt books and
eBooks.
Contributors
I would like to thank Reshma Raman, my Acquisition Editor, and the rest of the team at
Packt Publishing for showing the utmost professionalism and dedication to producing
quality books. I would also like to thank the work by the reviewers for all their hard work.
At home, I would graciously like to thank my partner, Rhonda, my internal editor/artist,
and Ava, my QA tester and part-time model. Finally, I would like to thank my mother for
teaching me to be creative with anything. Thanks Mom...
About the reviewer
Neil Alexander is a recent graduate from the University of North Carolina at Charlotte,
where he earned a master's in computer science with a specialization in intelligent and
interactive systems. As part of his education, he worked on developing several virtual
reality demos and data visualization applications. He graduated from the Don Bosco
Institute of Technology and has also worked as a research analyst at an IT publishing firm
in Mumbai.
He currently works as a data scientist with several Blockchain and cryptocurrency startups
in the Washington D.C. area.
I`d like to thank my friends and family, with a quick shout out to Govindan K, who was
extremely helpful throughout the review process.
Summary 54
Chapter 5: Real-World Motion Tracking 55
Motion tracking in depth 56
3D sound 59
Resonance Audio 60
A tracking service with Firebase 63
Setting up the database 65
Time to test the connection 66
Visualizing tracked motion 68
Exercises 71
Summary 71
Chapter 6: Understanding the Environment 72
Tracking the point cloud 73
Meshing and the environment 75
Interacting with the environment 77
Touch for gesture detection 80
Drawing with OpenGL ES 82
Shader programming 84
Editing the shader 87
Exercises 90
Summary 90
Chapter 7: Light Estimation 91
3D rendering 92
Building a test scene 93
Materials, shaders, and textures 96
3D lighting 97
Light estimation 100
Cg/HLSL shaders 104
Estimating light direction 108
Updating the environmental lighting 111
Exercises 112
Summary 112
Chapter 8: Recognizing the Environment 113
Introduction to ML 114
Linear regression explained 117
Deep learning 119
Neural networks – the foundation of deep learning 121
Programming a neural network 123
Scripting the neural network 124
Training a neural network 131
Activating the warning 133
[ ii ]
Table of Contents
[ iii ]
Table of Contents
[ iv ]
Visit https://textbookfull.com
now to explore a rich
collection of eBooks, textbook
and enjoy exciting offers!
Preface
Augmented reality applications have moved from novelty to reality, and with the release of
ARKit and now ARCore, have become more accessible to the average developer. Now
virtually anyone with a grasp of a programming language can quickly build an AR
experience using a variety of platforms. Google, with the release of ARCore, has now made
this even easier and also provides support for multiple development platforms. This book
will guide you through building AR applications using JavaScript and web in mobile with
Java/Android and also in mobile with C# / Unity. Along the way, you will learn the
fundamentals of building a quality AR experience for your user.
$IBQUFS, ARCore on Unity, discusses how to install and build an ARCore app with Unity.
This chapter also shows you how to remotely debug an app using the Android
development tools.
$IBQUFS, ARCore on the Web, jumps into web development with JavaScript and focuses on
how to set up your own simple web server with Node.js. Then, this chapter looks through
the various sample ARCore templates and discusses how to extend those for further
development.
Preface
$IBQUFS, Real-World Motion Tracking, extends our learnings from the preceding chapter
and extend one of the web examples to add a real-world motion tracking. Not only will this
showcase several fundamentals of working with 3D concepts, but it will also demonstrate
how ARCore tracks a user's motion.
$IBQUFS, Understanding the Environment, jumps back to the Android platform and deal
with how ARCore understands the user's environment. We will grasp how ARCore
identifies planes or surfaces in the environment and meshes them for user interaction and
visualization. Here, we will take a look at how to modify a shader in order to measure and
colorize the points from the user.
$IBQUFS, Light Estimation, explains the role that lighting and shadows play in selling the
AR experience to the user. We learn how ARCore provides for the estimation of light and
how it is used to light the virtual models placed by the user into the AR world.
$IBQUFS, Recognizing the Environment, is where we cover the basics of Machine Learning
and how essential is the technology to the success of the AR revolution. We then look to
building a simple neural network that learns through supervised training using a technique
called back propagation. After learning the basics of NN and deep learning, we look to a
more complex example that demonstrates various forms of Machine Learning.
$IBQUFS, Blending Light for Architectural Design, covers the building of an AR design app
that allows the user to place virtual furniture in the living space or wherever they need to.
We also cover how to place and move an object in AR using touch and how to identify
when an object is selected. Then, we will extend our lighting and shadows from $IBQUFS
, Light Estimation and provide real-time shadows on the virtual objects.
$IBQUFS, Mixing in Mixed Reality, is where we introduce mixed reality through the use of
inexpensive MR headsets. ARCore is ideally suited for use in these inexpensive headsets
since it already tracks the user and monitors their environment internally. We will oversee
how to turn our app from a traditional mapping app using the 3D 83-% API for Unity to an
AR mapping app, where we will also provide an option to switch to MR and an MR
headset.
$IBQUFS, Performance Tips and Troubleshooting, covers techniques for measuring an app's
performance on all the development platforms we deal with. We then talk about the
importance of performance and the impact it can have to the various systems. After that, we
cover general debugging and troubleshooting tips, where we finish off with a table that
covers the most common errors a user may encounter in this book.
[2]
Preface
Once the file is downloaded, please make sure that you unzip or extract the folder using the
latest version of:
The code bundle for the book is also hosted on GitHub at IUUQTHJUIVCDPN
1BDLU1VCMJTIJOH-FBSO"3$PSF'VOEBNFOUBMTPG(PPHMF"3$PSF. In case there's an
update to the code, it will be updated on the existing GitHub repository.
We also have other code bundles from our rich catalog of books and videos available at
IUUQTHJUIVCDPN1BDLU1VCMJTIJOH. Check them out!
[3]
Preface
Conventions used
There are a number of text conventions used throughout this book.
$PEF*O5FYU: Indicates code words in text, database table names, folder names, filenames,
file extensions, pathnames, dummy URLs, user input, and Twitter handles. Here is an
example: "Scroll down to the ESBX method and add the following code beneath the
identified line."
When we wish to draw your attention to a particular part of a code block, the relevant lines
or items are set in bold:
VOJGPSNNBUV@.PEFM7JFX1SPKFDUJPO
VOJGPSNWFDV@$PMPS
VOJGPSNGMPBUV@1PJOU4J[F
uniform float u_FurthestPoint;
Bold: Indicates a new term, an important word, or words that you see onscreen. For
example, words in menus or dialog boxes appear in the text like this. Here is an example:
"Select System info from the Administration panel."
[4]
Preface
Get in touch
Feedback from our readers is always welcome.
General feedback: Email GFFECBDL!QBDLUQVCDPN and mention the book title in the
subject of your message. If you have questions about any aspect of this book, please email
us at RVFTUJPOT!QBDLUQVCDPN.
Errata: Although we have taken every care to ensure the accuracy of our content, mistakes
do happen. If you have found a mistake in this book, we would be grateful if you would
report this to us. Please visit XXXQBDLUQVCDPNTVCNJUFSSBUB, selecting your book,
clicking on the Errata Submission Form link, and entering the details.
Piracy: If you come across any illegal copies of our works in any form on the Internet, we
would be grateful if you would provide us with the location address or website name.
Please contact us at DPQZSJHIU!QBDLUQVCDPN with a link to the material.
If you are interested in becoming an author: If there is a topic that you have expertise in
and you are interested in either writing or contributing to a book, please visit
BVUIPSTQBDLUQVCDPN.
Reviews
Please leave a review. Once you have read and used this book, why not leave a review on
the site that you purchased it from? Potential readers can then see and use your unbiased
opinion to make purchase decisions, we at Packt can understand what you think about our
products, and our authors can see your feedback on their book. Thank you!
[5]
1
Getting Started
Welcome to the world of immersive computing and augmented reality with Google
ARCore. In this book, we will start with the basics. First, we will cover the basics of
augmented reality (AR) on some important core concepts. From there, we will cover the
installation and basics of the three development platforms (Android, web, and Unity) that
we will use throughout the book. Next, we will take a more in-depth look at the technical
challenges faced by AR developers, including various solutions techniques and for solving
them. In the final chapters of the book, we will expand on those skills by developing three
example AR and mixed reality (MR) apps, where we will build a Machine Learning object
recognizer, an AR Designer app, and an app that transitions from AR to MR.
We decided to omit the Unreal platform from this book, not because it is
an inferior platform, but quite the opposite. Unreal is a proven and
cutting-edge game engine that is well suited for experienced graphic and
game developers. However, Unreal and Unity are essentially on par for
development features. Therefore, it made more sense to focus on Unity,
which is far better suited for learning game and graphic development.
Getting Started Chapter 1
In this chapter, we will begin by quickly covering the fundamental concepts of immersive
computing and augmented reality. Then, we will look at the core problems ARCore is
designed to address (motion tracking, environmental understanding, and light estimation).
Here's a quick look at the topics we will cover in this chapter:
Immersive computing
ARCore and AR
Motion tracking
Environmental understanding
Light estimation
The road ahead
This book was written with a beta version of ARCore. If you find
something different or something that needs to be changed, contact Packt
with your errata.
Immersive computing
Immersive computing is a new term used to describe applications that provide an
immersive experience for the user. This may come in the form of an augmented or virtual
reality experience. While our attention in this book will be primarily focused on building an
augmented reality experience, we will highlight techniques that can be used for VR as well.
In order to better understand the spectrum of immersive computing, let's take a look at this
diagram:
6JG+OOGTUKXG%QORWVKPI5RGEVTWO
[7]
Getting Started Chapter 1
The preceding diagram illustrates how the level of immersion affects the user experience,
with the left-hand side of the diagram representing more traditional applications with little
or no immersion, and the right representing fully immersive virtual reality applications. For
us, we will stay in the middle sweet spot and work on developing augmented reality
applications. In the next section, we will be introduced to AR and ARCore in more detail.
AR and ARCore
Augmented reality applications are unique in that they annotate or augment the reality of
the user. This is typically done visually by having the AR app overlay a view of the real
world with computer graphics. ARCore is designed primarily for providing this type of
visual annotation for the user. An example of a demo ARCore application is shown here:
)QQING#4%QTGFGOQCRRNKECVKQPVJGFQIKUTGCN
The screenshot is even more impressive when you realize that it was rendered real time on
a mobile device. It isn't the result of painstaking hours of using Photoshop or other media
effects libraries. What you see in that image is the entire superposition of a virtual object,
the lion, into the user's reality. More impressive still is the quality of immersion. Note the
details, such as the lighting and shadows on the lion, the shadows on the ground, and the
way the object maintains position in reality even though it isn't really there. Without those
visual enhancements, all you would see is a floating lion superimposed on the screen. It is
those visual details that provide the immersion. Google developed ARCore as a way to help
developers incorporate those visual enhancements in building AR applications.
[8]
Getting Started Chapter 1
ARCore has its origins in Tango, which is/was a more advanced AR toolkit that used special
sensors built into the device. In order to make AR more accessible and mainstream, Google
developed ARCore as an AR toolkit designed for Android devices not equipped with any
special sensors. Where Tango depended on special sensors, ARCore uses software to try
and accomplish the same core enhancements. For ARCore, Google has identified three core
areas to address with this toolkit, and they are as follows:
Motion tracking
Environmental understanding
Light estimation
In the next three sections, we will go through each of those core areas in more detail and
understand how they enhance the user experience.
Motion tracking
Tracking a user's motion and ultimately their position in 2D and 3D space is fundamental to
any AR application. ARCore allows us to track position changes by identifying and tracking
visual feature points from the device's camera image. An example of how this works is
shown in this figure:
(GCVWTGRQKPVVTCEMKPIKP#4%QTG
[9]
Getting Started Chapter 1
In the figure, we can see how the user's position is tracked in relation to the feature points
identified on the real couch. Previously, in order to successfully track motion (position), we
needed to pre-register or pre-train our feature points. If you have ever used the Vuforia AR
tools, you will be very familiar with having to train images or target markers. Now, ARCore
does all this automatically for us, in real time, without any training. However, this tracking
technology is very new and has several limitations. In the later part of the book, and
specifically in $IBQUFS, Real-World Motion Tracking, we will add a feature to our AR
assistant that allows us to track multiple objects' positions from multiple devices in real
time using GPS. Then, in $IBQUFS, Mixing in Mixed Reality, we will extend our tracking
to include augmented maps.
Environmental understanding
The better an AR application understands the user's reality or the environment around
them, the more successful the immersion. We already saw how ARCore uses feature
identification in order to track a user's motion. Yet, tracking motion is only the first part.
What we need is a way to identify physical objects or surfaces in the user's reality. ARCore
does this using a technique called meshing.
We will cover more details about meshing in later chapters, but, for now, take a look at the
following figure from Google that shows this meshing operation in action:
)QQINGKOCIGUJQYKPIOGUJKPIKPCEVKQP
[ 10 ]
Visit https://textbookfull.com
now to explore a rich
collection of eBooks, textbook
and enjoy exciting offers!
Getting Started Chapter 1
What we see happening in the preceding image is an AR application that has identified a
real-world surface through meshing. The plane is identified by the white dots. In the
background, we can see how the user has already placed various virtual objects on the
surface. Environmental understanding and meshing are essential for creating the illusion of
blended realities. Where motion tracking uses identified features to track the user's position,
environmental understanding uses meshing to track the virtual objects in the user's reality.
In $IBQUFS, Recognizing the Environment, we will look at how to train our own machine
learning object identifier, which will allow us to extend our meshing to include
automatically recognizable objects or areas of an environment.
Light estimation
Magicians work to be masters of trickery and visual illusion. They understand that
perspective and good lighting are everything in a great illusion, and, with developing great
AR apps, this is no exception. Take a second and flip back to the scene with the virtual lion.
Note the lighting and detail in the shadows on the lion and ground. Did you note that the
lion is casting a shadow on the ground, even though it's not really there? That extra level of
lighting detail is only made possible by combining the tracking of the user's position with
the environmental understanding of the virtual object's position and a way to read light
levels. Fortunately, ARCore provides us with a way to read or estimate the light in a scene.
We can then use this lighting information in order to light and shadow virtual AR objects.
Here's an image of an ARCore demo app showing subdued lighting on an AR object:
)QQINGKOCIGQHFGOQ#4%QTGCRRUJQYKPIQaUWDFWGFNKIJVKPI
[ 11 ]
Getting Started Chapter 1
The effects of lighting, or lack thereof, will become more obvious as we start developing our
startup applications. Later, in $IBQUFS, Blending Light for Architectural Design, we will go
into far more detail about 3D lighting and even build some simple shader effects.
In this chapter, we didn't go into any extensive details; we will get to that later, but you
should now have a good grasp of the core elements ARCore was developed to address. In
the next section, we will take a closer look at how best to use the material in this book.
Tools and
Chapter Focus Difficulty Platform
techniques
$IBQUFS, Installation of tools
ARCore on Basics of Android Basic Android (Java) and environment for
Android Android.
Installation, setup,
$IBQUFS, Android/Unity
Basics of Unity Basic and deployment of
ARCore on Unity (C#)
the Unity sample.
Installation and
$IBQUFS, setup of tools to
Building ARCore Web
ARCore on the Medium support web
web apps (JavaScript)
Web development and
hosting.
[ 12 ]
Getting Started Chapter 1
Introduce motion
tracking with a
mobile device with
$IBQUFS, Real-
3D spatial audio Web audio, integrate with
World Motion Medium
and Firebase (JavaScript) Google Firebase, and
Tracking
track multiple
objects and/or users
in AR.
Learning the ARCore
API for Java as well
as creating a new
$IBQUFS, ARCore Android
Introduction to
Understanding Medium Android (Java) project, meshing an
EU and meshing
the Environment environment, and
interacting with
objects using
OpenGL ES.
Understand the
Introduction to importance of
$IBQUFS, light estimation Unity (C#, lighting and how it
Advanced
Light Estimation and lighting in Cg/HLSL) can be used to make
Unity AR objects appear
more realistic.
Introduction to Look at various ML
$IBQUFS, Machine platforms in order to
Android (Java),
Recognizing the Learning (ML) for Advanced better understand
Unity (C#)
Environment AR and how it how it can be used in
can be used. AR applications.
An advanced
$IBQUFS, introduction to
Blending Light for 3D lighting and lighting and shaders
Advanced Unity (C#)
Architectural shaders in Unity, including
Design writing HLSL/ Cg
shader code.
[ 13 ]
Getting Started Chapter 1
Also, $IBQUFS, Mixing in Mixed Reality, is intended to be used after the reader has
reviewed all the previous chapters.
While some readers may prefer to only explore a single ARCore platform by sticking to
those specific chapters, you are strongly encouraged to work through all the samples in this
book. Given that the ARCore API is so similar across platforms, transferring the techniques
you learn for one should translate well to another. Also, don't be intimidated by a different
platform or programming language. If you have a good base of knowledge in one C
language, learning any other language from the rest of the family takes only minimal effort.
Developer, programmer, software engineer, or whatever you want to call yourself, you can
always benefit from learning another programming language.
[ 14 ]
Getting Started Chapter 1
Summary
In this chapter, we took a very quick look at what immersive computing and AR is all
about. We learned that augmented reality covers the middle ground of the immersive
computing spectrum, that AR is just a careful blend of illusions used to trick the user into
believing that their reality has been combined with a virtual one. After all, Google
developed ARCore as a way to provide a better set of tools for constructing those illusions
and to keep Android competitive in the AR market. After that, we learned the core concepts
ARCore was designed to address and looked at each: motion tracking, environmental
understanding, and light estimation, in a little more detail. Finally, we finished with a
helpful roadmap for users looking to get the most out of this book in the shortest amount of
time.
In the next chapter, we begin to dive in and get our hands dirty by getting the sample
Android project set up and tweaked for our needs.
[ 15 ]
Random documents with unrelated
content Scribd suggests to you:
the attempts of the Indians to take his life and from the enmity of a
jealous rival in love.”—Boston Transcript
“The dialog is full of ‘go’ and the book will appeal immensely to
intermediates.”
“Perhaps the very best of his many romances. The flow of the story
is clear and strong; it has atmosphere, movement, and distinction.”
Reviewed by C. A. Phillips
“Little Pierre” is the story of a boy from his birth to his tenth year.
It is told in the first person and the actual memories of childhood
begin with his second year. He is the son of a Paris physician and is
born “in the days when the reign of King Louis Philippe was drawing
to a close.”
‘Mr May and his colleague have done well, uncommonly well with
their work, have indeed lost very little in the transition from French
to English, and kept all the charm of ‘Little Pierre.’” G. M. H.
+ Boston Transcript p4 N 27 ’20 560w
+ N Y Times p26 Ja 2 ’21 330w
+ Outlook 126:558 N 24 ’20 50w
Four fairy tales, not written for children. In the first Bluebeard is
pictured as a shy, modest man, the victim of the extravagance and
unfaithfulness of his seven successive wives. The other stories are:
The miracle of the great St Nicholas, a satiric treatment of an old
legend; The story of the Duchess of Cicogne and of Monsieur de
Boulingrin, a version of The sleeping Beauty; and The shirt, the story
of the king who was told to find the shirt of a happy man.
The author says: “The following pages do not pretend to ‘cover’ the
West Indies. They are made up of the random pickings of an eight-
months’ tour of the Antilles, during which every island of importance
was visited, but they are put together rather for the entertainment of
the armchair traveler than for the information of the traveler in the
flesh.” He also states that he wishes it distinctly understood that this
is not the record of a walking trip. As a protest to those friends who
ever since his vagabond journey around the world have expected him
to travel always on foot he planned a trip on which walking would be
difficult if not impossible. The book is in three parts: The American
West Indies; The British West Indies; and The French West Indies
and others. There are many illustrations and a map.
“If the average American wants to know just what he would see
and how he would feel in the West Indies, let him read Mr Franck’s
book. On occasion Mr Franck reminds one of Herodotus, in the
marked distinction between the credibility of what he reports as of
his own experiences and the dubious quality of what he has got
through hearsay.” A. J.
Reviewed by E. L. Pearson
Review 3:345 O 20 ’20 70w
+ Springf’d Republican p7a N 28 ’20
870w
“Mr Frank’s is one of those long novels of the type which Theodore
Dreiser has popularized, with a minute description of the adventures
of one or two young men, coming to New York from the West, giving
especial emphasis to their amatory experiences, and reflecting
sarcastically upon the evils of capitalism. In this book it is the
Spanish war which enters incidentally into the story.”—Review
“‘The dark mother’ is a lost cause, so far as the medium goes. For it
is transitional, it is neither the novel, nor something distinct from the
novel. Judged as a novel, it does not satisfy; and there is nothing else
to judge it by. In any case, Waldo Frank is en route for something or
other.” Kenneth Burke
“Of all kinds of sophistry the most insidious is that coming from an
eloquent writer who is the unconscious victim of unsound thinking.
Mr Frank is perhaps unduly preoccupied with the world and the
flesh, but it would take a psycho-analyst to gauge his intention in
dwelling upon them. To give the author his due, it must be said that
he impresses the reader rather as a man groping for ethical
convictions. Mr Frank’s powers of characterization deserve high
praise.”
“To say that it is without interest would be to say what is not true;
to say that it is thoughtlessly written would be a hasty comment on
an author whose work everywhere evidences the pale cast of thought.
It is, indeed, an interesting, thoughtful book, written in an easy,
somewhat emotional style. But it is nothing if not pessimistic in its
historical backward glancing and in its view of the present. And it is
often lacking in a sense of perspective and proportion.”
“Mr Frank does not write with the sustained and rolling cadence of
Hebrew poetry. His sentences are swift and staccato like the flash of
a whip, sudden and shrill like newspaper headlines. And yet Mr
Frank is of the school of the prophets of his race. Other witnesses
have arisen against us, W. T. Stead, M. Paul Bourget, Mr H. G. Wells,
Mr Arnold Bennett. These, however, have spoken in their separation
from us, and, excepting the first, with the tolerant cynicism of
detachment. What gives force to Mr Frank’s prophecy is that he is of
us, as Jeremiah was of Jerusalem.” R. M. Lovett
Reviewed by W. J. Ghent
“Hostile and shallow critics will be tempted to run the gamut of the
alphabet in search of verbal missiles to hurl at the author from
anarchist and bolshevist down to zealot. Mr Frank is none of these,
the more careful reader will decide, but merely an insurgent in
letters, feeling the pulsing of a new age that sooner or later will be
able to declare itself and dominate public opinion as Puritanism has
dictated in the past.”
“The scenes of English country life in the last part are a pleasant
offset to the earlier war pictures.”
“The vivid battle descriptions that are the best part of the book
cannot atone for its essential narrowness and shallowness, for its
manifold defects of thought and style, for its systematic glorification
of hates and follies and prejudices that were scarcely excusable even
in the heat of the conflict. ‘Peter Jameson’ is the product of a mind
still inflamed by the fever of war.” W. H. C.
− + New Repub 24:224 O 27 ’20 270w
“The book has the essential quality that the author enjoys his own
story and believes it to be true. ‘Peter Jameson’ is not a great novel,
but it is certainly a good one.”
“It is only in recent days that employers have realized how greatly
production depends upon the spirit of the laborer. For this reason
this book with its careful, authoritative studies of varied aspects of
the service work should be most welcome.”
“To the already acquainted with the material and able to supply for
himself the connecting links, it gives many leads. To the uninitiated
it gives a solid back-ground for further study.” M. J. Janovsky
Reviewed by G: Soule
Reviewed by G: Saintsbury
“This book is intended for all those who shape policies, make
markets, direct affairs or study investments in business, and also for
those analytical executives, statisticians and researchers who assist
such men to arrive at correct solutions to their problems. It is further
intended to give a more practical and creative outlook to those who
aim to make a profession of business research and statistics.”
(Introd.) The contents in part are: Types and kind of data; The law of
averages as a guide to business; Per capita consumption study; The
possible market analysis and saturation point; Prognostications and
tendency curves; The technique of field investigations; The dollar
and the budget idea in business finance research; Inquiries into
management problems; Graphic charts and maps and their part in
research; International trade statistics and researches; Imagination
and vision in relation to research; Index.
Reviewed by R. J. Walsh
[2]
FREDERICK, JUSTUS GEORGE. Great game
of business; its rules, its fascinations, its services and
rewards. *$1.50 Appleton 658
20–21357
Reviewed by R. J. Walsh
“He has made a very readable book about his adventures; his
photographs deserve better printing.”
“These tales belong to a class that does not quite include the out-
and-out ghost story, but does reach out to the supernatural in the
indefinable fashion that we nowadays call psychic without bothering
to define what psychic means. This is a perfectly fitting field for
fiction of the non-realistic kind, for it does not demand belief but
imagination. Algernon Blackwood and ‘Fiona McLeod’ were adepts at
this form of story, and are here well represented, together with Jack
London, W. T. Stead and others.”—Outlook
“Mr French has selected his material with a fine judgment and a
discriminating taste, and Dorothy Scarborough has contributed an
introduction which adds much to the reader’s enjoyment of the
volume.”
“A more satisfying survey for the serious lay reader than the
author’s earlier books on special topics.”