vrijdag 29 juni 2012

The IO D2 Keynote

10:00
13700 photos contributed on google+ via the events. more than 2 billion user on internet traffic and more people getting the web via mobile. 70 million chrome user for chrome in 2010 160 million in 2011 310 in 2012. Today the browser is being used on more devices than only on the desktop. opening tabs cross devices and having the back button cross devices. Loading the pages in the background (first page only?). Chrome on the iPhone and iPad. Credentials are synced cross devices. adding google drive to chromeOS and iOS. Looking through pdf with OCR, looking/searching through photos using text. Google documents for editing offline getting the normal editing without an internet connection. 7.5Billion hits per day on appengine. Virtual machines on demand, google compute engine (IaaS), linux virtual machines, possible creating of clusters. more than 700000 cores available for the application. Rich games developed on chrome having games on things as chromebooks and boxes.

11:15
Second jump with glass just to let us see how it has been set up. And then the camera man hits against the waterpipe.

donderdag 28 juni 2012

The IO D1

9:39
Welcome and android start. 400M android devices have been activated, daily 1M. New android is Jelly Bean. Performance have been upgraded by project Butter. Triple buffer used in the graphics pipeline. Predicting finger position for screen updates, (People still walking in) to get a more natural response.
High speed camera test to compare jelly bean and ics. JB is quicker and looks better. Finally something that moves the app or resizes the widget. Tossing the apps of the screen. Added a predictive keyboard and a bigram recognizer/predictor. The google voice db has been made smaller. This can be used offline. Gesture mode for blind users. new animation for taking photo's. Scrolling in film strip review by pinching. They introduced android beam instantly paired devices by using NFC. The notification have been improved and extended. tune-in radio. expand and colapse notifications by using two finger gestures. google search using card view. combined with google voice search. Also giving websearch results.


10:00
Google now giving advice when travelling. Knows when the next bus or train arrives and which restaurant are in the neighborhood. Letting you know what the time is back home. The cards are self learning. PDK for developing hardware, has low-level apis.


More ways of billing and expanding the carrier billing. Launched android training for training the starting developers. Android app encryption with a device key. Smart app updates are partial updates no need for updating everything. Movie purchasing on google play and tv sessions. Magazines added to play. Nexus 7 build for google play running JB. Super thin light and protable. 1280 x 800, Tegra 3 quad core cpu triple core gpu, 340 grams. Optimizing articles for reading, adding interactive items. Recommendation for books music magazines and movies. A whats this song widgets to find a new song. chrome the standard browser. added compas mode for a better view of the inside of a restaurant, combined with the girosscope. Translate added to google current within second. 25$ credit to spend in the play store.


10:33
project thunsten. combining play and android the produce the first consumer electronics build from the ground up by google. Nexus Q connects to the cloud and is being controlled by the phone. The new social streaming device to let friends add the music. Also possible to play/be the dj. Knowing where you stopped playing even in other rooms/houses.Taking over the tv with your android device.
Youtube movie of hangout with the muppits, song: under pressure.


10:50
new google plus app for the tablets, finally going native. New hangout invite and auto switching video. Google plus events, sending new invites called cinemagraphs. unfolding the invites to see where it is and it can be added to calendar. There is an event page, to see who is going. party mode adds the photo's to the event. on the events landing page the photos taken by the attendees are shown. Events highlights showing the most important photos. Showing photo's by person.


11:07
Showing glass. Looking pretty great, having an hangout with a couple of glasses on. Using glass to interact with the virtual world. Display is slightly above the eye. It needs to be very light, latest prototype is lighter than most of the sunglasses. Developer preview for pre-order for US-Based IO attendees, $1500.


