Learn about programming should be like teaching someone how to perform a step-by step task by following rules and methods. Basically, the goal is to get the computer to learn some new behavior and the best way to teach it is by showing or demonstrate example. This is what PBD is all about which impacts both fundamental research and application-oriented studies. PBD allows the user to instruct the computer to 'watch what I do", and the computer
PBD has two core ideas.
Example-based programming or sometimes also known as programming by example (PBE). It works when example data is used during the development of a program. One of the benefits is that concrete examples are easier for people to work with than the abstractions of programming languages.
Programming in the user interface. This type of PBD is common today when the statements in the program are the same as the commands the user would normally give the system. The benefit is user can compose the program from commands that are already familiar, both in terms of their functionality and their form.
Game authoring tool that use PBD: ToonTalk, Stagecast Creator, Logo
Some of the points are taken from the book “Your Wish is My Command: Programming by Example” edited by Henry Lieberman.
1. Ivan Sutherland's Sketchpad (1962) became the example for what interactive computing should be like.
2. Cliff Shaw's JOSS (1963) for being the first real 'end-user' language and the first attempt at a really 'user friendly' interface.
3. Alan Kay's Dynabook (1977) idea was a prime focus for being able to 'read' and 'write' in it would be as universally (computer literacy). He insists of saying that the most important issues regarding end-user programming and PBE are pedagogical and ethical. In addition, it takes a very special value system for children and adults to be able to exist as learning creatures in the presence of an environment that does all for them.
4. Seymour Papert had an idea on how computer programming can be act as learning in end-user computing and some effort should be put in designing a system that have pedagogical aspects.
5. Jerome Bruner supplied the idea of 'middle' mentality as a bridge between infancy and adolescence, which he called the iconic programming.
6. Dave Smith's Pygmalion (1977) was the first example for what iconic programming by example might means and he is the first person who coined the term 'icon'.
7. Ben Shneiderman's Direct Manipulation (1981) term was coined together with the identification of its foundations and components.