End-user programming: Difference between revisions

The educational technology and digital learning wiki
Jump to navigation Jump to search
Line 2: Line 2:
== Definition ==
== Definition ==


* {{quotation | Not all programs are written by professional computer programmers. "End users" with the right tools automate laboratories and corporate data access, model fusion reactors and animate Web pages.}} [End user programming] {{quotation | covers the tools, techniques, and theory of people who exploit computer automation for their purposes without becoming professional programmers}} ([http://www.cs.uml.edu/~hgoodell/EndUser/ End-User Programming], retrieved 12:47, 5 September 2006 (MEST))
* {{quotation | Not all programs are written by professional computer programmers. "End users" with the right tools automate laboratories and corporate data access, model fusion reactors and animate Web pages.}} [End user programming] {{quotation | covers the tools, techniques, and theory of people who exploit computer automation for their purposes without becoming professional programmers}} ([http://www.cs.uml.edu/~hgoodell/EndUser/ End-User Programming], retrieved 13:05, 5 September 2006 (MEST))


* {{quotation | There has been considerable work in empowering end users to be able to write their own programs, and as a result, users are indeed doing so. In fact, the number of end-user programmers in the United States is expected to reach 55 million by 2005, as compared to only 2.75 million professional programmers. The "programming" systems used by these end users include spreadsheet systems, web authoring tools, and graphical languages for demonstrating the desired behavior of educational simulations. Using such systems, end users create software, in forms such as educational simulations,}} ([http://eusesconsortium.org/about.php About EUSES], retrieved 12:47, 5 September 2006 (MEST)). spreadsheets, and dynamic e-business web applications.
* {{quotation | There has been considerable work in empowering end users to be able to write their own programs, and as a result, users are indeed doing so. In fact, the number of end-user programmers in the United States is expected to reach 55 million by 2005, as compared to only 2.75 million professional programmers. The "programming" systems used by these end users include spreadsheet systems, web authoring tools, and graphical languages for demonstrating the desired behavior of educational simulations. Using such systems, end users create software, in forms such as educational simulations,}} ([http://eusesconsortium.org/about.php About EUSES], retrieved 13:05, 5 September 2006 (MEST)). spreadsheets, and dynamic e-business web applications.


== Methods and examples ==
== Methods and examples ==
Line 37: Line 37:
In particular, systems like:
In particular, systems like:
* [[AgentSheets]]
* [[AgentSheets]]
* [[E-Slate]]
Some of these can be run over the Internet (e.g. they compile in Javacode)
Some of these can be run over the Internet (e.g. they compile in Javacode)


Line 53: Line 55:
* [http://eusesconsortium.org/ EUSES] Consortium is a collaboration by researchers at Oregon State University, Carnegie Mellon University, Drexel University, Penn State University, University of Nebraska, Cambridge University, and IBM whose goal is to develop and investigate end-user software engineering technologies for enabling End Users to Shape Effective Software. (Includes good resources)
* [http://eusesconsortium.org/ EUSES] Consortium is a collaboration by researchers at Oregon State University, Carnegie Mellon University, Drexel University, Penn State University, University of Nebraska, Cambridge University, and IBM whose goal is to develop and investigate end-user software engineering technologies for enabling End Users to Shape Effective Software. (Includes good resources)
* [http://www.cs.cmu.edu/afs/cs.cmu.edu/user/bam/www/toolnames.htmlUser Interface Software Tools] (last update 1997)
* [http://www.cs.cmu.edu/afs/cs.cmu.edu/user/bam/www/toolnames.htmlUser Interface Software Tools] (last update 1997)
== References ==
* J. Roschelle, M. Koutlis, A. Reppening, et al, 1999: "Developing Educational Software Components", IEEE Computer, September 1999 Special Issue on Web based
learning and collaboration pp 2-10. [http://e-slate.cti.gr/Resources/IEEEComputerArticle.pdf PDF]




[[Category: Technologies]]
[[Category: Technologies]]

Revision as of 13:05, 5 September 2006

Draft

Definition

  • “Not all programs are written by professional computer programmers. "End users" with the right tools automate laboratories and corporate data access, model fusion reactors and animate Web pages.” [End user programming] “covers the tools, techniques, and theory of people who exploit computer automation for their purposes without becoming professional programmers” (End-User Programming, retrieved 13:05, 5 September 2006 (MEST))
  • “There has been considerable work in empowering end users to be able to write their own programs, and as a result, users are indeed doing so. In fact, the number of end-user programmers in the United States is expected to reach 55 million by 2005, as compared to only 2.75 million professional programmers. The "programming" systems used by these end users include spreadsheet systems, web authoring tools, and graphical languages for demonstrating the desired behavior of educational simulations. Using such systems, end users create software, in forms such as educational simulations,” (About EUSES, retrieved 13:05, 5 September 2006 (MEST)). spreadsheets, and dynamic e-business web applications.

Methods and examples

Application-specific Languages
  • E.g. scripting languages like JavaScript used to build interactive web pages
Programming by Example PBE
  • Also known as Programming By Demonstration PBD)
  • a technique for teaching the computer new behavior by demonstrating actions on concrete examples. The system records user actions and generalizes a program that can be used in new examples)
  • E.g. keyboard macros in an editor
Visual Programming
Natural Programming
  • general principles, methods, and programming language and environment designs that will significantly reduce the amount of learning and effort needed to write programs for people who are not professional programmers.
  • E.g. programming microworlds

End-user programming in educational technology

Interactive web pages authoring environments
  • E.g. tools like Dreamweaver
  • E.g. scripting languages like JavaScript
Interactive multimedia toolkits
  • See [Multimedia authoring system]]s

Some of these can be run over the Internet (e.g. through special plugins).

Toolkits for building or adapting microworlds and simulations

In particular, systems like:

Some of these can be run over the Internet (e.g. they compile in Javacode)

Microworlds to learn programming
Server-side scripting languages
  • E.g. PhP, ASP

Links

References

  • J. Roschelle, M. Koutlis, A. Reppening, et al, 1999: "Developing Educational Software Components", IEEE Computer, September 1999 Special Issue on Web based

learning and collaboration pp 2-10. PDF