History of End User Programming: PeterHale

<http://www.cems.uwe.ac.uk/amrc/seeds/PeterHale/EndUserHistory.htm>

On this page a summary is given of end user computing technologies from the 1950s to the present day that have influenced work on enabling end user programming. This begins with the early interactive computing environments that put ordinary users rather than specialists in the 'driving seat' of computer software. These were the forerunners of PC (personal) computers that gave users the opportunity to use computers for business, education, and at home. This history examines how each technology has assisted in moving towards a goal of making it possible for users to generate their own content.

Post War

In 1954 a team at IBM lead by John Backus began working on the first high level programming language, as a better way of programming. It was called Formula Translator - FORTRAN [14][15]. This was the first language that was anything approaching high level. It has been described as a cross between pidgin English and algebra. It revolutionized programming, at a time when programmers worked in binary, setting up, or assembly languages. It was designed to be easy for scientists and engineers to learn so that they could readily program their own problems.

1960s

In the 1960s Dartmouth BASIC programming language [7] was designed and implemented at Dartmouth College by John Kemeny and Thomas Kurtz. Over time BASIC became a popular language for home users, and business use, it introduced many people to programming as a hobby or career. Recently, many variations of BASIC have appeared as programming, or macro, languages within applications. For example, Microsoft Word and Excel both come with a version of BASIC with which users can write programs to customize and automate these applications. Most versions of BASIC now include proprietary extensions, Microsoft's Visual Basic adds object-based interaction to the standard BASIC.

Many of the modern concepts of computer graphics, dynamic objects and Object-Oriented programming were prototyped by Ivan Sutherland in 1963 in Sketchpad [17][18]. Sketchpad was the first program ever to utilize a complete graphical user interface. It helped change the way people interact with computers. Sketchpad is considered to be the ancestor of modern computer-aided drafting (design) (CAD) programs as well as a major breakthrough in the development of computer graphics in general. Ivan Sutherland demonstrated with it that computer graphics could be utilized for both artistic and technical purposes in addition to showing a novel method of human-computer interaction.

In the mid 1960s Seymour Papert, a mathematician who had been working with Piaget in Geneva, came to the United States where he co-founded the MIT Artificial Intelligence Laboratory with Marvin Minsky. Papert worked with the team from Bolt, Beranek and Newman, led by Wallace Feurzeig that created the first version of Logo [35] in 1967 Seymour Papert - Logo. Logo is often used for teaching, and is an easier to use and understand dialect of Lisp.

In the late sixties Alan Kay [2][3][22] used the term 'personal computer' and created a concept prototype, the FLEX Machine, he also envisaged a 'Dynabook' machine, the sketches for this look very similar to the laptop computers of recent years - Alan Kay. Alan Kay and Seymour Papert envisioned in the 1960's the computer's role as a tool for the mind an 'idea processor'. They have worked at bringing computers into this role for adults and children through the Logo language and environment by Papert and the open source Smalltalk [10] language and environment, by Kay.

The Simula language [38] was developed by Ole-Johan Dahl and Kristen Nygaard and this included object-oriented concepts. Simula can therefore be considered the first object-oriented programming language, and a predecessor to Smalltalk, C++, Java, C#, and other object-oriented languages. Simula was designed for performing simulations, and the needs of that domain provided the framework for many of the features of object-oriented languages. Simula included objects, classes, subclasses, virtual methods, coroutines, garbage collection, and discrete event simulation.

Douglas Engelbert worked on a project to augment the human intellect, as part of the Augment [8] project he demonstrated Hypertext and video conferencing. He is best known as the groundbreaking engineer who invented the mouse, windows, e-mail, and the word processor. Engelbart led one of the most important projects funded by ARPA (Advanced Research Projects Agency) in the 1960s: a networked environment designed to support collaborative interaction between people using computers. It was named the NLS (oNLine System). This prototype, developed at the Stanford Research Institute, and presented in 1968 at the Joint Computer Conference in San Francisco, influenced the development of the first personal computer and the graphical user interface at Xerox PARC in the early 1970s.

1970s

Alan Kay joined the Xerox Palo Alto Research Center (PARC) [19][24] California in 1971. Throughout the seventies the group at PARC led by Dr. Kay developed an integrated programming language and programming environment called Smalltalk [10]. Smalltalk was an early pioneer of object-oriented programming influenced by the first object-oriented programming language Simula. Alan Kay designed the system, which Dan Ingalls implemented. Throughout the seventies the group developed Smalltalk. Smalltalk was one of the first systems to pioneer the WIMP (Windows, Icons, Menus and Pointers) interface. Squeak and Croquet have developed from the early work in Smalltalk, and provided a tool for end user programming, collaboration, visualisation, and simulation. Open source and commercial Smalltalk programming environments have been developed, and it is also used as a way of enabling constructivist learning and object-oriented programming. In the early seventies the Alto personal computer was created at PARC. The Alto eventually featured the world's first What-You-See-Is-What-You-Get (WYSIWYG) editor, a commercial mouse for input, a graphical user interface (GUI), and bit-mapped display, offered menus and icons, and linked to a local area network. The Alto provided the foundation for Xerox's STAR 8010 Information System.

The development of the Altair computer in 1975, and the Apple II helped create the personal computer revolution of the late seventies, and eighties. There was still a need to find a common use for a personal computer that would increase the demand for it. In 1978, Harvard Business School student, Daniel Bricklin, came up with the idea for an interactive visible calculator. Bricklin and Bob Frankston then co-invented the software program VisiCalc [1][34]. VisiCalc was a spreadsheet, and the first 'killer' application for personal computers as this application provided a justification for using personal computers as a productive tool.

In the mid 1970s Smith [29][30] introduced the technique of Programming by Demonstration [4][27][29][30][31] with a program called Pygmalion. This demonstrated the need to describe algorithms through concrete examples rather than abstractly.

1980s

During the 1980s ownership of personal computers became increasingly popular and many home users programmed using BASIC. There were many varieties of personal computers sold for home use and a UK BBC computer literacy project. In the early eighties IBM developed the first personal computer built from off the shelf parts (called open architecture) [19]. This included a command line operating system written by Microsoft and the Microsoft BASIC programming language.

Apple developed the GUI further for the Lisa [5] that later became the Macintosh (Mac). The IBM style PC became most popular for business applications, while the Apple Mac was often used for Desktop publishing.

While at CERN, Tim Berners-Lee [32] proposed a project based on the concept of hypertext, to facilitate sharing and updating information among researchers. He then saw an opportunity to join hypertext with the Internet.

1990s

End User Programming research has continued to the present day. Research has continued in techniques of Visual Programming [9] e.g. Alice [4], Programming by Demonstration [4][27][29][30][31], programming with automated assistance [26], and Natural Language Programming [37]. Squeak and Croquet [6] have developed from the early work in Smalltalk, and provided a tool for end user programming, collaboration, visualisation, and simulation.

Tim Berners-Lee developed HyperText Markup Language (HTML), and has been involved with the World Wide Web Consortium (W3C) [39] in developing standards based languages for the Web. This has encouraged the growth of the 'Semantic Web' [13] which allowed both humans and computers to search and interact with pages, and so encouraged the development of interactive web pages and communities.

2000s

Henry Lieberman has been involved with End-User Programming Research since the 1960s. He is author of 'Your Wish is My Command: Giving Users the Power to Instruct their Software'. The subject of this is giving users the power to create and modify their own programs. Programming by example (PBE) (also called programming by demonstration) is a technique in which a software agent records a user's behavior in an interactive graphical interface, then automatically writes a program that will perform that behavior for the user.

Recent, present and future research can enable the use of semantic web technologies, (developed from HTML by Tim Berners-Lee [32] and others), to enable End User Programming. This fusion of research and technologies is illustrated by Henry Lieberman's home page [16] which has explanations of both areas of research. Examples of this fusion include Protégé [28], Jena [21], TopBraid Composer [33], and OpenCyc [23]. Information about these technologies is available in my semantic web page and semantic web history page.

A related development is that of web 2.0. Visual development environments based on AJAX (Asynchronous JavaScript And XML) [36] aim to reproduce on the web, the functionality provided by office tools such as Excel (which is often used as an End User Programming Environment). Information about Ajax and Web 2.0 is available in my Ajax/web2.0 page here.

The semantic web and web 2.0 techniques are being combined with programming by example research, and visual programming developed from the research of Ivan Sutherland, Seymour Papert, Alan Kay, and many others. This should enable users to experience a much more meaningful interaction with computers.

End User Programming research is undertaken by the EUSES (End Users Shaping Effective Software) research collaboration mainly in the USA http://eusesconsortium.org/ [12], and Network of Excellence on End User Development in Europe http://giove.cnuce.cnr.it/eud-net.htm [11], and by the Institute for End User Programming http://www.ieuc.org/home.html [20]. Fabio Paternò has investigated this subject as part of the End User Development in Europe network Paternò [25].

Conclusions from Research Timeline

Two important points can be made from this research history :-

Henry Lieberman (2007) of MIT Media Laboratory asks in End-User Software Engineering Position Paper "Why is it so much harder to program a computer than simply to use a computer application? I can't think of any good reason why this is so; we just happen to have a tradition of arcane programming languages and mystically complex software development techniques. We can do much better." He argues that researchers should use program transformation, and visualisation to make the end-user programming process as automatic as possible. In order that people can become End-User Software Engineers without their even realizing it.

De Souza (2007) in End-user (further) development: A case for negotiated semiotic engineering argues that the goal of human-computer interaction (HCI) will evolve from making systems easy to use to making systems that are easy to develop. Lieberman also argues that HCI experts have concentrated on ease of use and should examine ease of programming. This needs to involve interdisciplinary research to combine different research approaches. In Interdisciplinary Design Research for End-User Software Engineering Blackwell (2007) argues the need for interdisciplinary research on the end-user programming problem to identify techniques within software engineering that can assist with this problem.

References

End-User Software Engineering - Dagstuhl Seminar - Summary - http://www.dagstuhl.de/en/program/calendar/semhp/?semnr=2007081 - PDF Abstracts and links to papers - http://eusesconsortium.org/docs/dagstuhl_2007.pdf - Margaret M. Burnett, Gregor Engels, Brad A. Myers and Gregg Rothermel - From 18.01.07 to 23.02.07, the Dagstuhl Seminar 07081 End-User Software Engineering was held in the International Conference and Research Center (IBFI), Schloss Dagstuhl. During the seminar, several participants presented their current research, and ongoing work and open problems were discussed.

Other End User Programming Information

A trend in recent times has been towards partnerships that can further end user programming by means of collaboration and sharing of ideas. These collaborations include the End Users Shaping Effective Software (EUSES) (2006) research collaboration mainly in the USA, and Network of Excellence on End User Development in Europe (EUD.Net) (2006), and the Institute for End User Computing, (IEUC) (2007). Fabio Paternò has investigated this subject as part of the End User Development in Europe network (Paternò, 2005). This kind of collaborative research is important because end user programming requires interdisciplinary research that includes co-ordinated research of Semantic Web, Visualization, Human Computer Interaction, and Collaboration. Much of user-driven modelling will require some sort of sharing of information in an understandable way to others. The multi-levelled translation process between the user's view of the information and the representation required by computers requires a range of skills and knowledge.

Paternò, F. (2005) Model-based tools for pervasive usability. Interacting with Computers 17 (3), 291-315.

End User Programming is defined here.

Explanations of my End User Research is available as a post on my home page, and Blog.

End User Programming - http://www.cems.uwe.ac.uk/amrc/seeds/EndUserProgramming.htm.

End User Programming Using the Semantic Web - http://www.cems.uwe.ac.uk/~phale/#EndUserProgrammingusingtheSemanticWeb.

Language and Tool Mapping - Language and Tool Mapping.

Numbers of End User Programmers

UWE HCI Group - HCI Group - Human Computer Interaction.

This graph shows that users are by far the biggest group many of these develop their own programs, there are two intermediate groups, and a small group of professional programmers.
Graph of US workers who develop programs, much more users 90 million compared to professional developers 3 million

Based on data from US bureau of Labour Statistics. An XML (eXtensible Markup Language) based representation of the chart above is - here.

This information is sourced from -

http://www.cs.cmu.edu/~bam/papers/EUPchi2006overviewColor.pdf - Myers et al.

Scaffidi, C., Shaw, M., Myers, B. (2005). Estimating the Numbers of End Users and End User Programmers, IEEE Symposium on Visual Languages and Human-Centric Computing, (VL/HCC'05): 207-214 Dallas, Texas.

http://www.cs.cmu.edu/~cscaffid/papers/eu_20050923_vlhcc.pdf - Scaffidi et al.

Myers, B., Ko, A., Burnett M. (2006). Invited Research Overview: End-User Programming Extended Abstracts, CHI'2006: pp. 75-80, Montreal, Canada.

http://www.cs.cmu.edu/~natprog/EUPchi2006overview.pdf - Myers et al.


References

1. A Brief History of Spreadsheets - Decision Support System Resources - by D. J. Power, Editor, DSSResources.COM.

2. Alan Kay, Allen Cypher - Watch What I Do: - Programming by Demonstration.

3. Alan Kay - ETech 2003 Presentation, ETech O'Reilly Emerging Technology Conference, Westin Santa Clara April 22-25 2003 - http://www.lisarein.com/alankay/tour.html - Lisa Rein's Tour Of Alan Kay's Etech 2003 Presentation.

4. Alice v2.0 - http://www.alice.org/ - Learn to Program Interactive 3D Graphics.

5. Apple Lisa - The First Affordable GUI - Lisa 1 Jan-83 Jan-84, Lisa 2 Jan-84 Apr-85.

6. Croquet - http://www.opencroquet.org/ - a new open source software platform for creating deeply collaborative multi-user online applications.

7. Dartmouth BASIC - http://en.wikipedia.org/wiki/Dartmouth_BASIC - Wikipedia.

8. The Demo - http://sloan.stanford.edu/mousesite/1968Demo.html - Stanford University.

9. Dmoz Open Directory Project - Visual Languages - Programming Languages Reference - Visual Languages.

10. The Early History Of Smalltalk by Alan Kay - 1967-69--The FLEX Machine, a first attempt at an OOP-based personal computer - Alan Kay - Smalltalk.org.

11. End User Development in Europe (EUD-Net) - http://giove.cnuce.cnr.it/eud-net.htm.

12. End Users Shaping Effective Software (EUSES) - http://eusesconsortium.org/.

13. Fifteen Years of the Web - Internet Timeline - BBC Technology.

14. FORTRAN - Mind your language - http://itnow.oxfordjournals.org/cgi/content/abstract/48/6/16 - Peter Crouch - Chairman of the BCS Fortran Specialist Group, looks at 50 years of the programming language.

15. FORTRAN - History of FORTRAN and FORTRAN II - http://community.computerhistory.org/scc/projects/FORTRAN/ - Paul McJones, Computer History Museum.

16. Henry Lieberman - http://web.media.mit.edu/~lieber/ - Research Scientist - MIT Media Laboratory.

17. History of HCI - http://www.idemployee.id.tue.nl/g.w.m.rauterberg/presentations/HCI-history - Key systems, people and ideas - Presentation by Matthias Rauterberg.

18. History of HCI - Sketchpad (1963) - http://www.idemployee.id.tue.nl/g.w.m.rauterberg/presentations/HCI-history/sld020.htm - Ivan Sutherland - MIT Lab - Presentation by Matthias Rauterberg.

19. Inventors of the Modern Computer - The History of the IBM PC - International Business Machines.

20. Institute for End User Computing (IEUC) - http://www.ieuc.org/home.html.

21. Jena - First Jena User Conference - Proceedings.

22. Kyoto Prize Laureates 2004 - 2004 Kyoto Prize Laureates - Dr. Alan Curtis Kay (U.S.A., b. 1940) - Computer Scientist, President, Viewpoints Research Institute.

23. OpenCyc - OpenCyc.org - General knowledge base and commonsense reasoning engine.

24. Palo Alto Research Center (PARC) - History - http://www.parc.xerox.com/about/history/default.html - PARC History.

25. Paternò, F. (2005) Model-based tools for pervasive usability. Interacting with Computers 17 (3), 291-315.

26. The Programmer's Apprentice - http://portal.acm.org/citation.cfm?id=87912&dl=ACM&coll=GUIDE - The ACM Digital Library - ISBN 0-201-52425-2.

27. Programming by Example - http://web.media.mit.edu/~lieber/PBE/index.html - Massachusetts Institute of Technology.

28. Protégé - Protégé Home - Ontology Development Environment.

29. Pygmalion: A Computer Program to Model and Stimulate Creative Thought. Stuttgart, Basel - University of Calgary Summary - Smith, D. C. 1977.

30. Smith, D. C. (1977) A Computer Program to Model and Stimulate Creative Thought. Basel: Birkhauser. 187p.

31. Teaching and Learning Programming with a Programming by Example System - International Symposium on End User Development - Schloss Birlinghoven, Sankt Augustin (Bonn), Germany - October 6-7, 2003 - Nicolas Guibert, Patrick Girard.

32. Tim Berners-Lee - Tim Berners-Lee.

33. TopBraid - Semantic Modeling Toolset - Visual modeling environment.

34. VisiCalc: Information from its creators, Dan Bricklin and Bob Frankston - http://www.bricklin.com/visicalc.htm - Dan Bricklin.

35. What is Logo? - http://el.media.mit.edu/Logo-foundation/logo/index.html - MIT Logo Foundation, What is Logo.

36. Wikipedia - http://en.wikipedia.org/wiki/Ajax_%28programming%29 - Ajax (programming).

37. Wikipedia - http://en.wikipedia.org/wiki/Natural_language_and_computation - Natural language processing.

38. Wikipedia - http://en.wikipedia.org/wiki/Simula - Simula.

39. World Wide Web Consortium (W3C) - http://www.w3.org - Leading the Web to Its Full Potential....

Other Links and articles

"A History of Haskell: being lazy with class", Paul Hudak (Yale University), John Hughes (Chalmers University), Simon Peyton Jones (Microsoft Research), Philip Wadler (Edinburgh University), http://research.microsoft.com/~simonpj/papers/history-of-haskell/index.htm - The Third ACM SIGPLAN History of Programming Languages Conference (HOPL-III) San Diego, California, June 9-10, 2007.

Alan Blackwell - University of Cambridge - Human Computer Interaction - End User Programming.

An Introduction to Haskell, Part 1: Why Haskell - http://www.onlamp.com/pub/a/onlamp/2007/05/21/an-introduction-to-haskell---part-1-why-haskell.html - Adam Turoff - 24th May 2007.

BBC Magazine - http://news.bbc.co.uk/1/hi/magazine/6766931.stm - It was the decade of the Gulf War, Britpop, New Labour and the death of Princess Diana. - But for many of you, it is the birth of the worldwide web, the internet and the dotcom boom that you remember most. - When the young British scientist, Tim Berners-Lee, invented the worldwide web, he revolutionised the way we live. - In other ways, technology was leaping ahead. Mobile phones became more advanced and gaming became big business. Here is a selection of your comments. - 21 June 2007.

BBC Technology news - Free tool offers 'easy' coding - http://news.bbc.co.uk/1/hi/technology/6647011.stm - A free programming tool that allows anyone to create their own animated stories, video games and interactive artworks has been developed - Jonathan Fildes - 14 May 2007.

Celebrating the creator of Cobol - http://news.bbc.co.uk/1/hi/technology/6168489.stm - BBC News - Mark Ward December 11th 2006.

The Centre for Advanced Learning Technologies - The Centre for Advanced Learning Technologies - studying the impact of new media and technologies on the business environment.

Computer History Museum - Exhibits - Timeline.

Computer Languages History - http://www.levenez.com/lang/ - Computer Languages Timeline - Éric Lévénez. - O'Reilly Poster based on Éric Lévénez diagram.

Constructivist Computer Assisted Learning: Theory and Techniques - http://www.ascilite.org.au/conferences/adelaide96/papers/21.html - Barney Dalgarno - Information Services Division - University of Canberra - The changes that have occurred in accepted approaches to teaching and learning in recent years have been underpinned by shifts in psychological and pedagogical theory, culminating in moves towards a constructivist view of learning.

Dmoz Open Directory Project - Programming Languages - Programming Languages Reference - Alphabetic List of Programming Languages - Definitions and Links.

DSpace - http://www.dspace.org/ - The DSpace digital repository system captures, stores, indexes, preserves, and distributes digital research material.

Euses End Users Shaping Effective Software research collaboration - Welcome to EUSES - Research Collaboration.

Euses Presentation - End User Programming - Invited Research Overview - Brad Myers, Andrew Co, Margaret Burnett - Carnegie Mellon, Oregon State Universities.

Generative Programming - Generative Programming - Methods, Tools, and Applications - Krzysztof Czarnecki and Ulrich W. Eisenecker - Addison-Wesley, June 2000.

Hackety Hack - http://hacketyhack.net/ - In this century, you may have dozens of programming languages lurking on your machine. But how to use them?? A fundamental secret! Well, no more. We cannot stand for that. Hackety Hack will not stand to have you in the dark!!

History of Computing - http://www.ieuc.org/end-user-computing/references/notes/HistoryofComputing.html - One of the best works in this regard can be found in the volumes devoted to The History of Programming Languages. - The Insititute for End User Computing.

History of End User Programming - Article - Peter Hale.

History of Haskell - http://haskell.org/haskellwiki/History_of_Haskell.

How the internet transformed business - BBC Business - By Steve Schifferes Business editor, BBC News website.

How the Spectrum began a revolution - http://news.bbc.co.uk/1/hi/technology/6572711.stm - In April 1982 a small British company, lead by Sir Clive Sinclair, launched the ZX Spectrum computer and sparked a revolution. - 23 April 2007 - BBC News Technology.

How the web went world wide - BBC Technology - Mark Ward Technology Correspondent, BBC News website.

IBM developerWorks Interviews: Rod Smith - http://www-128.ibm.com/developerworks/podcast/dwi/cm-int062806.html - IBM vice president of Emerging Internet Technologies on the business of watching, encouraging, and leveraging new technologies.

IBM QED Wiki - IBM eyes programming for the masses - By Martin LaMonica - CNET News.com.

I think, therefore I Woz - http://news.bbc.co.uk/1/hi/technology/6077374.stm - BBC News - Technology - Steve Wozniak,Apple - 25th October 2006.

In pictures: Commodore computers - http://news.bbc.co.uk/1/hi/in_pictures/6454113.stm - The rise, fall and rise again of gaming icon Commodore - 15 March 2007.

ISTI-CNR, Pisa, Italy - Model-based Tools for Pervasive Usability - Fabio Paternò.

John Backus (1924-2007) - John W. Backus, who built and led the IBM team that created Fortran, the first widely used programming language, which helped to open the door to modern computing, died on 17 March at his home in Ashland, Oregon, USA. He was 82.

Journal of Visual Languages and Computing - Journal Home Page - Elsevier.

Network of Excellence on End User Development - Network of Excellence on End User Development - EUD-Net

Nostalgia for a techno cul-de-sac - http://news.bbc.co.uk/1/hi/magazine/6925963.stm - By Finlo Rohrer BBC News Magazine - Today Amstrad is best-known for its charismatic boss, Sir Alan Sugar, and has been sold to broadcaster BSkyB for £125m. But in the 1980s, it was responsible for home computing milestones.

Oregan State and Houston University - Automatic Generation and Maintenance of Correct Spreadsheets - Martin Erwig, Robin Abraham, Irene Cooperstein, Steve Kollmansberger.

Palo Alto Research Center (PARC) - http://www.parc.com - Palo Alto.

Raskin Center - http://rchi.raskincenter.org/index.php?title=Home - Exploting New Interface Directions.

Science Museum - http://www.sciencemuseum.org.uk/collections/subject_themes/computing.asp - Computing and Information Technology.

Semantic Information Processing - Semantic Information ProcessingMarvin L. Minsky - The MIT Press.

Software Abstractions - Resources and Additional Materials - Book with sample chapters online - Daniel Jackson.

Socratic Arts - http://www.socraticarts.com/ - Online learning services.

Software componentry - http://en.wikipedia.org/wiki/Software_componentry - Wikipedia - Software componentry.

The beauty of software - British Computer Society Turing Lecture March 2007 Grady Booch - Full write up - http://www.bcs.org/server.php?show=ConWebDoc.10367 - This year's Turing Lecture was given by Grady Booch under the title 'The promise, the limits, the beauty of software.' - 13 March 2007

The Dangers of End-User Programming - Portland State University - Warren Harrison.

The Geometer's Sketchpad:Programming by Geometry - http://www.acypher.com/wwid/Chapters/13Sketchpad.html - R. Nicholas Jackiw and William F. Finzer - from Watch What I Do: Programming by Demonstration - edited by Allen Cypher co-edited by Daniel C. Halbert, David Kurlander, Henry Lieberman, David Maulsby, Brad A. Myers, and Alan Turransky.

The History of Computer Programming Languages - http://www.princeton.edu/~ferguson/adw/programming_languages.shtml - Stephen Ferguson - Princeton University Library.

The History of Computing Project - http://www.thocp.net/.

The Institute for End User Computing, Inc. The Chronicles of End User Computing... http://www.ieuc.org/home/chronicles.html as edited on Saturday, January 22, 2005.

The Institute for End User Computing, Inc. The IEUC Homepage - http://www.ieuc.org/home.html - as edited on Wednesday, May 17, 2006.

The Institute for End User Computing - The Market's Failure to Meet End User Needs - http://www.ieuc.org/home/market-failure.html.

The Magic of the 80's - http://www.ieuc.org/end-user-computing/references/notes/themagicofthe80s.html - For a wonderful cultural history of the early days of the PC revolution, see S. Levy, Hackers : heroes of the computer revolution - The Insititute for End User Computing.

The past is the future at Bletchley Park - http://news.bbc.co.uk/1/hi/technology/6895759.stm - Mark Ward - Technology Correspondent, BBC News website - Colossus filled entire rooms at Bletchley Park - It is easy to feel smug about modern life with its home computers, gadgets and fast net access - 12 July 2007.

The Tech Lab: Greg Papadopoulos - http://news.bbc.co.uk/1/hi/technology/6225398.stm - As part of a series inviting some of the world's leading technologists to speculate about the future, Greg Papadopoulos, chief technology officer of Sun Microsystems, calls for technology and design to be married to people's needs. - 21 June 2007.

Twenty five years of the IBM PC - BBC News - Technology.

UK computer history gets new home - http://news.bbc.co.uk/1/hi/technology/6291422.stm - BBC News Technology - Plans are taking shape to set up a museum that celebrates Britain's role in the origins of the digital age. - 11 July 2007.

UK home computer pioneer honoured - http://news.bbc.co.uk/1/hi/technology/6217447.stm - BBC News - British technology pioneer Andrew Hopper becomes a CBE in the New Year Honours list.

Universidad Autónoma de Madrid - Dr José A. Macías - publications - Research - End User Development (EUD).

University of the West of England - UWE Student Project - http://www.cems.uwe.ac.uk/amrc/seeds/Web%20Semantic/Index.html - Investigating and implement the idea of 'ModConsWest' (Modelling and Constructionism with Web based E-Learning Semantic Tools)" - Lee Ediagbonya and Awaab Eltahir.

When Bill met Steve... - http://news.bbc.co.uk/1/hi/technology/6707317.stm - By Peter Bowes BBC News, in San Diego Microsoft co-founder Bill Gates and Apple chief executive Steve Jobs have appeared on stage together for the first time in more than two decades. - 31 May 2007.

Where does the web go from here? - BBC Technology - Bill Thompson.


Useful Publications

End-User Programming Publications - http://www.cems.uwe.ac.uk/amrc/seeds/EndUserProgramming.htm#UsefulPublications.


A Computer Program to Model and Stimulate Creative Thought, Smith, D. C. (1977), Basel: Birkhauser. 187p.

A History of Haskell: being lazy with class, Paul Hudak (Yale University), John Hughes (Chalmers University), Simon Peyton Jones (Microsoft Research), Philip Wadler (Edinburgh University), http://research.microsoft.com/~simonpj/papers/history-of-haskell/index.htm - The Third ACM SIGPLAN History of Programming Languages Conference (HOPL-III) San Diego, California, June 9-10, 2007.

Estimating the Numbers of End Users and End User Programmers, Scaffidi, C., Shaw, M., Myers, B. (2005). IEEE Symposium on Visual Languages and Human-Centric Computing, (VL/HCC'05): 207-214 Dallas, Texas.

Example-based Programming: a pertinent visual approach for learning to program (2004) - University of Poitiers - Nicolas Guibert - Patrick Girard - Laurent Guittet - Proceedings of the working conference on Advanced visual interfaces - Pages: 358 - 361 - ISBN:1-58113-867-9.

History of Programming Languages, Bergin T J, Gibson R G, 1996, Volume 2, ISBN-10: 0-201-89502-1; ISBN-13: 978-0-201-89502-5.

Interaction-Oriented Software Development (2001) Huhns M N, International Journal of Software Engineering and Knowledge Engineering 11 3 259-277.

Model-based tools for pervasive usability, 2005, Paterno Fabio, Interacting with Computers 17, 291-315.

The Programmer's Apprentice, 1990, Rich C, Waters R C, The ACM Digital Library - ISBN:0-201-52425-2.

Watch What I Do: Programming by Demonstration - Cypher, A, 1993, MIT Press, ISBN:0262032139.

http://www.acypher.com/wwid/ - Watch What I Do: Programming by Demonstration - The entire text of this book is included on this web site. Access it through the Table of Contents.

http://www.acypher.com/wwid/FrontMatter/index.html.

Your Wish is My Command: Giving Users the Power to Instruct their Software - http://web.media.mit.edu/~lieber/Your-Wish/ - Henry Lieberman, editor.


End User Conferences past and future

End-User Programming Conferences - http://www.cems.uwe.ac.uk/amrc/seeds/EndUserProgramming.htm#Conferences.


2007 IEEE Symposium on Visual Languages and Human-Centric Computing - http://vlhcc07.eecs.wsu.edu/ - Coeur d'Alène, Idaho, USA - 22-26 September 2007.

20th IEEE/ACM International Conference on Automated Software Engineering - http://ase.cs.uni-essen.de/ase/past/ase2005/ - Long Beach, California, USA, November 7-11, 2005 - papers, demonstrations, tutorials.

BCS 50th Anniversary Dinner and Award Presentation - http://bcs-uc.e2bis.biz/app/Publish/Calendar.php?ev=65 - 19th September 2007 - Toronto - Canada.

BCS @50 - http://www.bcsat50.org/ - Celebrating the British Contribution to Computing in the 50th year of the British Computer Society - July 12th to July 14th 2007 - Bletchley Park and London.

BCS - Eight Significant Events in a 50 Year History of Computing - http://www.kent.bcs.org/events.htm - Tuesday 10th July 2007. - Dr. T. William Olle - Buffet and refreshments from 6.30pm, talk starts at 7pm - Canterbury Christ Church University.

HCI 2007 - http://www.bcs-hci.org.uk/hci2007/ - Happy 21st HCI! - 3-7 September 2007 - at Lancaster University - Our field is constantly changing, with useful and ground breaking research being conducted in such areas as design methodology, tangible user interfaces and collaborative interaction, to name but a few. The desire to improve and innovate, coupled with the drive to keep moving forward and 'explore new frontiers', in human-computer interaction, will be constant throughout this conference and so is reflected in the title 'not as we know it'.

History of Programming Languages Conference (HOPL-III) - http://research.ihost.com/hopl/ - The Third ACM SIGPLAN - History of Programming Languages Conference (HOPL-III) - San Diego, California, June 9-10, 2007 - (co-located with FCRC 2007, June 9-16, 2007) - in cooperation with ACM SIGSOFT.

IEEE Symposium on Visual Languages and Human-Centric Computing - http://www.cmis.brighton.ac.uk/vlhcc/ - 2006 - Brighton, UK.

The Ideal of Program Correctness - BCS, The Computer Journal - Lecture Tony Hoare - Microsoft Research, Cambridge - Wednesday 25th October 2006.

VLC'2007 - International Workshop on Visual Languages and Computing - http://www.ksi.edu/seke/vlc07.html - Hotel Sofitel, San Francisco Bay, 6-8 September 2007 - Organized by Knowledge Systems Institute - Digital Arts and Sciences Lab, UF, and Visual Computing Lab, UT-Dallas.

Conferences - Computing and Aerospace

http://www.cems.uwe.ac.uk/~phale/Events.htm.

My Research

Explanations of my End User Research is available as a post on my home page, and Blog.

End User Programming - http://www.cems.uwe.ac.uk/amrc/seeds/EndUserProgramming.htm.

End User Programming Using the Semantic Web - http://www.cems.uwe.ac.uk/~phale/#EndUserProgrammingusingtheSemanticWeb.

Language and Tool Mapping - Language and Tool Mapping.

Home Pages

SEEDS Page - SEEDS Home Page

Software Engineering Research Group - http://www.cems.uwe.ac.uk/cccs/researchgroup.php?menu=off&group=serg - SERG's mission is to bridge the gap between software engineering research and its application to different disciplines.

Peter Home Page - Peter Hale Home Page