What is Alice and what is it good for?

What is Alice? (wordy) What is Alice? (abbreviated)
Although computer programming has existed in its modern form for half a century, it still eludes all but a small fraction of society. While programming is an inherently difficult activity, there are currently many barriers, both mechanical and sociological, that prevent large portions of the population from learning to program a computer. Learning to program a computer is hard.
Alice address both the mechanical and sociological barriers that currently prevent many students from successfully learning to program a computer. Alice addresses the mechanical barriers to programming by making it much easier for students to create programs. Rather than having to correctly type commands according to obscure rules of syntax, students drag-and-drop words in a direct manipulation interface. This user interface ensures that programs are always well-formed. In addition, Alice reifies object-based programming by providing animated, on-screen 3D virtual objects. Alice makes learning to program easier. And it's fun.
Sociological barriers are far more complex.  Alice addresses the specific needs of the subpopulation of middle school girls. By supporting storytelling, an intrinsically motivating activity for middle school girls, Alice will make programming a means to an exciting end. Alice makes programming more accessible to girls as well as boys.