Dan Benjamin states:
Interestingly, many people think of Terminal as "an application that lets you type commands." In a way, this is true, but it's useful to think of Terminal as a window into the true operating system itself. In fact, it is the GUI you're used to seeing (windows, mouse, graphics) that is the application, and the white text on a black background that is truly the interface.
Unfortunately, this is a blatant misunderstanding of the nature of Unix-like systems. Even in the bad-old-days of character terminals, even the shells---the command interpreters ("sh", "csh", etc.) that took (take) your command line input and did (do) useful things like listing the contents of a directory, or running a program---were (are) simply programs than ran (run) atop the operating system just like any other program. This was always intentional, and fundamental to the design of UNIX and it's layered, "shell" like structure (hence the reason the command interpreters were [are] called shells).
While it is true, and useful, to recognize that the GUI is simply an application, running on the underlying operating system, it is blatantly false to suppose that the shells are in any way "truly the interface"---they are likewise simply applications, running on the underlying operating system. (Shells are just simpler applications, than the GUI application, that need fewer specialized resources from the OS.)
Just a friendly correction. :-) (I write this publicly, not to chastise Dan, but in the hope of helping educate anyone who reads this article.)