Boxer: a reconstructible computational medium
Communications of the ACM
The society of mind
The Turing programming language
Communications of the ACM
The synthesizer generator: a system for constructing language-based editors
The synthesizer generator: a system for constructing language-based editors
Playground: an object-oriented simulation system with agent rules for children of all ages
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
Reality built for two: a virtual reality tool
I3D '90 Proceedings of the 1990 symposium on Interactive 3D graphics
The early history of Smalltalk
HOPL-II The second ACM SIGPLAN conference on History of programming languages
Recollections about the development of Pascal
HOPL-II The second ACM SIGPLAN conference on History of programming languages
Watch what I do: programming by demonstration
Watch what I do: programming by demonstration
Mondrian: a teachable graphical editor
Watch what I do
Agentsheets: a tool for building domain-oriented visual programming environments
CHI '93 Proceedings of the INTERACT '93 and CHI '93 Conference on Human Factors in Computing Systems
KidSim: programming agents without a programming language
Communications of the ACM
Recursive interfaces for reactive objects
CHI '94 Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
CSCL '95 The first international conference on Computer support for collaborative learning
Interaction-level support for collaborative learning: AlgoBlock—an open programming language
CSCL '95 The first international conference on Computer support for collaborative learning
An object-oriented program development environment for the first programming course
SIGCSE '96 Proceedings of the twenty-seventh SIGCSE technical symposium on Computer science education
Blue—a language for teaching object-oriented programming
SIGCSE '96 Proceedings of the twenty-seventh SIGCSE technical symposium on Computer science education
StarLogo: an environment for decentralized modeling and decentralized thinking
Conference Companion on Human Factors in Computing Systems
Teddy: a sketching interface for 3D freeform design
Proceedings of the 26th annual conference on Computer graphics and interactive techniques
curlybot: designing a new class of computational toys
Proceedings of the SIGCHI conference on Human Factors in Computing Systems
A user-friendly software environment for the novice programmer
Communications of the ACM
The Cornell program synthesizer: a syntax-directed programming environment
Communications of the ACM
SP/k: a system for teaching computer programming
Communications of the ACM
Physical programming: designing tools for children to create physical interactive environments
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
The Complete HyperCard Handbook
The Complete HyperCard Handbook
First Book of Josef: An Introduction to Computer Programming
First Book of Josef: An Introduction to Computer Programming
Karel the Robot: A Gentle Introduction to the Art of Programming
Karel the Robot: A Gentle Introduction to the Art of Programming
Karel++: A Gentle Introduction to the Art of Object-Oriented Programming
Karel++: A Gentle Introduction to the Art of Object-Oriented Programming
Mini-languages: a way to learn programming principles
Education and Information Technologies
Cleogo: Collaborative and Multi-Metaphor Programming for Kids
APCHI '98 Proceedings of the Third Asian Pacific Computer and Human Interaction
Programming without a Computer: A New Interface for Children under Eight
AUIC '00 Proceedings of the First Australasian User Interface Conference
Kara, finite state machines, and the case for programming as part of general education
HCC '01 Proceedings of the IEEE 2001 Symposia on Human Centric Computing Languages and Environments (HCC'01)
AutoHAN: An Architecture for Programming the Home
HCC '01 Proceedings of the IEEE 2001 Symposia on Human Centric Computing Languages and Environments (HCC'01)
VL '95 Proceedings of the 11th International IEEE Symposium on Visual Languages
VL '96 Proceedings of the 1996 IEEE Symposium on Visual Languages
Hank: A Friendly Cognitive Modelling Language for Psychology Students
VL '98 Proceedings of the IEEE Symposium on Visual Languages
Self-disclosing design tools: an incremental approach toward end-user programming
Self-disclosing design tools: an incremental approach toward end-user programming
A programming system for children that is designed for usability
A programming system for children that is designed for usability
Forms/3: A first-order visual language to explore the boundaries of the spreadsheet paradigm
Journal of Functional Programming
Designing a 3D Authoring Tool for Children
C5 '04 Proceedings of the Second International Conference on Creating, Connecting and Collaborating through Computing
Mindstorms: children, computers, and powerful ideas
Mindstorms: children, computers, and powerful ideas
Evaluating assessments of novice programming environments
Proceedings of the first international workshop on Computing education research
Invited research overview: end-user programming
CHI '06 Extended Abstracts on Human Factors in Computing Systems
Marmite: end-user programming for the web
CHI '06 Extended Abstracts on Human Factors in Computing Systems
Rethinking children's programming with contextual signs
Proceedings of the 2006 conference on Interaction design and children
"Python first": a lab-based digital introduction to computer science
Proceedings of the 11th annual SIGCSE conference on Innovation and technology in computer science education
Translating keyword commands into executable code
UIST '06 Proceedings of the 19th annual ACM symposium on User interface software and technology
Concept visualization in CS0 using ALICE
Journal of Computing Sciences in Colleges
Designing for programming as joint performances among groups of children
Interacting with Computers
Journal of Visual Languages and Computing
Through the looking glass: teaching CS0 with Alice
Proceedings of the 38th SIGCSE technical symposium on Computer science education
Visual programming with analogical representations: Inspirations from a semiotic analysis of comics
Journal of Visual Languages and Computing
Making mashups with marmite: towards end-user programming for the web
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Storytelling alice motivates middle school girls to learn computer programming
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Using storytelling to motivate programming
Communications of the ACM - Creating a science of games
ACM SIGGRAPH 2007 educators program
A role-playing virtual world for web-based application courses
Computers & Education
Proceedings of the third international workshop on Computing education research
User-friendly functional programming for web mashups
ICFP '07 Proceedings of the 12th ACM SIGPLAN international conference on Functional programming
Using lyrics and music to reinforce concepts
Journal of Computing Sciences in Colleges
How preschool children used a behaviour-based programming tool
Proceedings of the 6th international conference on Interaction design and children
Meta-Modelling, Visual Languages, Graph Transformation, Operational Semantics.
VLHCC '07 Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing
Children as Unwitting End-User Programmers
VLHCC '07 Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing
Journal on Educational Resources in Computing (JERIC)
Teaching programming using visualization
WBED'07 Proceedings of the sixth conference on IASTED International Conference Web-Based Education - Volume 2
Dropping CS enrollments: or the emperor's new clothes?
ACM SIGCSE Bulletin
A survey of literature on the teaching of introductory programming
Working group reports on ITiCSE on Innovation and technology in computer science education
Programming by choice: urban youth learning programming with scratch
Proceedings of the 39th SIGCSE technical symposium on Computer science education
Proceedings of the 2008 annual research conference of the South African Institute of Computer Scientists and Information Technologists on IT research in developing countries: riding the wave of technology
Handcrafted physical syntax elements for illetterate children: initial concepts
IDC '08 Proceedings of the 7th international conference on Interaction design and children
A modelling tool to support children making their ideas work
IDC '08 Proceedings of the 7th international conference on Interaction design and children
A scientific workflow construction command line
Proceedings of the 14th international conference on Intelligent user interfaces
Proceedings of the 40th ACM technical symposium on Computer science education
Comparing the use of tangible and graphical programming languages for informal science education
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Service-Oriented Computing --- ICSOC 2008 Workshops
Maestro: a self-organizing peer-to-peer dataflow framework using reinforcement learning
Proceedings of the 18th ACM international symposium on High performance distributed computing
Virtual sandbox: adding groupware abilities to Scratch
Proceedings of the 8th International Conference on Interaction Design and Children
The effect of CS unplugged on middle-school students' views of CS
ITiCSE '09 Proceedings of the 14th annual ACM SIGCSE conference on Innovation and technology in computer science education
ACM Transactions on Computer-Human Interaction (TOCHI)
Communications of the ACM - Scratch Programming for All
Towards the web of applications: incorporating end user programming into the web 2.0 communities
Proceedings of the 2nd international workshop on Social software engineering and applications
New literacies and the learning sciences: a framework for understanding youths' media arts practices
ICLS'08 Proceedings of the 8th international conference on International conference for the learning sciences - Volume 2
Media designs with scratch: what urban youth can learn about programming in a computer Clubhouse
ICLS'08 Proceedings of the 8th international conference on International conference for the learning sciences - Volume 3
Is Embodied Interaction Beneficial When Learning Programming?
VMR '09 Proceedings of the 3rd International Conference on Virtual and Mixed Reality: Held as Part of HCI International 2009
The essence of object orientation for CS0: concepts without code
Journal of Computing Sciences in Colleges
Plagiarising of source code by novice programmers a "cry for help"?
Proceedings of the 2009 Annual Research Conference of the South African Institute of Computer Scientists and Information Technologists
A code reuse interface for non-programmer middle school students
Proceedings of the 15th international conference on Intelligent user interfaces
A strategy for collaborative outreach: lessons from the CSbots project
Proceedings of the 41st ACM technical symposium on Computer science education
New research perspectives on Ambient Intelligence
Journal of Ambient Intelligence and Smart Environments
Learning motivation in e-learning facilitated computer programming courses
Computers & Education
Toque: designing a cooking-based programming language for and with children
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
The spoken web: software development and programming through voice
Proceedings of the 19th international conference on World wide web
Learning computer science concepts with scratch
Proceedings of the Sixth international workshop on Computing education research
ACM Transactions on Computing Education (TOCE)
The Greenfoot Programming Environment
ACM Transactions on Computing Education (TOCE)
Enabling user-oriented management for ubiquitous computing: The meta-design approach
Computer Networks: The International Journal of Computer and Telecommunications Networking
Programming in the model: contextualizing computer programming in CAD models
SpringSim '10 Proceedings of the 2010 Spring Simulation Multiconference
The state of the art in end-user software engineering
ACM Computing Surveys (CSUR)
Empirical studies on programming language stimuli
Software Quality Control
Proceedings of the 2011 iConference
Expressing computer science concepts through Kodu game lab
Proceedings of the 42nd ACM technical symposium on Computer science education
Proceedings of the 42nd ACM technical symposium on Computer science education
K-12 game programming course concept using textual programming
Proceedings of the 42nd ACM technical symposium on Computer science education
Proceedings of the 42nd ACM technical symposium on Computer science education
Scratch the workshop and its implications on our world of computing
Journal of Computing Sciences in Colleges
Towards democratizing computer science education through social game design
Proceedings of the 1st International Workshop on Games and Software Engineering
T-Maze: a tangible programming tool for children
Proceedings of the 10th International Conference on Interaction Design and Children
Personifying programming tool feedback improves novice programmers' learning
Proceedings of the seventh international workshop on Computing education research
End-user programming of web-native interactive applications
Proceedings of the 12th International Conference on Computer Systems and Technologies
Implementing IT0/CS0 with scratch, app inventor forandroid, and lego mindstorms
Proceedings of the 2011 conference on Information technology education
Synthesizing method sequences for high-coverage testing
Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications
TouchDevelop: programming cloud-connected mobile devices via touchscreen
Proceedings of the 10th SIGPLAN symposium on New ideas, new paradigms, and reflections on programming and software
Emerson: accessible scripting for applications in an extensible virtual world
Proceedings of the 10th SIGPLAN symposium on New ideas, new paradigms, and reflections on programming and software
A Motivation Guided Holistic Rehabilitation of the First Programming Course
ACM Transactions on Computing Education (TOCE)
Proceedings of the 3rd ACM SIGPLAN workshop on Evaluation and usability of programming languages and tools
Making teaching of programming learning-oriented and learner-directed
Proceedings of the 11th Koli Calling International Conference on Computing Education Research
Journal of Network and Computer Applications
End-user debugging strategies: A sensemaking perspective
ACM Transactions on Computer-Human Interaction (TOCHI)
Proceedings of the 43rd ACM technical symposium on Computer Science Education
Say it with systems: expanding Kodu's expressive power through gender-inclusive mechanics
Proceedings of the 6th International Conference on Foundations of Digital Games
CS Unplugged and Middle-School Students’ Views, Attitudes, and Intentions Regarding CS
ACM Transactions on Computing Education (TOCE)
UbiComp'06 Proceedings of the 8th international conference on Ubiquitous Computing
Journal of Computing Sciences in Colleges
Comparing mental models of novice programmers when using visual and command line environments
Proceedings of the 50th Annual Southeast Regional Conference
Learning programming languages through corrective feedback and concept visualisation
ICWL'11 Proceedings of the 10th international conference on Advances in Web-Based Learning
Tangible interaction and learning: the case for a hybrid approach
Personal and Ubiquitous Computing
International Journal of Human-Computer Studies
From tools to communities: designs to support online creative collaboration in scratch
Proceedings of the 11th International Conference on Interaction Design and Children
μPython: non-majors programming from the very first lecture
Proceedings of the 17th ACM annual conference on Innovation and technology in computer science education
Proceedings of the 34th International Conference on Software Engineering
New research perspectives on Ambient Intelligence
Journal of Ambient Intelligence and Smart Environments
Engaging undergraduate programming students: experiences using lego mindstorms NXT
Proceedings of the 13th annual conference on Information technology education
Proceeding of the 44th ACM technical symposium on Computer science education
Proceeding of the 44th ACM technical symposium on Computer science education
Proceeding of the 44th ACM technical symposium on Computer science education
Accelerating K-12 computational thinking using scaffolding, staging, and abstraction
Proceeding of the 44th ACM technical symposium on Computer science education
Tackling engagement in computing with computational music remixing
Proceeding of the 44th ACM technical symposium on Computer science education
Puck: a visual programming system for schools
Koli Calling '07 Proceedings of the Seventh Baltic Sea Conference on Computing Education Research - Volume 88
CLIP, a command line interpreter for a subset of C++
Koli Calling '07 Proceedings of the Seventh Baltic Sea Conference on Computing Education Research - Volume 88
CodeSpells: embodying the metaphor of wizardry for programming
Proceedings of the 18th ACM conference on Innovation and technology in computer science education
I can do text analytics!: designing development tools for novice developers
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Education and Information Technologies
ACM Transactions on Computing Education (TOCE)
ACE '12 Proceedings of the Fourteenth Australasian Computing Education Conference - Volume 123
Teaching novice programming using goals and plans in a visual notation
ACE '12 Proceedings of the Fourteenth Australasian Computing Education Conference - Volume 123
Designing ScratchJr: support for early childhood learning through computer programming
Proceedings of the 12th International Conference on Interaction Design and Children
TanPro-kit: a tangible programming tool for children
Proceedings of the 12th International Conference on Interaction Design and Children
A Review of Generic Program Visualization Systems for Introductory Programming Education
ACM Transactions on Computing Education (TOCE)
Proceedings of the ninth annual international ACM conference on International computing education research
Science of Computer Programming
A web-centred approach to end-user software engineering
ACM Transactions on Software Engineering and Methodology (TOSEM) - Testing, debugging, and error handling, formal methods, lifecycle concerns, evolution and maintenance
Building up virtual environments using gestures
UAHCI'13 Proceedings of the 7th international conference on Universal Access in Human-Computer Interaction: applications and services for quality of life - Volume Part III
How to study programming on mobile touch devices: interactive Python code exercises
Proceedings of the 13th Koli Calling International Conference on Computing Education Research
Getting to know computer science freshmen
Proceedings of the 13th Koli Calling International Conference on Computing Education Research
An Empirical Investigation into Programming Language Syntax
ACM Transactions on Computing Education (TOCE)
Five years of game programming outreach: understanding student differences
Proceedings of the 45th ACM technical symposium on Computer science education
Proceedings of the 45th ACM technical symposium on Computer science education
The consume - create spectrum: balancing convenience and computational thinking in stem learning
Proceedings of the 45th ACM technical symposium on Computer science education
Spreading the word: introducing pre-service teachers to programming in the K12 classroom
Proceedings of the 45th ACM technical symposium on Computer science education
Proceedings of the 25th Australian Computer-Human Interaction Conference: Augmentation, Application, Innovation, Collaboration
Proceedings of the 3rd Computer Science Education Research Conference on Computer Science Education Research
ACM Transactions on Computing Education (TOCE)
Predictive modelling for HCI problems in novice program editors
BCS-HCI '13 Proceedings of the 27th International BCS Human Computer Interaction Conference
Personal and Ubiquitous Computing
Managing Cognitive Load in Introductory Programming Courses: A Cognitive Aware Scaffolding Tool
Journal of Integrated Design & Process Science
Hi-index | 0.00 |
Since the early 1960's, researchers have built a number of programming languages and environments with the intention of making programming accessible to a larger number of people. This article presents a taxonomy of languages and environments designed to make programming more accessible to novice programmers of all ages. The systems are organized by their primary goal, either to teach programming or to use programming to empower their users, and then, by each system's authors' approach, to making learning to program easier for novice programmers. The article explains all categories in the taxonomy, provides a brief description of the systems in each category, and suggests some avenues for future work in novice programming environments and languages.