Things every app should do Test your app with real people, as soon as possible. Gather and act on their feedback. And make sure your app does all of the following things—too many don’t! ✓ Record usage analytics to track who’s using the app, where they are, what devices they have, and what they’re doing with the app. ✓ Provide automated reporting of any errors encountered while the app is running. ✓ Let the person using the app send you feedback (beyond leaving a review in the store). ✓ Allow the person using the app to work offline (limited functionality and/or old data is better than nothing!). ✓ Notify users of important updates and changes to the app. ✓ Adjust the onscreen keyboard depending on the type of data required. ✓ Support cutting and pasting of text and working with third-party password managers. ✓ Indicate empty states or missing content, so it’s clear why nothing is displayed. ✓ Give specific, actionable error messages when something goes wrong. ✓ Support localization of content, even if the app doesn’t support multiple languages (yet!). ✓ Support accessibility tools (which also aid automated testing). ✓ Test connectivity functionality, including delays and no connectivity. ✓ Have placeholders for content that hasn’t yet loaded or been downloaded. ✓ Use caching and compression of content if supported by remote data sources. ✓ Enable automatic retry of failed data requests. Usability Matters Usability Matters MOBILE-FIRST UX FOR DEVELOPERS AND OTHER ACCIDENTAL DESIGNERS MATT LACEY MANNING SHELTER ISLAND For online information and ordering of this and other Manning books, please visit www.manning.com. The publisher offers discounts on this book when ordered in quantity. For more information, please contact Special Sales Department Manning Publications Co. 20 Baldwin Road PO Box 761 Shelter Island, NY 11964 Email: [email protected] ©2018 by Manning Publications Co. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by means electronic, mechanical, photocopying, or otherwise, without prior written permission of the publisher. Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in the book, and Manning Publications was aware of a trademark claim, the designations have been printed in initial caps or all caps. Recognizing the importance of preserving what has been written, it is Manning’s policy to have the books we publish printed on acid-free paper, and we exert our best efforts to that end. Recognizing also our responsibility to conserve the resources of our planet, Manning books are printed on paper that is at least 15 percent recycled and processed without the use of elemental chlorine. Manning Publications Co. Development editor: Marina Michaels 20 Baldwin Road Technical development editor: Damien White PO Box 761 Review editor: Ozren Harlovic Shelter Island, NY 11964 Project manager: Tiffany Taylor Copy editor: Frances Buran Proofreader: Alyson Brener Typesetter: Dennis Dalinnik Cover designer: Leslie Haimes ISBN: 9781617293931 Printed in the United States of America 1 2 3 4 5 6 7 8 9 10 – DP – 23 22 21 20 19 18 To Chrissie, Izaak, and Phoebe: thank you for giving me the time and space to write this book. You can have Daddy back now. brief contents 1 ■ Introduction 1 PART 1 CONTEXT....................................................................25 2 ■ Who’s using the app? 27 3 ■ Where and when is the app used? 57 4 ■ What device is the app running on? 83 PART 2 INPUT.......................................................................103 5 ■ How people interact with the app 105 6 ■ User-entered data 126 7 ■ Data not from a user 155 PART 3 OUTPUT...................................................................175 8 ■ Displaying items in the app 177 9 ■ Non-visible output 207 vii viii BRIEF CONTENTS PART 4 RESPONSIVENESS.......................................................227 10 ■ Understanding the perception of time 229 11 ■ Making your app start fast 248 12 ■ Making your app run fast 268 PART 5 CONNECTIVITY..........................................................285 13 ■ Coping with varying network conditions 287 PART 6 RESOURCES...............................................................307 14 ■ Managing power and resources 309
Description: