Download PDF version of this article PDF

Programmers at Play

Initiates to OOP (object-oriented programming) often latch on quickly to its analogy with real-world objects. Many find it's more natural to represent real-world things with names such as Account rather than subroutine 5864. It's tempting to extend the analogy, imagining a world where programmers code in immersive 3D virtual spaces, moving tangible objects around and tying them together with tactile strings of executable code.

We're certainly not there yet, but new software built by developer Matt Webb brings us one step closer. Webb's collaborative programming environment allows coders to work with the same code simultaneously while navigating through it as if it had a spatial presence. As Webb states, "It treats the Web and APIs as just more objects and places, and is a platform for writing and sharing your own code to manipulate those objects and places." The software, called playsh, is based on a type of MUD (multi-user domain) called a MOO (MUD, object-oriented) that allows users to interact in a constantly changing, programmable virtual space. Playsh extends this capability to software projects<0x2014>not only do users interact with each other and the objects in the room, but they do so while sharing and collaborating on pieces of code for real software projects.

WANT MORE?,70413-0.html

Hunch Engine Hones In

These days, knowing what you want has become an unquestioned virtue. From dating clich's ("I like a man/woman who knows what he/she wants") to spam ("This easy investment program will help you get what you want out of life"), knowing what you want has never been more valued nor, as in the latter case, assumed. Despite the dogma, most of us are familiar with being unsure of what we want. Fortunately, even in these moments of uncertainty we're often able to recognize what we want when we see it--we just can't envision it beforehand.

Such is the premise of new software unveiled by Icosystem. Icosystem's "hunch engine" helps human users refine their undefined intuitions. In the most general terms, the hunch engine works by presenting the user with a starting point, called a seed, and then a number of mutations that differ from the seed in subtle ways. The user then chooses the most desirable mutation, which acts as a seed for the next set of mutations, and so on, until the user arrives at a final choice.

The more ambitious goal of this software is to have hunch engines guide us toward new discoveries. A spinoff company, Coalesix, is working with the pharmaceutical industry to develop software that uses hunch engines to discover new drugs. Results thus far have been promising, with the engine generating ideas that chemists might not have otherwise considered. As the hunch engine reveals, sometimes not knowing exactly what you want is more valuable than knowing what you want.

WANT MORE?,70388-0.html?tw=wn_index_2

The Real Risks of RFID

In just a few years RFID (radio frequency identification) has emerged as a kind of battleground technology. In addition to its 1,024 bits of data, RFID encodes cultural fears rooted in concerns ranging from privacy to religion. Recently, though, researchers from Vrije Universiteit in Amsterdam provided some evidence indicating where RFID's real risks lie. They showed that an attacker could use an RFID tag writer to infect a tag with a virus. An RFID reader that read the infected tag could then infect system software and transmit itself to other RFID tags.

This type of threat could have disastrous effects at airports, some of which plan to tag bags with RFID tags for better tracking. One bad tag could create the worst lost-baggage crisis in history. A more malicious worm could enable terrorists or smugglers to bypass airport officials. The Vrije researchers have developed software that they claim protects against some of the identified security vulnerabilities in RFID chips.



Originally published in Queue vol. 4, no. 4
see this item in the ACM Digital Library


© ACM, Inc. All Rights Reserved.