Conversation

In cogsci, Marr suggests 3 levels at which a system (eg vision) can be analyzed: computational (the fundamental problem being solved), algorithmic (how it’s solved, abstractly), and implementation (hardware details). It’s an interesting taxonomy for analyzing tools for thought!
2
4
74
e.g. for memory systems, three kinds of analysis: * computational: the dynamics of human memory * algorithmic: schedules which optimize learning relative to those dynamics * implementation: details of software implementing those schedules All important and intertwined!
1
14
One thing I like about this approach (same motivation for Marr in cogsci): it pushes you to characterize the computational task your system is performing. e.g. if you’re designing creativity support systems, you’ll benefit from insights about what creative problem-solving *is*
1
6
(And perhaps you can use your system to generate those insights—i.e. to understand the constraints and dynamics of human creativity at an abstract, information processing level…)
1
4
I started to say “it’s awfully hard to do good analysis at the implementation level without understanding the computational level,” but that’s only sort of true. People often have intuitive understandings of the computational level that are plenty good enough.
1
6
Like I expect the people making Figma do not have a strong computational conception of the problem they are solving (fun to think about!) but they have intuitions (eg find the “best" arrangement of elements given details of hierarchy…) & that’s enough to make good impl progress.
2
2
9
Interfaces seem like one of those things where simple heuristics are actually more likely to nail the right solution than computational understanding. Do you have any examples of successful interfaces that started from deep "computational" knowledge of the cognitive processes?
1
1
Replying to
I wouldn't have considered PageRank, good call out. My gut reaction was that many of the interfaces designed from a computational understanding are now components/atomic elements of design. The menu bar is a good example of that I think.