<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Sentinel Web Technologies</title>
	<atom:link href="http://sentinelweb.co.uk/feed/" rel="self" type="application/rss+xml" />
	<link>http://sentinelweb.co.uk</link>
	<description>Android app development</description>
	<lastBuildDate>Sat, 12 May 2012 10:31:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Android dev tools (adb, aapt, &#8230;) : No such file or directory &#8211; Linux Mint &amp; Ubuntu install</title>
		<link>http://sentinelweb.co.uk/android-dev-tools-adb-aapt-no-such-file-or-directory-linux-mint-ubuntu-install/</link>
		<comments>http://sentinelweb.co.uk/android-dev-tools-adb-aapt-no-such-file-or-directory-linux-mint-ubuntu-install/#comments</comments>
		<pubDate>Tue, 08 May 2012 19:58:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://sentinelweb.co.uk/?p=1125</guid>
		<description><![CDATA[After my main hard disk corrupted recently, I changed to Linux mint &#8211; which is great. But while installing the Android environment I had a weird issue &#8211; all the platform-tools were installed, but the executables wouldn&#8217;t run with the message: bash: /home/robert/bin/android-sdk-linux/platform-tools/aapt: No such file or directory After a bit of head scratching I found this post: http://askubuntu.com/questions/73491/no-such-file-or-directory-for-existing-executable Turns out the existing Android binaries are 32-bit (64-bit isnt supplied) and the error message is because the executables can load dependent libraries. Fairly simple really &#8211; it&#8217;s just that the error message is rather mis-leading. Solution: apt-get install ia32-libs Another one (from here) is: apt-get install --reinstall libc6-i386]]></description>
			<content:encoded><![CDATA[After my main hard disk corrupted recently, I changed to Linux mint &#8211; which is great. But while installing the Android environment I had a weird issue &#8211; all the platform-tools were installed, but the executables wouldn&#8217;t run with the message:
<br/>
<pre class="brush: bash">
bash: /home/robert/bin/android-sdk-linux/platform-tools/aapt: No such file or directory
</pre>
<br/>
After a bit of head scratching I found this post:
<a href="http://askubuntu.com/questions/73491/no-such-file-or-directory-for-existing-executable" target="_blank">http://askubuntu.com/questions/73491/no-such-file-or-directory-for-existing-executable</a>
<br/><br/>
Turns out the existing Android binaries are 32-bit (64-bit isnt supplied) and the error message is because the executables can load dependent libraries. Fairly simple really &#8211; it&#8217;s just that the error message is rather mis-leading.
<br/><br/>
Solution:
<pre class="brush: bash">
apt-get install ia32-libs
</pre>
<br/>
Another one (from <a href="http://kenno.wordpress.com/2011/10/27/ubuntu-11-10-32-bit-applications-do-not-run-64-bit/" target="_blank">here</a>) is: 
<pre class="brush: bash">
apt-get install --reinstall libc6-i386
</pre>]]></content:encoded>
			<wfw:commentRss>http://sentinelweb.co.uk/android-dev-tools-adb-aapt-no-such-file-or-directory-linux-mint-ubuntu-install/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Android ICS Holo icons as SVG</title>
		<link>http://sentinelweb.co.uk/android-ics-holo-icons-as-svg/</link>
		<comments>http://sentinelweb.co.uk/android-ics-holo-icons-as-svg/#comments</comments>
		<pubDate>Fri, 13 Apr 2012 08:24:42 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[codez]]></category>
		<category><![CDATA[designz]]></category>
		<category><![CDATA[extraz]]></category>
		<category><![CDATA[suprcards]]></category>
		<category><![CDATA[vectoroid]]></category>

		<guid isPermaLink="false">http://sentinelweb.co.uk/?p=981</guid>
		<description><![CDATA[Looking at the Android design guide, it seems support for open formats is rather light. I guess it&#8217;s understandable since the site is aimed at designers. I need to start using the standard ICS icons in SuprCards, but in a different colour (and also to backport to earlier Androids). So I had to spend a bit of time converting the AI file to SVG in inkscape &#8211; as I don&#8217;t have a copy of Illustrator. I had to pull the file apart to see everything, as Inkscape doesn&#8217;t have the same layer support as AI. Then group and label the icons, so its easier to find what I am looking for &#8230; It&#8217;s definitley not perfect though unfortunatley. There were a few bits left over, which obviously belong with other icons, but all the basic icons are there and the others wont be hard to assemble when you know what you need. The SVG file is attached below for download. If you have any suggestions/corrections/refinements then please get in contact, or leave a comment below. You can just drag the relevant icon into the centre and export to PNG easily, though you still have to be careful to centre them properly &#8230; Here is the file &#8211; NOTE: The SVG appears blank in the browser &#8211; You can move the icons into the view area to render them: SVG file. I need to change the colour of the icons to fit with my white text on dark theme. Possibly it<a href="http://sentinelweb.co.uk/android-ics-holo-icons-as-svg/"> Read more...</a>]]></description>
			<content:encoded><![CDATA[<p>
Looking at the <a href="http://developer.android.com/design/index.html" target="_blank">Android design guide</a>, it seems support for open formats is rather light. I guess it&#8217;s understandable since the site is aimed at designers. 
</p>

<p>
I need to start using the standard ICS icons in <a href="http://www.suprcards.com" target="_blank">SuprCards</a>, but in a different colour (and also to backport to earlier Androids). So I had to spend a bit of time converting the AI file to SVG in inkscape &#8211; as I don&#8217;t have a copy of Illustrator. I had to pull the file apart to see everything, as Inkscape doesn&#8217;t have the same layer support as AI. Then group and label the icons, so its easier to find what I am looking for &#8230;</p>

<p>It&#8217;s definitley not perfect though unfortunatley. There were a few bits left over, which obviously belong with other icons, but all the basic icons are there and the others wont be hard to assemble when you know what you need.
</p>

<p>The SVG file is attached below for download. If you have any suggestions/corrections/refinements then please get in contact, or leave a comment below. You can just drag the relevant icon into the centre and export to PNG easily, though you still have to be careful to centre them properly &#8230;
</p>
<br/>
<div id="attachment_997" class="wp-caption aligncenter" style="width: 960px"><a href="http://sentinelweb.co.uk/wp-content/uploads/2012/04/All_ICS_Icons.png"><img src="http://sentinelweb.co.uk/wp-content/uploads/2012/04/All_ICS_Icons.png" alt="All ICS Icons" title="All ICS Icons" width="950" height="501" class="size-full wp-image-997" /></a><p class="wp-caption-text">I spread out the icons and grouped them - so hopefully its easy to find what you are looking for ...</p></div>
<p>
Here is the file &#8211; <b>NOTE: The SVG appears blank in the browser &#8211; You can move the icons into the view area to render them</b>:<br/>
<a href="http://bit.ly/IJ6u03" title="ICS icons in SVG" target="_blank" alt="ICS icons in SVG">SVG file</a>.
</p>
<p>
I need to change the colour of the icons to fit with my white text on dark theme. Possibly it will be best to use the Vectoroid SVG Parser to render them in real time &#8211; but it will likely be a bit heavy with the parsing overhead, the rendering and bitmap creation should be fine though. So a script to make the sets of icons at different densities would be a good idea &#8230; stay tuned.
</p>
<script>pinterestMedia='http://sentinelweb.co.uk/wp-content/uploads/2012/04/All_ICS_Icons.png'</script>]]></content:encoded>
			<wfw:commentRss>http://sentinelweb.co.uk/android-ics-holo-icons-as-svg/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Custom notifications across Android SDK&#8217;s</title>
		<link>http://sentinelweb.co.uk/handling-custom-notifications-across-different-android-releases/</link>
		<comments>http://sentinelweb.co.uk/handling-custom-notifications-across-different-android-releases/#comments</comments>
		<pubDate>Tue, 10 Apr 2012 12:53:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[codez]]></category>
		<category><![CDATA[mypod]]></category>

		<guid isPermaLink="false">http://sentinelweb.co.uk/?p=838</guid>
		<description><![CDATA[When I first built MyPOD way back in the the dark ages, I needed a download progressbar in my first notification &#8211; so I used a custom notification for it, and then by default for the rest of the notifications I needed in the app! Oops &#8230; It turns out that there is a bit of fragmentation around custom notifications over different SDK releases. There were reports of the wrong colours on some devices (namely Samsung and ICS devices). After a bit (lot !!) of searching I found the highly informative: http://stackoverflow.com/questions/4867338/custom-notification-layouts-and-text-colors Basically the best way is to just use a Standard Android Notification and not try to customise it. Just supporting >=Gingerbread is also not an option for me, as this is about 30% of the total app userbase. If you do need custom (e.g. for my progress bar) then there are a few different things to cater for on different SDKs. An example is below and the table outlines the differences. The moral of the story: Fragmentation Thing can be a real nightmare real fast when we have to cater for fragmentation &#8211; things have to be tested so much more that it make development slow and tedious. Android has really done a great job of hiding the immense fragmentation that we could be faced with, even though this rare case occurs, we have to admire the design-effort for such a generalised OS for so many devices. SDKIssueSolution &#62;=9Use Event stylesSee Event Styles &#60;9No Event style presentSee NotificationUpdater<a href="http://sentinelweb.co.uk/handling-custom-notifications-across-different-android-releases/"> Read more...</a>]]></description>
			<content:encoded><![CDATA[<p>When I first built MyPOD way back in the the dark ages, I needed a download progressbar in my first notification &#8211; so I used a custom notification for it, and then by default for the rest of the notifications I needed in the app! Oops &#8230; It turns out that there is a bit of fragmentation around custom notifications over different SDK releases. 
</p>
<p>There were reports of the wrong colours on some devices (namely Samsung and ICS devices). After a bit (lot !!) of searching I found the highly informative:</p>
<p><a href="http://stackoverflow.com/questions/4867338/custom-notification-layouts-and-text-colors" target="_blank">http://stackoverflow.com/questions/4867338/custom-notification-layouts-and-text-colors</a>
</p>
<p>Basically the best way is to just use a <a href="#example1">Standard Android Notification</a> and not try to customise it. Just supporting >=Gingerbread is also not an option for me, as this is about 30% of the total app userbase. If you do need custom (e.g. for my progress bar) then there are a few different things to cater for on different SDKs. An <a href="#customNotif">example is below</a> and the table outlines the differences. 
</p>
<p><h1 style="font-size:20px;">The moral of the story: Fragmentation</h1></p>
<p>
Thing can be a real nightmare real fast when we have to cater for fragmentation &#8211; things have to be tested so much more that it make development slow and tedious. 

<blockquote><p>Android has really done a great job of hiding the immense fragmentation that we could be faced with, even though this rare case occurs, we have to admire the design-effort for such a generalised OS for so many devices.</p></blockquote>
</p>
<style>
td {border:1px solid black;padding:4px;}
.tdhead {font-weight:bold;}
.code {font-family: Courier;Monospaced; Helvetica; Arial;font-weight:bold;}
</style>
<table>
<tr><td class="tdhead">SDK</td><td class="tdhead">Issue</td><td class="tdhead">Solution</td></tr> 
<tr><td>&gt;=9</td><td>Use Event styles</td><td>See <a href="#eventStyles">Event Styles</a></td></tr> 
<tr><td>&lt;9</td><td>No Event style present</td><td>See <a href="#NotificationUpdater">NotificationUpdater</a> in the below custom example.</td></tr>
<tr><td>&gt;=11</td><td>Non standard background defaults</td><td>See also <a href="#customNotif">Custom Notification</a> example.</td></tr>  
</table>
<br/>
<p><h1 style="font-size:20px;">First you need an intent for the notifiction to fire when pressed:</h1></p>
<p>
<pre class="brush: java">Intent notificationIntent = new Intent(this, SelectFileActivity.class);
notificationIntent.setAction(Globals.INTENT_DOWNLOAD_ALARM);
PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);</pre>
</p>
<p><a name="example1"></a><h1 style="font-size:20px;">A Standard Android Notification is created similar to below:</h1></p>
<p>
<pre class="brush: java">private Notification downloadedNotification(FileDb f,PendingIntent contentIntent){
	Notification ntf = new Notification(
			R.drawable.butt_tick_off_32, 
			"New files downloaded ...", 
			System.currentTimeMillis()
	);
	ntf.setLatestEventInfo(this, "Download complete",  f.title, contentIntent);
	return ntf;
}</pre>
</p>

<p><a name="customNotif"></a><h1 style="font-size:20px;">Custom Notification Example</h1></p>
<p>
This example uses the custom <a href="#NotificationUpdater"></a> class to set the colour and size of the TextView components. 
</p>
<p>
There is still one problem though, on HoneyComb and ICS the background shows up as grey. I have just set it to black in the example, though the drawable should be in the Holo Theme somewhere.
</p>
<p>
<pre class="brush: java"  style="width:400px;">
private Notification getDlNotif(Context c,PendingIntent contentIntent,FileDb file) {
	Notification notification = new Notification(
		R.drawable.butt_dl_on_32, 
		"Downloading ...", 
		System.currentTimeMillis()
	);

	dlNotifContentView = new RemoteViews(getPackageName(), R.layout.download_notification);
	dlNotifContentView.setImageViewResource(R.id.dln_img,R.drawable.butt_dl_on);
	dlNotifContentView.setTextViewText(R.id.dln_dlfile,"Downloading ...");
	dlNotifContentView.setTextViewText(R.id.dln_dlnumber, status);
	dlNotifContentView.setProgressBar(R.id.dln_progress, 100,		 currentDownload.progress:0, false);
	//set text colour and size for the title and text parts of the custom notification (if necessary ...)
	if (getSDK()<10) {
		NotificationUpdater.setTextTitleColourAndSize(this,dlNotifContentView,R.id.dln_dlfile);		
		NotificationUpdater.setTextColourAndSize(this,dlNotifContentView,R.id.dln_dlnumber);
	}
	//set background to black for >= HoneyComb(11)
	if (getSDK()>=11) {
		dlNotifContentView.setInt(R.id.dln_ctnr, "setBackgroundColor", Color.BLACK);
	}
	notification.contentView=dlNotifContentView;
	notification.contentIntent = contentIntent;
	return notification;
}

public static int getSDK() {
	try {
		return Integer.parseInt(Build.VERSION.SDK);
	} catch (Throwable e) {
		return 1;
	}
}
</pre>
</p>
<p><a name="eventStyles"></a><h1 style="font-size:20px;">For ginger bread and above we just need to use the relevant Event styles:</h1></p>
<p>
In the layout.xml( R.layout.download_notification in this case) &#8230;</p>
<p>
<pre class="brush: xml" style="width:90%;" > 
/*For the title:*/
<TextView style="@android:style/TextAppearance.StatusBar.EventContent.Title"></TextView>
/*For the text:*/
<TextView style="@android:style/TextAppearance.StatusBar.EventContent"></TextView>
</pre>
</p>

<p><a name="NotificationUpdater"></a><h1 style="font-size:20px;">NotificationUpdater</h1></p>
<p>
This class is needed for Android SDKs prior to Gingerbread (<9), it extracts the colours and sizes of the title and text in a standard notification, and saves them in statics, so we can use them in a custom one (see the above <a href="#customNotif">Custom Notification</a> example). It is a modified version of the example given in the above stack overflow page.
<pre class="brush: java">

import android.app.Notification;
import android.content.Context;
import android.util.DisplayMetrics;
import android.view.ViewGroup;
import android.view.WindowManager;
import android.widget.LinearLayout;
import android.widget.RemoteViews;
import android.widget.TextView;

public class NotificationUpdater {
	private static Integer notificationTextColor = null;
	private static Integer notificationTextTitleColor = null;
	private static float notificationTextSize = 11;
	private static float notificationTextTitleSize = 11;
	
	private static final String COLOR_SEARCH_RECURSE_TIP = "TEXT";
	private static final String COLOR_SEARCH_RECURSE_TITLE = "TITLE";
	
	private static void recurseGroup(Context c,ViewGroup gp,DisplayMetrics metrics){
	    final int count = gp.getChildCount();
	    
	    for (int i = 0; i < count; ++i)   {
	        if (gp.getChildAt(i) instanceof TextView)     {
	            final TextView text = (TextView) gp.getChildAt(i);
	            final String szText = text.getText().toString();
	            if (COLOR_SEARCH_RECURSE_TIP.equals(szText)) {
	                notificationTextColor = text.getTextColors().getDefaultColor();
	                notificationTextSize = text.getTextSize()/metrics.scaledDensity;
	            } else if (COLOR_SEARCH_RECURSE_TITLE.equals(szText)) {
	            	notificationTextTitleColor = text.getTextColors().getDefaultColor();
	            	notificationTextTitleSize = text.getTextSize()/metrics.scaledDensity;
	            }
	        } else if (gp.getChildAt(i) instanceof ViewGroup) {
	           recurseGroup(c,(ViewGroup) gp.getChildAt(i),metrics);
	        }
	    }
	}

	private static void extractColors(Context c)
	{
	    try   {
	    	DisplayMetrics metrics = new DisplayMetrics();
	        WindowManager systemWM = (WindowManager)c.getSystemService(Context.WINDOW_SERVICE);
	        systemWM.getDefaultDisplay().getMetrics(metrics);
	        
	        Notification ntf = new Notification();
	        ntf.setLatestEventInfo(c, COLOR_SEARCH_RECURSE_TITLE, COLOR_SEARCH_RECURSE_TIP, null);
	    	LinearLayout group = new LinearLayout(c);
	        ViewGroup event = (ViewGroup) ntf.contentView.apply(c, group);
	        recurseGroup(c,event,metrics);
	        group.removeAllViews();
	    }
	    catch (Exception e)   {
	        notificationTextColor = android.R.color.black;
	        notificationTextTitleColor = android.R.color.black;
	    }
	}
	
	public static void setTextColourAndSize(Context c, RemoteViews v,int i ) {
		if (notificationTextColor==null) {
			extractColors(c);
		}
		v.setTextColor(i, notificationTextColor);
		v.setFloat(i, "setTextSize", notificationTextSize);
	}
	
	public static void setTextTitleColourAndSize(Context c, RemoteViews v,int i ) {
		if (notificationTextColor==null) {
			extractColors(c);
		}
		v.setTextColor(i, notificationTextTitleColor);
		v.setFloat(i, "setTextSize", notificationTextTitleSize);
	}
}
</pre>
</p>]]></content:encoded>
			<wfw:commentRss>http://sentinelweb.co.uk/handling-custom-notifications-across-different-android-releases/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Social Media World Forum 2012 &#8211; Wrapup</title>
		<link>http://sentinelweb.co.uk/social-media-forum-wrapup-2012/</link>
		<comments>http://sentinelweb.co.uk/social-media-forum-wrapup-2012/#comments</comments>
		<pubDate>Wed, 04 Apr 2012 11:19:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[eventz]]></category>
		<category><![CDATA[tvz]]></category>

		<guid isPermaLink="false">http://sentinelweb.co.uk/?p=756</guid>
		<description><![CDATA[When I saw the Social Media World Forum advertised, I was wondering if it was for me. It turns out it was an event for all sizes. The Social Media Tech stage had a few interesting speakers, which come back to some similar, over-arching themes in social media marketing: Don&#8217;t be obtuse: Be friendly, talk about anything. people enjoy the one-to-one aspect of SM. DONT oversell. (#1 reason for unlike: no good content, too many posts..) Concentrate on growing organically: Engagement is key: measureable responses, people share / like good content, click throughs, sales. Creating content &#38; communities: more loyalty, trust. DONT: Buy likes, content : let people who understand your customers do this. Grow your own content: SM great from testing content. Can be targeted or not. Content creates engagement. The best content is sharable, small &#38; digestable. Measure and test performance of content as you go. Iterate &#038; Optimise. Choose KPI&#8217;s: clicks to website, increased downloads. Content can be a lot of things: Blogs, Podcasts, Video, Omages, Communities, Software, Code, Databases, &#8230; Writing about these resources shows what you have contributed. Where the networks are: Facebook: Timeline (not many like it), User stories, Apps as content landing pages. Twitter: Data analysis, clickstream processing, promotion. Google +: API, building content, user engagement. There were some nice presentations given, notably a presentation by Social Clay (Slide Share) which was a nice introduction to building a Facebook marketing strategy.]]></description>
			<content:encoded><![CDATA[When I saw the <a href="http://www.socialmedia-forum.com/">Social Media World Forum</a> advertised, I was wondering if it was for me. It turns out it was an event for all sizes. The Social Media Tech stage had a few interesting speakers, which come back to some similar, over-arching themes in social media marketing:
<br/><br/>
Don&#8217;t be obtuse:
<ul>
	<li>Be friendly, talk about anything. people enjoy the one-to-one aspect of SM.</li>
	<li><strong>DONT</strong> oversell. (#1 reason for unlike: no good content, too many posts..)</li>
</ul>
Concentrate on growing organically:
<ul>
	<li>Engagement is key: measureable responses, people share / like good content, click throughs, sales.</li>
	<li>Creating content &amp; communities: more loyalty, trust.</li>
	<li><strong>DONT</strong>: Buy likes, content : let people who understand your customers do this.</li>
</ul>
Grow your own content:
<ul>
	<li>SM great from testing content. Can be targeted or not.</li>
	<li>Content creates engagement. The best content is sharable, small &amp; digestable.</li>
	<li>Measure and test performance of content as you go. 
             <ul style="margin-right:30px;"><li>Iterate &#038; Optimise. Choose KPI&#8217;s: clicks to website, increased downloads.</li></ul>
	<li>Content can be a lot of things: 
             <ul style="margin-right:30px;">
<li>Blogs, Podcasts, Video, Omages, Communities, Software, Code, Databases, &#8230;
<li>Writing about these resources shows what you have contributed.</li>
</ul>
</ul>
Where the networks are:
<ul>
<li>Facebook: Timeline (not many like it), User stories, Apps as content landing pages.
<li>Twitter: Data analysis, clickstream processing, promotion.
<li>Google +: API, building content, user engagement.
</ul>
There were some nice presentations given, notably a presentation by <a href="https://twitter.com/#!/hyuz" target="_blank">Social Clay</a> (<a href="http://www.slideshare.net/hyuz" target="_blank">Slide Share</a>) which was a nice introduction to building a Facebook marketing strategy.]]></content:encoded>
			<wfw:commentRss>http://sentinelweb.co.uk/social-media-forum-wrapup-2012/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Translating tech for the user</title>
		<link>http://sentinelweb.co.uk/translating-tech-for-the-user/</link>
		<comments>http://sentinelweb.co.uk/translating-tech-for-the-user/#comments</comments>
		<pubDate>Mon, 26 Mar 2012 07:51:10 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[eventz]]></category>
		<category><![CDATA[extraz]]></category>

		<guid isPermaLink="false">http://sentinelweb.co.uk/?p=704</guid>
		<description><![CDATA[I was recently at the IPTV forum in London and caught a talk by Adam Cahan of IntoNow (recently bought by Yahoo). They make a product that fingerprints currently playing TV shows so users can lookup &#38; share extra information based on what they are currently watching. He gave an interesting prespective of what new technologies imply for the user, especially in a TV context. Below is the 4 examples he gave: TechnologyUser meaningDescription LocationProximityUser is looking for / adding something in thier proximity. PersonalisationAdaptiveThe user percieves a personalised product as something that adapts to them. Social GraphInterest gapPeople look for things of interest in their social graph, people trust others who share the same interests, and the social context is almost secondary to the shared interests that people have in forming connections. Interest is more important than trust. SearchSurface informationSearch provides leads, or surface(top-level) information, to the user which they can then choose to go into. The surface information has to lead the user into it for it to be relevant. The last item (surface information) has implications for apps/TV. In some ways we can regard the TV experience as a search and there is a lot of surface information presented which the user might then want to explore on their second screen. Adam also stressed the significance of the user interface, users need to get an instant payoff from the app in order to make it interesting, this is the concept of surface information at work too &#8230;<a href="http://sentinelweb.co.uk/translating-tech-for-the-user/"> Read more...</a>]]></description>
			<content:encoded><![CDATA[<p>
I was recently at the IPTV forum in London and caught a talk by Adam Cahan of IntoNow (recently bought by Yahoo). They make a product that fingerprints currently playing TV shows so users can lookup &amp; share extra information based on what they are currently watching.
</p>
<p>
He gave an interesting prespective of what new technologies imply for the user, especially in a TV context. Below is the 4 examples he gave:
<style>
td {border:1px solid black;padding:4px;}
.tdhead {font-weight:bold;}
.slide {display:none;background:white;border:1px solid black;padding:2px;}
</style>
<table>
<tr><td class="tdhead">Technology</td><td class="tdhead">User meaning</td><td class="tdhead">Description</td></tr> 
<tr><td>Location</td><td>Proximity</td><td>User is looking for / adding something in thier proximity.</td></tr> 
<tr><td>Personalisation</td><td>Adaptive</td><td>The user percieves a personalised product as something that adapts to them.</td></tr> 
<tr><td>Social Graph</td><td>Interest gap</td><td>People look for things of interest in their social graph, people trust others who share the same interests, and the social context is almost secondary to the shared interests that people have in forming connections. Interest is more important than trust.</td></tr> 
<tr><td>Search</td><td>Surface information</td><td>Search provides leads, or surface(top-level) information, to the user which they can then choose to go into. The surface information has to lead the user into it for it to be relevant.</td></tr> 
</table>
</p>
<p>
The last item (surface information) has implications for apps/TV. In some ways we can regard the TV experience as a search and there is a lot of surface information presented which the user might then want to explore on their second screen.
</p>
<p>
Adam also stressed the significance of the user interface, users need to get an instant payoff from the app in order to make it interesting, this is the concept of surface information at work too &#8230; the instant payoff provides the user with top-level insight into what the app does. They can then choose to go into it and learn more about what options it provides. 
</p>
<p>
Here are my (rather vauge) notes from the talk:
<a href="#img" name="img" onclick="toggle('notes')">Adam Cahan &#8211; IntoNow &#8211; TV App hub &#8211; IPTV &#8211; 20/3/2012</a>
<img id="notes" src="http://sentinelweb.co.uk/wp-content/uploads/2012/03/20-03-2012-05-26-00_CardFront.png" alt="" title="20-03-2012-05-26-00_CardFront" width="1024" height="600" class="alignleft size-full wp-image-705 slide" style="display:none;"/>
</p>
<script>pinterestMedia='http://sentinelweb.co.uk/wp-content/uploads/2012/03/20-03-2012-05-26-00_CardFront.png'</script>]]></content:encoded>
			<wfw:commentRss>http://sentinelweb.co.uk/translating-tech-for-the-user/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Connecting Kindle Fire to ADB on Ubuntu</title>
		<link>http://sentinelweb.co.uk/connecting-kindle-fire-to-adb-on-ubuntu/</link>
		<comments>http://sentinelweb.co.uk/connecting-kindle-fire-to-adb-on-ubuntu/#comments</comments>
		<pubDate>Tue, 24 Jan 2012 16:37:06 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[phonez]]></category>
		<category><![CDATA[probz]]></category>
		<category><![CDATA[tabz]]></category>

		<guid isPermaLink="false">http://sentinelweb.co.uk/?p=680</guid>
		<description><![CDATA[I recently got a kindle fire for testing, but had some issues connecting it to ADB. Get the Vendor id by typing:lsusb The line we are looking for is:Bus 003 Device 026: ID 1949:0006 Lab126 Add the vendor id (1949) to /etc/udev/rules.d/51-android.rules as per normalSUBSYSTEM=="usb", SYSFS{idVendor}=="1949", MODE="0666" Usually a device would work here but it wasnt happening with the fire &#8230; The solution is as per this link: StackOverflowYou also need to add the vendor id to ~/.android/adb_usb.ini (you need to check the file doesn&#8217;t exist first).echo "0x1949" >>~/.android/adb_usb.ini echo "0x0006" >>~/.android/adb_usb.ini Then we restart the ADB server and the device should be shown:adb kill-server adb start-server adb devices]]></description>
			<content:encoded><![CDATA[<p>I recently got a kindle fire for testing, but had some issues connecting it to ADB. 
<ul><li>Get the Vendor id by typing:<br/><pre class="brush: bash" style="height:40px">lsusb </pre>The line we are looking for is:<br/><i>Bus 003 Device 026: ID 1949:0006 Lab126</i>
<li>Add the vendor id (1949) to <i>/etc/udev/rules.d/51-android.rules</i> as per normal<pre class="brush: bash" style="height:40px">SUBSYSTEM=="usb", SYSFS{idVendor}=="1949", MODE="0666"</pre>
Usually a device would work here but it wasnt happening with the fire &#8230; 
<li>The solution is as per this link: <a href="http://stackoverflow.com/questions/8257201/how-can-usb-debugging-for-kindle-fire-can-be-enabled-on-a-linux-ubuntu-machine" target="_blank">StackOverflow</a><br/>You also need to add the vendor id to <i>~/.android/adb_usb.ini</i> (you need to check the file doesn&#8217;t exist first).<br/><pre class="brush: bash" style="height:60px">echo "0x1949" >>~/.android/adb_usb.ini
echo "0x0006" >>~/.android/adb_usb.ini</pre>
<li>Then we restart the ADB server and the device should be shown:<pre class="brush: bash" style="height:80px">adb kill-server
adb start-server
adb devices
</pre>
</ul>
</p>]]></content:encoded>
			<wfw:commentRss>http://sentinelweb.co.uk/connecting-kindle-fire-to-adb-on-ubuntu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Gnome 3: gnome-panel alt+right click not working</title>
		<link>http://sentinelweb.co.uk/gnome-3-gnome-panel-altright-click-not-working/</link>
		<comments>http://sentinelweb.co.uk/gnome-3-gnome-panel-altright-click-not-working/#comments</comments>
		<pubDate>Fri, 02 Dec 2011 20:34:48 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[extraz]]></category>
		<category><![CDATA[probz]]></category>

		<guid isPermaLink="false">http://sentinelweb.co.uk/?p=644</guid>
		<description><![CDATA[Not really Android related, but I just upgraded to ubuntu 11.10 and had the re-install gnome (I hate Unity). All was pretty good but I just couldn&#8217;t figure out how to get gnome-panel settings to show. Every report I found on the web says it was &#60;alt&#62;+&#60;right click&#62; but for me it is &#60;winkey&#62;+&#60;alt&#62;+&#60;right click&#62;. Anyways, just though I&#8217;d add that, as I said, everywhere else says its &#60;alt&#62;+&#60;right click&#62;. Possibly the key binding was in use and it selected another. On an Android note, if you are on Ubuntu 11.04  and having issues with eclipse (mouse not working!!) then do an upgrade to 11.10. All is good here.]]></description>
			<content:encoded><![CDATA[<p>Not really Android related, but I just upgraded to ubuntu 11.10 and had the re-install gnome (I hate Unity). All was pretty good but I just couldn&#8217;t figure out how to get gnome-panel settings to show. Every report I found on the web says it was &lt;alt&gt;+&lt;right click&gt; but for me it is </p><p><strong>&lt;winkey&gt;+&lt;alt&gt;+&lt;right click&gt;</strong>.
<p>
<p>Anyways, just though I&#8217;d add that, as I said, everywhere else says its &lt;alt&gt;+&lt;right click&gt;. Possibly the key binding was in use and it selected another.<p>

<p>On an Android note, if you are on Ubuntu 11.04  and having issues with eclipse (mouse not working!!) then do an upgrade to 11.10. All is good here.<p>]]></content:encoded>
			<wfw:commentRss>http://sentinelweb.co.uk/gnome-3-gnome-panel-altright-click-not-working/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>O2 Testing 4G network</title>
		<link>http://sentinelweb.co.uk/o2-testing-4g-network/</link>
		<comments>http://sentinelweb.co.uk/o2-testing-4g-network/#comments</comments>
		<pubDate>Fri, 18 Nov 2011 23:29:32 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://sentinelweb.co.uk/?p=668</guid>
		<description><![CDATA[In November O2 is switching on the UK capital’s first 4G mobile network, giving some users a glimpse into what the future may hold, with superfast mobile broadband. With 22m users, O2 is the UK’s second largest mobile phone network, but this city trial will run initially with around a thousand people, businesses and venue owners, who will be kitted out with the latest 4G equipment and given access to the UK’s largest urban 4G network. The trial will give 1000 Londoners the chance to use the fastest mobile broadband they&#8217;ve ever seen, capable of powering 20 high definition internet televisions from a table in Starbucks.]]></description>
			<content:encoded><![CDATA[<p>In November <a href="http://www.o2.co.uk/tariffs/simplicity"  target="_blank">O2</a> is switching on the UK capital’s first 4G mobile network, giving some users a glimpse into what the future may hold, with superfast mobile broadband.</p>

<p>With 22m users, O2 is the UK’s second largest mobile phone network, but this city trial will run initially with around a thousand people, businesses and venue owners, who will be kitted out with the latest 4G equipment and given access to the UK’s largest urban 4G network.</p>

<p>The trial will give 1000 Londoners the chance to use the fastest mobile broadband they&#8217;ve ever seen, capable of powering 20 high definition internet televisions from a table in Starbucks.</p>]]></content:encoded>
			<wfw:commentRss>http://sentinelweb.co.uk/o2-testing-4g-network/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Notes from planet of the apps &#8230;</title>
		<link>http://sentinelweb.co.uk/notes-from-planet-of-the-apps/</link>
		<comments>http://sentinelweb.co.uk/notes-from-planet-of-the-apps/#comments</comments>
		<pubDate>Sun, 09 Oct 2011 20:06:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[eventz]]></category>
		<category><![CDATA[prez]]></category>

		<guid isPermaLink="false">http://sentinelweb.co.uk/notes-from-planet-of-the-apps/</guid>
		<description><![CDATA[The planet of the apps conference was a nice event, quite small but a good line-up of speaker (including yours truly). Though the speakers were a bit iPhone centric mostly, most of them seem to worried about &#8216;fragmentation&#8217;. I still think there is a lot of misunderstanding about Android out there &#8230; Some highlights for me were: Mobile apps dragons den (day1): Nerad Marovac (DN Capital) and Frederic Court (Advent Ventures) represent angel investors and helped explain their investment strategies. It was interesting to see their perspective. Some like to go for early stage startups ( when they have have input on the product) and others go for growth stage (where the product is proven and the company needs to expand) App longevity: This was a panel discussion on factors surrounding an apps lifetime. There was a lot of concensus that utility apps would be longer lived, but probably wont attract the sales levels in a short that games do. As well as strategies for keeping people interested (e.g. regular updates, the need for UX). And of course: Re-enabling the cloud: My presentation about considerations when choosing a cloud provider, mainly: Make a decision early on the data you want to keep as storing it forever just leads to increasing costs. Be careful of lock-in to a cloud API. Platform as a service (PAAS) providers (e.g. Azure, App-engine) generally have customised APIs, that will likely need significant recoding of you want to move. Though this is likely a function of<a href="http://sentinelweb.co.uk/notes-from-planet-of-the-apps/"> Read more...</a>]]></description>
			<content:encoded><![CDATA[<p>The planet of the apps conference was a nice event, quite small but a good line-up of speaker (including yours truly). Though the speakers were a bit iPhone centric mostly, most of them seem to worried about &#8216;fragmentation&#8217;. I still think there is a lot of misunderstanding about Android out there &#8230;</p>

<p>Some highlights for me were:</p>
<p><strong>Mobile apps dragons den</strong> (day1): Nerad Marovac (DN Capital) and Frederic Court (Advent Ventures) represent angel investors and helped explain their investment strategies. It was interesting to see their perspective. Some like to go for early stage startups ( when they have have input on the product) and others go for growth stage (where the product is proven and the company needs to expand)</p>

<p><strong>App longevity</strong>: This was a panel discussion on factors surrounding an apps lifetime. There was a lot of concensus that utility apps would be longer lived, but probably wont attract the sales levels in a short that games do. As well as strategies for keeping people interested (e.g. regular updates, the need for UX).</p>

<p>And of course: </p><p><strong>Re-enabling the cloud</strong>:    My presentation about considerations when choosing a cloud provider, mainly:</p>
<ul>
	<li>Make a decision early on the data you want to keep as storing it forever just leads to increasing costs.</li>
	<li>Be careful of lock-in to a cloud API. Platform as a service (PAAS) providers (e.g. Azure, App-engine) generally have customised APIs, that will likely need significant recoding of you want to move. Though this is likely a function of their limited age and more are building support for standard APIs</li>
	<li>Here are the slides <a href="http://www.robmunro.net/misc/presentations/cloud_final.ppt" target="_blank">PPT</a>, <a href="http://www.robmunro.net/misc/presentations/cloud_final.odp" target="_blank">ODP</a></li>
</ul>
<p>Here are some notes I made in Vectoroid for anyone interested (they are a bit unstructured): <a href="http://www.robmunro.net/misc/notes/planet_of_the_apps_d1_041011e.svg" target="_blank">Day 1</a>
<a href="http://www.robmunro.net/misc/notes/poa_d2_3_051011e.svg" target="_blank">Day 2&amp;3</a></p>]]></content:encoded>
			<wfw:commentRss>http://sentinelweb.co.uk/notes-from-planet-of-the-apps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Planet Of the Apps Presentation. R-enabling the cloud &#8230;</title>
		<link>http://sentinelweb.co.uk/planet-of-the-apps-presentation-r-enabling-the-cloud/</link>
		<comments>http://sentinelweb.co.uk/planet-of-the-apps-presentation-r-enabling-the-cloud/#comments</comments>
		<pubDate>Sun, 02 Oct 2011 13:10:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[prez]]></category>

		<guid isPermaLink="false">http://sentinelweb.co.uk/planet-of-the-apps-presentation-r-enabling-the-cloud/</guid>
		<description><![CDATA[I will be presenting at the &#8220;Planet of the Apps&#8221; Confrence (website) on 6th October. The topic is &#8220;R-enabling the cloud, continuing the natural migration from PC application to mobile app&#8221; (programme).The conference has a great line-up speakers, and no doubt will be very informative. Hope to see you there. Bit of a shame about the overlap with DroidCon, but hey its mobile week (http://londonmobileweek.com/), so there bound to be some crossover with other events. Perhaps it should have been &#8220;mobile month&#8221;.]]></description>
			<content:encoded><![CDATA[I will be presenting at the &#8220;Planet of the Apps&#8221; Confrence (<a href="http://www.terrapinn.com/2011/planet-of-the-apps/index.stm">website</a>) on 6th October. The topic is &#8220;R-enabling the cloud, continuing the natural migration from PC application to mobile app&#8221; (<a href="http://www.terrapinn.com/2011/planet-of-the-apps/Programme_6661.stm">programme</a>).<br/><br/>The conference has a great line-up speakers, and no doubt will be very informative. Hope to see you there. Bit of a shame about the overlap with <a href="http://uk.droidcon.com">DroidCon</a>, but hey its mobile week (<a href="http://londonmobileweek.com/">http://londonmobileweek.com/</a>), so there bound to be some crossover with other events. Perhaps it should have been &#8220;mobile month&#8221;.]]></content:encoded>
			<wfw:commentRss>http://sentinelweb.co.uk/planet-of-the-apps-presentation-r-enabling-the-cloud/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

