<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6150358501282790511</id><updated>2024-09-08T22:55:45.290-07:00</updated><category term="Objective-C"/><category term="iPhone"/><category term="Ruby"/><category term="World of Warcraft"/><category term="XML-RPC"/><category term="rails"/><title type='text'>Mojinations</title><subtitle type='html'>A programmer&#39;s notebook.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://mojinations.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6150358501282790511/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://mojinations.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>TheWayOfTheGun</name><uri>http://www.blogger.com/profile/03301241320753500855</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://wwww.black-ice.org/pix/random/me-2002-11-20.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>5</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6150358501282790511.post-4027410448755390372</id><published>2009-04-06T13:18:00.001-07:00</published><updated>2009-04-06T13:18:27.784-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="iPhone"/><category scheme="http://www.blogger.com/atom/ns#" term="Objective-C"/><title type='text'>In summation</title><content type='html'>I spent a lot of the weekend contemplating Objective-C.  I&#39;d planned to spend my energy thinking about social events and domestic tasks, but Thursday night I had a dream in which someone spoke in Objective-C syntax.  I shit you not.&lt;br /&gt;&lt;br /&gt;With that impetus, I had a background thread going all weekend which was trying to collate my impressions of ObjC into some coherent form.  Come Monday morning, I realized Jonathan Rentzsch had &lt;a href=&quot;http://rentzsch.com/papers/loveHateObjC&quot;&gt;already said it all&lt;/a&gt;, and from a position of experience to boot.  If you are a language geek, or simply interested in Objective-C, Rentzsch&#39;s piece is worth a read.</content><link rel='replies' type='application/atom+xml' href='http://mojinations.blogspot.com/feeds/4027410448755390372/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mojinations.blogspot.com/2009/04/in-summation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6150358501282790511/posts/default/4027410448755390372'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6150358501282790511/posts/default/4027410448755390372'/><link rel='alternate' type='text/html' href='http://mojinations.blogspot.com/2009/04/in-summation.html' title='In summation'/><author><name>TheWayOfTheGun</name><uri>http://www.blogger.com/profile/03301241320753500855</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://wwww.black-ice.org/pix/random/me-2002-11-20.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6150358501282790511.post-4635840809834177411</id><published>2009-04-03T13:15:00.001-07:00</published><updated>2009-04-03T13:16:44.578-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Objective-C"/><category scheme="http://www.blogger.com/atom/ns#" term="Ruby"/><title type='text'>An example</title><content type='html'>It seems silly I had to type this when nearly all of it could have been derived from the contents of my implementation.&lt;br /&gt;&lt;blockquote&gt;&lt;style type=&quot;text/css&quot;&gt;&lt;br /&gt;   body {&lt;br /&gt;      font-family: &quot;Bitstream Vera Sans Mono&quot;, &quot;Monaco&quot;, monospace;&lt;br /&gt;   }&lt;br /&gt;   .comment {&lt;br /&gt;      font-style: italic;&lt;br /&gt;      color: #AAA;&lt;br /&gt;   }&lt;br /&gt;   .keyword {&lt;br /&gt;      font-weight: bold;&lt;br /&gt;   }&lt;br /&gt;   .string {&lt;br /&gt;      color: #00F;&lt;br /&gt;   }&lt;br /&gt;   .entity {&lt;br /&gt;      text-decoration: underline;&lt;br /&gt;   }&lt;br /&gt;   .storage {&lt;br /&gt;      color: #888;&lt;br /&gt;   }&lt;br /&gt;   .support {&lt;br /&gt;      color: #0F0;&lt;br /&gt;   }&lt;br /&gt;   .constant, .variable {&lt;br /&gt;      color: #F0F;&lt;br /&gt;   }&lt;br /&gt;&lt;/style&gt;&lt;br /&gt;&lt;body&gt;&lt;br /&gt;&lt;div style=&quot;white-space: pre; -khtml-line-break: after-white-space;&quot;&gt;&lt;br /&gt;&lt;span class=&quot;source&quot;&gt;import &amp;lt;Foundation/Foundation.h&amp;gt;&lt;br /&gt;#import &amp;lt;UIKit/UIColor.h&amp;gt;&lt;br/&gt;&lt;br /&gt;&lt;span class=&quot;meta&quot;&gt;&lt;span class=&quot;storage&quot;&gt;&lt;span class=&quot;punctuation&quot;&gt;@&lt;/span&gt;interface&lt;/span&gt; &lt;span class=&quot;entity&quot;&gt;UIColor&lt;/span&gt;&lt;span class=&quot;meta&quot;&gt;(WarcraftKlass)&lt;br/&gt;&lt;br /&gt;&lt;span class=&quot;meta&quot;&gt;+&lt;span class=&quot;meta&quot;&gt;&lt;span class=&quot;punctuation&quot;&gt;(&lt;/span&gt;UIColor *&lt;span class=&quot;punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;entity&quot;&gt;warriorColor&lt;/span&gt;&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;meta&quot;&gt;+&lt;span class=&quot;meta&quot;&gt;&lt;span class=&quot;punctuation&quot;&gt;(&lt;/span&gt;UIColor *&lt;span class=&quot;punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;entity&quot;&gt;paladinColor&lt;/span&gt;&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;meta&quot;&gt;+&lt;span class=&quot;meta&quot;&gt;&lt;span class=&quot;punctuation&quot;&gt;(&lt;/span&gt;UIColor *&lt;span class=&quot;punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;entity&quot;&gt;hunterColor&lt;/span&gt;&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;meta&quot;&gt;+&lt;span class=&quot;meta&quot;&gt;&lt;span class=&quot;punctuation&quot;&gt;(&lt;/span&gt;UIColor *&lt;span class=&quot;punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;entity&quot;&gt;rogueColor&lt;/span&gt;&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;meta&quot;&gt;+&lt;span class=&quot;meta&quot;&gt;&lt;span class=&quot;punctuation&quot;&gt;(&lt;/span&gt;UIColor *&lt;span class=&quot;punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;entity&quot;&gt;priestColor&lt;/span&gt;&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;meta&quot;&gt;+&lt;span class=&quot;meta&quot;&gt;&lt;span class=&quot;punctuation&quot;&gt;(&lt;/span&gt;UIColor *&lt;span class=&quot;punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;entity&quot;&gt;deathKnightColor&lt;/span&gt;&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;meta&quot;&gt;+&lt;span class=&quot;meta&quot;&gt;&lt;span class=&quot;punctuation&quot;&gt;(&lt;/span&gt;UIColor *&lt;span class=&quot;punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;entity&quot;&gt;shamanColor&lt;/span&gt;&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;meta&quot;&gt;+&lt;span class=&quot;meta&quot;&gt;&lt;span class=&quot;punctuation&quot;&gt;(&lt;/span&gt;UIColor *&lt;span class=&quot;punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;entity&quot;&gt;mageColor&lt;/span&gt;&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;meta&quot;&gt;+&lt;span class=&quot;meta&quot;&gt;&lt;span class=&quot;punctuation&quot;&gt;(&lt;/span&gt;UIColor *&lt;span class=&quot;punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;entity&quot;&gt;warlockColor&lt;/span&gt;&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;meta&quot;&gt;+&lt;span class=&quot;meta&quot;&gt;&lt;span class=&quot;punctuation&quot;&gt;(&lt;/span&gt;UIColor *&lt;span class=&quot;punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;entity&quot;&gt;druidColor&lt;/span&gt;&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;storage&quot;&gt;&lt;span class=&quot;punctuation&quot;&gt;@&lt;/span&gt;end&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;I am still getting my feet wet with Objective-C, so there is some chance I may discover metaprogramming tricks such as Ruby and other allow.  In that case, a lot of my code will get smaller and more readable.  We shall see.</content><link rel='replies' type='application/atom+xml' href='http://mojinations.blogspot.com/feeds/4635840809834177411/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mojinations.blogspot.com/2009/04/example.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6150358501282790511/posts/default/4635840809834177411'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6150358501282790511/posts/default/4635840809834177411'/><link rel='alternate' type='text/html' href='http://mojinations.blogspot.com/2009/04/example.html' title='An example'/><author><name>TheWayOfTheGun</name><uri>http://www.blogger.com/profile/03301241320753500855</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://wwww.black-ice.org/pix/random/me-2002-11-20.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6150358501282790511.post-5478000075831778868</id><published>2009-04-02T22:44:00.001-07:00</published><updated>2009-04-02T22:52:02.880-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="iPhone"/><category scheme="http://www.blogger.com/atom/ns#" term="Objective-C"/><category scheme="http://www.blogger.com/atom/ns#" term="World of Warcraft"/><title type='text'>This makes me happy</title><content type='html'>&lt;a href=&quot;http://www.flickr.com/photos/47176885@N00/3408135843&quot; title=&quot;View &#39;Picture 1&#39; on Flickr.com&quot;&gt;&lt;div style=&quot;text-align:center;&quot;&gt;&lt;img src=&quot;http://farm4.static.flickr.com/3322/3408135843_ba148f9797.jpg&quot; alt=&quot;Picture 1&quot; border=&quot;0&quot; width=&quot;500&quot; height=&quot;313&quot; /&gt;&lt;/div&gt;&lt;/a&gt;&lt;br /&gt;This week I&#39;ve been playing around with Cocoa and iPhone development in Objective-C.  I wrote a tiny Mac app which pulls data for a World of Warcraft guild down from Blizzard and displays it.  Now I&#39;m porting that app to the iPhone.&lt;br /&gt;&lt;br /&gt;My C chops started to atrophy the first time I wrote real-world Java code and recently Ruby has stolen my heart away from Java.  From that standpoint, Objective-C is a bit tedious.  Still, seeing the results onscreen is satisfying.</content><link rel='replies' type='application/atom+xml' href='http://mojinations.blogspot.com/feeds/5478000075831778868/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mojinations.blogspot.com/2009/04/this-makes-me-happy.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6150358501282790511/posts/default/5478000075831778868'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6150358501282790511/posts/default/5478000075831778868'/><link rel='alternate' type='text/html' href='http://mojinations.blogspot.com/2009/04/this-makes-me-happy.html' title='This makes me happy'/><author><name>TheWayOfTheGun</name><uri>http://www.blogger.com/profile/03301241320753500855</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://wwww.black-ice.org/pix/random/me-2002-11-20.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://farm4.static.flickr.com/3322/3408135843_ba148f9797_t.jpg" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6150358501282790511.post-4517715211079235861</id><published>2009-04-02T13:09:00.001-07:00</published><updated>2009-04-02T13:09:58.876-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="rails"/><category scheme="http://www.blogger.com/atom/ns#" term="XML-RPC"/><title type='text'>Why Blogger?</title><content type='html'>My main criterion for blog software was API support for external post editors.  Writing anything more than a few lines is much more pleasant with a native editor and less prone to mysterious losses.  Blogging API support means I can use my choice of native editor.  Once you add an iPhone into the mix, the need is even greater.  Ever try editing a wiki page from your phone?  &#39;Nuff said.&lt;br /&gt;&lt;br /&gt;Second, I wanted low-hassle, even if that meant losing some flexibility.  Being a recent convert to the Rails world, my first instinct was to go with a Rail-based blog engine.  Unfortunately, the offerings are poorly documented and some look immature.  I&#39;ve been loving Instiki and am curious about the various blogging/CMS options for Rails, but for this particular purpose I don&#39;t want the tech to become an end in itself.&lt;br /&gt;&lt;br /&gt;I wanted something simple, hosted, and that would Just Work.  At that point the choice came down to Blogger and TypePad and my selection was more or less random.&lt;br /&gt;&lt;br /&gt;Woo.</content><link rel='replies' type='application/atom+xml' href='http://mojinations.blogspot.com/feeds/4517715211079235861/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mojinations.blogspot.com/2009/04/why-blogger.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6150358501282790511/posts/default/4517715211079235861'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6150358501282790511/posts/default/4517715211079235861'/><link rel='alternate' type='text/html' href='http://mojinations.blogspot.com/2009/04/why-blogger.html' title='Why Blogger?'/><author><name>TheWayOfTheGun</name><uri>http://www.blogger.com/profile/03301241320753500855</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://wwww.black-ice.org/pix/random/me-2002-11-20.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6150358501282790511.post-4941237899733587505</id><published>2009-04-02T12:39:00.001-07:00</published><updated>2009-04-02T12:39:17.871-07:00</updated><title type='text'>Zug</title><content type='html'>Testing post from remote client.&lt;br /&gt;&lt;br /&gt;Gug.&lt;br /&gt;&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://mojinations.blogspot.com/feeds/4941237899733587505/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mojinations.blogspot.com/2009/04/zug.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6150358501282790511/posts/default/4941237899733587505'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6150358501282790511/posts/default/4941237899733587505'/><link rel='alternate' type='text/html' href='http://mojinations.blogspot.com/2009/04/zug.html' title='Zug'/><author><name>TheWayOfTheGun</name><uri>http://www.blogger.com/profile/03301241320753500855</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://wwww.black-ice.org/pix/random/me-2002-11-20.jpg'/></author><thr:total>0</thr:total></entry></feed>