Why does the New menu even exist for creating new empty files?

Raymond Chen

What’s the point of having a New menu anyway? “Why would anybody create a new BMP file by right-clicking an empty space in a folder? You still need a BMP editor to put anything meaningful in there. The same is true for a PowerPoint presentation, and an Access database. Although, creating an empty Access database and then opening it will presumably get you the Access program. But if I want to create a new PowerPoint presentation, I will… um… open PowerPoint.”

Sure, maybe that’s what you do, but that’s not what everybody does.

Not everybody knows that the way to create a new BMP file is to open this program called Paint that is hidden in the Accessories folder of your Start menu. User research shows that for many users, the way they create a new file is to find an existing file of the same type, copy it, then open the copy and delete everything in it.¹

In fact, in the Xerox Star (the precursor to our modern GUI interfaces), creating a new document is done by copying an existing one.

For people with a document-centric view of the world, programs aren’t really things that you think about. What you really work on are documents.

It’s like making a telephone call in the United States. You don’t think about which telecommunications company serves that number. You just dial the number and let the telephone network figure out which telecommunications company is responsible for that number. You don’t really care which company gets used, as long as you get connected.

As other people noted in the comments, having a New menu is handy because it lets you create the file directly where you want it, saving you the trouble of having to navigate through the Save As dialog just to get back to where you started.

¹ And who among us can say they never created a new class or project by copying an existing one, and then deleting everything inside?

Even Unix follows this pattern for process creation! To create a new process, you clone an existing one (fork) and then delete everything inside it (exec).