<?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>kallewoof.com &#187; iPhone</title>
	<atom:link href="http://kallewoof.com/tag/iphone/feed/" rel="self" type="application/rss+xml" />
	<link>http://kallewoof.com</link>
	<description>privacy, democracy, and software</description>
	<lastBuildDate>Wed, 17 Aug 2011 19:34:13 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>iPhone Personal Hotspot</title>
		<link>http://kallewoof.com/2011/03/07/iphone-personal-hotspot/</link>
		<comments>http://kallewoof.com/2011/03/07/iphone-personal-hotspot/#comments</comments>
		<pubDate>Mon, 07 Mar 2011 12:50:49 +0000</pubDate>
		<dc:creator>Kalle</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[Awesome]]></category>
		<category><![CDATA[Educational]]></category>
		<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Future]]></category>
		<category><![CDATA[Geeky]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://kallewoof.com/?p=555</guid>
		<description><![CDATA[The next version of iOS (iPhone OS), 4.3, features a thing that android phones have had for awhile now (and jailbroken iPhones) &#8212; Personal Hotspot. I.e. the ability to set up a WiFi station on your iPhone and surf the &#8230; <a href="http://kallewoof.com/2011/03/07/iphone-personal-hotspot/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The next version of iOS (iPhone OS), 4.3, features a thing that android phones have had for awhile now (and jailbroken iPhones) &#8212; Personal Hotspot. I.e. the ability to set up a WiFi station on your iPhone and surf the net from a computer or such.</p>
<p>A few hours ago, my network at home went down so I found a use for that personal hotspot feature sooner than I&#8217;d imagined (I got the beta of the iOS release as a developer). It&#8217;s&#8230; fast. I&#8217;m actually not noticing a difference in the speed web pages are loading. And me and my wife are both using my iPhone 4 to surf.</p>
<p>The battery is plummeting though but I&#8217;m in the house after all. Just need to plug it in, but was interested in seeing just how much pressure this&#8217;d put on the little thing.</p>
<p>Still, way cool.</p>
<p><a href="http://kallewoof.com/wp-content/uploads/2011/03/personalhotspot.jpg"><img class="alignnone size-full wp-image-558" title="personalhotspot" src="http://kallewoof.com/wp-content/uploads/2011/03/personalhotspot.jpg" alt="" width="640" height="960" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://kallewoof.com/2011/03/07/iphone-personal-hotspot/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Thanks for the privacy, Apple.</title>
		<link>http://kallewoof.com/2011/01/06/thanks-for-the-privacy-apple/</link>
		<comments>http://kallewoof.com/2011/01/06/thanks-for-the-privacy-apple/#comments</comments>
		<pubDate>Thu, 06 Jan 2011 18:03:52 +0000</pubDate>
		<dc:creator>Kalle</dc:creator>
				<category><![CDATA[Stupid]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Privacy]]></category>
		<category><![CDATA[Retarded]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://kallewoof.com/?p=542</guid>
		<description><![CDATA[A few weeks ago I was in the laundry room doing, you guessed it, laundry. The machine had 5-6 minutes left so I decided to just sit and wait, while fiddling with my iPhone. Bored as I was, I typed &#8230; <a href="http://kallewoof.com/2011/01/06/thanks-for-the-privacy-apple/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>A few weeks ago I was in the laundry room doing, you guessed it, laundry. The machine had 5-6 minutes left so I decided to just sit and wait, while fiddling with my iPhone.</p>
<p>Bored as I was, I typed in &#8220;sex&#8221; in the search and got a bunch of random looking results. I downloaded one, looked at it, noted (with no surprise) that it was retarded and then the machine beeped and I thought nothing more of it.</p>
<p>Fastforward a bit. Here you see me plugging my iPhone into my computer. It syncs.</p>
<p>Fastforward some more. Here you see me finding that app later. I delete it from the phone, thinking &#8220;phew, good thing I didn&#8217;t leave that around in case someone found it. How embarrasing.&#8221;</p>
<p>Fastforward again. Here I&#8217;m plugging the iPad into the computer. It syncs.</p>
<p>Fastforward a final time. Here&#8217;s my 12 year old niece playing, as she always does whenever she&#8217;s visiting, with my iPad.</p>
<p>And then later that day, I look at the first app page and what do I see? Yeah. iTunes synced that app in from my iPhone and out to my iPad. It&#8217;s a setting that I have control over, but geez, where are the privacy features on these bloody things? Where can I &#8220;hide&#8221; stuff I don&#8217;t want my 12 year old niece to stumble on?</p>
<p>Sigh. And now you guys know I downloaded a smut app. But the fact my 12 year old niece might have seen it is by far worse. Much, much worse. Ugh.</p>
]]></content:encoded>
			<wfw:commentRss>http://kallewoof.com/2011/01/06/thanks-for-the-privacy-apple/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Accessing variables in other classes in Objective-C.</title>
		<link>http://kallewoof.com/2010/12/29/accessing-variables-in-other-classes-in-objective-c/</link>
		<comments>http://kallewoof.com/2010/12/29/accessing-variables-in-other-classes-in-objective-c/#comments</comments>
		<pubDate>Wed, 29 Dec 2010 16:20:24 +0000</pubDate>
		<dc:creator>Kalle</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Educational]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[Stack Overflow]]></category>

		<guid isPermaLink="false">http://kallewoof.com/?p=533</guid>
		<description><![CDATA[This was meant to be a reply to a question on Stack Overflow, but when I&#8217;d finally written this all up, the poster had deleted the question. Figured I wouldn&#8217;t let all this go to waste so posting it here, &#8230; <a href="http://kallewoof.com/2010/12/29/accessing-variables-in-other-classes-in-objective-c/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><!-- pre { background: #eee; } --></p>
<p>This was meant to be a reply to a question on <a href="http://stackoverflow.com">Stack Overflow</a>, but when I&#8217;d finally written this all up, the poster had deleted the question. Figured I wouldn&#8217;t let all this go to waste so posting it here, hoping some Objective-C wielder might run into it and be helped.</p>
<p>***</p>
<p>There are a number of options, all depending on the situation. I will keep referring to <em>Sender</em>, <em>Receiver</em>, and <em>data</em> as the class holding the information, the class which wants the information, and the information itself respectively.</p>
<p><strong>Option 1 &#8211; Point <em>Receiver</em> to <em>Sender</em> at <em>Sender</em> init</strong></p>
<p>Here we keep track of <em>Sender</em> internally. We also preferably do not store <em>data</em> locally in case <em>Sender</em> is updated &#8212; instead we use `<em>Sender</em>.<em>data</em>`. This of course requires that there is only one <em>Sender</em>, and that it is instantiated before the <em>Receiver</em>.</p>
<pre>    // in <em>Receiver</em>.h
    @interface <em>Receiver</em> : .... {
        <em>Sender</em> *sender;
        // ...
    }
    - (id)initWithSender:(<em>Sender</em> *)aSender andBlabla:....;

    // in <em>Receiver</em>.m
    - (id)initWithSender:(<em>Sender</em> *)aSender andBlerf.... {
        self = [super init];
        if (self != nil) {
            // retain, if aSender may ever dealloc before us!
            sender = aSender;
            // other init stuff
        }
        return self;
    }

    // in <em>Receiver</em>.m, wherever we need "<em>data</em>" from the <em>Sender</em>, we now use
    // <em>Sender</em>.<em>data</em></pre>
<hr /><strong>Option 2 &#8211; Point <em>Receiver</em> to <em>Sender</em> at arbitrary time</strong></p>
<p>Same as option 1 but here we simply put in a <em>Sender</em> as a `@property`. This one actually allows us to have our <em>Sender</em> instantiated after the <em>Receiver</em>, since we can set the `<em>Sender</em>` property at a later point. The danger here is to make sure `<em>Sender</em>` is not used before we&#8217;ve actually gotten around to setting it.</p>
<pre>    // in <em>Receiver</em>.h
    @interface <em>Receiver</em> : ... {
        <em>Sender</em> *sender;
        // ...
    }
    // ...
    // assign-&gt;retain, if <em>Sender</em> might dealloc before us!
    @property (assign) <em>Sender</em> *<em>Sender</em>;

    // in <em>Receiver</em>.m
    @synthesize sender;

    // Someplace in our program, where we're ready to tell the <em>Receiver
</em>    // about the <em>Sender</em>,
    //   myReceiver.sender = mySender;</pre>
<hr /><strong>Option 3 &#8211; Point <em>Receiver</em> to <em>Sender</em> at <em>data</em> collection time</strong></p>
<p>Here we simply add a method to <em>Receiver</em> which has an instance of <em>Sender</em> as its argument. <em>Receiver</em> will then grab <em>data</em> from <em>Sender</em>. Here we&#8217;re pretending a bit, and the reason is that we may or may not want to get other information out of <em>Sender</em> at a later point in time, so we go the safe route. The alternative is more restrictive but less complex (option 4).</p>
<pre>    // in <em>Receiver</em>.h
    @interface <em>Receiver</em> : ... {
        NSData *<em>data</em>;
        // ...
    }
    // ...
    - (void)setSender:(<em>Sender</em> *)aSender;

    // in <em>Receiver</em>.m
    - (void)setSender:(<em>Sender</em> *)aSender {
        // to make things simple, we're presuming that <em>data</em> is not
        // deallocated until we're given new <em>data</em>
        <em>data</em> = aSender.<em>data</em>;
        // potentially do other things with <em>data</em>
    }

    // Someplace in our program, where <em>data</em> has been updated in our
    // <em>Sender</em> and we want <em>Receiver</em> to update,
    //   myReceiver.sender = mySender;</pre>
<hr /><strong>Option 4 &#8211; Include a -set<em>data</em>: method directly in <em>Receiver</em></strong></p>
<p>This is the simplest but least expandable method we&#8217;ve got. In <em>Receiver</em>, we have an instance of our <em>data</em> that we set using a simple method or `@property`.</p>
<pre>    // in <em>Receiver</em>.h
    @interface <em>Receiver</em> : ... {
        NSData *<em>data</em>;
        // ...
    }
    // ...
    // if data might dealloc before we're done using, assign -&gt; retain
    @property (assign) NSData *<em>data</em>;

    // in <em>Receiver</em>.m
    @synthesize <em>data</em>;

    // Someplace where we want <em>data</em> to be updated
    myReceiver.<em>data</em> = mySender.<em>data</em>;</pre>
<hr /><strong>Option 5 &#8211; Delegation</strong></p>
<p>Code in objective-c works very much like a tree with branches with further branches. This has the fundamental flaw/effect that a branch can&#8217;t access the thicker branch to which it&#8217;s attached, and it can&#8217;t get to the tree trunk either. This can be solved using delegation. The most common case where a &#8220;thin&#8221; branch accesses a &#8220;thicker&#8221; branch is view controller / view. A view will tell its view controller things via delegate calls. This is only slightly different from giving its view controller updates to a <em>data</em> object. In our case, <em>Receiver</em> is a controller (delegate) of <em>Sender</em>.</p>
<pre>    // in <em>Sender</em>.h
    @protocol SenderDelegate &lt;NSObject&gt;

    - (void)senderDidUpdateData:(NSData *)newData;

    @end

    @interface <em>Sender</em> : ... {
        NSObject &lt;SenderDelegate&gt; *delegate;
        // ...
    }
    // ...
    @property (assign) NSObject &lt;SenderDelegate&gt; *delegate;

    @end

    // in <em>Sender</em>.m
    @synthesize delegate;

    // in <em>Sender</em>.m, whenever we want to notify our delegate (if any)
    // about updates to <span style="font-family: Georgia, 'Bitstream Charter', serif; color: #444444;"><span style="line-height: 22px;"><em>data</em>, </span></span>
    //    [delegate senderDidUpdateData:<em>data</em>];

    // in <em>Receiver</em>.h
    #include "<em>Sender</em>.h"

    @interface <em>Receiver</em> : ... &lt;SenderDelegate&gt; {
        // ...
    }
    // ...
    @end

    // in <em>Receiver</em>.m
    - (void)senderDidUpdateData:(NSData *)newData {
        // do something with newData, e.g. set <em>data</em> = newData;
    }

    // Someplace where we have both the <em>Receiver</em> and <em>Sender</em> instantiated
    //    mySender.delegate = myReceiver;</pre>
<hr /><strong>Option 6 &#8211; Singleton</strong></p>
<p>Using a singleton is sometimes beneficial. See other discussions on this topic for details. A singleton should be avoided unless you will have a single instance of a class throughout your code.</p>
<p>I&#8217;m sure there are other options as well, but these are the ones that come to mind right now.</p>
]]></content:encoded>
			<wfw:commentRss>http://kallewoof.com/2010/12/29/accessing-variables-in-other-classes-in-objective-c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The equivalent of &#8216;toString&#8217; in Objective-C.</title>
		<link>http://kallewoof.com/2010/06/01/the-equivalent-of-tostring-in-objective-c/</link>
		<comments>http://kallewoof.com/2010/06/01/the-equivalent-of-tostring-in-objective-c/#comments</comments>
		<pubDate>Tue, 01 Jun 2010 09:09:58 +0000</pubDate>
		<dc:creator>Kalle</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[iStar]]></category>
		<category><![CDATA[Languages]]></category>
		<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Snippets]]></category>

		<guid isPermaLink="false">http://kallewoof.com/?p=482</guid>
		<description><![CDATA[If you&#8217;ve ever wondered if there&#8217;s a convenient way in Objective-C to write a function for &#8220;expressing&#8221; the value of an object of yours, as a string, just like &#8220;toString&#8221; in e.g. JavaScript (and Java? I think), I&#8217;ve got good &#8230; <a href="http://kallewoof.com/2010/06/01/the-equivalent-of-tostring-in-objective-c/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;ve ever wondered if there&#8217;s a convenient way in Objective-C to write a function for &#8220;expressing&#8221; the value of an object of yours, as a string, just like &#8220;toString&#8221; in e.g. JavaScript (and Java? I think), I&#8217;ve got good news:</p>
<blockquote><p><code>-(NSString *)description</code></p></blockquote>
<p>Add the above method to your Objective-C class and you&#8217;ll be able to NSLog it or get its string value anywhere using <code>[OBNAME description]</code>. In short, it will now respond with its &#8216;description&#8217; to &#8216;%@&#8217; in an NSString stringWithFormat expression.</p>
<p>Example:</p>
<pre>
@interface Person : NSObject {
  NSString *name;
  NSString *phone;
  NSInteger age;
}

-(NSString *)description;
[...]
-(NSString *)description
{
  return [NSString stringWithFormat:@"%@ (%d): %@",
        name, age, phone];
}
</pre>
<p>Then somewhere we have a Person object and we want to see its value.</p>
<pre>
NSLog(@"We've got %@", aPerson);
myLabel.text = [NSString stringWithFormat:@"Details: %@", aPerson];
</pre>
<p>(pardon any errors in code above &#8212; untested as is)</p>
]]></content:encoded>
			<wfw:commentRss>http://kallewoof.com/2010/06/01/the-equivalent-of-tostring-in-objective-c/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Guilty pleasures.</title>
		<link>http://kallewoof.com/2010/04/29/guilty-pleasures/</link>
		<comments>http://kallewoof.com/2010/04/29/guilty-pleasures/#comments</comments>
		<pubDate>Thu, 29 Apr 2010 11:02:39 +0000</pubDate>
		<dc:creator>Kalle</dc:creator>
				<category><![CDATA[Life]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[iStar]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://kallewoof.com/?p=430</guid>
		<description><![CDATA[I guess most of the people who know me even remotely know that I&#8217;ve gotten into iPads and iPhones and Macs and such lately. Part of this has to do with work, actually, as I&#8217;m currently tasked with writing software &#8230; <a href="http://kallewoof.com/2010/04/29/guilty-pleasures/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I guess most of the people who know me even remotely know that I&#8217;ve gotten into iPads and iPhones and Macs and such lately. Part of this has to do with work, actually, as I&#8217;m currently tasked with writing software for the iPhone/iPad devices (which is a pain to write, so I refer to them as i*s or iStars). I spent the last couple of weeks in the United States with a MacBook Pro, my iPhone and my iPad as my only available computers, and as such, I was more or less forced to adapt to the Mac way of doing things. It&#8217;s not that bad, actually, once you get over the fact it&#8217;s NOT a variant of Windows but a whole separate system altogether.</p>
<p>I&#8217;ve been a linux user for the last decade. More, even. I&#8217;ve had brief encounters with Windows, most of them horrific, all of them resulting in me eventually giving up and going back to linux, and none of them in the last 5+ years. I hear Windows is getting better, but as we say in Sweden, &#8220;<em>bränt barn skyr elden</em>*,&#8221; and I&#8217;ve come to the realization that I will most likely never use Windows again, even though I&#8217;m pleased to hear it&#8217;s shapening up after all these years.</p>
<p>One might say I&#8217;m a hard-to-please customer. Some might even accuse me of being the worst kind ever. I whine about things that don&#8217;t do their jobs, and even if they&#8217;re open source and free as in liberty, it doesn&#8217;t mean I won&#8217;t complain when they can&#8217;t do their jobs properly. I recently spew pus over PulseAudio and Ubuntu 9.10 &#8212; the worst experience since 1990 &#8212; and I stand by what I said, but in the end, I love linux, and it&#8217;s unfair to blame it all on the system, when there are so many factors out of the developers&#8217; control.</p>
<p>Hardware manufacturers couldn&#8217;t give less of a fuck about linux, unless they&#8217;re making server-specific hardware.<br />
Software manufacturers couldn&#8217;t give less of a fuck about linux, unless they&#8217;re making server-specific software.</p>
<p>It makes for a really ugly scene, sometimes, and people have to jump through living lions while spinning firey globes of radioactive customs officers through quality assurance managers. It&#8217;s messy, and it takes hours and pain, lots of both.</p>
<p>And this is an ongoing perpetual circle, where new hardware and new software clashes and collides over and over, year in and year out, in the uphill battle that is the linux desktop scene.</p>
<p>One of the most annoying things about being a linux user isn&#8217;t necessarily that hardware and software manufacturers piss in your corn flakes. It can be really frustrating when you&#8217;re struggling to get something working and someone goes, &#8220;Why are you using that piece of shit anyway. Linux sucks man. Just install Windows.&#8221;</p>
<p>Twitch. I mean, dude. Twitch. I don&#8217;t think there&#8217;s anyone out there as defensive and protective of their operating system as the linux user. We&#8217;re the first to take offense when someone tells us linux sucks. You tell a Windows user that Windows sucks and the most probable reply you&#8217;ll get is, &#8220;Uh-huh, I know that.**&#8221;</p>
<p>Sigh. So retarded. Well, I&#8217;ve gotten better about that, and these days I don&#8217;t have an agenda against anyone. I just know what works for me and what doesn&#8217;t, and whatever works for you, you should stick to. I still get picked on for my choice of OS though, playfully of course, and so the last couple of weeks my guilty pleasure has been to say things like:</p>
<p>&#8220;Damn, <a href="http://handbrake.fr/">handbrake</a> seems full of win. And it&#8217;s available for linux too. (And Windows, but who cares..)&#8221;</p>
<p>on <a href="http://twitter.com/kallewoof">Twitter</a>. Which is fed to Google&#8217;s Buzz, which appears for some of the people who tend to poke fun at me. Now I&#8217;m poking back. <img src='http://kallewoof.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Joke aside, it&#8217;s interesting how the tables have turned. One of my best friends who&#8217;s a hardcore Windows user (and a skilled tech guy at that) and I have been discussing the whole linux/Windows deal for more or less ten years, and suddenly I&#8217;m waving my i*s around and talking about the innovative and prosperous market, while he&#8217;s pointing to Android and upcoming tablets that will potentially turn the tide on Apple&#8217;s tidal wave of domination. He&#8217;s suddenly wielding the open source cap and I&#8217;m wielding the closed source proprietary cap. And it happened <em>overnight</em>! Granted, his change isn&#8217;t as dramatic as mine &#8212; he&#8217;s simply opposed to the Mac experience, and will grab at anything that means not having to use a Mac (including some of the Win7 devices that are closing in on the market). In my case it&#8217;s a little more extreme, but in the end, I&#8217;m just excited about a rare opportunity. In the end, I do not believe the i*s will control the market, but I believe they will lead the way, and I&#8217;m excited to be a part of that process, even if it&#8217;s an unsignificant part.</p>
<p>&#8212;</p>
<p>(* &#8220;burnt child fears fire&#8221;)</p>
<p>(** except for that one guy in Wisconsin who got real offensive about Windows when *I* said it sucked; never mind me being a hypocrite, but I was completely taken by surprise by this reaction, and immediately labeled him a confused patriot thinking Windows somehow was connected to the pride of America)</p>
<p>Update: timely &#8212; MS cancels their &#8220;iPad killer&#8221;: <a href="http://gizmodo.com/5527442/microsoft-cancels-innovative-courier-tablet-project">http://gizmodo.com/5527442/microsoft-cancels-innovative-courier-tablet-project</a></p>
]]></content:encoded>
			<wfw:commentRss>http://kallewoof.com/2010/04/29/guilty-pleasures/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>San Francisco, San Jose, 360iDev, iPadDevCamp, etc.</title>
		<link>http://kallewoof.com/2010/04/21/san-francisco-san-jose-360idev-ipaddevcamp-etc/</link>
		<comments>http://kallewoof.com/2010/04/21/san-francisco-san-jose-360idev-ipaddevcamp-etc/#comments</comments>
		<pubDate>Tue, 20 Apr 2010 22:40:39 +0000</pubDate>
		<dc:creator>Kalle</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[360iDev]]></category>
		<category><![CDATA[Educational]]></category>
		<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Gaming]]></category>
		<category><![CDATA[Geeky]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPadDevCamp]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Life]]></category>

		<guid isPermaLink="false">http://kallewoof.com/?p=425</guid>
		<description><![CDATA[I&#8217;ve been spending the last week or two absorbing information at a pace I&#8217;m very much not used to. 360iDev was very informative. Sort of like an ultra-condensed university course without obligatory courses. A lot of really cool people were &#8230; <a href="http://kallewoof.com/2010/04/21/san-francisco-san-jose-360idev-ipaddevcamp-etc/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been spending the last week or two absorbing information at a pace I&#8217;m very much not used to. 360iDev was very informative. Sort of like an ultra-condensed university course without obligatory courses. A lot of really cool people were there (if you sift through all the self-important blobs of goo that were scattered throughout those actually cool people), and I&#8217;m looking forward to meeting them again, if the opportunity presents itself.</p>
<p>Kendall Gelner, Noel Llopis, and many other hugely talented but yet pleasant to be around folks were inspiring.</p>
<p>Only thing I regret about the thing was eating those veggie burritos. Man they were grody.</p>
<p>iPadDevCamp was a super-intensive &#8220;hack something together a-zap and present it two days later&#8221; thing. Actually it was roughly 1 whole day of working, with only a few hours on the Friday eve and Sunday morning to do last minute fixes. I ended up with a group of 4 others doing a &#8216;multi-device game&#8217; called (eventually) Tank or Die. The idea was to be able to add iPhones as game controllers and iPads as playing fields in this &#8216;control the tank and try to shoot the other tanks&#8217;. There were 3 developers (4 even) and one graphics designer. Everyone decided to start working on things on Friday, but due to transportation issues, I couldn&#8217;t actually join them until Saturday. My task ended up being the connectivity between iPads (the playing fields) and I just didn&#8217;t have enough time to figure out how to get it all working in time for the demo, so when we won &#8220;best game&#8221; award, I felt a bit like a cheater when I took that wireless keyboard from the prize pile.</p>
<p>Was a learning experience though, and I don&#8217;t regret participating. It&#8217;s a very nice feeling when you are convinced that &#8220;if I were tasked to do this with the things I know today, I would have succeeded&#8221;, and I am.</p>
<p>Now I&#8217;m going to be doing some work and relax until Friday, when I go up to Seattle for the last conference in my &#8220;conference tour&#8221;.</p>
]]></content:encoded>
			<wfw:commentRss>http://kallewoof.com/2010/04/21/san-francisco-san-jose-360idev-ipaddevcamp-etc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>I was just getting settled in.</title>
		<link>http://kallewoof.com/2010/04/09/i-was-just-getting-settled-in/</link>
		<comments>http://kallewoof.com/2010/04/09/i-was-just-getting-settled-in/#comments</comments>
		<pubDate>Thu, 08 Apr 2010 15:07:28 +0000</pubDate>
		<dc:creator>Kalle</dc:creator>
				<category><![CDATA[Work]]></category>
		<category><![CDATA[360iDev]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[Educational]]></category>
		<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Geeky]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPadDevCamp]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Studies]]></category>
		<category><![CDATA[VoicesThatMatter]]></category>

		<guid isPermaLink="false">http://kallewoof.com/?p=411</guid>
		<description><![CDATA[I came back to Sweden December 25th last year, so it&#8217;s been a couple of months. Almost half a year, actually. Time flies for sure. I still haven&#8217;t quite gotten used to things &#8212; or maybe it is that I &#8230; <a href="http://kallewoof.com/2010/04/09/i-was-just-getting-settled-in/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I came back to Sweden December 25th last year, so it&#8217;s been a couple of months. Almost half a year, actually. Time flies for sure.</p>
<p>I still haven&#8217;t quite gotten used to things &#8212; or maybe it is that I won&#8217;t see things the same way I did before, I&#8217;m not sure &#8212; but in two days, I&#8217;m off to the United States to attend three conferences related to the iPhone and iPad:</p>
<ul>
<li><a href="http://www.360idev.com/">360iDev</a> in San Jose, Apr. 11-14.</li>
<li><a href="http://www.iphonedevcamp.org/">iPadDevCamp</a> in the same place (same building even, it seems), Apr 16-18.</li>
<li><a href="http://www.voicesthatmatter.com/iphone2010/">Voices That Matter iPhone dev conference</a>, in Seattle, Apr. 24-25.</li>
</ul>
<p>If anyone else is attending either of the above, or if you&#8217;re simply in the area, feel free to let me know and we can grab a beer/coffee/whatever.</p>
<p>Going to be an interesting ride, though I&#8217;m not looking forward to the flights. I&#8217;ll be in an airplane first 9 hours, and then another 6 hours and, apparently, I&#8217;ll be sitting in Newark for 5 hours waiting for plane #2. I have no idea how I missed that when I booked the ticket but can&#8217;t be helped now &#8212; but yes, 20 hours of &#8220;traveling&#8221;. My trip to Japan (where I was stuck in Istanbul for EIGHT hours) is the only trip that beats this one. I think that one totaled at 24 hours or something.</p>
<p>Anyway, looking forward to it all. Now it&#8217;s just a matter of packing and getting mentally prepared for the intense few weeks ahead.</p>
]]></content:encoded>
			<wfw:commentRss>http://kallewoof.com/2010/04/09/i-was-just-getting-settled-in/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Apple versus Adobe.</title>
		<link>http://kallewoof.com/2010/03/16/apple-versus-adobe/</link>
		<comments>http://kallewoof.com/2010/03/16/apple-versus-adobe/#comments</comments>
		<pubDate>Tue, 16 Mar 2010 11:35:37 +0000</pubDate>
		<dc:creator>Kalle</dc:creator>
				<category><![CDATA[Democracy]]></category>
		<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[Awesome]]></category>
		<category><![CDATA[Blogs]]></category>
		<category><![CDATA[Economy]]></category>
		<category><![CDATA[Educational]]></category>
		<category><![CDATA[Funny]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Life]]></category>
		<category><![CDATA[Orgasmic]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://kallewoof.com/?p=403</guid>
		<description><![CDATA[The iPad won&#8217;t have Flash support. I giggle when I write this. It&#8217;s not news, at all, I&#8217;m just slow on the pick-up. Adobe person on Adobe&#8217;s blog reacts to this. A guy at TUAW (The Unofficial Apple Weblog) responds &#8230; <a href="http://kallewoof.com/2010/03/16/apple-versus-adobe/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The iPad won&#8217;t have Flash support. I giggle when I write this. It&#8217;s not news, at all, I&#8217;m just slow on the pick-up. Adobe person on Adobe&#8217;s blog <a href="http://blogs.adobe.com/flashplatform/2010/01/apples_ipad_--_a_broken_link.html">reacts to this</a>. A guy at TUAW (The Unofficial Apple Weblog) <a href="http://www.tuaw.com/2010/01/28/adobe-speaks-up-about-flash-on-the-ipad/">responds to THAT</a>. I lean toward the latter person. I giggle even more than ever.</p>
<p>This is an unexpected turn of events. Apple with its &#8220;closed&#8221; approach versus Adobe with ITS &#8220;closed&#8221; approach leading to more openness. Two wrongs do not make one right, you say, and I point at this wonderful, glorious exception of where just precisely that is happening. The very nature of &#8220;closed&#8221; means you can shut out whoever you want however you want, and Adobe in all of its proprietary glory shuts pretty much everyone except Windows users out (yea, Flash runs horrible on the Mac apparently, it&#8217;s a resource hog, and crashes constantly).</p>
<p>And Apple shuts Adobe out. Do you hear my giggles as I wheeze for breath?</p>
<p>It reminds me of MSIE back in the day. It was THE browser. The alternative was Netscape Navigator and it was a disastrous piece of crap where Internet Explorer was a shiny piece of solid gold. So developers ignored everything else. Even when Firefox came around, they continued doing so, at least the short bus folks did. Fuck web standards. Then suddenly, their &#8220;dis sait rekirs intrnet exprdorerlolstfu&#8221; sites were hurting, badly.</p>
<p>But it took a long while. Banks in Sweden required Internet Explorer up until a mere few years ago. My mother&#8217;s stock market site (uh yeah, my mom&#8217;s dealing in stock, but that&#8217;s another story) even to this day requires Internet Explorer.</p>
<p>Now we have Flash, and we see people doing the same mistake all over again. Especially with the web as it is today, with video content and all that, it&#8217;s no wonder people are going for Flash, because Flash is pretty much the only alternative. Well, <a href="http://www.youtube.com/html5">sort of, anyway</a>. Ah-yep-. If you clicked the link you probably noticed that it said &#8220;HTML5&#8243; and if that didn&#8217;t mean much to you, let me rephrase:</p>
<p>No Flash.</p>
<p>Actually, I can rephrase that even nicer:</p>
<p>No Proprietary One-Company-To-Rule-Them-All Plugins Required.</p>
<p>Did I mention that HTML5 video is supported by the iPhone?</p>
<p>As a developer, this is the part where you go look at the figures for exactly how many people <em>own</em> an iPhone. And the part where you take a stand on whether the iPad will sell to millions or if it&#8217;ll flop over and keel. This is the part where you get the numbers fed to you: <em>42.5 million</em>.</p>
<p>Forty two point five million iPhones as of Q1 2010. And your cute, bunny-hopping Flash-site? It&#8217;s a fucking piece of Lego right now, for those 42.5 <em>million</em> users when they browse on their phone.</p>
]]></content:encoded>
			<wfw:commentRss>http://kallewoof.com/2010/03/16/apple-versus-adobe/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>I&#8217;m home.</title>
		<link>http://kallewoof.com/2009/12/30/im-home/</link>
		<comments>http://kallewoof.com/2009/12/30/im-home/#comments</comments>
		<pubDate>Wed, 30 Dec 2009 12:04:56 +0000</pubDate>
		<dc:creator>Kalle</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Awesome]]></category>
		<category><![CDATA[Electronics]]></category>
		<category><![CDATA[English]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Japanese]]></category>
		<category><![CDATA[Languages]]></category>
		<category><![CDATA[Swedish]]></category>

		<guid isPermaLink="false">http://kallewoof.com/?p=378</guid>
		<description><![CDATA[Yes indeed I am. And I bought an iPhone. For anyone who speaks Japanese (or for that matter, Chinese or any other language which requires more than the average a-z), I can inform you that which I had wished somebody &#8230; <a href="http://kallewoof.com/2009/12/30/im-home/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Yes indeed I am.</p>
<p>And I bought an iPhone. For anyone who speaks Japanese (or for that matter, Chinese or any other language which requires more than the average a-z), I can inform you that which I had wished somebody out there had informed me in a straightforward manner when I started digging into this over a year ago.</p>
<p><strong>Yes, you can use Japanese and Swedish (or whatever combination) on the iPhone simultaneously.</strong> I can get my åäö&#8217;s which my Japanese cell couldn&#8217;t spit out for the life of it (me), and I can get 日本語 to slither out of it as well. You can send SMS&#8217;es within Sweden in Japanese, and in general, you can use them as you would in Japan, except that they also properly support Swedish.</p>
<p>In case you are confuzzled about how to do this, the Swedish (with presumed English translation in parentheses) menu alternatives for getting Japanese enabled is as follows:</p>
<p>Inställningar (Settings) &gt; Allmänt (General) &gt; Internationellt (International) &gt; Tangentbord (Keyboard) &gt; Japanska (Japanese) &gt; QWERTY or Kana (whichever you prefer).</p>
]]></content:encoded>
			<wfw:commentRss>http://kallewoof.com/2009/12/30/im-home/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.443 seconds -->

