An experimental study of people creating spreadsheets
ACM Transactions on Information Systems (TOIS)
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
Debugging standard ML without reverse engineering
LFP '90 Proceedings of the 1990 ACM conference on LISP and functional programming
Heuristic evaluation of user interfaces
CHI '90 Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Graphical techniques in a spreadsheet for specifying user interfaces
CHI '91 Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
A small matter of programming: perspectives on end user computing
A small matter of programming: perspectives on end user computing
User interface specification using an enhanced spreadsheet model
ACM Transactions on Graphics (TOG)
Discovering the way programmers think about new programming environments
Communications of the ACM
Tools for spreadsheet auditing
International Journal of Human-Computer Studies
What we know about spreadsheet errors
Journal of End User Computing - End User Development
What you see is what you test: a methodology for testing form-based visual programs
Proceedings of the 20th international conference on Software engineering
Software Cost Estimation with Cocomo II with Cdrom
Software Cost Estimation with Cocomo II with Cdrom
Principles for Information Visualization Spreadsheets
IEEE Computer Graphics and Applications
Tracing Lazy Functional Computations Using Redex Trails
PLILP '97 Proceedings of the9th International Symposium on Programming Languages: Implementations, Logics, and Programs: Including a Special Trach on Declarative Programming Languages in Education
DrScheme: A Pedagogic Programming Environment for Scheme
PLILP '97 Proceedings of the9th International Symposium on Programming Languages: Implementations, Logics, and Programs: Including a Special Trach on Declarative Programming Languages in Education
A Data Mapping Specification Environment Using a Concrete Business Form-Based Metaphor
HCC '02 Proceedings of the IEEE 2002 Symposia on Human Centric Computing Languages and Environments (HCC'02)
Reasoning about Many-to-Many Requirement Relationships in Spreadsheets
HCC '02 Proceedings of the IEEE 2002 Symposia on Human Centric Computing Languages and Environments (HCC'02)
Using HCI Techniques to Design a More Usable Programming System
HCC '02 Proceedings of the IEEE 2002 Symposia on Human Centric Computing Languages and Environments (HCC'02)
Applying Attention Investment to End-User Programming
HCC '02 Proceedings of the IEEE 2002 Symposia on Human Centric Computing Languages and Environments (HCC'02)
First Steps in Programming: A Rationale for Attention Investment Models
HCC '02 Proceedings of the IEEE 2002 Symposia on Human Centric Computing Languages and Environments (HCC'02)
Steps toward better debugging tools for LISP
LFP '84 Proceedings of the 1984 ACM Symposium on LISP and functional programming
Debugging in a side effect free programming environment
SLIPE '85 Proceedings of the ACM SIGPLAN 85 symposium on Language issues in programming environments
Fluid Visualization of Spreadsheet Structures
VL '98 Proceedings of the IEEE Symposium on Visual Languages
IWPC '00 Proceedings of the 8th International Workshop on Program Comprehension
AVI '96 Proceedings of the workshop on Advanced visual interfaces
Forms/3: A first-order visual language to explore the boundaries of the spreadsheet paradigm
Journal of Functional Programming
The fuzzy felt ethnography—understanding the programming patterns of domestic appliances
Personal and Ubiquitous Computing
Communications of the ACM - End-user development: tools that empower users to create their own software solutions
ACM SIGPLAN Notices
An approach for categorizing end user programmers to guide software engineering research
WEUSE I Proceedings of the first workshop on End-user software engineering
Factors affecting the success of non-majors in learning to program
Proceedings of the first international workshop on Computing education research
Subtext: uncovering the simplicity of programming
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
A spreadsheet approach to programming and managing sensor networks
Proceedings of the 5th international conference on Information processing in sensor networks
Gencel: a program generator for correct spreadsheets
Journal of Functional Programming
Type inference for spreadsheets
Proceedings of the 8th ACM SIGPLAN international conference on Principles and practice of declarative programming
Spreadsheet functional programming
Journal of Functional Programming
UCheck: A spreadsheet type checker for end users
Journal of Visual Languages and Computing
The semantics of graphical languages
Proceedings of the 2007 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Tangible functional programming
ICFP '07 Proceedings of the 12th ACM SIGPLAN international conference on Functional programming
User-friendly functional programming for web mashups
ICFP '07 Proceedings of the 12th ACM SIGPLAN international conference on Functional programming
Enhancing the Programmability of Spreadsheets with Logic Programming
VLHCC '07 Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing
Security policy analysis using deductive spreadsheets
Proceedings of the 2007 ACM workshop on Formal methods in security engineering
ACM Transactions on Computer-Human Interaction (TOCHI)
Nexcel, a deductive spreadsheet
The Knowledge Engineering Review
Xcellog: A deductive spreadsheet system
The Knowledge Engineering Review
Implementing function spreadsheets
Proceedings of the 4th international workshop on End-user software engineering
SpreadMash: A Spreadsheet-Based Interactive Browsing and Analysis Tool for Data Services
CAiSE '08 Proceedings of the 20th international conference on Advanced Information Systems Engineering
A Functional Spreadsheet Framework for Authoring Logic Implication Rules
RuleML '08 Proceedings of the International Symposium on Rule Representation, Interchange and Reasoning on the Web
Rapid prototyping of semantic mash-ups through semantic web pipes
Proceedings of the 18th international conference on World wide web
Rapid development of spreadsheet-based web mashups
Proceedings of the 18th international conference on World wide web
Ambiance: A Mobile Agent Platform for End-User Programmable Ambient Systems
Proceedings of the 2007 conference on Advances in Ambient Intelligence
Semantic transparency in user assistance systems
Proceedings of the 27th ACM international conference on Design of communication
A spreadsheet-like user interface for combinatorial multi-objective optimization
CASCON '09 Proceedings of the 2009 Conference of the Center for Advanced Studies on Collaborative Research
Interactive, visual fault localization support for end-user programmers
Journal of Visual Languages and Computing
ICWE'07 Proceedings of the 7th international conference on Web engineering
Unification of arrays in spreadsheets with logic programming
PADL'08 Proceedings of the 10th international conference on Practical aspects of declarative languages
Spreadsheet as a relational database engine
Proceedings of the 2010 ACM SIGMOD International Conference on Management of data
Supporting the cooperation of end-user programmers through social development environments
Proceedings of the 2nd International Workshop on Web 2.0 for Software Engineering
Heuristic evaluation of programming language features: two parallel programming case studies
Proceedings of the 3rd ACM SIGPLAN workshop on Evaluation and usability of programming languages and tools
Deductive spreadsheets using tabled logic programming
ICLP'06 Proceedings of the 22nd international conference on Logic Programming
Empirical Software Engineering
A new end-user composition model to empower knowledge workers to develop rich internet applications
Journal of Web Engineering
Spreadsheet-based template language prototype for tree data structure description and interpretation
Proceedings of the 13th International Conference on Computer Systems and Technologies
An abstract domain to infer types over zones in spreadsheets
SAS'12 Proceedings of the 19th international conference on Static Analysis
Hi-index | 0.00 |
We describe extensions to the Excel spreadsheet that integrate user-defined functions into the spreadsheet grid, rather than treating them as a "bolt-on". Our first objective was to bring the benefits of additional programming language features to a system that is often not recognised as a programming language. Second, in a project involving the evolution of a well-established language, compatibility with previous versions is a major issue, and maintaining this compatibility was our second objective. Third and most important, the commercial success of spreadsheets is largely due to the fact that many people find them more usable than programming languages for programming-like tasks. Thus, our third objective (with resulting constraints) was to maintain this usability advantage.Simply making Excel more like a conventional programming language would not meet these objectives and constraints. We have therefore taken an approach to our design work that emphasises the cognitive requirements of the user as a primary design criterion. The analytic approach that we demonstrate in this project is based on recent developments in the study of programming usability, including the Cognitive Dimensions of Notations and the Attention Investment model of abstraction use. We believe that this approach is also applicable to the design and extension of other programming languages and environments.