Hacker News new | past | comments | ask | show | jobs | submit login
Magic and Software Design (1993) (asktog.com)
62 points by cstejerean on Feb 17, 2020 | hide | past | favorite | 9 comments



Reminds me of the opening paragraphs from SICP (https://mitpress.mit.edu/sites/default/files/sicp/full-text/...)

"We are about to study the idea of a computational process. Computational processes are abstract beings that inhabit computers. As they evolve, processes manipulate other abstract things called data. The evolution of a process is directed by a pattern of rules called a program. People create programs to direct processes. In effect, we conjure the spirits of the computer with our spells.

A computational process is indeed much like a sorcerer's idea of a spirit. It cannot be seen or touched. It is not composed of matter at all. However, it is very real. It can perform intellectual work. It can answer questions. It can affect the world by disbursing money at a bank or by controlling a robot arm in a factory. The programs we use to conjure processes are like a sorcerer's spells. They are carefully composed from symbolic expressions in arcane and esoteric programming languages that prescribe the tasks we want our processes to perform.

A computational process, in a correctly working computer, executes programs precisely and accurately. Thus, like the sorcerer's apprentice, novice programmers must learn to understand and to anticipate the consequences of their conjuring. Even small errors (usually called bugs or glitches) in programs can have complex and unanticipated consequences.

Fortunately, learning to program is considerably less dangerous than learning sorcery, because the spirits we deal with are conveniently contained in a secure way. Real-world programming, however, requires care, expertise, and wisdom. A small bug in a computer-aided design program, for example, can lead to the catastrophic collapse of an airplane or a dam or the self-destruction of an industrial robot."


> Houdini’s fondness for reading extended to magazines, too: after his famous escape from inside a locked safe behind a screen, which took mere seconds, he spent the next fifteen minutes back stage, idly reading a magazine, after which he dotted himself with water and burst forth, looking properly sweaty and exhausted

TurboTax famously does this. It has a few loading screens where it slowly ‘calculates your best return’. It happens instantly, of course, but they spend about 10 seconds showing you loading bars so you think that whatever it’s doing is difficult.

I’m a big fan of magic, and the main thing to take away from magic is this — none of us perceive ‘reality’. Our minds create a simulation of the world based on very limited and error prone input. And if you can carefully control the sensory input if your spectators, you can control their reality.

The moment of the magic trick is often when the false reality you’ve created collapses — you’ve made them believe that you put a card in the middle of the deck, or that you’ve shuffled it, or that they had a free choice — and then you present them with incontrovertible evidence that they had not. That moment of inconsistency is what causes the perception of magic to happen — their mind moves the card from the center of the deck to the top in an instant in their internal reality, which is the only reality they’ve ever existed in.

So I guess when you’re designing software, don’t just think about how your software works, but also think carefully about the model of reality that your users are building. If you manipulate it carefully, you can seem to perform miracles.

Game designers, btw, I think already understand this — games are full of hacks and cheats that make you think there’s a whole world or a mind behind what’s happening to your character, when it’s often quite simple behind the scenes — magician’s choices in particular are quite popular in games — where you’re presented with seemingly several options which all produce the same outcome.


One of these things is not like the others, one of these things just doesn't belong.

Magic is consumed for entertainment. Applying the same techniques to more serious aspects of life is called "fraud", and the magician is called a "con artist".

What game developers do with their hacks and dirty tricks is building immersion for their make-believe worlds. The player that sits in front of a game does so voluntarily, fully aware that they're just playing, that it's all entertainment. They can lower their defenses, because they know nothing will harm them.

What TurboTax - and other companies adopting similar UX patterns - does is straight up lying to people. Manipulating their perception of reality for their own economic gains. It's a malicious activity, and as such it should be shamed, not commended.


I don’t think you should be deceitful in any meaningful way, but I don’t think that making people wait a few seconds is anything more than showmanship.


There's no reason to do that in a non-entertainment app, unless you want to manipulate users for your own benefit.


That was a quite interesting read; I hadn't heard that analogy before. It's a shame the formatting of the page really makes it difficult to engage with the content.



I have a couple of Tog's books (both are amazing) and used to read asktog for inspiration ... thanks for reminding me that I should be rereading his wisdom!

https://amzn.to/2OZSKoj

https://amzn.to/2UXXGO9


social media is surveillance disguised as a top hat. :)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: