<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>I Am Not Myself</title>
	<atom:link href="http://iamnotmyself.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://iamnotmyself.com</link>
	<description>Bills.Pay(Developer.Skills).ShouldBeTrue()</description>
	<lastBuildDate>Fri, 25 May 2012 15:26:37 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='iamnotmyself.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>I Am Not Myself</title>
		<link>http://iamnotmyself.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://iamnotmyself.com/osd.xml" title="I Am Not Myself" />
	<atom:link rel='hub' href='http://iamnotmyself.com/?pushpress=hub'/>
		<item>
		<title>Today I Learned: You Cannot Transfer Ownership of iOS Applications</title>
		<link>http://iamnotmyself.com/2012/05/25/today-i-learned-you-cannot-transfer-ownership-of-ios-applications/</link>
		<comments>http://iamnotmyself.com/2012/05/25/today-i-learned-you-cannot-transfer-ownership-of-ios-applications/#comments</comments>
		<pubDate>Fri, 25 May 2012 15:13:20 +0000</pubDate>
		<dc:creator>Bobby Johnson</dc:creator>
				<category><![CDATA[Commentary]]></category>
		<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://iamnotmyself.com/?p=1161</guid>
		<description><![CDATA[I have recently completed my first iOS application on behalf of Furnishly, the local furniture exchange. All the release bugs have been worked out and the app is available on the app store. Yesterday, I started looking into how to transfer all the assets over to the owner of Furnishly so he could continue development [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iamnotmyself.com&#038;blog=21373990&#038;post=1161&#038;subd=oncodebynotmyself&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I have recently completed my first iOS application on behalf of Furnishly, the local furniture exchange. All the release bugs have been worked out and the app is available on the app store. Yesterday, I started looking into how to transfer all the assets over to the owner of Furnishly so he could continue development and review download data on iTunes connect.</p>
<p>On github, this was a snap. Simply go into the administration section for the private repository, scroll down to the Danger Zone and click the transfer button under transfer ownership. Then type in the name of the repository and the new owners user name and hit transfer. Simple, easy.</p>
<p>In iTunes connect, it is a completely different story. There is no obvious way to transfer the application in the UI. Searching around in the FAQ surfaced this gem.</p>
<blockquote><p>
<strong>I sold my app to another developer and can no longer distribute it on the App Store. Can I transfer the app to the new developer&#8217;s iTunes Connect account? </strong><br />
No, you can’t transfer the app to another developer account on iTunes Connect. To add the app to another account, remove the app from the current account and upload it to the new iTunes Connect account.</p>
<p>Note that uploading the app to a new iTunes Connect account will disable current customers from receiving automatic and free updates of your application. All customer reviews, rating, and ranking information will be reset. You will not be able to reuse the app name and SKU in the old account. If you have uploaded a binary or used the app with the iAd Network, your Bundle ID will not be reusable either.
</p></blockquote>
<p>So apparently the way to transfer ownership of this app to the non technical owner is to:</p>
<ol>
<li>ask him to create a apple developer account</li>
<li>wait to get accepted</li>
<li>generate new application keys</li>
<li>rebuild the application with the new keys</li>
<li>delete the old application build from my account</li>
<li>resubmit the new application via his account</li>
</ol>
<p>Oh and all the folks that have downloaded the app in the mean time from my account are pretty much never going to get an update. All the ratings you might have received will disappear.</p>
<p>Seriously this is a horrible way to handle what seems to me would be a common occurrence. Did Zinga have to follow this process when they bought DrawSomething?</p>
<p>Anyone have advice?</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oncodebynotmyself.wordpress.com/1161/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oncodebynotmyself.wordpress.com/1161/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oncodebynotmyself.wordpress.com/1161/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oncodebynotmyself.wordpress.com/1161/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/oncodebynotmyself.wordpress.com/1161/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/oncodebynotmyself.wordpress.com/1161/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/oncodebynotmyself.wordpress.com/1161/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/oncodebynotmyself.wordpress.com/1161/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oncodebynotmyself.wordpress.com/1161/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oncodebynotmyself.wordpress.com/1161/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oncodebynotmyself.wordpress.com/1161/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oncodebynotmyself.wordpress.com/1161/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oncodebynotmyself.wordpress.com/1161/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oncodebynotmyself.wordpress.com/1161/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iamnotmyself.com&#038;blog=21373990&#038;post=1161&#038;subd=oncodebynotmyself&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://iamnotmyself.com/2012/05/25/today-i-learned-you-cannot-transfer-ownership-of-ios-applications/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3f533296d128037c9af8381221f78dd6?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">notmyself74</media:title>
		</media:content>
	</item>
		<item>
		<title>Using System.Threading.Tasks On MonoTouch</title>
		<link>http://iamnotmyself.com/2012/05/13/using-system-threading-tasks-on-monotouch/</link>
		<comments>http://iamnotmyself.com/2012/05/13/using-system-threading-tasks-on-monotouch/#comments</comments>
		<pubDate>Sun, 13 May 2012 20:40:54 +0000</pubDate>
		<dc:creator>Bobby Johnson</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[MonoTouch]]></category>

		<guid isPermaLink="false">http://iamnotmyself.com/?p=1159</guid>
		<description><![CDATA[I ran into an issue this week where I was attempting to load data from a web service asynchronously using System.Threading.Tasks on MonoTouch. I was able to fire the task off but kept getting an error trying to update UI elements when callback was fired. After a little beating my head against a wall, I [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iamnotmyself.com&#038;blog=21373990&#038;post=1159&#038;subd=oncodebynotmyself&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I ran into an issue this week where I was attempting to load data from a web service asynchronously using  System.Threading.Tasks on MonoTouch. I was able to fire the task off but kept getting an error trying to update UI elements when callback was fired.</p>
<p>After a little beating my head against a wall, I took a walk and grew a neuron and this is what I came up with to resolve the issue. Note the call to InvokeOnMainThread.</p>
<p><pre class="brush: csharp;">
private IEnumerable&lt;Product&gt; GetProducts(Position position)
{
	return productsService.GetProductsNear(position);
}

private void BeginGetProducts()
{
	Activity.PushNetworkActive();
	var scheduler = TaskScheduler.FromCurrentSynchronizationContext();
	
	Task.Factory.StartNew(() =&gt; GetProducts(currentPosition))
			.ContinueWith(OnProducts, scheduler);
}

private void OnProducts(Task&lt;IEnumerable&lt;Product&gt;&gt; task)
{
	if(task.IsFaulted)
		HandleException(productsTask.Exception);
	else 
	{
		InvokeOnMainThread(() =&gt; {
			this.products = task.Result;
			ShowProducts();
		});
	}
	Activity.PopNetworkActive();
}
</pre></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oncodebynotmyself.wordpress.com/1159/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oncodebynotmyself.wordpress.com/1159/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oncodebynotmyself.wordpress.com/1159/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oncodebynotmyself.wordpress.com/1159/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/oncodebynotmyself.wordpress.com/1159/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/oncodebynotmyself.wordpress.com/1159/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/oncodebynotmyself.wordpress.com/1159/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/oncodebynotmyself.wordpress.com/1159/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oncodebynotmyself.wordpress.com/1159/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oncodebynotmyself.wordpress.com/1159/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oncodebynotmyself.wordpress.com/1159/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oncodebynotmyself.wordpress.com/1159/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oncodebynotmyself.wordpress.com/1159/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oncodebynotmyself.wordpress.com/1159/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iamnotmyself.com&#038;blog=21373990&#038;post=1159&#038;subd=oncodebynotmyself&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://iamnotmyself.com/2012/05/13/using-system-threading-tasks-on-monotouch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3f533296d128037c9af8381221f78dd6?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">notmyself74</media:title>
		</media:content>
	</item>
		<item>
		<title>Using the Implicit Operator in C# for Maximum Nerdy Good Times</title>
		<link>http://iamnotmyself.com/2012/03/28/using-the-implicit-operator-in-c-for-maximum-nerdy-good-times/</link>
		<comments>http://iamnotmyself.com/2012/03/28/using-the-implicit-operator-in-c-for-maximum-nerdy-good-times/#comments</comments>
		<pubDate>Wed, 28 Mar 2012 18:06:22 +0000</pubDate>
		<dc:creator>Bobby Johnson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://iamnotmyself.com/?p=1145</guid>
		<description><![CDATA[My current team works with a lot of data. We represent that data with explicit types. For example if a string represents a Name we create an explicit type called Name like so: This makes things nice for testing purposes as these value structs are comparable for free and are clearly named what the value [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iamnotmyself.com&#038;blog=21373990&#038;post=1145&#038;subd=oncodebynotmyself&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>My current team works with a lot of data. We represent that data with explicit types. For example if a string represents a Name we create an explicit type called Name like so:</p>
<p><pre class="brush: csharp;">
public struct Name
{
  private readonly string _string;
  public Name(string name){ _string = name; }
  public override string ToString() { return _string } 
}
</pre></p>
<p>This makes things nice for testing purposes as these value structs are comparable for free and are clearly named what the value represents. The downside is if you need to set up a bunch of test data for a unit test you can run into code that looks like this:</p>
<p><pre class="brush: csharp;">
 Name name = new Name(&quot;Name&quot;);
 IEnumerable&lt;Name&gt; names = new[] { new Name(&quot;Tom&quot;), new Name(&quot;Dick&quot;), new Name(&quot;Harry&quot;), }
</pre></p>
<p>This will quickly give you carpal tunnel with all the ceremony required to create all the instances. It would be nice if we could reduce some of the noise and we can via use of the implicit operator. All we need to do is add the following operator logic to our struct.</p>
<p><pre class="brush: csharp;">
public struct Name
{
  private readonly string _string;
  public Name(string name){ _string = name; }
  public override string ToString() { return _string } 
  public static implicit operator Name(string name) { return new Name(name); }
}
</pre></p>
<p>What does this buy us? How does the following syntax strike you?</p>
<p><pre class="brush: csharp;">
 Name name = &quot;Name&quot;;
 IEnumerable&lt;Name&gt; names = new[] { &quot;Tom&quot;, &quot;Dick&quot;, &quot;Harry&quot;, }
</pre></p>
<p>We are used to using implicit typing from on the left hand side of a statement, were you aware that it can be used on the right hand side? I wasn&#8217;t. But basically this is how collection initializers work. Nice eh?</p>
<p>Thanks to Robert Ream for showing me this. It was fun working with someone with such a deep understanding of the language and functional development, even if it was a brief time.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oncodebynotmyself.wordpress.com/1145/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oncodebynotmyself.wordpress.com/1145/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oncodebynotmyself.wordpress.com/1145/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oncodebynotmyself.wordpress.com/1145/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/oncodebynotmyself.wordpress.com/1145/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/oncodebynotmyself.wordpress.com/1145/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/oncodebynotmyself.wordpress.com/1145/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/oncodebynotmyself.wordpress.com/1145/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oncodebynotmyself.wordpress.com/1145/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oncodebynotmyself.wordpress.com/1145/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oncodebynotmyself.wordpress.com/1145/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oncodebynotmyself.wordpress.com/1145/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oncodebynotmyself.wordpress.com/1145/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oncodebynotmyself.wordpress.com/1145/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iamnotmyself.com&#038;blog=21373990&#038;post=1145&#038;subd=oncodebynotmyself&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://iamnotmyself.com/2012/03/28/using-the-implicit-operator-in-c-for-maximum-nerdy-good-times/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3f533296d128037c9af8381221f78dd6?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">notmyself74</media:title>
		</media:content>
	</item>
		<item>
		<title>PowerShell, msysgit 1.7.9 and Permission denied (publickey) Errors</title>
		<link>http://iamnotmyself.com/2012/03/20/powershell-msysgit-1-7-9-and-permission-denied-publickey-errors/</link>
		<comments>http://iamnotmyself.com/2012/03/20/powershell-msysgit-1-7-9-and-permission-denied-publickey-errors/#comments</comments>
		<pubDate>Tue, 20 Mar 2012 14:51:38 +0000</pubDate>
		<dc:creator>Bobby Johnson</dc:creator>
				<category><![CDATA[Random]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://iamnotmyself.com/?p=1131</guid>
		<description><![CDATA[TLDR: Add &#8220;$env:home = resolve-path ~&#8221; to your PowerShell profile. I recently updated my work Virtual Machine to the latest release of msysgit 1.7.9 to resolve some issues I was having with global settings not being obeyed. After the installation I noticed that I was no longer able to update repositories from PowerShell. The output [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iamnotmyself.com&#038;blog=21373990&#038;post=1131&#038;subd=oncodebynotmyself&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong>TLDR:</strong> Add &#8220;$env:home = resolve-path ~&#8221; to your PowerShell profile.</p>
<p>I recently updated my work Virtual Machine to the latest release of <a href="http://code.google.com/p/msysgit/" target="_blank">msysgit 1.7.9</a> to resolve some issues I was having with global settings not being obeyed. After the installation I noticed that I was no longer able to update repositories from <a href="http://technet.microsoft.com/en-us/library/bb978526.aspx" target="_blank">PowerShell</a>. The output I was getting looked something like this:</p>
<p><pre class="brush: plain;">
GIT [dirkdiggler] on [master] (clean) | C:\projects\foo
-&gt; git pull
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
</pre></p>
<p>This was unexpected and the first thing I thought of was the recent security issue with GitHub, and maybe my work key needed to be validated. I checked GitHub and everything seemed to be set up correctly. I even went so far as to generate new keys with no success.</p>
<p>Next up, it occurred to me to try connecting via git bash.</p>
<p><pre class="brush: plain;">
dirkdiggler@DIRKDIGGLER-VM /c/projects/foo (master)
$ ssh git@github.com
Hi dirkdiggler! You've successfully authenticated, but GitHub does not provide shell access.
Connection to github.com closed.
</pre></p>
<p>Bash seems to be working fine. I then started troubleshooting my connection from PowerShell. I tried testing ssh first with the following command.</p>
<p><pre class="brush: plain;">
GIT [dirkdiggler] on [master] (clean) | C:\projects\foo
-&gt; ssh git@github.com
Permission denied (publickey).
</pre></p>
<p>So it looks like the problem was not with git but with establishing an ssh connection to GitHub. I wanted to see exactly what was happening when trying to connect via ssh, so I ran the following command with enables verbose logging of the connection.</p>
<p><pre class="brush: plain;">
GIT [dirkdiggler] on [master] (clean) | C:\projects\foo
-&gt; &lt;b&gt;ssh -v git@github.com&lt;/b&gt;
OpenSSH_4.6p1, OpenSSL 0.9.8e 23 Feb 2007
debug1: Connecting to github.com [207.97.227.239] port 22.
debug1: Connection established.
debug1: identity file /.ssh/identity type -1
debug1: identity file /.ssh/id_rsa type -1
debug1: identity file /.ssh/id_dsa type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.1p1 Debian-5github2
debug1: match: OpenSSH_5.1p1 Debian-5github2 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_4.6
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server-&gt;client aes128-cbc hmac-md5 none
debug1: kex: client-&gt;server aes128-cbc hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024&lt;1024&lt;8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Host 'github.com' is known and matches the RSA host key.
debug1: Found key in /.ssh/known_hosts:1
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Trying private key: /.ssh/identity
debug1: Trying private key: /.ssh/id_rsa
debug1: Trying private key: /.ssh/id_dsa
debug1: No more authentication methods to try.
Permission denied (publickey).
</pre></p>
<p>This output did not give me any immediate ideas on the problem but I thought I might try the same command from git bash. I won&#8217;t include the full output here, but I did notice something different right away. Check out the following lines from the output. Compare them to lines 6-8 above.</p>
<p><pre class="brush: plain;">
debug1: identity file /c/Users/MGALFAPAIR/.ssh/identity type -1
debug1: identity file /c/Users/MGALFAPAIR/.ssh/id_rsa type 1
debug1: identity file /c/Users/MGALFAPAIR/.ssh/id_dsa type -1
</pre></p>
<p>So it looks like ssh running under PowerShell is looking for my public/private key pair in a different directory than under bash. Doing a quick google search I found that an environment variable named home is used when determining the path to look for keys. I went back to PowerShell and checked for the environment variable like so.</p>
<p><pre class="brush: plain;">
GIT [dirkdiggler] on [master] (clean) | C:\projects\foo
-&gt; Write-Host $env:home

</pre></p>
<p>No home variable set. So I set it like so.</p>
<p><pre class="brush: plain;">
GIT [dirkdiggler] on [master] (clean) | C:\projects\foo
-&gt; $env:home = Resolve-Path ~

GIT [dirkdiggler] on [master] (clean) | C:\projects\foo
-&gt; Write-Host $env:home
C:\Users\MGALFAPAIR
</pre></p>
<p>Running the ssh test again, I am now able to connect. Adding the command to my PowerShell profile sets it automatically every time I start PowerShell resolving the problem completely.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oncodebynotmyself.wordpress.com/1131/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oncodebynotmyself.wordpress.com/1131/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oncodebynotmyself.wordpress.com/1131/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oncodebynotmyself.wordpress.com/1131/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/oncodebynotmyself.wordpress.com/1131/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/oncodebynotmyself.wordpress.com/1131/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/oncodebynotmyself.wordpress.com/1131/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/oncodebynotmyself.wordpress.com/1131/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oncodebynotmyself.wordpress.com/1131/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oncodebynotmyself.wordpress.com/1131/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oncodebynotmyself.wordpress.com/1131/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oncodebynotmyself.wordpress.com/1131/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oncodebynotmyself.wordpress.com/1131/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oncodebynotmyself.wordpress.com/1131/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iamnotmyself.com&#038;blog=21373990&#038;post=1131&#038;subd=oncodebynotmyself&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://iamnotmyself.com/2012/03/20/powershell-msysgit-1-7-9-and-permission-denied-publickey-errors/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3f533296d128037c9af8381221f78dd6?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">notmyself74</media:title>
		</media:content>
	</item>
		<item>
		<title>Glenn Block Node.js on Windows Azure Video</title>
		<link>http://iamnotmyself.com/2012/03/09/glenn-block-node-js-on-windows-azure-video/</link>
		<comments>http://iamnotmyself.com/2012/03/09/glenn-block-node-js-on-windows-azure-video/#comments</comments>
		<pubDate>Sat, 10 Mar 2012 03:27:33 +0000</pubDate>
		<dc:creator>Bobby Johnson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://iamnotmyself.com/?p=1120</guid>
		<description><![CDATA[Overview If I told you that you can build node.js applications in Windows Azure would you believe me? Come to this session and I’ll show you how. You’ll see how take those existing node apps and easily deploy them to Windows Azure from any platform. You’ll see how you can make yours node apps more [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iamnotmyself.com&#038;blog=21373990&#038;post=1120&#038;subd=oncodebynotmyself&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h2>Overview</h2>
<p>If I told you that you can build <a href="http://nodejs.org/" target="_blank">node.js</a> applications in <a href="http://www.windowsazure.com/en-us/" target="_blank">Windows Azure</a> would you believe me? Come to this session and I’ll show you how. You’ll see how take those existing node apps and easily deploy them to Windows Azure from any platform. You’ll see how you can make yours node apps more robust by leveraging Azure services like storage and service bus, all of which are available in our new “azure” npm module. You’ll also see how to take advantage of cool tools like <a href="http://socket.io/" target="_blank">socket.io</a> for WebSockets, node-inspector for debugging and <a href="http://c9.io/" target="_blank">Cloud9</a> for an awesome online development experience.</p>
<h2>About Glenn</h2>
<p>Glenn is a PM at Microsoft working on support for node.js in Windows and Azure. Glenn has a breadth of experience both both inside and outside Microsoft developing software solutions for ISVs and the enterprise. Glenn has been a passionate supporter of open source and has been active in involving folks from the community in the development of software at Microsoft. This has included shipping products under open source licenses, as well as assisting other teams looking to do so. Glenn is also a lover of community and a frequent speaker at local and international events and user groups.</p>
<p>Glenn&#8217;s blog can be found on <a href='http://codebetter.com/glennblock/'>CodeBetter</a> or you can follow him on <a href='twitter.com/gblock'>twitter</a> at you own risk.</p>
<h2>Video</h2>
<div class='embed-vimeo' style='text-align:center;'><iframe src='http://player.vimeo.com/video/38254593' width='600' height='400' frameborder='0'></iframe></div>
<h2>Slides</h2>
<iframe src='http://www.slideshare.net/slideshow/embed_code/11944312' width='600' height='492'></iframe>
<h2>Source</h2>
<p>The <a href="https://github.com/Adron/AWS-Toolkit-Samples" target="_blank">source for this presentation</a> can be found on <a href="https://github.com/Adron" target="_blank">Adron&#8217;s github account</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oncodebynotmyself.wordpress.com/1120/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oncodebynotmyself.wordpress.com/1120/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oncodebynotmyself.wordpress.com/1120/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oncodebynotmyself.wordpress.com/1120/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/oncodebynotmyself.wordpress.com/1120/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/oncodebynotmyself.wordpress.com/1120/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/oncodebynotmyself.wordpress.com/1120/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/oncodebynotmyself.wordpress.com/1120/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oncodebynotmyself.wordpress.com/1120/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oncodebynotmyself.wordpress.com/1120/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oncodebynotmyself.wordpress.com/1120/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oncodebynotmyself.wordpress.com/1120/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oncodebynotmyself.wordpress.com/1120/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oncodebynotmyself.wordpress.com/1120/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iamnotmyself.com&#038;blog=21373990&#038;post=1120&#038;subd=oncodebynotmyself&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://iamnotmyself.com/2012/03/09/glenn-block-node-js-on-windows-azure-video/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3f533296d128037c9af8381221f78dd6?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">notmyself74</media:title>
		</media:content>
	</item>
		<item>
		<title>SSDNUG Presents: Glenn Block &#8211; Unlock your inner node in the cloud with Windows Azure</title>
		<link>http://iamnotmyself.com/2012/03/02/ssdnug-presents-glenn-block-unlock-your-inner-node-in-the-cloud-with-windows-azure/</link>
		<comments>http://iamnotmyself.com/2012/03/02/ssdnug-presents-glenn-block-unlock-your-inner-node-in-the-cloud-with-windows-azure/#comments</comments>
		<pubDate>Fri, 02 Mar 2012 17:15:08 +0000</pubDate>
		<dc:creator>Bobby Johnson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://iamnotmyself.com/?p=1110</guid>
		<description><![CDATA[The South Sound .NET Users group is proud to present Glenn Block on Thursday March tth at 7:00PM at the Olympia Center in the heart of downtown Olympia, WA. If I told you that you can build node.js applications in Windows Azure would you believe me? Come to this session and I’ll show you how. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iamnotmyself.com&#038;blog=21373990&#038;post=1110&#038;subd=oncodebynotmyself&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://ssdotnet.org/" target="_blank">South Sound .NET Users group</a> is proud to present Glenn Block on Thursday March tth at 7:00PM at the Olympia Center in the heart of downtown Olympia, WA.</p>
<p><a href="http://oncodebynotmyself.files.wordpress.com/2011/03/glenwhipit-full.jpg"><img class="alignleft size-medium wp-image-463" title="glenwhipit-full" src="http://oncodebynotmyself.files.wordpress.com/2011/03/glenwhipit-full.jpg?w=300&h=224" alt="" width="300" height="224" /></a>If I told you that you can build <a href="http://nodejs.org/" target="_blank">node.js</a> applications in <a href="http://www.windowsazure.com/en-us/" target="_blank">Windows Azure</a> would you believe me? Come to this session and I’ll show you how. You’ll see how take those existing node apps and easily deploy them to Windows Azure from any platform. You’ll see how you can make yours node apps more robust by leveraging Azure services like storage and service bus, all of which are available in our new “azure” npm module. You’ll also see how to take advantage of cool tools like <a href="http://socket.io/" target="_blank">socket.io</a> for WebSockets, node-inspector for debugging and <a href="http://c9.io/" target="_blank">Cloud9</a> for an awesome online development experience.</p>
<p>Glenn is a PM at Microsoft working on support for node.js in Windows and Azure. Glenn has a breadth of experience both both inside and outside Microsoft developing software solutions for ISVs and the enterprise. Glenn has been a passionate supporter of open source and has been active in involving folks from the community in the development of software at Microsoft. This has included shipping products under open source licenses, as well as assisting other teams looking to do so. Glenn is also a lover of community and a frequent speaker at local and international events and user groups.</p>
<p>Glenn&#8217;s blog can be found on <a href='http://blogs.msdn.com/gblock'>msdn</a> or you can follow him on <a href='twitter.com/gblock'>twitter</a> at you own risk.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oncodebynotmyself.wordpress.com/1110/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oncodebynotmyself.wordpress.com/1110/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oncodebynotmyself.wordpress.com/1110/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oncodebynotmyself.wordpress.com/1110/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/oncodebynotmyself.wordpress.com/1110/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/oncodebynotmyself.wordpress.com/1110/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/oncodebynotmyself.wordpress.com/1110/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/oncodebynotmyself.wordpress.com/1110/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oncodebynotmyself.wordpress.com/1110/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oncodebynotmyself.wordpress.com/1110/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oncodebynotmyself.wordpress.com/1110/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oncodebynotmyself.wordpress.com/1110/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oncodebynotmyself.wordpress.com/1110/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oncodebynotmyself.wordpress.com/1110/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iamnotmyself.com&#038;blog=21373990&#038;post=1110&#038;subd=oncodebynotmyself&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://iamnotmyself.com/2012/03/02/ssdnug-presents-glenn-block-unlock-your-inner-node-in-the-cloud-with-windows-azure/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3f533296d128037c9af8381221f78dd6?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">notmyself74</media:title>
		</media:content>

		<media:content url="http://oncodebynotmyself.files.wordpress.com/2011/03/glenwhipit-full.jpg?w=300" medium="image">
			<media:title type="html">glenwhipit-full</media:title>
		</media:content>
	</item>
		<item>
		<title>Sinister Bug is Sinister</title>
		<link>http://iamnotmyself.com/2012/01/24/sinister-bug-is-sinister/</link>
		<comments>http://iamnotmyself.com/2012/01/24/sinister-bug-is-sinister/#comments</comments>
		<pubDate>Tue, 24 Jan 2012 16:11:45 +0000</pubDate>
		<dc:creator>Bobby Johnson</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://iamnotmyself.com/?p=1099</guid>
		<description><![CDATA[Can you spot the bug in this flags enumeration? In case you can&#8217;t spot it with the naked eye (I couldn&#8217;t, coworker Alex caught it.), watch this video. Pay attention to the binary display as I enter in the values of my enumeration above. Notice how the bit is steadily walking down the display? What [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iamnotmyself.com&#038;blog=21373990&#038;post=1099&#038;subd=oncodebynotmyself&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Can you spot the bug in this flags enumeration?</p>
<p><pre class="brush: csharp;">
    [Flags]
    public enum ItemCoreChangeType
    {
        ViewStyleChanged = 1,
        VaryByStructureChanged = 2,
        LayersChanged = 4,
        LayerContentsChanged = 8,
        PropertiesChanged = 16,
        ErrorsChanged = 32,
        ChangeHistoryCleared = 64,
        EditableCommentChanged = 128,
        NeedsValidation = 256,
        AffectsPropertyChangeHistory = 512,
        AffectsLayerChangeHistory = 1024,
        PushFormatters = 2048,
        ResetValueGroups = 4096,
        SkipChangeTrackingUpdate = 8092,
        StatusChanged = 16384,
        Flexible2DIndicesChanged = 32768,
    }
</pre></p>
<p>In case you can&#8217;t spot it with the naked eye (I couldn&#8217;t, coworker Alex caught it.), watch this video. Pay attention to the binary display as I enter in the values of my enumeration above. Notice how the bit is steadily walking down the display? What happens when I hit SkipChangeTrackingUpdate?</p>
<div class='embed-vimeo' style='text-align:center;'><iframe src='http://player.vimeo.com/video/35576092' width='600' height='400' frameborder='0'></iframe></div>
<p>So it seems that when I use the SkipChangeTrackingUpdate value I am actually sending many of the other values in this flags enumeration. Nasty bug to track down eh?</p>
<p>What makes this bug so sinister is just how long it took to find. Using the blame command in git, I see the following result. The names have been changed to protect the guilty.</p>
<blockquote><p>72fe38b4 (dirk.diggler 2010-02-10 23:49:28 -0800 33)         SkipChangeTrackingUpdate = 8092,</p></blockquote>
<p>So this particular flaw has been in the code base unnoticed for close to two years. Two years worth of code has been written with the assumption that SkipChangeTrackingUpdate actually sends the value of <strong>9</strong> different flag values. Fixing the flag value could potentially effect any part of that code. </p>
<p><strong>What do?</strong></p>
<p>Lucky for me, a search for that flag in the entire code base returned 3 usages, one of which was the definition of the flag, one was the usage of the flag and one consuming the flag.</p>
<p>Crisis averted but it could have been much worse.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oncodebynotmyself.wordpress.com/1099/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oncodebynotmyself.wordpress.com/1099/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oncodebynotmyself.wordpress.com/1099/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oncodebynotmyself.wordpress.com/1099/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/oncodebynotmyself.wordpress.com/1099/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/oncodebynotmyself.wordpress.com/1099/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/oncodebynotmyself.wordpress.com/1099/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/oncodebynotmyself.wordpress.com/1099/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oncodebynotmyself.wordpress.com/1099/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oncodebynotmyself.wordpress.com/1099/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oncodebynotmyself.wordpress.com/1099/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oncodebynotmyself.wordpress.com/1099/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oncodebynotmyself.wordpress.com/1099/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oncodebynotmyself.wordpress.com/1099/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iamnotmyself.com&#038;blog=21373990&#038;post=1099&#038;subd=oncodebynotmyself&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://iamnotmyself.com/2012/01/24/sinister-bug-is-sinister/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3f533296d128037c9af8381221f78dd6?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">notmyself74</media:title>
		</media:content>
	</item>
		<item>
		<title>SSDNUG Presents: James Thigpen &#8211; Moar Cats Please: Software Development at Cheezburger</title>
		<link>http://iamnotmyself.com/2012/01/18/ssdnug-presents-james-thigpen-moar-cats-please-software-development-at-cheezburger/</link>
		<comments>http://iamnotmyself.com/2012/01/18/ssdnug-presents-james-thigpen-moar-cats-please-software-development-at-cheezburger/#comments</comments>
		<pubDate>Wed, 18 Jan 2012 18:26:03 +0000</pubDate>
		<dc:creator>Bobby Johnson</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Local]]></category>

		<guid isPermaLink="false">http://iamnotmyself.com/?p=1093</guid>
		<description><![CDATA[The South Sound .NET Users group is proud to present James Thigpen on Thursday Feburary 9th at 7:00PM at the Olympia Center in the heart of downtown Olympia, WA. There is a lot of talk in an abstract sense about how agile software practices work. James is going to talk about how Cheezburger does agile [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iamnotmyself.com&#038;blog=21373990&#038;post=1093&#038;subd=oncodebynotmyself&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://ssdotnet.org/" target="_blank">South Sound .NET Users group</a> is proud to present James Thigpen on Thursday Feburary 9th at 7:00PM at the Olympia Center in the heart of downtown Olympia, WA.</p>
<p><a href="http://oncodebynotmyself.files.wordpress.com/2012/01/img_9545.jpg"><img class="alignleft size-medium wp-image-1094" title="IMG_9545" src="http://oncodebynotmyself.files.wordpress.com/2012/01/img_9545.jpg?w=300&h=300" alt="" width="300" height="300" /></a></p>
<p>There is a lot of talk in an abstract sense about how agile software practices work. James is going to talk about how Cheezburger does agile with a remote team spread across the US and Europe. This isn&#8217;t theory, this is how Cheezburger ships code every day. Expect to hear what has worked and what failed.</p>
<p>Cheezburger is heavily invested in TDD, Continuous Deployment, Automated Testing, Split Testing, agile/lean methodologies, and continuous improvement. They have doubled the size of their team in the past year and lived to tell the tale. Cheezburger usually ships code more than ten times a day without interrupting the 1.8 million daily active users visiting their sites and they have a lot of fun doing it.</p>
<p>James Thigpen is the Director of Engineering at <a href="http://www.cheezburger.com/" target="_blank">Cheezburger Network</a>, one of the largest online humor companies in the world. James has a deep passion for agile and lean software development practices. He has a wide variety of experience developing software and leading teams in industries such as municipal inventory, biomedical imaging, IT management, and online media.</p>
<p>If you missed the January meeting with Adron Hall, you can still <a title="Adron Hall Visual Studio AWS Toolkit &amp; SDK Presentation Video" href="http://iamnotmyself.com/2012/01/14/adron-hall-visual-studio-aws-toolkit-sdk-presentation-video/" target="_blank">catch it online</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oncodebynotmyself.wordpress.com/1093/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oncodebynotmyself.wordpress.com/1093/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oncodebynotmyself.wordpress.com/1093/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oncodebynotmyself.wordpress.com/1093/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/oncodebynotmyself.wordpress.com/1093/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/oncodebynotmyself.wordpress.com/1093/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/oncodebynotmyself.wordpress.com/1093/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/oncodebynotmyself.wordpress.com/1093/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oncodebynotmyself.wordpress.com/1093/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oncodebynotmyself.wordpress.com/1093/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oncodebynotmyself.wordpress.com/1093/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oncodebynotmyself.wordpress.com/1093/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oncodebynotmyself.wordpress.com/1093/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oncodebynotmyself.wordpress.com/1093/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iamnotmyself.com&#038;blog=21373990&#038;post=1093&#038;subd=oncodebynotmyself&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://iamnotmyself.com/2012/01/18/ssdnug-presents-james-thigpen-moar-cats-please-software-development-at-cheezburger/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3f533296d128037c9af8381221f78dd6?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">notmyself74</media:title>
		</media:content>

		<media:content url="http://oncodebynotmyself.files.wordpress.com/2012/01/img_9545.jpg?w=300" medium="image">
			<media:title type="html">IMG_9545</media:title>
		</media:content>
	</item>
		<item>
		<title>The Day the LOLcats Died</title>
		<link>http://iamnotmyself.com/2012/01/18/the-day-the-lolcats-died/</link>
		<comments>http://iamnotmyself.com/2012/01/18/the-day-the-lolcats-died/#comments</comments>
		<pubDate>Wed, 18 Jan 2012 17:52:43 +0000</pubDate>
		<dc:creator>Bobby Johnson</dc:creator>
				<category><![CDATA[Commentary]]></category>

		<guid isPermaLink="false">http://iamnotmyself.com/?p=1091</guid>
		<description><![CDATA[&#160;<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iamnotmyself.com&#038;blog=21373990&#038;post=1091&#038;subd=oncodebynotmyself&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>&nbsp;</p>
<p><span style="text-align:center; display: block;"><a href="http://iamnotmyself.com/2012/01/18/the-day-the-lolcats-died/"><img src="http://img.youtube.com/vi/1p-TV4jaCMk/2.jpg" alt="" /></a></span></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oncodebynotmyself.wordpress.com/1091/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oncodebynotmyself.wordpress.com/1091/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oncodebynotmyself.wordpress.com/1091/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oncodebynotmyself.wordpress.com/1091/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/oncodebynotmyself.wordpress.com/1091/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/oncodebynotmyself.wordpress.com/1091/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/oncodebynotmyself.wordpress.com/1091/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/oncodebynotmyself.wordpress.com/1091/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oncodebynotmyself.wordpress.com/1091/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oncodebynotmyself.wordpress.com/1091/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oncodebynotmyself.wordpress.com/1091/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oncodebynotmyself.wordpress.com/1091/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oncodebynotmyself.wordpress.com/1091/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oncodebynotmyself.wordpress.com/1091/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iamnotmyself.com&#038;blog=21373990&#038;post=1091&#038;subd=oncodebynotmyself&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://iamnotmyself.com/2012/01/18/the-day-the-lolcats-died/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3f533296d128037c9af8381221f78dd6?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">notmyself74</media:title>
		</media:content>
	</item>
		<item>
		<title>Displaying a Map of the Current Location with MonoTouch</title>
		<link>http://iamnotmyself.com/2012/01/17/displaying-a-map-of-the-current-location-with-monotouch/</link>
		<comments>http://iamnotmyself.com/2012/01/17/displaying-a-map-of-the-current-location-with-monotouch/#comments</comments>
		<pubDate>Tue, 17 Jan 2012 23:41:45 +0000</pubDate>
		<dc:creator>Bobby Johnson</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Learning in Public]]></category>

		<guid isPermaLink="false">http://iamnotmyself.com/?p=1077</guid>
		<description><![CDATA[Today, I started spiking on displaying maps in iOS using MonoTouch. I wanted to discover the minimum amount of code needed to get the users current location via the iOS GPS services and then display that location on the a map. To get the devices current location you need an instance of CLLocationManager found in [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iamnotmyself.com&#038;blog=21373990&#038;post=1077&#038;subd=oncodebynotmyself&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Today, I started spiking on displaying maps in iOS using MonoTouch. I wanted to discover the minimum amount of code needed to get the users current location via the iOS GPS services and then display that location on the a map.</p>
<p>To get the devices current location you need an instance of CLLocationManager found in the MonoTouch.CoreLocation namespace. The location manager accesses the actual hardware on the device and can be a real power drain, so you want to use it as little as possible.</p>
<p><pre class="brush: csharp;">
using System;
using MonoTouch.CoreLocation;

namespace App.UI
{
	public class LocationService
	{
		private CLLocationManager locationManager;

		public LocationService()
		{
			locationManager = new CLLocationManager();
		}

		public CLLocationCoordinate2D GetCurrentLocation()
		{
			//dirty for now just to get some info.
			locationManager.StartUpdatingLocation();
			while(locationManager.Location == null);
			locationManager.StopUpdatingLocation();

			return locationManager.Location.Coordinate;
		}
	}
}
</pre></p>
<p>This simple service shows the absolute minimum needed to retrieve the devices current location. First, we tell the manager to StartUpdatingLocation which will trigger a dialog to the user requesting access to the devices location services. The current location is then available from the Location property. It takes a few seconds to populate though, which is why most of the demo code you will find uses a LocationDelegate to consume the data. I wanted something a little simpler because I don&#8217;t actually need updates to the location, so I spin until the Location property is not null. I then grab the Coordinate from the Location property and tell the manager to StopUpdatingLocation.</p>
<p>On a side note the user can disable location globally on the device. You can check to see if the user has done so via the static member LocationServicesEnabled. You could use this to display a dialog to ask the user to put in a zip code maybe as an alternative.</p>
<p>To display the location on a map for the user you will need to use the MKMapView from the MonoTouch.MapKit namespace. I have chosen to create a MapViewController class that extends UIViewController to wrap all this code in.</p>
<p><pre class="brush: csharp;">
using System;
using System.Drawing;

using MonoTouch.Foundation;
using MonoTouch.UIKit;
using MonoTouch.MapKit;
using MonoTouch.CoreLocation;

namespace App.UI
{
	public class MapViewController : UIViewController
	{
		private LocationService locationService;
		private MKMapView mapView;

		public ProductsViewController(LocationService locationService)
		{
			this.locationService = locationService;
		}

		public override void ViewDidLoad()
		{
			base.ViewDidLoad();

			var currentLocation = locationService.GetCurrentLocation();
			var visibleRegion = BuildVisibleRegion(currentLocation);

			mapView = BuildMapView(true);
			mapView.SetRegion(visibleRegion, true);

			this.View.AddSubview(mapView);
		}

		private MKMapView BuildMapView(bool showUserLocation)
		{
			var view = new MKMapView()
			{
				ShowsUserLocation = showUserLocation
			};

			view.SizeToFit();
			view.Frame = new RectangleF(0, 0, this.View.Frame.Width, this.View.Frame.Height);
			return view;
		}

		private MKCoordinateRegion BuildVisibleRegion(CLLocationCoordinate2D currentLocation)
		{
			var span = new MKCoordinateSpan(0.2,0.2);
			var region = new MKCoordinateRegion(currentLocation,span);

			return region;
		}
	}
}
</pre></p>
<p>This simple ViewController overrides the ViewDidLoad method, consumes the LocationService to get the current location and then displays that location on with a MKMapView. We build up the map view in two steps, the first creates the instance of the map view and sizes it to fit the viewable area of the given display. The MKMapView has a property that will automatically show an indicator of where the curent location is, setting this property is all you need to do to display the map and location. There is a catch though, if you were to display this map now you would see a map of the entire United States and not a reasonable local view of the area. The second step is what zooms the map into a reasonable region to display.</p>
<p>If we display this controller now in the iPhone Simulator, this is what we see.</p>
<p><a href="http://oncodebynotmyself.files.wordpress.com/2012/01/screen-shot-2012-01-17-at-3-39-31-pm.png"><img class="aligncenter size-full wp-image-1087" title="Screen Shot 2012-01-17 at 3.39.31 PM" src="http://oncodebynotmyself.files.wordpress.com/2012/01/screen-shot-2012-01-17-at-3-39-31-pm.png?w=630" alt=""   /></a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oncodebynotmyself.wordpress.com/1077/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oncodebynotmyself.wordpress.com/1077/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oncodebynotmyself.wordpress.com/1077/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oncodebynotmyself.wordpress.com/1077/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/oncodebynotmyself.wordpress.com/1077/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/oncodebynotmyself.wordpress.com/1077/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/oncodebynotmyself.wordpress.com/1077/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/oncodebynotmyself.wordpress.com/1077/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oncodebynotmyself.wordpress.com/1077/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oncodebynotmyself.wordpress.com/1077/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oncodebynotmyself.wordpress.com/1077/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oncodebynotmyself.wordpress.com/1077/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oncodebynotmyself.wordpress.com/1077/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oncodebynotmyself.wordpress.com/1077/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iamnotmyself.com&#038;blog=21373990&#038;post=1077&#038;subd=oncodebynotmyself&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://iamnotmyself.com/2012/01/17/displaying-a-map-of-the-current-location-with-monotouch/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3f533296d128037c9af8381221f78dd6?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">notmyself74</media:title>
		</media:content>

		<media:content url="http://oncodebynotmyself.files.wordpress.com/2012/01/screen-shot-2012-01-17-at-3-39-31-pm.png" medium="image">
			<media:title type="html">Screen Shot 2012-01-17 at 3.39.31 PM</media:title>
		</media:content>
	</item>
	</channel>
</rss>
