<feed xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
    <title>Mobile Line Of Business</title>
    <link rel="self" type="application/xml" href="http://geekswithblogs.net/MobileLOB/Atom.aspx" />
    <subtitle type="html">Richard Jones (MVP)</subtitle>
    <id>http://geekswithblogs.net/MobileLOB/Default.aspx</id>
    <author>
        <name>Richard Jones</name>
        <uri>http://geekswithblogs.net/MobileLOB/Default.aspx</uri>
    </author>
    <generator uri="http://subtextproject.com" version="Subtext Version 0.0.0.0">Subtext</generator>
    <updated>2009-10-11T03:00:26Z</updated>
    <entry>
        <title>Hosting Mobile Web-Services</title>
        <link rel="self" type="text/html" href="http://geekswithblogs.net/MobileLOB/archive/2009/10/11/hosting-mobile-web-services.aspx" />
        <id>http://geekswithblogs.net/MobileLOB/archive/2009/10/11/hosting-mobile-web-services.aspx</id>
        <published>2009-10-11T03:00:26-05:00:00</published>
        <updated>2009-10-11T03:00:26Z</updated>
        <content type="html">&lt;p&gt;A couple of years back, I wrote a small web-server in the .Net Compact Framework that could host not only web-pages but also Web-Services.&lt;/p&gt;  &lt;p&gt;Since I had to change where my blog is hosted, the code that I shared with you all has not been available.&lt;/p&gt;  &lt;p&gt;So by popular demand here’s the Visual Studio Project File.&lt;/p&gt;  &lt;p&gt;Download it &lt;/p&gt;  &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:8eb9d37f-1541-4f29-b6f4-1eea890d4876:d3ca3dc7-9002-41ca-8ca7-45aa31856c13" class="wlWriterEditableSmartContent"&gt;&lt;p&gt;&lt;/p&gt;&lt;div&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/MobileLOB/WindowsLiveWriter/HostingMobileWebServices_7EA6/WebServiceForDevice.zip" target="_self"&gt;Here&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;img src="http://geekswithblogs.net/MobileLOB/aggbug/135399.aspx" width="1" height="1" /&gt;</content>
        <wfw:comment>http://geekswithblogs.net/MobileLOB/comments/135399.aspx</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://geekswithblogs.net/MobileLOB/comments/commentRss/135399.aspx</wfw:commentRss>
        <trackback:ping>http://geekswithblogs.net/MobileLOB/services/trackbacks/135399.aspx</trackback:ping>
    </entry>
    <entry>
        <title>Comms National Awards 2009</title>
        <link rel="self" type="text/html" href="http://geekswithblogs.net/MobileLOB/archive/2009/10/07/comms-national-awards-2009.aspx" />
        <id>http://geekswithblogs.net/MobileLOB/archive/2009/10/07/comms-national-awards-2009.aspx</id>
        <published>2009-10-07T09:58:15-05:00:00</published>
        <updated>2009-10-07T09:58:15Z</updated>
        <content type="html">&lt;p&gt;Really pleased to announce that we (Anglia Business Solutions), have just won UK Mobility Solution of the Year.   We won this for the project I have been living and breathing for the past few years at G’s Marketing.&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.cnawards.com/content/finalists" href="http://www.cnawards.com/content/finalists"&gt;http://www.cnawards.com/content/finalists&lt;/a&gt;&lt;/p&gt;&lt;img src="http://geekswithblogs.net/MobileLOB/aggbug/135345.aspx" width="1" height="1" /&gt;</content>
        <wfw:comment>http://geekswithblogs.net/MobileLOB/comments/135345.aspx</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://geekswithblogs.net/MobileLOB/comments/commentRss/135345.aspx</wfw:commentRss>
        <trackback:ping>http://geekswithblogs.net/MobileLOB/services/trackbacks/135345.aspx</trackback:ping>
    </entry>
    <entry>
        <title>SilverLight In CE 6 R3</title>
        <link rel="self" type="text/html" href="http://geekswithblogs.net/MobileLOB/archive/2009/10/05/silverlight-in-ce-6-r3.aspx" />
        <id>http://geekswithblogs.net/MobileLOB/archive/2009/10/05/silverlight-in-ce-6-r3.aspx</id>
        <published>2009-10-05T04:09:46-05:00:00</published>
        <updated>2009-10-05T04:09:46Z</updated>
        <content type="html">&lt;p&gt;Mike Hall, just posted this about release version of Windows Embedded CE 6.0 R3&lt;/p&gt;  &lt;p&gt;&lt;a title="http://blogs.msdn.com/mikehall/archive/2009/09/30/windows-embedded-ce-6-0-r3-released-to-web.aspx" href="http://blogs.msdn.com/mikehall/archive/2009/09/30/windows-embedded-ce-6-0-r3-released-to-web.aspx"&gt;http://blogs.msdn.com/mikehall/archive/2009/09/30/windows-embedded-ce-6-0-r3-released-to-web.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;CE 6 R3,  has Silverlight inside, for running apps inside and oustide of the browser.&lt;/p&gt;  &lt;p&gt;Cool,  lets hope this makes its way over to Windows Mobile&lt;/p&gt;&lt;img src="http://geekswithblogs.net/MobileLOB/aggbug/135304.aspx" width="1" height="1" /&gt;</content>
        <wfw:comment>http://geekswithblogs.net/MobileLOB/comments/135304.aspx</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://geekswithblogs.net/MobileLOB/comments/commentRss/135304.aspx</wfw:commentRss>
        <trackback:ping>http://geekswithblogs.net/MobileLOB/services/trackbacks/135304.aspx</trackback:ping>
    </entry>
    <entry>
        <title>How To Annoy</title>
        <link rel="self" type="text/html" href="http://geekswithblogs.net/MobileLOB/archive/2009/08/22/how-to-annoy.aspx" />
        <id>http://geekswithblogs.net/MobileLOB/archive/2009/08/22/how-to-annoy.aspx</id>
        <published>2009-08-22T20:40:55-05:00:00</published>
        <updated>2009-08-22T20:40:55Z</updated>
        <content type="html">&lt;p&gt;So, undercutting the official Geo-Caching iPhone applicaion, which is WAY cool.&lt;/p&gt;  &lt;p&gt;I decided to create a small iPhone application (again a port from a Windows Mobile application).&lt;/p&gt;  &lt;p&gt;Geocaches Near Me.&lt;/p&gt;  &lt;p&gt;Its a steal…  &lt;/p&gt;  &lt;p&gt;&lt;a title="http://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/browserRedirect?url=itms%253A%252F%252Fitunes.apple.com%252FWebObjects%252FMZStore.woa%252Fwa%252FviewSoftware%253Fid%253D326078481%2526amp%253B%2526partnerId%253D30%2526siteID%253D_oS9gnBF_JQ-wOQtJnOUBuQtwD7VieZzHw" href="http://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/browserRedirect?url=itms%253A%252F%252Fitunes.apple.com%252FWebObjects%252FMZStore.woa%252Fwa%252FviewSoftware%253Fid%253D326078481%2526amp%253B%2526partnerId%253D30%2526siteID%253D_oS9gnBF_JQ-wOQtJnOUBuQtwD7VieZzHw"&gt;Link&lt;/a&gt;&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:01ac247f-b2ad-4c25-8ee4-53689c032399" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/Geocaching" rel="tag"&gt;Geocaching&lt;/a&gt;&lt;/div&gt;&lt;img src="http://geekswithblogs.net/MobileLOB/aggbug/134253.aspx" width="1" height="1" /&gt;</content>
        <wfw:comment>http://geekswithblogs.net/MobileLOB/comments/134253.aspx</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://geekswithblogs.net/MobileLOB/comments/commentRss/134253.aspx</wfw:commentRss>
        <trackback:ping>http://geekswithblogs.net/MobileLOB/services/trackbacks/134253.aspx</trackback:ping>
    </entry>
    <entry>
        <title>Sign Of The Times</title>
        <link rel="self" type="text/html" href="http://geekswithblogs.net/MobileLOB/archive/2009/07/28/sign-of-the-times.aspx" />
        <id>http://geekswithblogs.net/MobileLOB/archive/2009/07/28/sign-of-the-times.aspx</id>
        <published>2009-07-28T08:34:29-05:00:00</published>
        <updated>2009-07-28T08:34:29Z</updated>
        <content type="html">&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/MobileLOB/WindowsLiveWriter/SignOfTheTimes_CCE7/image_2.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://geekswithblogs.net/images/geekswithblogs_net/MobileLOB/WindowsLiveWriter/SignOfTheTimes_CCE7/image_thumb.png" width="144" height="141" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;I’ve just been porting a Windows Mobile (.Net CF) application over to the full Net Framework.   I needed to provide a quick way of doing signature capture.&lt;/p&gt;  &lt;p&gt;I was pointed by a friend (thanks Ross),  to look at hosting the WPF InkCanvas control on my Windows Forms, form.   I just dropped a Panel (Panel1) on my form and used the following code - &lt;/p&gt;  &lt;div class="csharpcode"&gt;   &lt;pre class="alt"&gt; System.Windows.Controls.InkCanvas inkbox = &lt;span class="kwrd"&gt;null&lt;/span&gt;;&lt;/pre&gt;

  &lt;pre&gt;        &lt;/pre&gt;

  &lt;pre class="alt"&gt;        &lt;span class="kwrd"&gt;public&lt;/span&gt; frmpleasesign()&lt;/pre&gt;

  &lt;pre&gt;        {&lt;/pre&gt;

  &lt;pre class="alt"&gt;            InitializeComponent();&lt;/pre&gt;

  &lt;pre&gt; &lt;/pre&gt;

  &lt;pre class="alt"&gt;            inkbox = &lt;span class="kwrd"&gt;new&lt;/span&gt; System.Windows.Controls.InkCanvas();&lt;/pre&gt;

  &lt;pre&gt; &lt;/pre&gt;

  &lt;pre class="alt"&gt;            inkbox.Name = &lt;span class="str"&gt;"myinbox"&lt;/span&gt;;&lt;/pre&gt;

  &lt;pre&gt; &lt;/pre&gt;

  &lt;pre class="alt"&gt; &lt;/pre&gt;

  &lt;pre&gt;            ElementHost elementHost = &lt;span class="kwrd"&gt;new&lt;/span&gt; ElementHost();&lt;/pre&gt;

  &lt;pre class="alt"&gt; &lt;/pre&gt;

  &lt;pre&gt;            elementHost.Dock = DockStyle.None;&lt;/pre&gt;

  &lt;pre class="alt"&gt; &lt;/pre&gt;

  &lt;pre&gt;            elementHost.Width = panel1.Width;&lt;/pre&gt;

  &lt;pre class="alt"&gt; &lt;/pre&gt;

  &lt;pre&gt;            elementHost.Height = panel1.Height;&lt;/pre&gt;

  &lt;pre class="alt"&gt; &lt;/pre&gt;

  &lt;pre&gt;            elementHost.Child = inkbox;&lt;/pre&gt;

  &lt;pre class="alt"&gt; &lt;/pre&gt;

  &lt;pre&gt;            panel1.Controls.Add(elementHost);&lt;/pre&gt;

  &lt;pre class="alt"&gt; &lt;/pre&gt;

  &lt;pre&gt;        }&lt;/pre&gt;
&lt;/div&gt;
&lt;style type="text/css"&gt;&lt;![CDATA[
.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }]]&gt;&lt;/style&gt;

&lt;p&gt; &lt;/p&gt;

&lt;p&gt;To save the signature out to a byte array, that can be saved to my database I used, the following code -&lt;/p&gt;

&lt;p&gt; &lt;/p&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre class="alt"&gt; &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;byte&lt;/span&gt;[] SignatureToBitmapBytes(InkCanvas icSignature)&lt;/pre&gt;

  &lt;pre&gt;        {&lt;/pre&gt;

  &lt;pre class="alt"&gt; &lt;/pre&gt;

  &lt;pre&gt;            &lt;span class="kwrd"&gt;int&lt;/span&gt; margin = (&lt;span class="kwrd"&gt;int&lt;/span&gt;)icSignature.Margin.Left;&lt;/pre&gt;

  &lt;pre class="alt"&gt; &lt;/pre&gt;

  &lt;pre&gt;            &lt;span class="kwrd"&gt;int&lt;/span&gt; width = (&lt;span class="kwrd"&gt;int&lt;/span&gt;)icSignature.ActualWidth - margin;&lt;/pre&gt;

  &lt;pre class="alt"&gt; &lt;/pre&gt;

  &lt;pre&gt;            &lt;span class="kwrd"&gt;int&lt;/span&gt; height = (&lt;span class="kwrd"&gt;int&lt;/span&gt;)icSignature.ActualHeight - margin;&lt;/pre&gt;

  &lt;pre class="alt"&gt; &lt;/pre&gt;

  &lt;pre&gt; &lt;/pre&gt;

  &lt;pre class="alt"&gt; &lt;/pre&gt;

  &lt;pre&gt;            &lt;span class="rem"&gt;//render ink to bitmap &lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt; &lt;/pre&gt;

  &lt;pre&gt;            RenderTargetBitmap rtb =&lt;/pre&gt;

  &lt;pre class="alt"&gt;            &lt;span class="kwrd"&gt;new&lt;/span&gt; RenderTargetBitmap(width, height, 96d, 96d, PixelFormats.Default);&lt;/pre&gt;

  &lt;pre&gt; &lt;/pre&gt;

  &lt;pre class="alt"&gt;            rtb.Render(icSignature);&lt;/pre&gt;

  &lt;pre&gt; &lt;/pre&gt;

  &lt;pre class="alt"&gt; &lt;/pre&gt;

  &lt;pre&gt; &lt;/pre&gt;

  &lt;pre&gt; &lt;/pre&gt;

  &lt;pre class="alt"&gt;            BmpBitmapEncoder encoder = &lt;span class="kwrd"&gt;new&lt;/span&gt; BmpBitmapEncoder();&lt;/pre&gt;

  &lt;pre&gt; &lt;/pre&gt;

  &lt;pre class="alt"&gt;            encoder.Frames.Add(BitmapFrame.Create(rtb));&lt;/pre&gt;

  &lt;pre&gt; &lt;/pre&gt;

  &lt;pre class="alt"&gt;           &lt;span class="kwrd"&gt;byte&lt;/span&gt;[] bitmapBytes;&lt;/pre&gt;

  &lt;pre&gt; &lt;/pre&gt;

  &lt;pre class="alt"&gt;            &lt;span class="kwrd"&gt;using&lt;/span&gt; (MemoryStream ms = &lt;span class="kwrd"&gt;new&lt;/span&gt; MemoryStream())&lt;/pre&gt;

  &lt;pre&gt;            {&lt;/pre&gt;

  &lt;pre class="alt"&gt;                encoder.Save(ms);&lt;/pre&gt;

  &lt;pre&gt; &lt;/pre&gt;

  &lt;pre&gt;                ms.Position = 0;&lt;/pre&gt;

  &lt;pre class="alt"&gt;               bitmapBytes = ms.ToArray(); &lt;/pre&gt;

  &lt;pre&gt;            }&lt;/pre&gt;

  &lt;pre class="alt"&gt;            &lt;span class="kwrd"&gt;return&lt;/span&gt; bitmapBytes;&lt;/pre&gt;

  &lt;pre&gt;        }&lt;/pre&gt;
