Presentation is loading. Please wait.

Presentation is loading. Please wait.

Hans Hillen (TPG).  www.paciellogroup.com/training/CSUN2013/respons ive or: tinyurl.com/csun13-responsive www.paciellogroup.com/training/CSUN2013/respons.

Similar presentations


Presentation on theme: "Hans Hillen (TPG).  www.paciellogroup.com/training/CSUN2013/respons ive or: tinyurl.com/csun13-responsive www.paciellogroup.com/training/CSUN2013/respons."— Presentation transcript:

1 Hans Hillen (TPG)

2  www.paciellogroup.com/training/CSUN2013/respons ive or: tinyurl.com/csun13-responsive www.paciellogroup.com/training/CSUN2013/respons ive tinyurl.com/csun13-responsive  Links will be sent by email after the workshop 02 / 25 / 13Responsive Design and Accessibility - CSUN 20132

3  Introduction to Mobile Accessibility  Introduction to Responsive Design  How Responsive Design influences Accessibility  Color, Sizing and Reading Order  Supporting Screen Readers  Guidelines and Testing 02 / 25 / 13Responsive Design and Accessibility - CSUN 20133

4  Understand how people with disabilities use mobile devices and the barriers they typically face  Understand some of the techniques used to build accessible mobile sites  Learn what to test for and how to do so  Note: This training does not cover accessibility in native mobile apps, and we will be focusing on the main two platforms: iOS and Android 4Responsive Design and Accessibility - CSUN 201302 / 25 / 13

5 Responsive Design and Accessibility - CSUN 20135

6  Not just phones… all portable electronics o Tablets, games consoles, TVs, etc. o More users: cheaper technology reduces Digital Divide  Native apps o Software written for specific mobile devices and their operating systems and hardware features o Note: May incorporate web content  Mobile Web o Sites and applications built for viewing on mobile browsers o Note: Feature gap to native apps is narrowing due to standards such as HTML5 and ARIA 6Responsive Design and Accessibility - CSUN 201302 / 25 / 13

7  Making a website or application more accessible to people with disabilities using mobile devices  The basics are the same as on desktop: o Alternatives: images, audio, video o Labeling: form controls, headings, buttons o Good structure: landmarks, lists, heading levels o Use native controls where possible o Content order 7Responsive Design and Accessibility - CSUN 201302 / 25 / 13

8  Diverse user model – 4 main user groups: o Vision o Hearing o Mobility o Cognitive and learning  Assistive technology users o Speech output (screen readers) or braille output (Bluetooth braille displays) o Voice input o Magnification  Access services users o Captions o Subtitles o Audio description o Sign language interpretation 8 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

9  Hidden disabilities o Chronic fatigue o Photo sensitivity o Mental health  Aging o Spans various disabilities and user groups o Often first-time users o Note: Older people, like young children, find primary solid color easier to see and draw meaning from than pastel colors, etc. 9 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

10  Temporary o Broken wrist o Repetitive strain injury o Tiredness  Cultural o Language o Color and iconography  Technology o Connectivity, data limitations, etc. o Particular software and hardware requirements or preferences mobileaccessibility.info Device Details 10 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

11  Shared web experiences o Common ground between mainstream users and users with disabilities Comparable to temporary disability (in the car, at concerts, walking) http://www.w3.org/WAI/mobile/experiences o Empathy Accessibility is about understanding people and the barriers that they face. Getting your own experience of accessibility helps you to put yourself in the shoes of others and keep accessibility in mind when building and testing your sites and applications 11 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

12 Mobile by definition is disabling for all…  Small screen o iPhone is 1/12 of a typical desktop screen o 40-pixel finger is big on small targets o Can be hard to reach some parts of the screen  Small text sizes o is like having low vision  Small input devices  Eyes-free usage o e.g. in car o is like being blind 12 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

13 Mobile by definition is disabling for all…  Reliant on touch o Not as usable in the rain o Need to use special gloves  One-handed usage  Low light  Connectivity  Data limitations 13 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