What's new in android.
It's pretty busy here, to many people to little room. Even killing the wifi again. Performance new framework features, Graphics. Choreographer streaming input. host the widgets in a third party app by application bind. Action change live wallpaper possible to update the wallpaper. Lot of the code looks like CSS3. New is animating with a layer. Possible to react to any change. Improved the textview it uses now less memory and has higher performance for longer text. Support for styled text in ClipData. Start an animation from a certain spot. Parent activity for going back to the previous activity. Modifying the backstack. improvement to the right to left texts/languages. Added the external storage permission to get access to external storage. Limiting Costly Downloads. Improvements for Opensl. Tap to pair for bluetooth. Respond to user comments in google play. Android expansion files. GPU support for the emulator, and hardware acceleration. Big content view to give more information to the user. prio buckets for the notifications, Max = emergency, Min = not attention, and three levels in between. bigcontentview 4 times bigger 4 tmis more information for the user. Adding three buttond to the notifications. Adding bigpicture style to the notifications. Inbox style seeing an email conv like chat style. The top most notification is being expanded. Discover the package who made the nofication and they can be blocked.


Hangouts
Using iframes in hangout apps. hangout.js getting participants from the hangout. the application can be hosted on the appengine. One can create games to play with the hangout participants. Displaying names from the persons who are in the hangout. It is possible to store some data in de hangout. For instance with a guessing game that the guesses are being saved. Put the people first, identifying who is doing what, having the application/hangout being collabrative and synchronise. The people will be joining the game when not expected and there are callbacks for this. semi private mode where you can only see your own world and everybody else can see yours. MMO style application is not build yet.  


Maps
Using custom icons to visualize the data better convenient when using big data sets. Also the markerclass can be used to summarize the markers. Heatmaps to represent intensity or density. There is a new heathmap layer to visualize data. Rendered client side (No support for IE7) which is quicker and looks better. Standard points can disappear due to the fixed radius of the points, this can be removed also the radius can be changed. The heathmap can be overlayed with ocean polygons to make sharper edges for countries. It is also possible to visualize temporal data, data that changes overtime. The line which is being used for the navigation can be changed in color but also symbols can be added, in total there are 5 symbols. High data for mountains can be displayed using the svg paths. compress the data using encode/decode data, speed vs space. Styled maps to remove data from the original google maps. For very large data WebGL can be used, this can cope with the big data sets. Overlaying a canvas on the maps, to do this you need the world coordinates for speed.


Youtube + offline rendering
Almost half of the US will playing mobile games by 2014. 800 million youtube viewers worldwide. Gameplay videos are being viewed by a lot of users. New android player api to incorporate the video play into the app. Get the video frames from the game-engine, the frames are being parsed and send to the youtube service. The reading of the frames is being done on the native level. The other way is cloud rendering which does as little as possible on the device. The gaming data is being send to cloud storage, from there it is being rendered to local storage being encoded sended back cloud storage and then send to youtube. for the controller which sends the data to cloud storage appengine is being used, (URL listeners for a part of the program want to do something) communicate with linux devices and C2DM. The linux machines are able to poll for jobs from the app-engine. Sound is hard to encode due to the latency.   


WebRTC
state of the art audio/video communication stack in your web browser. cross industry effort to create a new communications platform. WebRTC Vision: The communications industry at webspeed. to allow real-time communication to be a feature of apps. WebRTC coming to almost all desktop browsers by EOY 2012 IE via chromeframe. Native C++ versions of WebRTC available. MediaStreams access to the camera and mic, DataChannels p2p application data transfer. Using css to add styles to the webcam stream. Getusermedia used for face recognition in javascript. PeerConnections buit-in p2p, codecs and … WebRTC is using a JSEP approach, App signals to the cloud and send the sessiondescription to the browser. Browser which is the caller send the media to the other caller which has done the same thing. Local session (configuration of the local side) remote session (configuration of the remote side) remote transport (configuration of how to connect) the things necessary to connect P2P. WebRTC signalling channel: XMLHttpRequest for sending the request but not for receiving. The appengine can use the channel api for sending and receiving this. B sends the session id  which is being send by the xmlhttprequest to the appengine which sends it via a channel to A. apprtc.appspot.com sample app. DataChannels low latency, high message rate/throughput, optional unreliable semantics. Good for file transfer :), decentralized networks and multiplayer games. Similar to websockets.