I’ve been (belatedly) reading Adam Greenfield’s Everyware: The Dawning Age of Ubiquitous Computing. By ‘everywhere’ he means the pervasive insinuation of inter-connected computation into all aspects of our lives — ubiquitous/pervasive computing but seen in terms of lives not artefacts. Published in 2006, and so I guess written in 2004 or 2005, Adam confidently predicts that everywhere technology will have “significant and meaningful impact on the way you live your life and will do so before the first decade of the twenty-first century is out“, but one month into 2010 and I’ve not really noticed yet. I am not one of those people who fill their house with gadgets, so I guess unlikely to be an early adopter of ‘everywhere’, but even in the most techno-loving house at best I’ve seen the HiFi controlled through an iPhone.
Devices are clearly everywhere, but the connections between them seem infrequent and poor.
Why is ubiquitous technology still so … well un-ubiquitous?
(more…)
I was wondering about scanning barcodes using the iPhone and found that pic2shop (a free app) lets third part iPhone apps and even web pages access its scanning software through a simply URL scheme interface.
Their developer documentation has an example iPhone app, but not an example web page. However, I made a web page using their interface in about 5 minutes (see PHP source of barcode reader).
If you have an iPhone you can try it out and scan a bar code now, although you need to install pic2shop first (but it is free).
By allowing third party apps to use their software they encourage downloads of their app, which will bring them revenue through product purchases. Through free giving they bring themselves benefit; a good open access story.
An example web page using the pic2shop barcode reading interface.
If you have an iPhone try it out at:
http://www.meandeviation.com/test/iphone/barcode.php
<?php
$code = $_REQUEST['ean'];
echo '<' . '?xml version="1.0" encoding="UTF-8" ?' . '>';
?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>test barcode reader</title>
</head>
<body>
<div>
<h1>test barcode reader</h1>
<?php
if ( $code ) :
?>
<p>
The barcode was <?php echo htmlentities( $code ); ?>
</p>
<?php
endif;
?>
<p>
<a href="pic2shop://scan?callback=http://www.meandeviation.com/test/iphone/barcode.php?barcode=EAN">read barcode</a>
</p>
<p>
This web page is for iPhone users only and needs
<a href=""http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=308740640&mt=8">pic2shop</a>
installed (it is free), which allows third party web apps and iPhone apps to use its bar code reading software as a form of local web service.
</p>
</div>
</body>
</html>
Just reading the iPhone Cocoa developer docs and its description of Model-View-Controller. However, if you look at the diagram rather than the model component directly notifying the view of changes as in classic MVC, in Cocoa the controller acts as mediator, more like the Dialogue component in the Seeheim architecture or the Control component in PAC.

The docs describing the Cocoa MVC design pattern in more detail in fact do a detailed comparison with the Smalltalk MVC, but do not refer to Seeheim or PAC, I guess because they are less well known now-a-days. Only a few weeks ago when discussing architecture with my students, I described Seeheim as being more a conceptual architecture and not used in actual implementations now. I will have to update my lectures – Seeheim lives!
Wanted to try out photo blog from iPhone, so here is our Christmas tree

Just downloaded Wordpress app and doing first iPhone blog. Can imagine doing short blogs this way, but typing longer ones will be a pain. I hope Apple will listen to their users and allow bluetooth keyboards soon, then this might become really useful rather than expensive toy.