14  Better integrated accessibility than desktop  Location and direction  Camera and augmented reality  Accelerometer and screen orientation  Touch screen  Proximity (NFC)  Environmental awareness (light/dark conditions) 14 Possibilities! 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

15  FaceTime used by the deaf FaceTime used by the deaf  Custom vibrations as ringtone equivalents  Speeches given using iPad with Proloquo  HueVue app that helps color blind people identify colors  Braille: o V-B-Reader app (Android) that enables Braille to be read using vibrating touch screens V-B-Readervibrating touch screens o Touch-screen Braille writer Touch-screen Braille writer  Innovative assistive technology that’s useful to all users! o Apple’s Siri voice recognition o Google Voice’s voicemail transcription o Custom vibrations on iPhone and Android 15 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

16 16 Accessibility feature or settingUser Speech outputBlind, low vision, cognitive ZoomLow vision, cognitive, mobility Inverse colors, brightness controlLow vision, cognitive HeadphonesHearing, cognitive Speak textLow vision, cognitive Voice inputBlind, low vision, cognitive, mobility External / virtual keyboard, directional padBlind, mobility CaptioningDeaf, cognitive Audio descriptionBlind, low vision 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

17 17 Two main interaction methods 1. Explore by touch o Drag finger over screen o Items under your finger are described by screen reader o Double tap to open/activate 2. Gesture navigation 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

18 Two main interaction methods 1. Explore by touch 2. Gesture navigation o Swipe right/left moves focus to next/previous content in sequence o Items are described by screen reader as focus moves o Double tap to open/activate 18 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

19  iOS accessibility features and API are more mature  Android devices have some good accessibility features and Google are working to improve Current market share favors iOS and Android devices over other vendors o Other mobile platforms: BlackBerry: Curve smartphones have free BlackBerry Screen Reader. Good information on their site. Symbian: Phones have accessibility features, including text-to-speech, but platform currently has no accessibility API. Windows Phone 8: Phones appears to have accessibility features but no accessibility API. 19Responsive Design and Accessibility - CSUN 201302 / 25 / 13

20 Responsive Design and Accessibility - CSUN 201320

21 Principles of accessibility for the Mobile Web:  Use progressive enhancement  Use a responsive design approach  Use web standards as intended  Support native accessibility settings and assistive technology for your target platforms 21 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

22  Use progressive enhancement o Build for lowest common denominator device o Use feature detection over browser detection – not all devices have the same levels of support for the same features o Some devices have better support for ARIA and HTML5 by the browser and assistive technology, and color palettes and fonts in the operating system o Even some basic HTML4 (e.g. the title attribute) is not supported in the same way as it is on desktop o Note: In this training, we are talking about the Mobile Web with an emphasis on iOS. All techniques discussed are supported by iOS, but some platforms may not 22 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

23  Use a responsive design approach o We want content and functionality to adapt to the mobile interface o Leverages CSS 3 media queries to enhance fluid layouts  No need to maintain two codebases – one for desktop, one for mobile  Can be built to principles of progressive enhancement o Build for “mobile first” – focus on content and small screen then build up“mobile first” o May be improved with JavaScript enhancements  Screens of 320-pixel width are typical but not guaranteed  More later on testing sites that use responsive design  Guidelines for Responsive Web Design Guidelines for Responsive Web Design  Responsive Web Design by Ethan Marcotte Responsive Web Design by Ethan Marcotte 23 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

24  Use web standards as intended o Accessibility is already “baked in” (along with interoperability for browsers, platforms and assistive technology) o Build core content using HTML, preferably HTML5 For example, code a button as a rather than a styled link. Screen readers announce the trait of an element before reading the accessible name (link text/label/text alternative). Users expect a link to open a resource and a button to carry out an action. It can be confusing when these are misused. o Prefer standard control elements over custom implementations o Enhance content with CSS, WAI-ARIA (for OS-like controls), etc. 24 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

