<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss1full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:admin="http://webns.net/mvcb/" xmlns="http://purl.org/rss/1.0/">
    <channel rdf:about="http://www.manifestdensity.net/">
        <title>Manifest Density - recent comments</title>
        <link>http://www.manifestdensity.net/</link>
        <description />
        <dc:language>en-us</dc:language>
        <dc:date>2009-07-20T15:24:24-05:00</dc:date>
        <admin:generatorAgent rdf:resource="http://www.movabletype.org/?v=3.33" />
        <items>
            <rdf:Seq>                <rdf:li rdf:resource="#018787" />
                            <rdf:li rdf:resource="#018791" />
                            <rdf:li rdf:resource="#018792" />
                            <rdf:li rdf:resource="#018793" />
                            <rdf:li rdf:resource="#018794" />
                            <rdf:li rdf:resource="#018795" />
                            <rdf:li rdf:resource="#018796" />
                            <rdf:li rdf:resource="#018797" />
                            <rdf:li rdf:resource="#018798" />
                            <rdf:li rdf:resource="#018799" />
                            <rdf:li rdf:resource="#018800" />
                            <rdf:li rdf:resource="#018803" />
                            <rdf:li rdf:resource="#018804" />
                            <rdf:li rdf:resource="#018805" />
                            <rdf:li rdf:resource="#018808" />
            </rdf:Seq>
        </items>
    <feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="manifestdensity-recentcomments" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="manifestdensity-recentcomments" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="manifestdensity-recentcomments" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="manifestdensity-recentcomments" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rdf+xml" href="http://feeds.feedburner.com/ManifestDensity-RecentComments" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="manifestdensity-recentcomments" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /></channel>
            <item rdf:about="http://www.manifestdensity.net/2009/07/02/after_twitter/#c018787">
        <title>Tom comments on after Twitter</title>
        <description><![CDATA[<p>Naw, man.  I've been rocking ossification for years.  If you want to call me out, though, I had a pretty inexcusable use of "pullulate" a few posts ago.</p>]]></description>
        <link>http://www.manifestdensity.net/2009/07/02/after_twitter/#c018787</link>
        <dc:contributor>Tom</dc:contributor>
        <dc:date>2009-07-02T17:52:07-05:00</dc:date>
    </item>
    
            <item rdf:about="http://www.manifestdensity.net/2009/06/10/harlem_shakes_passion_pit/#c018791">
        <title>Daniel M. Laenker comments on Harlem Shakes / Passion Pit</title>
        <description><![CDATA[<p><i>Year of Earnest Music Composed in Cabins</i></p>

<p>I'm kind of confused. Would this have something to do with Grandaddy, or...?</p>]]></description>
        <link>http://www.manifestdensity.net/2009/06/10/harlem_shakes_passion_pit/#c018791</link>
        <dc:contributor>Daniel M. Laenker</dc:contributor>
        <dc:date>2009-07-06T10:19:08-05:00</dc:date>
    </item>
    
            <item rdf:about="http://www.manifestdensity.net/2009/06/10/harlem_shakes_passion_pit/#c018792">
        <title>Tom comments on Harlem Shakes / Passion Pit</title>
        <description><![CDATA[<p>No, more like Bon Iver or Fleet Foxes.  I like Grandaddy!  Thanks for reminding me of them -- I lost my copy of the Sophtware Slump years ago and really need to find an MP3 version.</p>]]></description>
        <link>http://www.manifestdensity.net/2009/06/10/harlem_shakes_passion_pit/#c018792</link>
        <dc:contributor>Tom</dc:contributor>
        <dc:date>2009-07-06T10:40:23-05:00</dc:date>
    </item>
    
            <item rdf:about="http://www.manifestdensity.net/2009/06/10/harlem_shakes_passion_pit/#c018793">
        <title>Daniel M. Laenker comments on Harlem Shakes / Passion Pit</title>
        <description><![CDATA[<p><i>Year of Earnest Music Composed in Cabins</i></p>

<p>I'm kind of confused. Would this have something to do with Grandaddy, or...?</p>]]></description>
        <link>http://www.manifestdensity.net/2009/06/10/harlem_shakes_passion_pit/#c018793</link>
        <dc:contributor>Daniel M. Laenker</dc:contributor>
        <dc:date>2009-07-06T11:22:46-05:00</dc:date>
    </item>
    
            <item rdf:about="http://www.manifestdensity.net/2009/07/01/gtfs_and_nextbus_dont_match_up/#c018794">
        <title>Wes comments on GTFS and NextBus don't match up</title>
        <description><![CDATA[<p>Could the Lat and Long descrepancy be explained by NextBus putting the bus stop on the street (as that's where buses stop, and they're tracking buses) while WMATA puts the stop on the sidewalk, where the shelter or the flag goes?</p>]]></description>
        <link>http://www.manifestdensity.net/2009/07/01/gtfs_and_nextbus_dont_match_up/#c018794</link>
        <dc:contributor>Wes</dc:contributor>
        <dc:date>2009-07-06T12:59:17-05:00</dc:date>
    </item>
    
            <item rdf:about="http://www.manifestdensity.net/2009/07/01/gtfs_and_nextbus_dont_match_up/#c018795">
        <title>Tom comments on GTFS and NextBus don't match up</title>
        <description><![CDATA[<p>That's a good suggestion, and one I'll have to investigate more thoroughly.  But based on the one or two stops I've examined, I think the answer is "no".  And worse, the distances make it look unlikely -- only a handful of the matches I generated (see <a href="http://www.manifestdensity.net/2009/07/02/some_nextbus_stats/" rel="nofollow">here</a> and <a href="http://www.manifestdensity.net/2009/07/06/more_nextbussery/" rel="nofollow">here</a>) are within 10m of the corresponding GTFS stops.  It's weird -- right now my best guess is that NB may be using a different coordinate projection system (although the fact that I got these coordinates out of their google map system would make that very strange indeed).</p>]]></description>
        <link>http://www.manifestdensity.net/2009/07/01/gtfs_and_nextbus_dont_match_up/#c018795</link>
        <dc:contributor>Tom</dc:contributor>
        <dc:date>2009-07-06T13:14:45-05:00</dc:date>
    </item>
    
            <item rdf:about="http://www.manifestdensity.net/2009/07/08/iphonenextbus_progress/#c018796">
        <title>Dylan Matthews comments on iphone/nextbus progress</title>
        <description><![CDATA[<p>But it has all the <a href="http://james-iry.blogspot.com/2009/05/brief-incomplete-and-mostly-wrong.html" rel="nofollow">memory safety of C</a> combined with all the blazing speed of Smalltalk! What could go wrong?</p>]]></description>
        <link>http://www.manifestdensity.net/2009/07/08/iphonenextbus_progress/#c018796</link>
        <dc:contributor>Dylan Matthews</dc:contributor>
        <dc:date>2009-07-09T00:56:47-05:00</dc:date>
    </item>
    
            <item rdf:about="http://www.manifestdensity.net/2009/07/08/iphonenextbus_progress/#c018797">
        <title>Justin comments on iphone/nextbus progress</title>
        <description><![CDATA[<p>Cool... neat to see you working on iPhone stuff. </p>

<p>But: <em>P.S. Objective C suuuuuucks</em> -- really? </p>

<p>I'm honestly curious why you think so. I'll admit I haven't programmed any other compiled languages except for straight C, but I've been doing Cocoa for about five years and really enjoy Objective-C, Cocoa or no. </p>]]></description>
        <link>http://www.manifestdensity.net/2009/07/08/iphonenextbus_progress/#c018797</link>
        <dc:contributor>Justin</dc:contributor>
        <dc:date>2009-07-09T01:09:05-05:00</dc:date>
    </item>
    
            <item rdf:about="http://www.manifestdensity.net/2009/07/08/iphonenextbus_progress/#c018798">
        <title>Justin comments on iphone/nextbus progress</title>
        <description><![CDATA[<p>Cool... neat to see you working on iPhone stuff. </p>

<p>But: <em>P.S. Objective C suuuuuucks</em> -- really? </p>

<p>I'm honestly curious why you think so. I'll admit I haven't programmed any other compiled languages except for straight C, but I've been doing Cocoa for about five years and really enjoy Objective-C, Cocoa or no. </p>]]></description>
        <link>http://www.manifestdensity.net/2009/07/08/iphonenextbus_progress/#c018798</link>
        <dc:contributor>Justin</dc:contributor>
        <dc:date>2009-07-09T01:10:25-05:00</dc:date>
    </item>
    
            <item rdf:about="http://www.manifestdensity.net/2009/07/08/iphonenextbus_progress/#c018799">
        <title>Justin comments on iphone/nextbus progress</title>
        <description><![CDATA[<p>Hmm, sorry about the double comment, but I got an HTTP 500 after submit instead of a redirect. </p>]]></description>
        <link>http://www.manifestdensity.net/2009/07/08/iphonenextbus_progress/#c018799</link>
        <dc:contributor>Justin</dc:contributor>
        <dc:date>2009-07-09T01:12:27-05:00</dc:date>
    </item>
    
            <item rdf:about="http://www.manifestdensity.net/2009/07/08/iphonenextbus_progress/#c018800">
        <title>Tom comments on iphone/nextbus progress</title>
        <description><![CDATA[<p>The double comment's my fault -- I'm not sure where those 500 errors are coming from, but they're appearing fairly frequently.  I really need to move this site to Wordpress.</p>

<p>The thing I don't like about Objective C is mostly just that it's confusing.  Which isn't the language's fault, necessarily, although it could certainly be a bit nicer about it.  I remember string manipulation in C++ being a total pain in the ass, too, so it's likely that I'm just cranky about going back to a compiled language -- any compiled language.</p>

<p>With that said: </p>

<p>* For beginner stuff, the strongly-typed-but-not-really nature of things just means your app will unexpectedly crash instead of the compiler yelling at you first</p>

<p>* The crash reporting leaves a lot to be desired. Did the iPhone simulator just disappear unexpectedly? Is the debugger just showing some unhelpful bit of assembler? Time to add a bunch more NSLog()s!</p>

<p>* I've been pretty unimpressed with the documentation. I've gotten to the point I'm at through a combination of Apple's materials, the O'Reilly SDK book, 4 or 5 hours of the Stanford iTunes U class, and tons of googling.  None of them has felt like THE introductory text (the Stanford thing is the best of the lot, but it's video, and therefore a pretty terrible way to learn programming). Interpreted languages' communities are just a million times better at this stuff for whatever reason.</p>

<p>* I've already learned and completely forgotten how reference counting/autorelease works.  I'm positive I'm going to have to completely revamp my app to plug leaks once its basic functionality is complete.</p>

<p>* This isn't about Objective C per se, but while the SDK seems very well-designed in general, the map stuff has a couple of extremely lame aspects to it.  In particular, they really only want you to do point-type annotations. If you want to draw a region or a vector on the map you're going to need to drop another transparent view on top of it, pass through all the touch events and deal with keeping the scale and position in sync.  It's kind of a nightmare.  At least, that's my understanding of it at this point.</p>]]></description>
        <link>http://www.manifestdensity.net/2009/07/08/iphonenextbus_progress/#c018800</link>
        <dc:contributor>Tom</dc:contributor>
        <dc:date>2009-07-09T09:40:47-05:00</dc:date>
    </item>
    
            <item rdf:about="http://www.manifestdensity.net/2009/07/08/iphonenextbus_progress/#c018803">
        <title>Justin R. Miller comments on iphone/nextbus progress</title>
        <description><![CDATA[<p>Cool, thanks for the detailed reply. </p>

<p><em>For beginner stuff, the strongly-typed-but-not-really nature of things just means your app will unexpectedly crash instead of the compiler yelling at you first</em></p>

<p>Yeah, this can happen more frequently. Recommend getting absolutely zero compiler warnings, or treating warnings as errors, to help with this. But yeah. </p>

<p><em>The crash reporting leaves a lot to be desired. Did the iPhone simulator just disappear unexpectedly? Is the debugger just showing some unhelpful bit of assembler? Time to add a bunch more NSLog()s!</em></p>

<p>Crash logs might help with this. </p>

<p><em>I've been pretty unimpressed with the documentation. I've gotten to the point I'm at through a combination of Apple's materials, the O'Reilly SDK book, 4 or 5 hours of the Stanford iTunes U class, and tons of googling. None of them has felt like THE introductory text (the Stanford thing is the best of the lot, but it's video, and therefore a pretty terrible way to learn programming). Interpreted languages' communities are just a million times better at this stuff for whatever reason.</em></p>

<p>Yeah, I hear that. I love the Apple docs now that I know Cocoa, but it's not what I learned off of. And I think iPhone in particular was hampered by several months of NDA out of the gate. </p>

<p><em>I've already learned and completely forgotten how reference counting/autorelease works. I'm positive I'm going to have to completely revamp my app to plug leaks once its basic functionality is complete.</em></p>

<p>This is just one of those Cocoa things you have to master. The two basic rules are: 1) if you use a method with alloc, new, or copy in it, you need to release, and 2) if you need a variable around beyond the current scope, you need to retain it, then release it when you're done in the other place(s). </p>

<p><em>This isn't about Objective C per se, but while the SDK seems very well-designed in general, the map stuff has a couple of extremely lame aspects to it. In particular, they really only want you to do point-type annotations. If you want to draw a region or a vector on the map you're going to need to drop another transparent view on top of it, pass through all the touch events and deal with keeping the scale and position in sync. It's kind of a nightmare. At least, that's my understanding of it at this point.</em></p>

<p>I've only done a bit with MapKit, but yeah. It's a 1.0. You can file a <a href="https://bugreport.apple.com/cgi-bin/WebObjects/RadarWeb.woa" rel="nofollow">Radar</a> on it, though, for later releases. <br />
</p>]]></description>
        <link>http://www.manifestdensity.net/2009/07/08/iphonenextbus_progress/#c018803</link>
        <dc:contributor>Justin R. Miller</dc:contributor>
        <dc:date>2009-07-13T18:46:46-05:00</dc:date>
    </item>
    
            <item rdf:about="http://www.manifestdensity.net/2009/07/08/iphonenextbus_progress/#c018804">
        <title>Tom comments on iphone/nextbus progress</title>
        <description><![CDATA[<p>Thanks for writing back -- this is extremely helpful.  Your explanation of the rules for memory management is the best I've seen!</p>]]></description>
        <link>http://www.manifestdensity.net/2009/07/08/iphonenextbus_progress/#c018804</link>
        <dc:contributor>Tom</dc:contributor>
        <dc:date>2009-07-13T19:16:13-05:00</dc:date>
    </item>
    
            <item rdf:about="http://www.manifestdensity.net/2009/07/08/iphonenextbus_progress/#c018805">
        <title>Justin comments on iphone/nextbus progress</title>
        <description><![CDATA[<p>There are a couple other subtleties to memory management too, but the same two rules apply. Here's an example. </p>

<p>Say you have an instance variable that's a (let's say mutable) dictionary that holds some certain data through the life of the app. </p>

<p>Say you then make a new object [[NSObject alloc] init] and add it to the dictionary. </p>

<p>If you look closely at the docs for NSMutableDictionary, it tells you that objects get retained when added, so that they are guaranteed to stay around. So if you want the object to disappear when the dictionary is done with it, you would release it right after adding it to the dictionary. You create it (retain count 1), add it (retain count 2), and release it (retain count 1). Dictionary releases it (retain count 0) and thus frees it. </p>

<p>But again, same rules apply -- just need to know that some methods retain things when they are needed. For data-type objects, arrays and dictionaries are the main ones to remember. </p>

<p>While the alloc-new-copy rule helps you remember when you need to be responsible for a release. one more way of looking at retain counts is useful (this, by the way, is from the Hillegass book). </p>

<p>Think of retains as leashes & collars around the neck of a dog. Everyone who wants to make sure the dog sticks around puts a leash & collar on it (retain). When you don't care anymore, you remove the collar (release). When no collars are left, it runs away. </p>

<p>So an array/dictionary retains, then when it's done, releases. <br />
</p>]]></description>
        <link>http://www.manifestdensity.net/2009/07/08/iphonenextbus_progress/#c018805</link>
        <dc:contributor>Justin</dc:contributor>
        <dc:date>2009-07-14T00:39:23-05:00</dc:date>
    </item>
    
            <item rdf:about="http://www.manifestdensity.net/2009/07/14/how_else_can_you_explain_carbo/#c018808">
        <title>Nicola comments on how else can you explain carbon fiber?</title>
        <description><![CDATA[<p>Check out "The Morning of the Magicians" (Pauwels and Bergier) or "The Spear of Destiny" (Ravenscroft) for the origins of the Nazi occult myths. Also, try "Black Sun" (Goodrick-Clark) for an academic overview of the genre...</p>]]></description>
        <link>http://www.manifestdensity.net/2009/07/14/how_else_can_you_explain_carbo/#c018808</link>
        <dc:contributor>Nicola</dc:contributor>
        <dc:date>2009-07-20T15:24:05-05:00</dc:date>
    </item>
    
    
</rdf:RDF>