&lt;/div&gt;
&lt;style type="text/css"&gt;&lt;![CDATA[
.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }]]&gt;&lt;/style&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:03d5d94d-fc8a-4c8d-87c4-4dcfbc1f37df" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/WPF" rel="tag"&gt;WPF&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Windows+Mobile" rel="tag"&gt;Windows Mobile&lt;/a&gt;&lt;/div&gt;&lt;img src="http://geekswithblogs.net/MobileLOB/aggbug/133758.aspx" width="1" height="1" /&gt;</content>
        <wfw:comment>http://geekswithblogs.net/MobileLOB/comments/133758.aspx</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://geekswithblogs.net/MobileLOB/comments/commentRss/133758.aspx</wfw:commentRss>
        <trackback:ping>http://geekswithblogs.net/MobileLOB/services/trackbacks/133758.aspx</trackback:ping>
    </entry>
    <entry>
        <title>Unlike Microsoft Tag</title>
        <link rel="self" type="text/html" href="http://geekswithblogs.net/MobileLOB/archive/2009/07/21/unlike-microsoft-tag.aspx" />
        <id>http://geekswithblogs.net/MobileLOB/archive/2009/07/21/unlike-microsoft-tag.aspx</id>
        <published>2009-07-21T08:31:12-05:00:00</published>
        <updated>2009-07-21T08:31:12Z</updated>
        <content type="html">&lt;p&gt;Hi all.&lt;/p&gt;  &lt;p&gt;I’ve been looking at building a mobile application that will store, store-card details.    As most store cards have barcodes on them,  I thought it would be cool, if you could present the barcode of your card on the screen of your mobile device.&lt;/p&gt;  &lt;p&gt;I’ve just found out to my peril that laser-barcode readers cannot read barcodes off of an LCD screen.  Try it if you don’t believe me - &lt;/p&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/MobileLOB/WindowsLiveWriter/UnlikeMicrosoftTag_CC2A/clip_image002_2.gif"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image002" border="0" alt="clip_image002" src="http://geekswithblogs.net/images/geekswithblogs_net/MobileLOB/WindowsLiveWriter/UnlikeMicrosoftTag_CC2A/clip_image002_thumb.gif" width="288" height="161" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.microsoft.com/tag"&gt;www.microsoft.com/tag&lt;/a&gt;  has no such problems as Microsoft Tag was designed to be read by a camera phone, which works great.&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:0c8aa599-10ad-4636-9fdb-2d1899e0a59f" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/Microsoft+Tag" rel="tag"&gt;Microsoft Tag&lt;/a&gt;&lt;/div&gt;&lt;img src="http://geekswithblogs.net/MobileLOB/aggbug/133617.aspx" width="1" height="1" /&gt;</content>
        <wfw:comment>http://geekswithblogs.net/MobileLOB/comments/133617.aspx</wfw:comment>
        <slash:comments>2</slash:comments>
        <wfw:commentRss>http://geekswithblogs.net/MobileLOB/comments/commentRss/133617.aspx</wfw:commentRss>
        <trackback:ping>http://geekswithblogs.net/MobileLOB/services/trackbacks/133617.aspx</trackback:ping>
    </entry>
    <entry>
        <title>A Sad Day</title>
        <link rel="self" type="text/html" href="http://geekswithblogs.net/MobileLOB/archive/2009/07/21/a-sad-day.aspx" />
        <id>http://geekswithblogs.net/MobileLOB/archive/2009/07/21/a-sad-day.aspx</id>
        <published>2009-07-21T07:55:16-05:00:00</published>
        <updated>2009-07-21T07:55:16Z</updated>
        <content type="html">&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/MobileLOB/WindowsLiveWriter/ASadDay_C3B6/image_2.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://geekswithblogs.net/images/geekswithblogs_net/MobileLOB/WindowsLiveWriter/ASadDay_C3B6/image_thumb.png" width="161" height="61" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I’ve been Subscribing to Personal Computer World Magazine, since I was 8 (I’m 37 now).&lt;/p&gt;  &lt;p&gt;Yesterday I received a letter, to say due to the economic situation that they are ceasing the publication.&lt;/p&gt;  &lt;p&gt;I think I pretty much owe my career to this magazine that has taught me so much over the years.&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.pcw.co.uk/" href="http://www.pcw.co.uk/"&gt;http://www.pcw.co.uk/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;RIP PCW&lt;/p&gt;&lt;img src="http://geekswithblogs.net/MobileLOB/aggbug/133615.aspx" width="1" height="1" /&gt;</content>
        <wfw:comment>http://geekswithblogs.net/MobileLOB/comments/133615.aspx</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://geekswithblogs.net/MobileLOB/comments/commentRss/133615.aspx</wfw:commentRss>
        <trackback:ping>http://geekswithblogs.net/MobileLOB/services/trackbacks/133615.aspx</trackback:ping>
    </entry>
    <entry>
        <title>Big in Japan, Tonight?</title>
        <link rel="self" type="text/html" href="http://geekswithblogs.net/MobileLOB/archive/2009/07/16/big-in-japan-tonight.aspx" />
        <id>http://geekswithblogs.net/MobileLOB/archive/2009/07/16/big-in-japan-tonight.aspx</id>
        <published>2009-07-16T15:26:41-05:00:00</published>
        <updated>2009-07-16T15:30:18Z</updated>
        <content type="html">&lt;p&gt;&lt;img src="http://4.bp.blogspot.com/_y9fTecAx3pI/Sl9ltadhAvI/AAAAAAAALQ0/zyiHaI8furg/s320/IMG_8015[1].PNG" /&gt; &lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;So some news on the Windows Mobile/iPhone development mission.   It seems that my plans of recouping the investment has reached Japan.&lt;/p&gt;  &lt;p&gt;Toshi, contacted me from this website - &lt;a href="http://www.apptoiphone.com/"&gt;iPhoneあっぷ使ってみた&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.apptoiphone.com/2009/07/where-u.html"&gt;http://www.apptoiphone.com/2009/07/where-u.html&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Translated version (quite funny)&lt;/p&gt;  &lt;p&gt;&lt;a title="http://babelfish.yahoo.com/translate_url?doit=done&amp;amp;tt=url&amp;amp;intl=1&amp;amp;fr=bf-home&amp;amp;trurl=http%3A%2F%2Fwww.apptoiphone.com%2F2009%2F07%2Fwhere-u.html&amp;amp;lp=ja_en&amp;amp;btnTrUrl=Translate" href="http://babelfish.yahoo.com/translate_url?doit=done&amp;amp;tt=url&amp;amp;intl=1&amp;amp;fr=bf-home&amp;amp;trurl=http%3A%2F%2Fwww.apptoiphone.com%2F2009%2F07%2Fwhere-u.html&amp;amp;lp=ja_en&amp;amp;btnTrUrl=Translate"&gt;http://babelfish.yahoo.com/translate_url?doit=done&amp;amp;tt=url&amp;amp;intl=1&amp;amp;fr=bf-home&amp;amp;trurl=http%3A%2F%2Fwww.apptoiphone.com%2F2009%2F07%2Fwhere-u.html&amp;amp;lp=ja_en&amp;amp;btnTrUrl=Translate&lt;/a&gt;&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;Its interesting to see, that I’m selling in these markets - &lt;/p&gt;  &lt;p&gt;US   &lt;br /&gt;Mexico    &lt;br /&gt;Canada    &lt;br /&gt;UK    &lt;br /&gt;European Union    &lt;br /&gt;Norway    &lt;br /&gt;Sweden    &lt;br /&gt;Denmark    &lt;br /&gt;Switzerland    &lt;br /&gt;Australia    &lt;br /&gt;New    &lt;br /&gt;Zealand    &lt;br /&gt;Japan&lt;/p&gt;  &lt;p&gt;I should add, that I didn’t have to-do anything to make this happen, submission to the AppStore made this happen.&lt;/p&gt;&lt;img src="http://geekswithblogs.net/MobileLOB/aggbug/133542.aspx" width="1" height="1" /&gt;</content>
        <wfw:comment>http://geekswithblogs.net/MobileLOB/comments/133542.aspx</wfw:comment>
        <slash:comments>2</slash:comments>
        <wfw:commentRss>http://geekswithblogs.net/MobileLOB/comments/commentRss/133542.aspx</wfw:commentRss>
        <trackback:ping>http://geekswithblogs.net/MobileLOB/services/trackbacks/133542.aspx</trackback:ping>
    </entry>
    <entry>
        <title>My Mission</title>
        <link rel="self" type="text/html" href="http://geekswithblogs.net/MobileLOB/archive/2009/07/14/my-mission.aspx" />
        <id>http://geekswithblogs.net/MobileLOB/archive/2009/07/14/my-mission.aspx</id>
        <published>2009-07-14T15:19:43-05:00:00</published>
        <updated>2009-07-14T15:19:43Z</updated>
        <content type="html">&lt;p&gt;So here’s what I’ve been up-to for the past few months.       A while back,  I developed a Windows Mobile application that allows you to send people your current location (full source available, if you’d like it).&lt;/p&gt;  &lt;p&gt;I figured this,   why don’t I try and make this application cross platform?      How hard can it be to port a C# Compact Framework application to another platform.     Of course the cost of doing this had to be small.   So I set myself a challenge.     &lt;/p&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/MobileLOB/WindowsLiveWriter/MyMission_A7E8/image_2.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://geekswithblogs.net/images/geekswithblogs_net/MobileLOB/WindowsLiveWriter/MyMission_A7E8/image_thumb.png" width="352" height="191" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;Take 6 months&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Port Mobile Location Software to iPhone. &lt;/li&gt;    &lt;li&gt;Sell application. &lt;/li&gt;    &lt;li&gt;Recover all costs so that whole exercise pays for itself. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;So I started with shelling out for a Mac Mini – which gave me an initial recovery cost of £710.  I really wanted to-do this as cheaply as possible.   So I ended up using a 15” LCD monitor,  which was a little like coding while looking through a letter box.   I guess this is the kicker,you can’t develop on a PC.    I thought long and hard about doing this and almost ditched the project on iPhone and went for Android instead.&lt;/p&gt;  &lt;p&gt;I had to literally start from the ground up and learn Objective C.    The only way I could really understand what was going on, was to follow training examples on &lt;a title="http://icodeblog.com/" href="http://icodeblog.com/"&gt;http://icodeblog.com/&lt;/a&gt;.   I found that the Apple provided examples weren’t always coded using the interface builder tool.   This let me find that I was reading how to do things one way, but the demo code didn’t support what I was being taught.&lt;/p&gt;  &lt;p&gt;Objective C, proved very frustrating.     Literally things that you can do in Compact Framework in minutes, hours of frustration in Objective C.    The developer story for iPhone is not a patch on that of Windows Mobile.    I was surprised at just how much I’ve taken for granted in Visual Studio.   Anyway I ploughed on.&lt;/p&gt;  &lt;p&gt;Finally it was time to try my application, on a real device.    For that I needed to PAY for a developer licence which worked out at £57,   taking me to £767 investment so far and by now over a months worth of evenings fighting this thing in submission.&lt;/p&gt;  &lt;p&gt;It was amazing how complex it was to setup an iPhone to run the application.   Signing keys needed to be created etc.   which just seemed to be a very messy but I guess necessary process.    I got there in the end, and could finally see the app, running on my device.  Horray.&lt;/p&gt;  &lt;p&gt;Next up (and we’re about 2 months in, by this stage),  it was time for a beta.     I was grateful to a bunch of friends who gave me their device serials numbers so I could get a limited beta up and running.   Again this proved tricky to organise signing keys etc.   Beta seemed to go well, users were able to use the application.&lt;/p&gt;  &lt;p&gt;So just ahead of the launch of iPhone OS 3.0,  I bit the bullet and submitted my application for review to be published on the AppStore.      So £767 into the deal and countless hours, it was time to see what Apple thought.  This was a tense moment, as of course Apple are well within their right to say that the application competes with their facilitates and would never be allowed on AppStore.   I wonder how often this happens?   Given that the only channel to market is through the AppStore, this could have been a BIG problem.&lt;/p&gt;  &lt;p&gt;The publication process is really slick,  you build your application with yet another set of signing keys and submit it to a online portal called iTunes Connect.    You provide screenshots,  your application description and set the price point for sale.    The experience also requires you to enter tax and bank details.&lt;/p&gt;  &lt;p&gt;So almost there, or so I thought.    Once your application is ‘in review’,  you wait for feedback.  I waited about a week, and then was told I had been rejected.    The response that came back was literally a couple of sentences with attached screenshots and a complex crash dump report.   Understanding the crash dump reports still evades me,  but I guess it showed that the application was at least being run on a real device.&lt;/p&gt;  &lt;p&gt;I had four review rejections,  which does start to become somewhat demoralizing.     This was frustrating as you don’t know how long you have to wait for each review.   I guess the reviewers are very busy people.    My rejection reasons ranged from memory leaks, to non conformance with certain elements of UI standards.   All valid points, but agonising given the waits in between.&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;While this was going on, my 3 month old Mac Mini had a hard drive go faulty (the dreaded clicks of death), so its gone back for repair.   Fortunately I had a full backup, but I await to see what that means to re-setup the signing keys.&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;So anyway,  here I am,  3 months in,  £767 down, long hours spent and finally my app is selling &lt;strong&gt;today for 59p&lt;/strong&gt;.   I’m very proud of my efforts and I can now, say I’m a cross platform mobile developer.&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;Please buy my App… &lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=319572851&amp;amp;mt=8"&gt;http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=319572851&amp;amp;mt=8&lt;/a&gt;&lt;/p&gt;&lt;img src="http://geekswithblogs.net/MobileLOB/aggbug/133488.aspx" width="1" height="1" /&gt;</content>
        <wfw:comment>http://geekswithblogs.net/MobileLOB/comments/133488.aspx</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://geekswithblogs.net/MobileLOB/comments/commentRss/133488.aspx</wfw:commentRss>
        <trackback:ping>http://geekswithblogs.net/MobileLOB/services/trackbacks/133488.aspx</trackback:ping>
    </entry>
    <entry>
        <title>GNM = Geocaches Near Me</title>
        <link rel="self" type="text/html" href="http://geekswithblogs.net/MobileLOB/archive/2009/06/20/gnm--geocaches-near-me.aspx" />
        <id>http://geekswithblogs.net/MobileLOB/archive/2009/06/20/gnm--geocaches-near-me.aspx</id>
        <published>2009-06-20T06:11:14-05:00:00</published>
        <updated>2009-06-20T06:11:14Z</updated>
        <content type="html">&lt;p&gt;Based on Yesterday’s post.   I thought we could take the new HTML 5, featured offered by Android and iPhone OS 3.0 and do something almost useful with it.&lt;/p&gt;  &lt;p&gt;So sticking to things close to my heart,  I decided to expand my example and build a simple web-page that finds geo-caches near where you are.&lt;/p&gt;  &lt;p&gt;Use it here.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.binaryrefinery.com/gnm.htm"&gt;http://www.binaryrefinery.com/gnm.htm&lt;/a&gt;&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;It works really well.&lt;/p&gt;  &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:11c08f17-beaa-4f88-9c6e-3e0b39a00a0a" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/iPhone" rel="tag"&gt;iPhone&lt;/a&gt;,&lt;a href="http://technorati.com/tags/HTML+5" rel="tag"&gt;HTML 5&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Geocaching" rel="tag"&gt;Geocaching&lt;/a&gt;,&lt;a href="http://technorati.com/tags/OS+3" rel="tag"&gt;OS 3&lt;/a&gt;&lt;/div&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;Source here - &lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;div class="csharpcode"&gt;   &lt;pre class="alt"&gt;&amp;lt;html&amp;gt;&lt;/pre&gt;

  &lt;pre&gt; &lt;/pre&gt;

  &lt;pre class="alt"&gt;&amp;lt;head&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&amp;lt;title&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;Geocaching Lookup&lt;/pre&gt;

  &lt;pre&gt;&amp;lt;/title&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&amp;lt;script&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;navigator.geolocation.getCurrentPosition(foundLocation, noLocation);&lt;/pre&gt;

  &lt;pre class="alt"&gt; &lt;/pre&gt;

  &lt;pre&gt;function foundLocation(position)&lt;/pre&gt;

  &lt;pre class="alt"&gt;{&lt;/pre&gt;

  &lt;pre&gt;  var lat = position.coords.latitude;&lt;/pre&gt;

  &lt;pre class="alt"&gt;  var &lt;span class="kwrd"&gt;long&lt;/span&gt; = position.coords.longitude;&lt;/pre&gt;

  &lt;pre&gt;  document.location.href=&lt;span class="str"&gt;"http://www.geocaching.com/seek/nearest.aspx?origin_lat="&lt;/span&gt;+lat+&lt;span class="str"&gt;"&amp;amp;origin_long="&lt;/span&gt;+&lt;span class="kwrd"&gt;long&lt;/span&gt;+&lt;span class="str"&gt;"&amp;amp;dist=100&amp;amp;submit3=Search"&lt;/span&gt;;&lt;/pre&gt;

  &lt;pre class="alt"&gt; &lt;/pre&gt;

  &lt;pre&gt;}&lt;/pre&gt;

  &lt;pre class="alt"&gt;function noLocation()&lt;/pre&gt;

  &lt;pre&gt;{&lt;/pre&gt;

  &lt;pre class="alt"&gt;  alert(&lt;span class="str"&gt;'Could not find location'&lt;/span&gt;);&lt;/pre&gt;

  &lt;pre&gt;}&lt;/pre&gt;

  &lt;pre class="alt"&gt; &lt;/pre&gt;

  &lt;pre&gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt; &lt;/pre&gt;

  &lt;pre&gt;&amp;lt;/head&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt; &lt;/pre&gt;

  &lt;pre&gt;&amp;lt;body&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&amp;lt;h1&amp;gt;Geocaching Near Me&amp;lt;/h1&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&amp;lt;/body&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&amp;lt;/html&amp;gt;&lt;/pre&gt;
&lt;/div&gt;&lt;img src="http://geekswithblogs.net/MobileLOB/aggbug/132948.aspx" width="1" height="1" /&gt;</content>
        <wfw:comment>http://geekswithblogs.net/MobileLOB/comments/132948.aspx</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://geekswithblogs.net/MobileLOB/comments/commentRss/132948.aspx</wfw:commentRss>
        <trackback:ping>http://geekswithblogs.net/MobileLOB/services/trackbacks/132948.aspx</trackback:ping>
    </entry>
</feed>