Ayn Rand: Atlas Shrugged
The astounding story of a man who said that he would stop the motor of the world---and did. Tremendous in scope, breathtaking in its suspense, it is a mystery story, not about the murder of a man's body, but about the murder---and rebirth---of man's spirit.
Steven Johnson: Emergence.
The connected lives of ants, brains, cities and software.
Scott A. Shane: Finding Fertile Ground
Identifying Extraordinary Opportunities for New Ventures
Antony Flew: How to Think Straight
An Introduction to Critical Reasoning
Murray N. Rothbard: Man, Economy, and State with Power and Market (Scholars Edition)
William Poundstone: Prisoner's Dilemma
John von Neumann, game theory, and the puzzle of the bomb.
Michael A. Cusumano: The Business of Software.
Makes for in-depth, very informative tech start-up reading about the software industry.
David Deutsch: The Fabric of Reality
A startingly integrated, rational and optimistic world view that combines four strands: quantum physics and the theories of knowledge, computation and evolution.
Ayn Rand: The Fountainhead
The story of an intransigent young architect, his violent battle against conventional standards, and his explosive love affair with a woman who struggles to defeat him.
The user interface of the new product that I am currently working on will be almost completely non-modal. This is of course only a minor feature, a goodie, rather than its unique value proposition. ;)
In fact, this has evolved by accident rather than by design. In the process of designing the software (an activity that is not separate from development in my case) quite a few instances already occurred, and continue to occur, where by conventional wisdom I would just pop up a message box, a confirmation dialog, or design a small dialog window for details of the current user task.
Message boxes and dialogs break the user flow and take away the system focus (annoying when you scroll through a list or type text), and so I (and many users) despise them.
Are you sure you want to...?
For confirmations where I really want the user to think twice (very rare, I usually tend to trust the user's decision if he already took the trouble to click a button...), drop-down menus very nicely replace yes/no confirmation message boxes:
Information bars
I implemented flashing information bars (as can be found in the current generation of Internet Explorer and Mozilla Firefox web browsers) which pop up at the bottom of the application window for a couple of other events that would typically produce a message box or dialog:
Wizards
More complex dialogs (such as Options) and wizards are completely integrated into the document window management of the application and are thus non-modal, too:
Standard dialogs
I have no plans to waste time replacing standard dialogs such as Open File, Save File, Print, Page Setup or Print Preview at this point. There would be a very real risk that usability might suffer unduly (people already know how to operate these dialogs) and my intention is not to be religious about non-modal user interfaces, but to avoid breaking the user flow or stealing the focus. The product is meant as a productivity booster for a certain type of task, it is targeting power users, so the main purpose of these experiments is for the software to get out of the way.