introduction to google glass - regnier
DESCRIPTION
Le slide di Alain Regnier presentate a Codemotion Roma 2014TRANSCRIPT
ROME 11-12 april 2014 - Alain Regnier
Alain Regnier
Introduction to Google Glass
Alto Labs
ROME 11-12 april 2014 - Alain Regnier
Who I am… ● Alain Regnier● [email protected]● @altolabs ● https://plus.google.com/+AlainRegnier
● 10 years in Silicon Valley● GDG Paris Leader (Google Developer Group)● Multiple activities including consulting about some
Google Technologies● and #GlassExplorer for almost 1 year
ROME 11-12 april 2014 - Alain Regnier
Agenda ● What it is…● How it works…● What can we do…● Demo● Glass Explorer program● Google Glass v2● Development for Glass● Thoughts after 1 year…● Glass World● Questions
ROME 11-12 april 2014 - Alain Regnier
What it is…
ROME 11-12 april 2014 - Alain Regnier
ROME 11-12 april 2014 - Alain Regnier
ROME 11-12 april 2014 - Alain Regnier
ROME 11-12 april 2014 - Alain Regnier
ROME 11-12 april 2014 - Alain Regnier
Technical details● 640x360 pixels screen● Integrated camera: 5 Megapixels
photos - 720p videos● Wifi 802.11 b/g● Bluetooth● Video support (MP4 container
H264/H263 encoding)● Audio support (AAC and MP3)● 16 GB data storage (12 GB really
available)● Flexible support
ROME 11-12 april 2014 - Alain Regnier
More Technical Details● Android ICS 4.0.4● Microphone● Bone Conduction Transducer● Gyroscope● Accelerometer● Magnetometer● Proximity sensor● Ambient light sensor● Infrared sensor
ROME 11-12 april 2014 - Alain Regnier
How it works…
ROME 11-12 april 2014 - Alain Regnier
How it works…
© Martin Missfeldt
ROME 11-12 april 2014 - Alain Regnier
How it works…
© Martin Missfeldt
ROME 11-12 april 2014 - Alain Regnier
the Cards
Text Image
Video HTML
ROME 11-12 april 2014 - Alain Regnier
the Timeline
● Everything that you’ve done and received● The most recent appears on the left, the oldest disappears on the right● Composed of Cards
ROME 11-12 april 2014 - Alain Regnier
Voice
“OK, Glass” followed by a command
Trackpad
● Click : activate/select/OK● Swipe down: go back● Swipe left/right: navigate the
timeline● Swipe down with 2 fingers:
exit● Camera button: take a picture /
record a video● Power Button (several
secondes): turn on / turn off● Backwards head move :
activate
Applications
MyGlass WebMyGlass Mobile
Controls
ROME 11-12 april 2014 - Alain Regnier
What we can do…
ROME 11-12 april 2014 - Alain Regnier
What we can do…● Take a picture● Record a video● Perform a search on Google● Request directions and get GPS navigation● Send a message● Call a contact● Participate in a hangout● Receive notifications (email, Google+, Google Now…)● Install Glasswares
ROME 11-12 april 2014 - Alain Regnier
MyGlass Mobile
● Associate your Google+ account (for example to synchronize your pictures)
● Connect your Glass to your mobile using bluetooth (phone calls, configuration, GPS…)
● Configure Wifi access points● Add contacts to the Glass● Activate Glasswares
ROME 11-12 april 2014 - Alain Regnier
MyGlass Web
ROME 11-12 april 2014 - Alain Regnier
Example: NYT Glassware
ROME 11-12 april 2014 - Alain Regnier
Example: NYT Glassware
ROME 11-12 april 2014 - Alain Regnier
Example: CNN Glassware
ROME 11-12 april 2014 - Alain Regnier
Demo
ROME 11-12 april 2014 - Alain Regnier
Glass Explorer program
ROME 11-12 april 2014 - Alain Regnier
Glass Explorer program● Around 2000 users who registered during Google I/O
2012● Officially targeted to US developers● Around 8000 more users selected through the
#IfIHadGlass contest beginning of 2013● Access to Developer prototype since april 2013● Access to the Mirror API and related forums● Presentation event in several places (including Mountain
View campus) to learn how to get started with Glass● 3 invitations to send to potential new #GlassExplorer in
november
ROME 11-12 april 2014 - Alain Regnier
Development prototype
ROME 11-12 april 2014 - Alain Regnier
Development prototype
ROME 11-12 april 2014 - Alain Regnier
Google Glass v2
ROME 11-12 april 2014 - Alain Regnier
ROME 11-12 april 2014 - Alain Regnier
New Version● Headphones to hear correctly in noisy environment● Allows Prescription Glasses to be mounted● Newer version of the CPU (OMAP 4430) supposedly
increasing a bit performances● No plastic glasses● CE mark on the Glass ● Original Glass Explorers can exchange their v1 for a v2● Lightweight titanium frames for Glass with prescription
glasses
ROME 11-12 april 2014 - Alain Regnier
Version 1 vs Version 2
ROME 11-12 april 2014 - Alain Regnier
ROME 11-12 april 2014 - Alain Regnier
ROME 11-12 april 2014 - Alain Regnier
ROME 11-12 april 2014 - Alain Regnier
Programming for Glass
ROME 11-12 april 2014 - Alain Regnier
Programming for Glass● Mirror API : programming server side in Go, Java,
Python, .Net, PHP… (original method)
● GDK (Glass Development Kit) Preview : Android programming in Java. APK installed directly on the device
● WearScript : Javascript for Google Glass created by Brandyn White allowing quick and easy prototyping of application (supports other wearable devices)
ROME 11-12 april 2014 - Alain Regnier
Playground
ROME 11-12 april 2014 - Alain Regnier
Mirror API vs GDK
ROME 11-12 april 2014 - Alain Regnier
Programming with the Mirror API
ROME 11-12 april 2014 - Alain Regnier
Mirror API
● Original way to program Google Glass
● Composed of RESTful services
● No need to execute code on the Glass
● Calls need to be authenticated using OAuth 2.0
● Starters projects available in Java, PHP, Python…
ROME 11-12 april 2014 - Alain Regnier
# Insertion into Timeline : Text
@Override protected void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException { String userId = AuthUtil.getUserId(req); Credential credential = AuthUtil.newAuthorizationCodeFlow().loadCredential(userId); ...
if (req.getParameter("action").equals("addtext")) { LOG.fine("Inserting Timeline Item: text"); TimelineItem timelineItem = new TimelineItem(); timelineItem.setText("You've got mail! " + new Date().toString()); timelineItem.setNotification(new NotificationConfig().setLevel("DEFAULT"));
Mirror.Builder mb = new Mirror.Builder(new UrlFetchTransport(), new JacksonFactory(), credential); Mirror.Timeline timeline = mb.setApplicationName("GlassExplo").build().timeline(); timeline.insert(timelineItem).execute(); }
Servlet receiving the request
Insertion of a Text Card
Request example: http://localhost:8888/main?action=addtext
ROME 11-12 april 2014 - Alain Regnier
# WhoIsThat
ROME 11-12 april 2014 - Alain Regnier
# WhoIsThat
ROME 11-12 april 2014 - Alain Regnier
# WhoIsThat
ROME 11-12 april 2014 - Alain Regnier
# WhoIsThat
ROME 11-12 april 2014 - Alain Regnier
Programming with the GDK Preview
ROME 11-12 april 2014 - Alain Regnier
GDK Developer Preview● GDK = Glass Development Kit● Allow to do development in your Android
development environment● Sneak Peek v1 release on november 19, 2013● Very preliminary version before the Developer
Preview!● Based on Android 4.0.3● Simple add-on for Glass specific features (voice
commands, gestures, cards buildup)● Possibility to develop with NDK (ex. Translation
App)
ROME 11-12 april 2014 - Alain Regnier
GDK Developer Preview (2)● Provide access to sensors● Display preview stream of camera● Capture pictures and videos● Capture voice● Handle trackpad directly● Display full screen● Create cards
ROME 11-12 april 2014 - Alain Regnier
GDK : Card creation● A standard card has:● A main text● A footer● One or several images
// Create a card with a full-screen background image.Card mycard = new Card(context);mycard.setText("This card has a puppy background image.");mycard.setFootnote("How can you resist?");mycard.setImageLayout(Card.ImageLayout.FULL);mycard.addImage(R.drawable.puppy_bg);// Don't call this if you're using TimelineManagerView mycardView = mycard.toView();
ROME 11-12 april 2014 - Alain Regnier
Programming with WearScript
ROME 11-12 april 2014 - Alain Regnier
Programming with WearScript● One line installer on Linuxcurl -L http://goo.gl/nRjW6y > install.py && python install.py<html style="width:100%; height:100%; overflow:hidden"><body style="width:100%; height:100%; overflow:hidden; margin:0"><canvas id="canvas" width="640" height="360" style="display:block"></canvas><script>function server() { WS.log('Welcome to WearScript'); // Write to Android Log and Playground console WS.say('Welcome to WearScript'); // Text-to-Speech WS.sound('SUCCESS')
// Changes canvas color with head rotation WS.sensorOn('orientation', .15, function (data) { ctx.fillStyle = 'hsl(' + data['values'][0] + ', 90%, 50%)' ctx.fillRect(0, 0, 640, 360); });
ROME 11-12 april 2014 - Alain Regnier
Demo
ROME 11-12 april 2014 - Alain Regnier
“Shazaglass”
ROME 11-12 april 2014 - Alain Regnier
Thoughts after 1 year…
ROME 11-12 april 2014 - Alain Regnier
Thoughts after 1 year…● Very interesting concept with LOT of potential● Prototype light and comfortable● Allow to keep normal field of vision intact● Prototype for Developers and Explorers at the moment● Easy programming with Mirror API but limited● GDK coming soon (in the meantime sneak peek to
developer preview)● Monthly updates with new features● Several thousands developers preparing applications
ROME 11-12 april 2014 - Alain Regnier
Thoughts after 1 year…● Prototype only for Developers and Explorers at the
moment● Battery doesn’t last long enough● Difficult to hear in noisy environment● French accent is not always recognized ● The camera without cache makes some people
uncomfortable● No easy way to secure the Glass when you walk in public
areas● No way to prevent updates (can be scary)● Not yet available to the Public (sometimes in 2014?)● Some things we want to do not yet available through
APIs
ROME 11-12 april 2014 - Alain Regnier
Thoughts after 1 year…
Very interesting concept with LOT of potential
ROME 11-12 april 2014 - Alain Regnier
Glass World
ROME 11-12 april 2014 - Alain Regnier
Possible Use Cases● Facial recognition (Google doesn’t want it for now)● Secondary screen for gaming● Recording of places, people… with comments● Access to medical files during surgery● Ads/QR Code scanning to get more details about a product
or compare prices● Control moving devices (drones…)● Learning by seeing through the eyes of the teacher● See notes while making a presentation
● …
ROME 11-12 april 2014 - Alain Regnier
CEO and Founder of @Parrot Henri Seydoux flying @ardrone with @GoogleGlass [@NYUEngelberg]
ROME 11-12 april 2014 - Alain Regnier
Blue from PaperModelPlane
ROME 11-12 april 2014 - Alain Regnier
Surgeon live stream knee repair with Google Glass to colleague and students
(Dr. Christopher Kaeding)
ROME 11-12 april 2014 - Alain Regnier
John Kucko commented the SuperBowl with Google Glass to provide a different
experience
ROME 11-12 april 2014 - Alain Regnier
In school, #GoogleGlass can help keep hands free during the recording of a demo
(Burlington Public School)
ROME 11-12 april 2014 - Alain Regnier
Race Yourself, an application that convert physical activities into
games
ROME 11-12 april 2014 - Alain Regnier
An application to prevent sleeping at the wheel
(DriveSafe)
ROME 11-12 april 2014 - Alain Regnier
An application to facilitate boarding at Virgin Atlantic
ROME 11-12 april 2014 - Alain Regnier
Dr Steven Horng from Beth Israel Deaconess Medical Center saved a life thanks to his
Google Glass
ROME 11-12 april 2014 - Alain Regnier
No Comment…
ROME 11-12 april 2014 - Alain Regnier
If you want to know more…● Documentation for developers
https://developers.google.com/glass/
● If you have ideas of applications for Glass or would like to develop an application for Glass, contact me:
Alain Regnier #GlassExplorer
@altolabs
ROME 11-12 april 2014 - Alain Regnier
Questions?