There is a long tradition in design of discussing materials and the craft of making artefacts. "Smart" and interactive materials affected what constitutes a material. Interaction design is a design activity that creates the appearance and behaviour of information technology, challenged by the illusiveness of interactive materials. With the increased design space of ubiquitous devices, designers can no longer rely on a design process based on known interaction idioms, especially for innovative highly interactive designs. This impedes the design process, because non-interactive materials, by which designers create sketches, storyboards, and mock-up prototypes, do not provide the essential talkbacks needed to make reliable assessments of the design characteristics. Without a well-defined design, the engineering process of artefacts has unclear ends, which are not encompassed in the rational epistemology of engineering. To value the experiential qualities of these artefacts, the prototypes need to be interactive and crafted in code. This paper investigates the materiality of information technology, specifically programming language code from which interactive artefacts are made. A study of users of programming languages investigates how they describe programming language code as a material. If you have a material, it is reasonable, because of the tradition in the material and craft fields, to say you have a craft. Thus, considering code a design material allows the metaphor of craft to be used for the activity of programming.