| Dedication Page | 4 |
|---|
| Contents at a Glance | 5 |
|---|
| Table of Contents | 6 |
|---|
| Foreword | 11 |
|---|
| About the Technical Reviewer | 12 |
|---|
| Introduction | 13 |
|---|
| What s in This Book | 13 |
| CHAPTER 1: App Cubby | 17 |
|---|
| From Fanboy to Developer | 17 |
| Learning from Apple | 18 |
| To Tap or Not to Tap? | 24 |
| Usability Testing on the Cheap | 28 |
| Finding Users | 28 |
| Testing Done Right | 28 |
| Walking Through a User s Test | 29 |
| Learning from Usability Testing | 31 |
| Fit and Finish | 32 |
| Summary | 34 |
| CHAPTER 2: Yet Another Google Reader | 37 |
|---|
| Choosing to Develop a Newsreader | 37 |
| Identifying Pitfalls of Current Newsreaders | 38 |
| Exploring the Google Reader Experience | 39 |
| Lack of Overview and Cumbersome Navigation | 43 |
| Lack of Data Control | 44 |
| Improving the Newsreader Experience | 45 |
| Defining the Application Definition Statement | 46 |
| Making the Application Native | 47 |
| Making the Navigation More Effective | 47 |
| Giving a Better Overview | 50 |
| Studying the User s Reading Pattern | 51 |
| Presenting the Information | 51 |
| Outlining the Next Steps | 53 |
| Summary | 54 |
| CHAPTER 3: Brightkite for the iPhone | 57 |
|---|
| Introducing the Brightkite Location-Aware Social Network | 57 |
| Introducing Double Encore | 58 |
| Moving From Web to Mobile | 58 |
| The Rise of Native Applications, to the Web s Despair | 60 |
| IT S ALL ABOUT LOCATION | 61 |
| A Creative Paradigm Shift | 62 |
| BRIGHTKITE SHARES | 64 |
| Designing for the First-Time User | 65 |
| Creating Virtually Infinite Drill-Down | 68 |
| BEST PRACTICES FOR ADDRESS BOOK INTEGRATION | 70 |
| Summary | 71 |
| CHAPTER 4: Outpost | 74 |
|---|
| Establishing Outpos | 74 |
| Wireframing Outpost | 75 |
| Designing Outpost | 79 |
| Two Screens, One Application | 79 |
| First Attempt | 81 |
| Second Attempt | 81 |
| Fitting In | 83 |
| Working in a Small Team | 85 |
| Designing with HTML | 85 |
| All That Glitters | 86 |
| Summary | 88 |
| CHAPTER 5: TanZen and Zentomino | 91 |
|---|
| Finding the Elusive Application Idea | 91 |
| Creating a Design Document | 93 |
| Diving into the Code | 94 |
| Creating the Piece UI | 95 |
| Pieces, Pieces Everywhere | 96 |
| Being Deceived by the Simulator | 97 |
| Playing to the Emotions of Your Customers | 98 |
| Words? We Don t Need No Stinking Words! | 99 |
| How Many Buttons Does It Take? | 100 |
| When Is a Game Not a Game? | 101 |
| The Eureka Moment | 101 |
| I m Not an Artist, But I Play One on the App Store | 101 |
| Vital, Yet Invisible | 103 |
| Racing to the Finish Line? | 105 |
| Building a Better Rotation | 105 |
| Finally Testing on a Device | 108 |
| Going Back to the Drawing Board | 108 |
| The Perils of Being 95 Percent Finished | 110 |
| The App Store Arrives | 111 |
| Recalling the First Days on the App Store | 112 |
| Responding to Rotation Issues | 113 |
| When to Say Yes and When to Say Thanks, I ll think about it. | 115 |
| Surviving on the App Store | 117 |
| Creating a Second Game Without Starting Over | 118 |
| Repurposing a Popular Interface | 119 |
| Making Interface Modifications to Fit the New Game Rules | 119 |
| Designing Around Limitations in Screen Size | 120 |
| Colors, Colors Everywhere | 120 |
| Putting on the Finishing Touches | 121 |
| Summary | 122 |
| CHAPTER 6: Flash of Genius: SAT Vocab | 125 |
|---|
| Checking Out the Competition | 126 |
| Mental Model Inconsistency | 128 |
| Inappropriate Orientations | 128 |
| Small Buttons | 129 |
| Starting Development | 130 |
| Designing the Flashcards | 133 |
| Designing the Buttons | 134 |
| Testing the Application | 136 |
| Launching the Application | 137 |
| Summary | 138 |
| CHAPTER 7: Postage | 141 |
|---|
| Keeping the Application Focused | 142 |
| Selecting Font Styles | 144 |
| Selecting Font Colors | 144 |
| Using Image Effects | 145 |
| Setting Preferences and Configuring the Application | 145 |
| Separating Tasks | 148 |
| MODAL VS. MODELESS | 151 |
| Analyzing the Context | 152 |
| Considering Context in Postage | 153 |
| Facing Potential Problems with Context | 155 |
| Using Familiar Controls in Postage | 156 |
| Creating the Application Flow | 158 |
| Giving Hints About Flow | 159 |
| Showing Instead of Telling | 160 |
| Avoiding Icon Overload | 162 |
| Tuning Responsiveness and Feedback | 163 |
| Exploring the Postage Development Technique | 164 |
| Creating Prototypes and Mock-ups | 164 |
| Writing Specifications | 166 |
| Consider
|