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

<channel>
	<title>~james/developer/blog &#187; Mac</title>
	<atom:link href="http://jameswilliams.me/developer/blog/tags/mac/feed/" rel="self" type="application/rss+xml" />
	<link>http://jameswilliams.me/developer/blog</link>
	<description>A development blog</description>
	<lastBuildDate>Tue, 23 Aug 2011 19:17:21 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Quick Note Regarding NSURLConnection and NTLM</title>
		<link>http://jameswilliams.me/developer/blog/2008/07/quick-note-regarding-nsurlconnection-and-ntlm/</link>
		<comments>http://jameswilliams.me/developer/blog/2008/07/quick-note-regarding-nsurlconnection-and-ntlm/#comments</comments>
		<pubDate>Wed, 30 Jul 2008 12:15:05 +0000</pubDate>
		<dc:creator>James Williams</dc:creator>
				<category><![CDATA[for_export]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[networking]]></category>

		<guid isPermaLink="false">http://jameswilliams.me/developer/blog/?p=26</guid>
		<description><![CDATA[As near as I can tell, NSURLConnection does not support NTLM authentication. So, if you are considering implementing something using NSURLConnection: take a moment to make sure you will never talk to a server expecting you to authenticate via NTLM (which is IIS as near as I can tell) before you waste two evenings doing [...]]]></description>
			<content:encoded><![CDATA[<p>As near as I can tell, <a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSURLConnection_Class/Reference/Reference.html#">NSURLConnection</a> does not support <a href="http://www.innovation.ch/personal/ronald/ntlm.html">NTLM authentication</a>. </p>

<p>So, if you are considering implementing something using NSURLConnection: take a moment to make sure you will never talk to a server expecting you to authenticate via NTLM (which is <a href="http://en.wikipedia.org/wiki/Internet_Information_Services">IIS</a> as near as I can tell) before you waste two evenings doing it.</p>

<p>That being said, NSURLConnection is really cool and I wish I could use it.</p>

<p>For my next trick, figure out how to do this with <a href="http://developer.apple.com/documentation/CoreFoundation/Reference/CFMessageRef/Reference/reference.html">CFHTTPMessage</a>, which does provide <code>kCFHTTPAuthenticationSchemeNTLM</code> for authentication.</p>

<p>*sigh*</p>
]]></content:encoded>
			<wfw:commentRss>http://jameswilliams.me/developer/blog/2008/07/quick-note-regarding-nsurlconnection-and-ntlm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Accessing Instance Variables in ObjC</title>
		<link>http://jameswilliams.me/developer/blog/2008/07/accessing-instance-variables-in-objc/</link>
		<comments>http://jameswilliams.me/developer/blog/2008/07/accessing-instance-variables-in-objc/#comments</comments>
		<pubDate>Mon, 28 Jul 2008 16:07:17 +0000</pubDate>
		<dc:creator>James Williams</dc:creator>
				<category><![CDATA[for_export]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[Mac]]></category>

		<guid isPermaLink="false">http://jameswilliams.me/developer/blog/?p=22</guid>
		<description><![CDATA[A few months ago, I spent a few days searching around to see if I could figure out how to determine the instance variables on a class in ObjC. I knew it was possible because Key-Value-Coding will do it if it can't find the well-named accessor methods for a keypath. But all of my searching proved fruitless and I went with a different method of accomplishing my end goal.]]></description>
			<content:encoded><![CDATA[<p>A few months ago, I spent a few days searching around to see if I could figure out how to determine the instance variables on a class in ObjC. I knew it was possible because Key-Value-Coding will do it if it can&#8217;t find the well-named accessor methods for a keypath. But all of my searching proved fruitless and I went with a different method of accomplishing my end goal.</p>

<p>Well, it looks like the answer has appeared in my feed reader on an entry from Matt Gallagher&#8217;s Cocoa With Love blog:<a href="http://cocoawithlove.com/2008/07/key-value-information.html">Key Value Information</a>.</p>

<p>I&#8217;ll just quote him (from the very end of his post):
<blockquote>
Similarly, if you were interested in key value coding that may access instance variables directly, you could use class <code>_getClassVariable</code> to get any instance variables with the same name as the key.
</blockquote>
</p>

<p>The leading underscore on the method name indicates that it&#8217;s undocumented and internal to Apple&#8217;s implementation. So using it isn&#8217;t necessarily the smartest thing in the world. But sometimes, you&#8217;ve gotta do what you gotta do.</p>

<p>Now that I have a method name, I&#8217;ll probably resume my search for information on this technique and will obviously report any findings here.</p>

<p><b>Update: July 29, 2008</b></p>

<p>I did some poking around in the <a href="http://developer.apple.com/documentation/Cocoa/Reference/ObjCRuntimeRef/Reference/reference.html">Objective-C 2.0 Runtime Reference</a> and found the <code>class_copyIvarList</code> function which returns an array of <code>Ivar</code> types. <code>Ivar</code> is a struct containing fields for the ivar_name, ivar_type, and offset. Combined with <code>object_getIvar</code>, I think I would have been much closer to achieving my original goal. </p>

<p>I don&#8217;t know why I couldn&#8217;t find this before. I guess I was just looking in the wrong places.</p>
]]></content:encoded>
			<wfw:commentRss>http://jameswilliams.me/developer/blog/2008/07/accessing-instance-variables-in-objc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My other writings</title>
		<link>http://jameswilliams.me/developer/blog/2008/07/my-other-writings/</link>
		<comments>http://jameswilliams.me/developer/blog/2008/07/my-other-writings/#comments</comments>
		<pubDate>Mon, 28 Jul 2008 14:31:28 +0000</pubDate>
		<dc:creator>James Williams</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Carbon]]></category>
		<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[meta]]></category>
		<category><![CDATA[SOAP]]></category>

		<guid isPermaLink="false">http://jameswilliams.me/developer/blog/?p=19</guid>
		<description><![CDATA[Some friends/coworkers and I have a group blog, Ternary Operator. There&#8217;s not a lot there. I guess we don&#8217;t have many profound things to say. I&#8217;m okay with that. I&#8217;ve written a few things over there in the past which are sort of the &#8220;final product&#8221; of the stuff here. This is my developer&#8217;s notebook [...]]]></description>
			<content:encoded><![CDATA[<p>Some friends/coworkers and I have a group blog, <a href="http://ternaryoperator.wordpress.com/">Ternary Operator</a>. There&#8217;s not a lot there. I guess we don&#8217;t have many profound things to say. I&#8217;m okay with that.</p>

<p>I&#8217;ve written a few things over there in the past which are sort of the &#8220;final product&#8221; of the stuff here. This is my developer&#8217;s notebook and Ternary Operator is the finished product of the results of my explorations and mistakes. If that makes any sense. I&#8217;ll probably also do a little cross posting because I&#8217;m annoying like that.</p>

<p>Anyway. Link-wise, here&#8217;s some of the stuff I&#8217;ve already written:
<ul>
<li><a href="http://ternaryoperator.wordpress.com/2008/04/04/making-soap-calls-from-os-x-the-easy-way/">Making SOAP Calls From OS X, The Easy Way</a> &#8212; An exploration of using OS X&#8217;s WSMethodInvocation API to talk to SOAP servers sitting on the web.</li>
<li><a href="http://ternaryoperator.wordpress.com/2008/04/09/sending-up-custom-types-as-parameters-in-a-soap-request-on-os-x/">Sending Up Custom Types As Parameters In A SOAP Request On OS X</a> &#8212; An exploration of the hoops one must jump through to use complex types in a SOAP request from OS X.</a>
<li><a href="http://ternaryoperator.wordpress.com/2008/04/04/processing-command-arguments-in-foundation-the-easy-way/">Processing Command Arguments In Foundation, The Easy Way</a> &#8212; A quick note I wrote when I discovered that one can use NSUserDefaults to process command line arguments in OS X. Since I didn&#8217;t know this before, I decided to document it.</li>
</ul>
</p>

<p>And&#8230;er&#8230;That&#8217;s it. Like I said, there&#8217;s a distinct lack of profoundness. That shouldn&#8217;t be a big problem here, though, because I&#8217;m not interested in the profound. I&#8217;m interested in jotting things down as I learn them, detailing frustrations when the technology doesn&#8217;t work (or when the documentation makes me think the technology should work in a way that doesn&#8217;t mimic reality (or the documentation is just absent)). Basically, I expect this blog to just be more fun.
</p>
]]></content:encoded>
			<wfw:commentRss>http://jameswilliams.me/developer/blog/2008/07/my-other-writings/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

