Difference Between Run and Execute in Technical Documents

Technical writing is about getting the small details right.

The difference between the almost right word and the right word is the “difference between the lightning-bug and the lightning.” Mark Twain

So, when writing a user guide, should you say, Run or Execute?

From one angle, it doesn’t seem to matter. Everyone knows what you mean, right?

Well, maybe.

What’s important are:

  • Readership – who is reading the document?
  • Context – where are you using the verb or phrase?
  • Consistency – are you using the phrase or verbs consistently in other documents?
  • Run and Execute are neither good nor bad.

It’s knowing when to use them that matters.

So, when do you use Execute instead of Run.

Run v Execute as Nouns and Verbs

First, nouns and verbs…

As a noun:

An executable is a file with an .exe extension. For home users (i.e. non-techies, your Mom, your Dad), use program file instead.

Try to use executable and .exe as adjectives, not nouns.

Use the article ‘an’ with .exe, for example “an .exe file.”

Good

an executable program

the program.exe file

Not so good

an executable

program.exe

Execute v Run for Target Readers

Again, for home users, avoid using execute except to follow the user interface. Use run instead.

Use run when describing macros and queries.

Good

To run the program, click Execute.

You can pause Disk Defragmenter so you can run other programs.

Not so

Stop Disk Defragmenter to execute other programs.

Exceptions

The exception is when writing technical documents for software developers who seem to prefer to use execute instead of run. Run seems to be used more for reports and batch files.

Run is preferable, however, where it does not cause any loss of meaning.

Examples of where Execute is preferred

Executing in SQL, for example.

Executes a command string or character string within a Transact-SQL batch, or one of the following modules: system stored procedure, user-defined stored procedure, CLR stored procedure, scalar-valued user-defined function, or extended stored procedure. The EXECUTE statement can be used to send pass-through commands to linked servs. Additionally, the context in which a string or command is executed can be explicitly set. Metadata for the result set can be defined by using the WITH RESULT SETS options.

See: http://msdn.microsoft.com/en-us/library/ms188332.aspx

Methods – IUICommandHandler::Execute method

Responds to execute events on Commands bound to the Command handler.

See http://msdn.microsoft.com/en-us/library/windows/desktop/dd371489(v=vs.85).aspx

As an example, you might want to assign all dynamically generated code a very limited set of permissions, such as Execute (which permits the assembly to execute, but severely restricts what that code can do).

When to use Run? During Runtime?

Rachel Appel writes, “Windows 8 is changing how and when applications run, and you’ll want to understand the nuances of the new application lifecycle

All Windows Store apps have four states: not running, running, suspended and terminated. When you launch an app, it runs. Background tasks are lightweight classes that run periodically, under certain restrictions, while the app is technically not running.”

See http://msdn.microsoft.com/en-us/magazine/jj660301.aspx

Run Your App

Run is most always used when describing an app, or something you do with an app. Look at this example:

When Xcode launches your app in debug mode, it immediately starts a debugging session. If you are running an iOS app, Xcode launches it either in iOS Simulator or on an iOS device connected to your Mac. If you are running a Mac app, Xcode launches it directly on your Mac.

https://developer.apple.com/library/ios/documentation/

Example – About deploying and running apps in the emulator

When you run an app for the first time in the emulator, the following events occur:

  • The emulator starts.
  • The emulator loads the operating system.
  • The emulator displays the Start screen. Your app is deployed to the emulator.
  • Your app runs on the emulator.

That help?

Let me know if you have any questions.