About the Art of Programming Art

1 Open_SourceThinking Project Glasgow

2 "Well-defined" problems in creating problems

3 What could we understand by creativity?

4 Cutting the Human/Machine-Interface again

5 To use and to be used by technology and beyond

6 Questions and Outlooks faced at the Academy of Media Arts

What are the new Paradigms of Computation ?

    Our method of concept mining (in contrast to data mining) produced an interesting list of developments in post-classical computing in the field of Beyond Computation . It´s all about surpassing the limits of algorithms and Turing Machines. The heroes of classical computing and their work is now history and has to be studied by historians and media archaeologists. What we need are new horizons of computing in the open framework of the second cut.

    Here are a few, hopefully helpful, non-technical hints about our directions of research and teaching.

Reflectional Programming

    Systems which are capable of self-reflection are able to examine their own internal processing mechanisms. They can use this capability to explain their behaviour, and modify their processing methods to improve performance. Such systems must have some form of Meta-Knowledge available, and in addition, they must actively apply the Meta-Knowledge to some task.

    Thus, the appearance of second order cybernetics is the appearance of a new dimension -- reflexion. However, this dimension was developed differently in the Soviet Union and the West. In the Soviet Union, the idea of reflexion was combined with the idea of structure; as a result, reflexive analysis appeared. In the West, the idea of reflexion was combined with the idea of computation; as a result, calculations with self-reference appeared. Vladimir A. Lefebvre 1986

Computational Ontology beyond Identity

    Real-world computer systems involve extraordinarily complex issues of identity. Often, objects that for some purposes are best treated as unitary, single, or "one", are for other purposes better distinguished, treated as several. The aim of the Computational Ontology project is to focus on identity as a technical problem in its own right, and to develop a calculus of generalized object identity, one in which identity -- the question of whether two entities are the same or different -- is taken to be a dynamic and contextual matter of perspective, rather than a static or permanent fact about intrinsic structure. Brian Cantwell Smith

Polycontextural Logic: Transjunctions of viewpoints and contextures

    The digital abstraction is not a statement about how things are; it is merely a way of viewing them. A combinational circuit may be analyzed in terms of boolean logic, but it is voltage, are not a collection of ones and zeros. (...) At best, the digital abstraction tells us that the combinational circuit is amenable to analysis in term of ones and zeros; but it does not change the reality of what is there. Andrea Lynn Stein

    Logical fiberings prove to be particulary suitable for modeling communication and interaction between co-operating agents, due to the possibility to switch between a local/global point of view which is typical for this framework. Jochen Pfalzgraf

Topics in Co-Operation, Interaction, Co-Creation

    Algorithms and Turing machines (TM) have been the dominant model of computation during the first 50 years of computer science, playing a central role in establishing the discipline and providing a deep foundation for theoretical computer science. We claim that TMs are too weak to express interaction of object-oriented and distributed systems, and propose interaction machines as a stronger model that better captures computational behavior for finite interactive computing agents. Moreover, changes in technology from mainframes and procedure-oriented programming to networks and object-oriented programming are naturally expressed by the extension of models of computation from algorithms to interaction. Peter Wegner

Patterns of Self-(Organisation, Reference, Amendment, Reproduction)

    Ideas of self-reference (and its self-modification), and their application to cognition have a much longer history, however. (...) The cognitive and philosophical significance of such issues was first raised by the so-called BCL school, whose members and associates included W. McCulloch, W.R. Ashby, G. Günther, L. Löfgren, H. von Foerster, and H. Maturana. George Kampis

How to Organise our Work of Programming Art?

XP as a specific method of generating software

    eXtreme Programming as a heterarchical and chiastic mode of inter/trans-personal programming is a real challenge for artists programming art work. Pair programming and collective ownership goes much beyond classical teamwork. It involves a new understanding of the identity and subjectivity of artists and programmers in their mutual work. It displays well the intimate relationship between creation, control and implementation as a semiotical process beyond personal psychologies.

    Some important features: XP teams focus on validation of the software at all times. Programmers develop software by writing tests first, then software that fulfils the requirements reflected in the tests.

    Pair Programming . XP programmers write all production code in pairs, two programmers working together at one machine. Pair programming has been shown by many experiments to produce better software at similar or lower cost than programmers working alone.

    Collective Ownership. All the code belongs to all the programmers.

UML as a general method of modelling projects

    The Unified Modeling Language (UML) is the industry-standard language for specifying, visualizing, constructing, and documenting the artefacts of software systems. Using UML, programmers and application architects can make a blueprint of a project, which, in turn, makes the actual software development process easier.

    Mostly computer art projects are much too complex and too ambitious to be realised in the context of the usual art funding. UML can help to design a conceptual model of the project. It could be reasonable to accept this UML modelling as a first realisation of the concept of/as the art work.

Which Languages for the Art of Programming?

    Interactive Programming as organizing an interactive community of objects goes far beyond the traditional concept of programming in the sense of inventing algorithms for solving well-defined problems.

    Interactive Programming In Java provides an alternate entry into the computer science curriculum. It teaches problem decomposition, program design, construction, and evaluation. Andrea Lynn Stein

  © '98 PCL Group
Design & Realisation:
Home PCL-Group Courses + Training MediaPool GŁnther Electronic Archive PolyContextural Computing Lab Glossary Links Contact Th. Mahler