Proposal to NSF - Granted on August 31st 2006 Steps Toward The Reinvention of Programming A Compact And Practical Model of Personal Computing As A Self-Exploratorium

2006 
Intellectual Merits: A large number of the most important ideas and intellectual contributions of this system are new (or are non-mainstream ideas from the past that will appear new) disposed in powerful and often novel ways. Those we find particularly interesting are: how the bootstrapping is done, a “universal objectapproach to end-user facilities, alternatives to “OS”, “apps”, “web”, etc., use of roles instead of inheritance, symmetric messaging and events, invertible processes, labeled histories, distributed objects, protection, separation of meanings from optimizations, coherence and persistence of meanings, instrumentation for many kinds of self-disclosure and explanation, new ways to program for end-users and adepts, etc. Broader Impacts: Most early learning of programming is done in a non-scalable way, somewhat equivalent to banging together a doghouse with nails and planks. What is learned doesn’t scale well by a factor of 5, let alone factors of 100+. Even more critical is that the deeper mathematics-like nature of the most powerful ideas in computing are poorly described and learned via papers: even if they are read, this is a difficult form for learning and understanding. We think that making a well designed system that is also instrumented to be learned, understood and changed could have a large positive impact on many areas of computing. It would constitute an example, and a kind of “the system is the curriculum” for learning many important powerful ideas, especially for teenagers, university students, and in the 3 rd world, where there is a pool of literally billions of potential computer users and authors, who could make great use of a simpler stronger approach to personal computing and explanation. Outline of the Proposal: 1. We start by giving an abstract of what we mean by “a whole personal computing system”. 2. Then we show suggestive examples of some of the design approaches we expect to take. 3. Some of the technical details and powerful principles will be discussed 4. Then we outline how we plan to go about making the system over a period of several years 5. We end with discussions of collegial relationships, education, dissemination, etc.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    82
    References
    13
    Citations
    NaN
    KQI
    []