Skip to content
Back to the path

Unit 4 of 7

Open

Day 4 — Your app survives bad days too

What you have afterwards: Empty, error, offline and resume states are designed.

Goal

You give every state outside the happy path an understandable answer.

Understand briefly

Most bad app experiences do not happen in the success case. They happen when there is nothing, when the network crawls, when someone taps twice or comes back a week later. A raw error code is no answer: it names no reason and offers no repair. Check text scaling, contrast and reduced motion in the same pass.

Follow along

Paste this prompt into the AI tool you work with:

My app has this core loop: [YOUR FOUR STEPS]

Add exactly these states without changing the happy path:
1. Empty state with one clear next action.
2. Error state in human language, with a reason and a retry action — no technical code.
3. Offline and slow-network state.
4. Resume: what does someone see who comes back after a week?

Show me how to trigger each state on purpose.

Build it yourself

Trigger every state on purpose once: turn off the network, clear your data and tap an action twice.

Verify

Only tick a box once you have really checked it. These criteria are the only way to finish this unit.

0 of 4 confirmed

Still open: 4 criteria

Self-check

Three questions about decisions you made today. There are no points and no grade — only the why. Every answer can be changed.

1. A network call in your app fails. What must the user see at that moment?
2. An area of your app is still empty because the user has created nothing. What belongs there?
3. Larger text, contrast and reduced motion — when do you check those?

0 of 3 answered

Next step

Tomorrow it is about everything that has to be right around the app.

Next: Day 5 — Operations, legal and cost limits are set

隐私设置

在你同意后,PostHog EU 会统计哪些页面被打开,并额外录制你的会话:鼠标移动、点击、滚动以及页面呈现的内容会被保存为可回放的重建记录。你输入的文字在发送前会被遮蔽。登录、注册、密码找回、创始人聊天、订阅邮件输入框、你的邮箱显示、你的测验答案以及检查清单的内容完全不会被录制;在登录和注册页面,录制处于暂停状态。网址始终不带查询参数保存。此外还会处理一个随机设备标识以及 IP 地址等技术连接数据。除此之外,还会统计少数严格定义的使用事件:文章被读到什么程度、使用了哪个文章模块、点击了哪个行动号召,以及订阅邮件的结果如何。仅传输固定清单中的取值——不含输入内容,也不含自由文本。 了解更多隐私信息

未经你同意,不会加载任何分析代码,也不会进行录制。你可以随时撤回:撤回会立即停止采集;此前已采集的数据可能已经传出,并会在存储期限后删除。