25  Mobile support for WAI-ARIA Source: http://caniuse.com/#feat=wai-ariahttp://caniuse.com/#feat=wai-aria 25 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

26  Support native accessibility settings and assistive technology for your target platforms o Examples: Pinch zoom should not be suppressed In iOS, you can select text and have it announced (Settings > General > Accessibility > Speak Selection), so: Use text over images of text Support text selection: suppressing the ability to copy/paste text also suppresses the ability to speak selection 26 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

27  Inputting text, numbers, email addresses, URLs, search terms, etc. o Difficult using touch in general o Especially hard for low vision, mobility or blind users o Often people revert to Siri and voice input  Support predictive search (autocomplete widget) o Useful for dyslexics  Replace free input with more helpful controls o Drop downs, radio buttons, etc. o Enhance using HTML5 input types 27 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

28  HTML5 input types o Contextual keyboards in iOS with useful buttons (Previous, Next, Autofill) helps users to avoid mistakes o Degrade gracefully to text input elements o Supported in Mobile Safari and Webkit (Android) o Can use alternative JavaScript widgets as a fallback o HTML5 support, solutions and workarounds HTML5 support, solutions and workarounds 28 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

29  Valid HTML is important o Well formatted code is generally a good idea as it ensures robustness when software needs to work with HTML o Use the W3C Validation Service: http://validator.w3.org/http://validator.w3.org/ o Not all validation errors are relevant to ensuring accessibility You can filter results for accessibility using the Web Accessibility Toolbar or bookmarkletWeb Accessibility Toolbar or bookmarklet Use Nu Markup Validation Service with this tool:http://validator.w3.org/nu/http://validator.w3.org/nu/ 29 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

30 02 / 25 / 13Responsive Design and Accessibility - CSUN 201330

31  "Responsive web design (often abbreviated to RWD) is a web design approach aimed at crafting sites to provide an optimal viewing experience—easy reading and navigation with a minimum of resizing, panning, and scrolling—across a wide range of devices (from desktop computer monitors to mobile phones)." Wikipedia 02 / 25 / 13Responsive Design and Accessibility - CSUN 201331

32  Basically, responsive design means MEDIA QUERIES @media screen and (min-width: 980px) { /* desktop */ } @media screen and (min-width: 768px) and (max-width: 979px) { /* tablet (portrait) */ } @media screen and (max-width: 767px) { /* mobile (landscape) */ } @media screen and (max-width: 479px) { /* mobile (portrait)*/ } 02 / 25 / 13Responsive Design and Accessibility - CSUN 201332

