

We can do much better.
The last major piece for us is personalization. This is where I always like to use the example of, “I’ve been a customer since 1998, and I get the exact same interface as everybody else.” I’ve been using it for 20 years—why is it still the same thing? Why doesn’t it adapt to what I do and to how much I know?
That question is really why we’re embracing this idea of personalization. We can do better than treating everyone the same.
Now, we are going to talk about things like the mobile web—how layouts change for different screen sizes. There’s a lot of built‑in support for that, because we already know a lot about how to do it. When we start talking about Web 3.5 and personalization, though, that’s different. There isn’t a standard library that solves it for us. We’re going to be doing a lot of that by hand.
I say this so you recognize that in another five years, the industry will probably have figured out a more standardized way to do all this. But for us, right now, the goal is to enhance the user experience. We’re going to figure out who the users are. We’re not going to make them tell us—we’re going to infer it ourselves. We have the programming; we can do it.
Most websites take the worst‑case approach: they assume every user needs everything. So you end up with features for first‑time users mixed in with features for long‑time users, all at once. Nothing adapts. Nobody gets a personalized experience.
That’s not what we’re going to do. We’re going to personalize.
Initially, we’ll do this using stereotype users. Later, we’ll talk about how to detect and adapt to users dynamically. For now, we’ll just define categories.
We start with first‑time users, but even those split into two types:
- Naive users: unfamiliar with the domain and not even sure your product is something they want.
- Novice users: they’ve used it once or twice, understand what it does, but aren’t yet comfortable with how it works.
Then we have existing users:
- Typical users: people who use the product regularly.
- Power users: people who use it heavily and know it well.
Most sites design everything for the first‑time user and ignore the power user, because as soon as you add advanced features, the first‑time user gets confused. But we don’t have that problem, because we’re not giving everyone the same interface.
There’s also the casual user—someone who has used the product before, but not recently. That’s yet another experience we can support.
So again, we’re providing the same basic suit—but we’re tailoring it to different people.
And designers love to remind me: your users are not like you. Here’s the thing, though—everyone starts as a naive user. When you show a client or user your system the first time, they’ll say, “This is confusing. Where’s the help?” So you add help. You show it again. Maybe you show it again after that. And suddenly they say, “All this help stuff is just getting in the way. Please remove it.”
The user changed—but the system didn’t.
Users evolve as they use your product. If you only provide a single experience, wherever the user happens to land at that moment feels “right” to them—and everything else feels wrong.
That’s why personalization matters.
So—questions? This is what we’re going to build, and this is the thinking behind how we’re going to build it.