On the cognitive effects of learning computer programming
Mirrors of minds: patterns of experience in educational computing
Can principles of cognition lower the barriers to programming?
Empirical studies of programmers: second workshop
Visual programming
Smalltalk scaffolding: a case study of minimalist instruction
CHI '90 Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
EAGER: programming repetitive tasks by example
CHI '91 Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Report of the “End-User Programming” working group
Languages for developing user interfaces
A small matter of programming: perspectives on end user computing
A small matter of programming: perspectives on end user computing
Watch what I do: programming by demonstration
Watch what I do: programming by demonstration
KidSim: programming agents without a programming language
Communications of the ACM
Learning theory in practice: case studies of learner-centered design
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Getting more out of programming-by-demonstration
Proceedings of the SIGCHI conference on Human Factors in Computing Systems
DENIM: finding a tighter fit between tools and practice for Web site design
Proceedings of the SIGCHI conference on Human Factors in Computing Systems
The Cornell program synthesizer: a syntax-directed programming environment
Communications of the ACM
Studying the language and structure in non-programmers' solutions to programming problems
International Journal of Human-Computer Studies
Visual Programming Environments: Paradigms and Systems
Visual Programming Environments: Paradigms and Systems
Visual Object-Oriented Programming: Concepts and Environments
Visual Object-Oriented Programming: Concepts and Environments
Studying the Novice Programmer
Studying the Novice Programmer
Semantic anomaly detection in online data sources
Proceedings of the 24th International Conference on Software Engineering
Interactive Simultaneous Editing of Multiple Text Regions
Proceedings of the General Track: 2002 USENIX Annual Technical Conference
FAR: An End-User Language to Support Cottage E-Services
HCC '01 Proceedings of the IEEE 2001 Symposia on Human Centric Computing Languages and Environments (HCC'01)
Fifteen years of psychology in software engineering: Individual differences and cognitive science
ICSE '84 Proceedings of the 7th international conference on Software engineering
Diagram Editing with Hypergraph Parser Support
VL '97 Proceedings of the 1997 IEEE Symposium on Visual Languages (VL '97)
Tabular and Textual Methods for Selecting Objects from a Group
VL '00 Proceedings of the 2000 IEEE International Symposium on Visual Languages (VL'00)
Programming by example
Designing the whyline: a debugging interface for asking questions about program behavior
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Communications of the ACM - End-user development: tools that empower users to create their own software solutions
Header and Unit Inference for Spreadsheets Through Spatial Analyses
VLHCC '04 Proceedings of the 2004 IEEE Symposium on Visual Languages - Human Centric Computing
Six Learning Barriers in End-User Programming Systems
VLHCC '04 Proceedings of the 2004 IEEE Symposium on Visual Languages - Human Centric Computing
ACM Computing Surveys (CSUR)
Estimating the Numbers of End Users and End User Programmers
VLHCC '05 Proceedings of the 2005 IEEE Symposium on Visual Languages and Human-Centric Computing
Facilitators and Inhibitors of End-User Development by Teachers in a School Environment
VLHCC '05 Proceedings of the 2005 IEEE Symposium on Visual Languages and Human-Centric Computing
Automation and customization of rendered web pages
Proceedings of the 18th annual ACM symposium on User interface software and technology
A1: end-user programming for web-based system administration
Proceedings of the 18th annual ACM symposium on User interface software and technology
Informal prototyping of continuous graphical interactions by demonstration
Proceedings of the 18th annual ACM symposium on User interface software and technology
Mindstorms: children, computers, and powerful ideas
Mindstorms: children, computers, and powerful ideas
Teaching children thinking (LOGO memo)
Teaching children thinking (LOGO memo)
Software psychology: Human factors in computer and information systems (Winthrop computer systems series)
Some reflections on designing construction kits for kids
Proceedings of the 2005 conference on Interaction design and children
Development and evaluation of a model of programming errors
HCC '03 Proceedings of the 2003 IEEE Symposium on Human Centric Computing Languages and Environments
Teaching and viewing recursion as delegation
Journal of Computing Sciences in Colleges - Papers of the Fourteenth Annual CCSC Midwestern Conference and Papers of the Sixteenth Annual CCSC Rocky Mountain Conference
Model-Driven Quality Assurance for End Users
VLHCC '07 Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing
Toped: enabling end-user programmers to validate data
CHI '08 Extended Abstracts on Human Factors in Computing Systems
More natural end-user software engineering
Proceedings of the 4th international workshop on End-user software engineering
Modeling of interaction design by end users through discourse modeling
Proceedings of the 13th international conference on Intelligent user interfaces
Rethinking software design in participation cultures
Automated Software Engineering
The Ecology of Participants in Co-evolving Socio-technical Environments
HCSE-TAMODIA '08 Proceedings of the 2nd Conference on Human-Centered Software Engineering and 7th International Workshop on Task Models and Diagrams
Designing for discovery: opening the hood for open-source end user tinkering
CHI '09 Extended Abstracts on Human Factors in Computing Systems
Mashroom: end-user mashup programming using nested tables
Proceedings of the 18th international conference on World wide web
Mining user behavior pattern in mashup community
IRI'09 Proceedings of the 10th IEEE international conference on Information Reuse & Integration
Designing for participation in socio-technical software systems
UAHCI'07 Proceedings of the 4th international conference on Universal access in human computer interaction: coping with diversity
Extending boundaries with meta-design and cultures of participation
Proceedings of the 6th Nordic Conference on Human-Computer Interaction: Extending Boundaries
Assessing end-user programming for a graphics development environment
AMT'10 Proceedings of the 6th international conference on Active media technology
A survey of mashup development environments
The smart internet
A survey of mashup development environments
The smart internet
Proactive wrangling: mixed-initiative end-user programming of data transformation scripts
Proceedings of the 24th annual ACM symposium on User interface software and technology
Beyond interaction: meta-design and cultures of participation
Proceedings of the 23rd Australian Computer-Human Interaction Conference
End-user debugging strategies: A sensemaking perspective
ACM Transactions on Computer-Human Interaction (TOCHI)
An evaluation of mashup tools based on support for heterogeneous mashup components
ICWE'11 Proceedings of the 11th international conference on Current Trends in Web Engineering
End-User programming for web mashups: Open research challenges
ICWE'11 Proceedings of the 11th international conference on Current Trends in Web Engineering
Reusable decision space for mashup tool design
Proceedings of the 4th ACM SIGCHI symposium on Engineering interactive computing systems
End User Development and Meta-Design: Foundations for Cultures of Participation
Journal of Organizational and End User Computing
Form-Based Web Service Composition for Domain Experts
ACM Transactions on the Web (TWEB)
Hi-index | 0.00 |
In the past few decades there has been considerable work on empowering end users to be able to write their own programs, and as a result, users are indeed doing so. In fact, we estimate that over 12 million people in American workplaces would say that they "do programming" at work, and almost 50 million people use spreadsheets or databases (and therefore may potentially program), compared to only 3 million professional programmers. The "programming" systems used by these end users include spreadsheet systems, web authoring tools, business process authoring tools such as Visual Basic, graphical languages for demonstrating the desired behavior of educational simulations, and even professional languages such as Java. The motivation for end-user programming is to have the computer be useful for each person's specific individual needs. While the empirical study of programming has been an HCI topic since the beginning the field, it is only recently that there has been a focus on the End-User Programmer as a separate class from novices who are assumed to be studying to be professional programmers. Another recent focus is on making end-user programming more reliable, using "End-User Software Engineering." This paper gives a brief summary of some current and past research in the area of End-User Programming.