I'm about buy a new laptop for my wife, and it has me thinking about how to keep computers for non-technical folks virus free.

The best method I can think of is to have a virtual machine running on her machine. She can keep her important things on the core operating system (eg. financial stuff, other core software), and do riskier stuff on the virtual machine (eg. email, web surfing). If the virtual machine gets infected, no big deal, blow it away and start a clean image. The virtual machine should operate like parallels: apps running on it should appear as regular windows within the host system so it's seamless for the user.

The biggest source of viruses on my home computer has been visitors - somehow whenever a niece visits she ends up installing her favorite software, and leaves the computer with either a virus or a trojan of some sort. Visitors would get their own virtual images.

Should be fairly straight forward to do - Virtual PC already works well, and creating a small base Windows image should be quite simple. The concepts are quite complex for end-users, so it'll take some cleverness to make it understandable. However, Vista's permission business is already quite a hassle (I turned it off the second day I was on Vista), and this will probably be easier to understand.