are listed a number of creativity techniques to help with creative thinking. Like most tools these creativity techniques all have their good and bad points.
THESIS submitted by Antony ROBERT to the Faculty of Science of the University of Fribourg (Switzerland) in conformity with the requirements for the degree of Doctor scientiarum informaticarum
How to create applications that look right, behave properly, and fit into the GNOME user interface as a whole, covers specific advice on making effective use of interface elements, and the philosophy and general design principles behind GNOME interface.
Guy Steele's keynote at the 1998 ACM OOPSLA conference on "Growing a Language" (mostly about JAVA) discusses the importance of and issues associated with designing a programming language that can be grown by its users.