33  Supported in all modern browsers o In desktop as well as mobile space o but not in IE8 (Leave it! Don't try to hack) o http://caniuse.com/css-mediaqueries http://caniuse.com/css-mediaqueries 02 / 25 / 13Responsive Design and Accessibility - CSUN 201333

34

35  General accessibility rules still apply in responsive design!  Follow WCAG 2.0: o Provide proper labeling, descriptions, and text alternatives o Ensure text is scalable, avoid using images of text o Maintain a logical reading and tab order o Ensure color contrast is sufficient, indicate focus programmatically and visually o Use semantic markup o Ensure content is keyboard accessible 02 / 25 / 13Responsive Design and Accessibility - CSUN 201335

36  "Why can't we just limit the responsive behavior to mobile devices?"  "Why do we have to support keyboard accessibility on mobile devices? That's a desktop thing!" -- Some angry designers in my past  What do you think the advantage is of responsive design on a desktop screen? 02 / 25 / 13Responsive Design and Accessibility - CSUN 201336

37  Ideal for screen magnifier users  Ideal for low vision users  Ideal for cognitively impaired users  Ideal for motor impaired users  So…Responsive is for mobile only? I think not! 02 / 25 / 13Responsive Design and Accessibility - CSUN 201337

38

39  As a responsive page is modified between responsive break points, foreground may overlap background differently  This can cause color contrast issues that were not present in the desktop version of a page.  Testers: Keep on top of your designers! 02 / 25 / 13Responsive Design and Accessibility - CSUN 201339

40 02 / 25 / 13Responsive Design and Accessibility - CSUN 201340

41  For risky resolutions, modify the background or foreground to avoid the issue 02 / 25 / 13Responsive Design and Accessibility - CSUN 201341

42  I prefer zoom over text-only resize over in page sizing controls o These days browsers apply proper text scaling as part of zooming o Supporting browser zooming is sufficient for WCAG 2.0 compliance o Browser zooming is easier to support for developers, and less disruptive for the existing layout  Make RWD work for you: Increase of text size / zoom level should trigger responsive switch!  This already happens automatically in some browsers, but will have to be applied manually in others 02 / 25 / 13Responsive Design and Accessibility - CSUN 201342

43

44  Responsive design resizes, reflows and modifies content (no problem here yet)  In some cases, the visual order of content is rearranged, while the structural order is not o While the CSS layout changes, the underlying HTML stays the same  Negative side effects: o Structural content order no longer matches visual layout order o Inconsistencies in visual order across responsive layouts are likely to cause confusion with end users 02 / 25 / 13Responsive Design and Accessibility - CSUN 201344

45 Search comes before menu Search now comes before menu Login button now comes before both 780px 480px 320px 02 / 25 / 13Responsive Design and Accessibility - CSUN 201345

46  Sighted keyboard users: o Expect to traverse focusable elements in the UI in the same order as the visual layout of the page  Screen reader users: o Will find it more difficult to follow instructions by sighted people (e.g. “Click the second button to log in...”)  Screen magnifier users: o Will have more difficulty navigating with high magnification factors (as the order changes depending on viewport size)  Cognitively impaired users (and all users, really): o Depend on consistency for a good user experience 02 / 25 / 13Responsive Design and Accessibility - CSUN 201346

47  Section 508 refresh will require compliance with: o 1.3.2 Meaningful Sequence: When the sequence in which content is presented affects its meaning, a correct reading sequence can be programmatically determined. (Level A) o 2.4.3 Focus Order: If a Web page can be navigated sequentially and the navigation sequences affect meaning or operation, focusable components receive focus in an order that preserves meaning and operability. (Level A) o 3.2.3 Consistent Navigation: Navigational mechanisms that are repeated on multiple Web pages within a set of Web pages occur in the same relative order each time they are repeated, unless a change is initiated by the user. (Level AA) 02 / 25 / 13Responsive Design and Accessibility - CSUN 201347

48  It’s fine to resize, reflow, filter and modify… o as long as the order of content stays consistent: visually and in the document structure Search field and menu always stay in the same order, even on smaller screens 02 / 25 / 13Responsive Design and Accessibility - CSUN 201348

49  ARIA is supposed to be supported on mobile devices as well  IOS does a good job, but as usual support is by no means complete  Webkit on mobile is not necessarily the same as webkit on Desktop (accessibility wise) 02 / 25 / 13Responsive Design and Accessibility - CSUN 201349

50  In some cases, a responsive switch may cause more than just a layout reflow. o Content can be filtered out o Interactive controls may change into different types of UI For example, a group of links may change into a dropdown button o For a screen reader user it may not be clear that this change occurs, e.g. when a window resizes or a tablet's orientation changes because the user holds it differently.  In this case: Notify the user! o For example, a live region update "The content on this page has been updated based on a change in the browser window size" 02 / 25 / 13Responsive Design and Accessibility - CSUN 201350

51  In Responsive Design, multiple controls may be present for the same behavior o Links at the top of the page in desktop view o Dropdown button in mobile view  When CSS is disabled, there may be redundant content o This goes against CSS best practices (don't hide content that shouldn't be there o But removing it from the DOM just because a resize occurred isn't good either  What do you think, should this use of CSS be allowed for the sake of responsive design? 02 / 25 / 13Responsive Design and Accessibility - CSUN 201351

52  Very difficult to make accessible  Changing Layout of table will generally break what makes it accessible o Changing display styles will also remove how the table is exposed to AT o IE does not allow different layout, which means you have to remove table related elements altogether  Failed Attempt Failed Attempt 02 / 25 / 13Responsive Design and Accessibility - CSUN 201352

53  Filament group has a good option: Filament group has a good option o Leave data table in tact o Allow user to choose columns  Another Recommendation: o Allow users to switch to original version of the table 02 / 25 / 13Responsive Design and Accessibility - CSUN 201353

54  Responsive Design Can be confusing to inexperienced users, or users with specific expectations  Always allow users to switch to the default, desktop version of a site. 02 / 25 / 13Responsive Design and Accessibility - CSUN 201354

55 02 / 25 / 13Responsive Design and Accessibility - CSUN 201355

56 The problem:  There is no one set of internationally accepted mobile guidelines and standards  WCAG was written for desktop  Mobile is more diverse than desktop o More browser, OSs, hardware, software o More agile and fast moving  There is no graded mobile browser support baseline similar to Yahoo!’s Browser Test BaselineYahoo!’s Browser Test Baseline  Without clear standards, we fall back on WCAG 2.0, which provides a sound foundation but is only the start of the story 56 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

57  Web Accessibility Initiative resources (now fairly dated) o Mobile Web Best Practices (MWBP) 1.0 Mobile Web Best Practices (MWBP) 1.0 o Web Content Accessibility Guidelines (WCAG) 2.0 Web Content Accessibility Guidelines (WCAG) 2.0 o Relationship between MWBP and WCAG Relationship between MWBP and WCAG  Mobile Accessibility Guidelines by Funka Nu Mobile Accessibility Guidelines by Funka Nu  Mobile Website Guidelines by the University of Austin Mobile Website Guidelines by the University of Austin  BBC Mobile Accessibility Guidelines by Henny Swan o Coming soon! o 72 technology-agnostic standards and guidelines o Technology specific techniques – HTML, Android and iOS o Getting to grips with a mobile accessibility strategy Getting to grips with a mobile accessibility strategy 57 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

58  Use site statistics from your own site to assess mobile OS and browser usage of your audience  Assess your existing mobile support strategy o Which devices in your strategy have accessibility support?  Support most popular devices on the market o Not all have good support for accessibility at the moment HTML5accessibility.com caniuse.com (can filter for mobile browsers) caniuse.com o Monitor upcoming releases iOS Accessibility on apple.com Android Accessibility (eyes-free) – Note: currently not up to date Android Accessibility (eyes-free)  Monitor current user preferences o WebAIM’s screen reader user surveys are useful here WebAIM’s screen reader user surveys  Be aware of the laws governing accessibility in your country 58Responsive Design and Accessibility - CSUN 201302 / 25 / 13

59 Responsive Design and Accessibility - CSUN 201359

60  Make a test strategy o Henny Swan has developed a great starting point http://www.iheni.com/mobile-accessibility-tests/ o Most important to test with speech output only – on iOS, this means testing with VoiceOver o Also, keep in mind: Zoom only Zoom with speech output Invert colors 60 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

61  Responsive Design o Create a baseline test for the site o Work together with deign / developer team as much as possible o Identify interface elements that change as different CSS media queries become active o Test only the elements that change at each of the supported screen resolutions o Remember to test both landscape and portrait 61 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

62  Test without zoom or speech output features: o Is there sufficient contrast? o Does color reinforce meaning rather than convey meaning alone? o Are links visually evident? o Are navigation cues clear? o Is pinch/double-tap zoom supported (HTML only)? o Are the correct keyboard/input types used in forms, i.e. tel, date, numbers, letters, etc.? o Large areas of empty space are not present? o Labels and form inputs are not separated by large areas of empty space? 62 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

63  Test without zoom or speech output features (continued): o Can you complete all actions? o Do pop ups fit within the viewport, i.e. you don’t have to swipe to find the close/submit/cancel buttons? o Do pop ups have a close button? o Is all content and functionality available by touch? o There is a clear visible focus on links, form fields, buttons, etc. when tested with a keyboard (Android)? o Text is selectable, i.e. users can copy and paste and use speak aloud options? 63 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

64  Test with speech output only: o Note: On iOS devices, use the Rotor to test content on elements like images, headings, containers/landmarks, forms, links, buttons etc. o Are images labeled appropriately? o Are decorative images ignored? o Is the content order logical? o Are landmarks labeled or have the appropriate heading announced with them? o Does the content order logical? o Do form fields have clear labels? 64 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

65  Test with speech output only (continued): o Is the appropriate keyboard used in forms, i.e. tel, date, numbers, letters, etc.? o Are data table headings read correctly? o Are hints appropriate? o Users are notified of navigation cues, i.e. if you can scroll pages/screen by swiping right when in portrait? o Are changes of state announced? o Does link text describe the target? o Are images and links to the same target grouped into one touch zone? 65 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

66  Test with speech output only (continued): o Can you complete all actions? o Is content in a different language read correctly? o Are buttons used for actions? o Have the correct HTML controls been used? o Is hidden content appropriate and necessary? o Do pop ups have a close button? o Does focus stay in the pop up rather than continue though the rest of the page/screen? o Is all content and functionality available by swiping left and right and up and down? 66 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

67

68  Basics o No longer in touch-to-activate mode; now touch-to-explore o Double-tap to activate o Horizontal swipes move focus between elements o Vertical swipes move between landmarks (set via Rotor) o The Rotor – a virtual wheel for changing modes o Three-finger scrolling  Tips (gestures as of iOS 6) o Three-finger triple tap = Speech Off o Three-finger quadruple tap = Screen Curtain 02 / 25 / 1368

69 1. Triple click the Home key to activate 2. Dial to open the Rotor 3. Swipe up/down to navigate parts 4. Swipe right/left for next/previous content 69 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

70 1. Triple click the Home key to activate 2. Dial to open the Rotor 3. Swipe up/down to navigate parts 4. Swipe right/left for next/previous content 70 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

71 1. Triple click the Home key to activate 2. Dial to open the Rotor 3. Swipe up/down to navigate parts 4. Swipe right/left for next/previous content 71 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

72  These mostly “just work”, but must test in combination – e.g. VoiceOver running with Zoom may experience focus issues  Pinch zoom  Zoom (system-wide) o Three-finger gestures for zoom control/movement o Zoom up to 5x  Large Text o Note: Only available in some of Apple’s own native apps  Invert Colors / Black on White  Captioned content (QuickTime) 72Responsive Design and Accessibility - CSUN 201302 / 25 / 13

73 Responsive Design and Accessibility - CSUN 2013 Practice using accessibility features  VoiceOver on iOS has a VoiceOver Practice screen  Zoom can be practiced from its screen in Settings 02 / 25 / 1373

74 Responsive Design and Accessibility - CSUN 2013 Get a feel for an accessible app  Use iOS system apps such as Mail, Notes, Calendar, Stocks  Useful cheat sheet – Learning iOS VoiceOver gestures: http://a11y.cc/iosvoref http://a11y.cc/iosvoref 02 / 25 / 1374

75 http://youtu.be/t60voPIY5xY 75 http://youtu.be/QJr8HDviws0 http://youtu.be/OVA76LGyB1o 02 / 25 / 13Responsive Design and Accessibility - CSUN 2013

76 02 / 25 / 13Responsive Design and Accessibility - CSUN 201376


Download ppt "Hans Hillen (TPG).  www.paciellogroup.com/training/CSUN2013/respons ive or: tinyurl.com/csun13-responsive www.paciellogroup.com/training/CSUN2013/respons."

Similar presentations


Ads by Google