STEPS Toward Expressive Programming Systems (original) (raw)

When visual programs are harder to read than textual programs

1992

Abstract Claims for the virtues of visual programming languages have generally been strong, simple-minded statements that visual programs are inherently better than textual ones. They have paid scant attention to previous empirical literature showing difficulties in comprehending visual programs. This paper reports comparisons between the comprehensibility of textual and visual programs, drawing on the methods developed by Green (1977) for comparing detailed comprehensibility of conditional structures.

Typrograms : the shaped typography of computer programs

2015

Despite their engagement with computational media, programming has largely escaped any detailed analysis or development from the typographic community. The approach has largely been to examine the possibilities programming presents and not its typographic or aesthetic features. Thus, programs, source code, and other textual interfaces are treated as tools that enable the designer to perform tasks or achieve certain effects. Code is understood as a means to an end, rather than as an end in itself. As such, the typographic possibilities of code remain critically under examined, particularly when one considers how much typography effects our perception of a texts content. Within the computing community things are somewhat different. The typography of code has been explored from a number of different vantage points, many of which correspond to the considerations of many type designers and typographers. This has included the development of: coder specific typefaces; code poetry; and the ...

THE EFFECTS OF SUB-PIXEL FONT RENDERING ON A COMMON USER INTERFACE TASK _ A Thesis Presented to

Prior work studying aliased versus ClearType font rendering suggests the hypothesis that the increased visual resolution provided by ClearType produces reading performance benefits only when semantic processing is engaged. This non-intuitive hypothesis was tested with a real-world user interface task. Menu selection performance was studied with semantic cues and exact word match cues in a cascading menu. The experiment (N=35) was designed to test whether ClearType improves reading performance in a common computer-interface task, and whether ClearType benefits increase as requirements for semantic processing increase. ClearType benefits (relative to aliased text) were found for some aspects of menu usage, but the hypothesis that ClearType benefits increase as semantic processing increases was not supported.

Improving Code Reading and Comprehension on Large Displays

Springer eBooks, 2011

Due to advances in display technologies and continuous decrease in large display prices, more users are choosing larger displays or multiple monitors for personal and professional use although standard size desktop monitors are still widely used. As programmers use a larger display surfaces to read and understand their code, current code editors are designed for standard monitor sizes and they do not exploit the extra space that comes with a larger display. In this paper, we discuss the use of a large display for code reading and test whether code reading can be improved by utilizing larger screen space.

Display and Interactive Languages for the Internet: HTML, PDF, and Java

1999

The rapid rise of the Internet has lead to new technologies. These include HTML, the basic 'markup' language for pages on the World Wide Web; PDF, a file format designed for precise layout control of documents like working papers and journals, and Java, a general purpose language ideally suited for use on the Internet. This paper introduces these technologies.

How do we read algorithms? A case study

Computer, 2000

at Manoa espite a growing research interest in program comprehension, there is still much to learn about how individual differences in reading strategies influence comprehension of procedural text, such as algorithms. Textbooks usually depict algorithm definitions in either pseudocode or a programming language. Text is frequently accompanied by graphics to support understanding of an algorithm's behavior. Increasingly, computers use animated graphics to show dynamically how an algorithm works. Traditionally, operating-system manuals and computer-related training materials are written with little regard to the reader. For example, keywords in programs are often printed in boldface type. This study suggests, however, that keywords are the least observed portions of a program's text. Until recently, designers of programming languages relied primarily on their intuition to tell them what is "best" for programmers. Replacing instinct by indepth knowledge regarding human understanding of algorithms can benefit many disciplines, from the writing of computer documentation to the design of programming and specification languages. The wide variety of individual styles docu-24

Towards structured, block-based PDF

Electronic Publishing - Origination, Dissemination and Design, 1995

The Portable Document Format (PDF), defined by Adobe Systems Inc. as the basis of its Acrobat product range, is discussed in some detail. Particular emphasis is given to its flexible object-oriented structure, which has yet to be fully exploited. It is currently used to represent not logical structure but simply a series of pages and associated resources. A definition of an Encapsulated PDF (EPDF) is presented, in which EPDF blocks carry with them their own resource requirements, together with geometrical and logical information. A block formatter called Juggler is described which can lay out EPDF blocks from various sources onto new pages. Future revisions of PDF supporting uniquely-named EPDF blocks tagged with semantic information would assist in composite-page makeup and could even lead to fully revisable PDF. KEY WORDS PDF Object-oriented Blocks Structured documents Juggler Over the last three years, a number of vendors have launched applications and file formats variously referred to as 'digital paper' or 'portable documents'. The three most common examples are Novell's Envoy [1], Common Ground's Common Ground , and Adobe's Acrobat . All three aim to provide a platform-and application-independent way of distributing electronically-produced final form documents. In each case, the principal components are a pseudo printer driver and a viewer for each supported platform. The printer driver enables any application to produce a file which can subsequently be viewed using the appropriate viewer software. All three systems attempt to recreate, in electronic form, the 'look and feel' of the ink-on-paper document. Principal differences between the systems lie in their solutions to 'the font problem' (i.e. what to do if the viewer software doesn't have the fonts used in the document) and their provision of 'added value' features such as hypertext links, tables of contents, annotations, text highlighting, searching etc. This paper does not set out to analyse the relative technical merits of these rival systems, but it seems clear that Acrobat and its underlying Portable Document Format (PDF) are winning the race to become a de facto standard. That fashionable measure of success, presence on the Internet, certainly bears CCC 0894-3982/95/020153-13

Programming is writing: Why programs need to be carefully read

1998

ABSTRACT Teaching a student to write computer programs well is much like teaching a student to write English prose well. That is, although a program must be correct in every last detail, achieving correctness is only half of the task. The other half consists of quality factors such as clarity, organization, conciseness, maintainability, etc.

Kripotos, G. and Kordaki, M., (2008). A Drawing Environment for the Beginners’ Learning of Programming and C. In Proc. of IADIS Int. Conf. “E-Learning 2008”, Amsterdam, The Netherlands, 22 – 25, July 2008, Vol. 1, pp. 3-10.

This paper describes the design, features and advantages of a drawing application -the L.E.C.G.O-Paint application- that is part of a constructivist multi-representational computer environment designed for beginners’ learning of Programming and C (the LECGO environment; Kordaki, 2007). L.E.C.G.O-Paint supplies tools that provide support for students to express their own intuitive graphical solutions to given problems by using hands-on experience and to receive feedback in the form of the correct interpretation of the said solutions in Multiple Representation Systems (MRS), such as: natural language, imperative, pseudo-code and code in C. Specifically, LECGO-PAINT provides a number of tools for: a) drawing various shapes b) editing shapes, c) using metrics, d) using loops, e) providing feedback in the previously mentioned MRS, f) receiving help and g) performing typical file operations, such as: save, print, open, etc.