Programmability

From P2P Foundation
Jump to navigation Jump to search


Discussion

Technical compatibility obfuscates its social formations

Fenwick McKelvey:

"What does Drupal tell us about the future of the web? To be sure, Drupal is not the only type of programmable platform. Examples proliferate on the web, such as Yahoo Pipes, OpenKapow, and Dapper (now defunct). The platforms allow users to create mash-ups by mixing information flows and injecting a number of modular filters. These programming interfaces, in short, make small machines—simple programs. Drupal, on the other hand, facilitates the re-purposing of its highly complex program. In this sense, Drupal exemplifies a growing number of open source projects such as Ruby on Rails, and Django for Python. These platforms allow users to program aspects of their code, while also leaving some components untouched. They allow for selective programming—connecting amateur web developer with the mature code of open source programmers.

What other forms of programmability can be imagined? Matthew Fuller’s Webstalker (Elmer, 2006: 10-12), for instance, imagined a new way to navigate the web as networks of links. Users do not see a website, but a network of connections they can choose to follow. The re-imagining of browsing hints towards other ways code, its processes, and its effects could be represented at the interface. Could modules be seen as networks linked to various moments of the running code? Can the future and past produce a live interface where the potential collisions of code might appear? How might cloud computing link independent servers together to share code and innovations? Many questions about programmability and its future remain. The case of Drupal, I hope, pushes toward thinking about a future web, one capable of being further programmed.

Programmability as a trend as I have discussed it here differs sharply from one currently popularised: the proprietary fiefdom of the iPhone (See Drahos and Braithwaite, 2003). Apple’s users have a conscribed interaction with its code. Extending the functionality of an iPhone—tailoring it—happens through the Apple’s App Store. Access to the store arrives pre-packaged, final, and seamless. The store greets you as one of the default applications on the iPhone’s home screen. Pressing the icon connects you to a world of applications extending your iPhone in unimaginable ways. Who knew your phone can simulate a piano or calculate a tip for you? The stability of the iPhone comes at a cost—it becomes a black box. The iPhone, once heralded as the ‘portable Internet’, has created ‘the anti-Internet,’ Joshua Errett (2010) writes in his introduction of the App Store as web3.0, ‘Unlike the Web, [the App Store] is closed, elitist and heavily and arbitrarily policed.’ Users resonate with the potentialities of the iPhone only through the App Store. It adapts the desires of users through millions of applications which extend the device, while simultaneously preventing substantive change. The iPhone is a fixed platform. The code operates, but never changes aside from the occasional update from Apple, a formality automatically installed when syncing the phone. The process of the iPhone, then, is stasis. The result creates ‘a curated web’ where the possibilities of the platform depend on Apple curators.

The Drupal project takes on critical importance in contrast to the iPhone platform. Not all interfaces prioritise surfacing the variable ontology of code. Platforms involve hierarchies that mediate the resonance between user and code. Social media companies maintain control over proprietary platforms that they circulate as public goods and, when successful, position the public underneath their control. As Dyer-Witheford states,

- … who commands which means of communication is a question in determining what articulations may or may not be made. And in advanced capitalism, the conditions of discourse, both its proliferation and blockages, are deeply set by corporate power. (2007: 196)

Chun (2005) describes how the Windows Media Player communicates with its developer Microsoft to send user preferences. The code supports the Microsoft monopoly by feeding it valuable data about what media users consume. The opacity of the resonance between users and code often feeds into larger processes of monopoly and corporate expansion. Considering the resonance between user and code provides a way to invoke more participatory platforms.

Drupal has political significance then as a programmable platform. Drupal exemplifies how open platforms contribute alternative, and non-commercial means of producing the web. In comparison to a platform like Linux where a platform really becomes a means of accessing and using your computer, Drupal is a productive and open platform that can be deployed in a variety of contexts and causes. Drupal becomes the ground on which different users and organisations build. Drupal thus aids our productivity. Further, by using Drupal, users enter into a shared space, almost a commons, where they benefit from the circulation of networked common goods. Drupal creates a common space through its standardised platform that, in turn, produces new spaces. Drupal, in this way, becomes almost a tactical database of modules ready to be deployed in the service of any cause. In a time where social media depends predominately on commercial platforms, Drupal demonstrates the existence of alternative platforms that should not be overlooked.

At a time when platforms have become an important part of a participatory culture, their programmability acquires a critical importance. Through the work of Gilbert Simondon, I demonstrated how platforms always are in-formation, whose state might change due to the interactions between the user and its running code. The software interface acquires importance as a critical moment of resonance between user and code to enact programmability. Drupal offers a way to consider programmability through its modular design that includes an interface where users can add and subtract modules. The interface allows users to program the platform through the assembly of modules. While Drupal’s modularity does not prove a definitive answer to programmability, a study of its responses to these questions opens up a new line of inquiry into making the web more participatory, not only in content production, but in the programming the code constituting Web 2.0." (http://eighteen.fibreculturejournal.org/2011/10/09/fcj-128-programmable-platform-drupal-modularity-and-the-future-of-the-web/)


Example

Fenwick McKelvey on Drupal:

"The case of Drupal explicates how a platform may be programmable, in its case through a modular design that puts users in contact with its running code.

How can the programmability of Drupal be understood? How would this lead to a general study of the programmability of platforms? Programmable means to be ‘capable of being programmed’ (2008: 224). My arrival story offers a window into Drupal, which exemplifies an intensely programmable platform: a platform whose very being resonates with a user.[2] While, as Dodge and Kitchin (2005) suggest, I can program a clock’s time (174-154), its programmability is highly limited because it only alters the time function of its more malleable electric circuits. A programmable platform facilitates adjustments to its very code. How does a platform’s interface express its programmability? Considering the characteristic of a platform requires a re-consideration of the act of programming. Typically, programming appears as a written act. Lawrence Lessig (2006), who has had a seminal influence on the study of the Internet and politics, refers to code as the constitution of cyberspace. His definition fits within the etymology of the verb program that stabilised in the 1940s and 1950s as a written act (see Grier, 1996). Programming came to be seen as an act in language comparable to other human languages (see Cramer, 2008). However, earlier usage of the verb ‘to program’ by mathematician John von Neumann considered ‘the word to mean “to assemble” or “to organize”‘ (Grier, 1996: 52). His earlier usage does not include the linguistic foreclosures of programming; instead, his usage opens up reconsidering programming as an act of composition. Thus, programming is not only an act of writing, but can also include the mouse clicks made on the computer screen. Importantly, written code is executed—it usually runs to create an interface with the user. This moment of interface offers another juncture to consider the act of programming. The interface, far from the static result of code, is a moment of resonance between the becoming of a user and the running code." (http://eighteen.fibreculturejournal.org/2011/10/09/fcj-128-programmable-platform-drupal-modularity-and-the-future-of-the-web/)


More information