The other major sort of user interface used with Unix and related systems is the text user interface, characterized by libraries like ncurses , slang, and such.
This a a free software emulation of curses in System V Release 4.0, and more. It uses Terminfo format, supports pads and color and multiple highlights and forms characters and function-key mapping, and has all the other SYSV-curses enhancements over BSD Curses.
Many, many, many console-oriented applications use ncurses.
The S-Lang library includes "terminal control," and is more compact than ncurses.
As a newer design with no mandate for backwards compatibility, it is fairly likely to be found easier to program with than ncurses . It is decidedly more portable to OSes that do not resemble Unix; it was used to port the news reader SLRN to Windows and OS/2.
Adds readline functionality to any line-oriented Unix package.
In the Beginning was the Command Line
Neal Stephenson essay on Complexity of User Interfaces, GUIs versus CLIs
An essay on the difficulties of producing good user interfaces for free software. It responds to the preceding discussion...
What User Friendly Really Means
A polemic by a FreeBSD fan on the nature of "user friendliness."
Why can't free software GUIs be empowering instead of limiting?