<?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>Wes Kroesbergen&#039;s Portfolio &#187; iPhone</title>
	<atom:link href="http://www.kroesbergens.com/portfolio/tag/iphone/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.kroesbergens.com/portfolio</link>
	<description>my opinions, conjectures, and thoughts</description>
	<lastBuildDate>Sun, 08 Jan 2012 15:13:04 +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>Experiences Creating a VPS-based VPN</title>
		<link>http://www.kroesbergens.com/portfolio/2010/12/experiences-creating-a-vps-based-vpn/</link>
		<comments>http://www.kroesbergens.com/portfolio/2010/12/experiences-creating-a-vps-based-vpn/#comments</comments>
		<pubDate>Mon, 27 Dec 2010 17:39:41 +0000</pubDate>
		<dc:creator>Wes Kroesbergen</dc:creator>
				<category><![CDATA[Featured Articles]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[iWork]]></category>
		<category><![CDATA[Last.FM]]></category>
		<category><![CDATA[OpenVZ]]></category>
		<category><![CDATA[Pandora]]></category>
		<category><![CDATA[VMWare]]></category>
		<category><![CDATA[VPN]]></category>
		<category><![CDATA[VPS]]></category>
		<category><![CDATA[Windows 7]]></category>

		<guid isPermaLink="false">http://www.kroesbergens.com/portfolio/?p=430</guid>
		<description><![CDATA[Years ago I used Pandora Internet Radio 1 as my primary source of discovering new music. Pandora Internet Radio is unique in that it is based on something called the Music Genome Project 2, which essentially attempts to map &#8216;genes&#8217; to songs for a more accurate analysis of the type of music the listener enjoys, [...]]]></description>
			<content:encoded><![CDATA[
<p>Years ago I used Pandora Internet Radio <sup class='footnote'><a rel="nofollow" target="_blank" href='#fn-430-1' id='fnref-430-1'>1</a></sup> as my primary source of discovering new music. Pandora Internet Radio is unique in that it is based on something called the Music Genome Project <sup class='footnote'><a rel="nofollow" target="_blank" href='#fn-430-2' id='fnref-430-2'>2</a></sup>, which essentially attempts to map &#8216;genes&#8217; to songs for a more accurate analysis of the type of music the listener enjoys, and more accurate suggestions. (Songs in the Music Genome Project database can often have upwards of 400 different attributes assigned to them!) After licensing restrictions were implemented and Pandora no longer was accessible to Canadian users, I switched to the then free Last.FM <sup class='footnote'><a rel="nofollow" target="_blank" href='#fn-430-3' id='fnref-430-3'>3</a></sup>, which essentially suggests songs that other people who have listened to similar music also enjoyed. Last.FM is no longer free, and costs about $3/mo.</p>
<p>Earlier this year my music collection started to seem a little stale, and I started to wish for more variety, more music I have not listened to. This lead me to consider a VPN, which would essentially tunnel my Internet connection to a server in the US, allowing me to access Pandora and other sites such as Hulu <sup class='footnote'><a rel="nofollow" target="_blank" href='#fn-430-4' id='fnref-430-4'>4</a></sup>. I considered paying for a subscription to a VPN, but was having difficulty finding one that was reasonably priced and would tunnel my connection properly (all my data needs to flow through the US IP, not just a HTTP proxy). The other requirement was that the VPN be accessible via my iPad and iPhone as well as my desktop computers (Windows and Mac), and the only type of VPN connection that seemed to adequately satisfy my needs was an L2TP/IPSec VPN.</p>
<p>Since I couldn&#8217;t find a VPN service that seemed to satisfy my needs, I decided to create my own, which means I need root access to a server. I also plan to tunnel a lot of data, considering I will primarily be using it for media streaming. I also didn&#8217;t want to pay Windows Server licensing fees, so decided to take the route of Ubuntu Server. OpenVPN does not do native L2TP/IPSec, so was out of the question considering my iPad/iPhone requirement. This left StrongSwan and FreeSwan as the potential VPN platforms.</p>
<p>I started looking at LowEndBox <sup class='footnote'><a rel="nofollow" target="_blank" href='#fn-430-5' id='fnref-430-5'>5</a></sup> for cheap Virtual Private Servers (VPS) that came with copious amounts of data. I don&#8217;t need much processing power&#8230; just a lot of bandwidth. Initially I thought I found a great service for $5/mo&#8230; an OpenVZ based VPS with unlimited data. I purchased a couple months worth, and began setting up an Ubuntu 10.10 server, using the guide at ByBacon.com <sup class='footnote'><a rel="nofollow" target="_blank" href='#fn-430-6' id='fnref-430-6'>6</a></sup>.</p>
<p>It was then that I hit a major stumbling block. Every time that I attempted to initiate a connection with the VPS from any one of my clients, the server would fail to respond. Checking the server logs, I didn&#8217;t see any record of either PPP connections or IPSec initiations. Obviously there was an issue with the NIC interface.</p>
<p>On investigation, I found that OpenVZ creates virtual, emulated ethernet devices, using the name VENET, with no MAC address. IPSec VPN service I was attempting to use requires root-level access to the device itself, as well as an accessible MAC address. Now, this can be accomplished using a TUN/TAP device&#8230; but requires some not-so-simple changes by the OpenVZ administrator. I put in a ticket to have one created, but unfortunately the service I&#8217;d paid for happens to not support creating these devices for clients.</p>
<p>So&#8230; I needed to find a different service&#8230; either Xen-based or VMware-based. Eventually I found a service from ENScloud <sup class='footnote'><a rel="nofollow" target="_blank" href='#fn-430-7' id='fnref-430-7'>7</a></sup> that seems to work well, and provide me with copious amounts of bandwidth. It took about a week for them to provision my server and IP, but after the initial hiccup everything seems to function well (their support guy Brandon was more than helpful after I put in a ticket requesting update). I&#8217;ve been listening to Pandora a lot since the VPN was created.</p>
<p>I eventually plan to rent out access to my VPN to family and friends, as I want to recoup my costs, so I figure that if I can rent out access for $5/yr if I get 12-15 people interested. I&#8217;ve managed to get it working easily under Windows (certificate-based), Mac, iPad, and iPhone, so no matter what platform family and friends are using, it will be accessible to them. I would eventually like to get a WebDAV service running as part of the service, so those with iWork for iOS can use it for cloud document storage.</p>


<div class='footnotes'><div class='footnotedivider'></div><ol><li id='fn-430-1'><a href="http://www.pandora.com" onclick="pageTracker._trackPageview('/outgoing/www.pandora.com?referer=');">http://www.pandora.com</a> <span class='footnotereverse'><a rel="nofollow" target="_blank" href='#fnref-430-1'>&#8617;</a></span></li><li id='fn-430-2'><a href="http://en.wikipedia.org/wiki/Music_Genome_Project" onclick="pageTracker._trackPageview('/outgoing/en.wikipedia.org/wiki/Music_Genome_Project?referer=');">http://en.wikipedia.org/wiki/Music_Genome_Project</a> <span class='footnotereverse'><a rel="nofollow" target="_blank" href='#fnref-430-2'>&#8617;</a></span></li><li id='fn-430-3'><a href="http://www.last.fm" onclick="pageTracker._trackPageview('/outgoing/www.last.fm?referer=');">http://www.last.fm</a> <span class='footnotereverse'><a rel="nofollow" target="_blank" href='#fnref-430-3'>&#8617;</a></span></li><li id='fn-430-4'><a href="http://www.hulu.com" onclick="pageTracker._trackPageview('/outgoing/www.hulu.com?referer=');">http://www.hulu.com</a> <span class='footnotereverse'><a rel="nofollow" target="_blank" href='#fnref-430-4'>&#8617;</a></span></li><li id='fn-430-5'><a href="http://www.lowendbox.com" onclick="pageTracker._trackPageview('/outgoing/www.lowendbox.com?referer=');">http://www.lowendbox.com</a> <span class='footnotereverse'><a rel="nofollow" target="_blank" href='#fnref-430-5'>&#8617;</a></span></li><li id='fn-430-6'><a href="http://www.bybacon.com/2010/08/28/l2tp-ipsec-vpn-ubuntu-10-04-server-maciphone-clients" onclick="pageTracker._trackPageview('/outgoing/www.bybacon.com/2010/08/28/l2tp-ipsec-vpn-ubuntu-10-04-server-maciphone-clients?referer=');">http://www.bybacon.com/2010/08/28/l2tp-ipsec-vpn-ubuntu-10-04-server-maciphone-clients</a> <span class='footnotereverse'><a rel="nofollow" target="_blank" href='#fnref-430-6'>&#8617;</a></span></li><li id='fn-430-7'><a href="http://www.enscloud.com" onclick="pageTracker._trackPageview('/outgoing/www.enscloud.com?referer=');">http://www.enscloud.com</a> <span class='footnotereverse'><a rel="nofollow" target="_blank" href='#fnref-430-7'>&#8617;</a></span></li></ol></div>]]></content:encoded>
			<wfw:commentRss>http://www.kroesbergens.com/portfolio/2010/12/experiences-creating-a-vps-based-vpn/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>iPad Tethering</title>
		<link>http://www.kroesbergens.com/portfolio/2010/05/ipad-tethering/</link>
		<comments>http://www.kroesbergens.com/portfolio/2010/05/ipad-tethering/#comments</comments>
		<pubDate>Wed, 05 May 2010 00:53:21 +0000</pubDate>
		<dc:creator>Wes Kroesbergen</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Rogers]]></category>
		<category><![CDATA[tethering]]></category>

		<guid isPermaLink="false">http://www.kroesbergens.com/portfolio/?p=294</guid>
		<description><![CDATA[As you&#8217;re no doubt aware, Steve Jobs indicated1 before the launch of the iPad that tethering to an iPhone would not be a supported feature. True to his word, my WiFi-only iPad does not tether via Bluetooth to the iPhone (as a matter of fact, they won&#8217;t pair at all). Unfortunately for me, I&#8217;ve sold [...]]]></description>
			<content:encoded><![CDATA[<p>As you&#8217;re no doubt aware, Steve Jobs indicated<sup class='footnote'><a rel="nofollow" target="_blank" href='#fn-294-1' id='fnref-294-1'>1</a></sup> before the launch of the iPad that tethering to an iPhone would not be a supported feature. True to his word, my WiFi-only iPad does not tether via Bluetooth to the iPhone (as a matter of fact, they won&#8217;t pair at all). Unfortunately for me, I&#8217;ve sold my laptop. This means I can no longer tether the iPhone&#8217;s 3G connection to the laptop and set up an ad hoc WiFi network for the iPad to connect to.</p>
<p>Fortunately the Spirit jailbreak<sup class='footnote'><a rel="nofollow" target="_blank" href='#fn-294-2' id='fnref-294-2'>2</a></sup> tool was released just after the launch of the 3G iPad this past weekend. The Spirit jailbreak uses a common exploit to the iPad and iPhone to jailbreak, and consequently, I was able to jailbreak my iPhone 3GS running the latest firmware/baseband. I installed MyWi<sup class='footnote'><a rel="nofollow" target="_blank" href='#fn-294-3' id='fnref-294-3'>3</a></sup> a tethering application that goes beyond Apple&#8217;s Bluetooth/USB tethering to provide tethering via WiFi, similar to the Verizon MiFi. I set up a WiFi network and password protected it. Thanks to the iPad&#8217;s network memory feature, every time I launch MyWi, it starts the protected network, and the iPad automatically connects. Smooth and seamless.</p>
<p>The only problem I&#8217;ve had with this setup is the bandwidth usage. In 40 minutes I used up 33Mb down and 6.5 up. This was just doing basic web browsing, email, and a speed test. I don&#8217;t know how tenable this usage is on my 6GB/mo plan.</p>
<p>Here&#8217;s a screenshot of my bandwidth up and down in Toronto on Rogers 3G network. </p>
<p><img src="http://www.speedtest.net/iphone/35468710.png" alt="SpeedTest" /></p>

<div class='footnotes'><div class='footnotedivider'></div><ol><li id='fn-294-1'><a href="http://mashable.com/2010/03/06/iphone-ipad-tethering" onclick="pageTracker._trackPageview('/outgoing/mashable.com/2010/03/06/iphone-ipad-tethering?referer=');">http://mashable.com/2010/03/06/iphone-ipad-tethering</a>  <span class='footnotereverse'><a rel="nofollow" target="_blank" href='#fnref-294-1'>&#8617;</a></span></li><li id='fn-294-2'><a href="http://www.spiritjb.com" onclick="pageTracker._trackPageview('/outgoing/www.spiritjb.com?referer=');">http://www.spiritjb.com</a>  <span class='footnotereverse'><a rel="nofollow" target="_blank" href='#fnref-294-2'>&#8617;</a></span></li><li id='fn-294-3'><a href="http://modmyi.com/forums/mywi" onclick="pageTracker._trackPageview('/outgoing/modmyi.com/forums/mywi?referer=');">http://modmyi.com/forums/mywi</a>  <span class='footnotereverse'><a rel="nofollow" target="_blank" href='#fnref-294-3'>&#8617;</a></span></li></ol></div>]]></content:encoded>
			<wfw:commentRss>http://www.kroesbergens.com/portfolio/2010/05/ipad-tethering/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Adobe Flash</title>
		<link>http://www.kroesbergens.com/portfolio/2010/04/adobe-flash/</link>
		<comments>http://www.kroesbergens.com/portfolio/2010/04/adobe-flash/#comments</comments>
		<pubDate>Fri, 02 Apr 2010 18:27:42 +0000</pubDate>
		<dc:creator>Wes Kroesbergen</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Adobe Flash]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[iPod Touch]]></category>
		<category><![CDATA[Movie Players]]></category>
		<category><![CDATA[Music Streaming]]></category>
		<category><![CDATA[Photos]]></category>

		<guid isPermaLink="false">http://www.kroesbergens.com/portfolio/?p=282</guid>
		<description><![CDATA[I thought I&#8217;d write another short post on my view of Adobe Flash, and why I think there is such a negative reaction to it. We went through a bit of a war over Adobe Flash when the iPhone was originally announced, and I think we&#8217;re going through one again, only this time the technology [...]]]></description>
			<content:encoded><![CDATA[<p>I thought I&#8217;d write another short post on my view of Adobe Flash, and why I think there is such a negative reaction to it. We went through a bit of a war over Adobe Flash when the iPhone was originally announced, and I think we&#8217;re going through one again, only this time the technology field has changed sufficiently to make an entirely new battle. When the iPhone was originally announced, and Flash support was discovered to be lacking, there was a great deal of outrage. At the time, it was a <em>de facto</em> standard. Since then, web developers have begun to code their websites more and more for non-Flash devices. Major sites like YouTube have developed HTML5 player alternatives for their videos. There is a lot more weight against Adobe to prove why Flash is necessary this time around.</p>
<p>What is Flash used for? In my experience, Flash is generally used for the following:</p>
<ul>
<li>Ads</li>
<li>Games</li>
<li>Music Players</li>
<li>Movie Players</li>
<li>Photo Galleries</li>
</ul>
<p>Lets look at each one of these categories in a bit more detail.</p>
<p><strong>Ads:</strong> Those annoying, flashy (excuse the pun) banners you see on some of the riff-raff sites of the internet. The big, ugly, strong-coloured patches in the websites you visit&#8230; generally are Flash. Very few people appreciate Flash ads. As a matter of fact, they were one of the leading instigators in the ad-blocking plugin market.</p>
<p><strong>Games:</strong> This I believe is the only category that truly justifies the &#8216;interactive&#8217; benefit that Flash provides. There is nothing else that remotely comes close to the power of Flash interactivity for web interface games. However, I have a problem with the category. It is generally either children or reclusive adults that tend to play Flash games. The majority of the adult population use the web for information consumption. The majority of children/teenagers will use a dedicated gaming device. I also think that as the iTunes App Store market matures in the gaming category, the majority of users will find much more value in natively coded games.</p>
<p><strong>Music Streaming</strong> Another category that Flash is very prevalent in usage. Sites like MySpace, Last.fm, and others tend to use a Flash player by default. The reason for this is that Flash tends to be a very quick, easy to implement solution for music playback and playlist generation. There is nothing else available right now that offers the webmaster anything nearly as easy to implement. Until HTML5 becomes a bit more prevalent, Flash will be used <em>de facto</em> for music playback in the browser. Fortunately for us iPhone/iPod Touch/iPad users, some of these sites have published API&#8217;s, and some have their own dedicated app in the iTunes App Store (e.g., Last.fm). Also, the majority of iPod Touch/iPhone/iPad users will have iTunes syncing their music to their device.</p>
<p><strong>Movie Players</strong> I would argue that this category would come close to Music Streaming in prevalence of Flash implementation. Unfortunately for Adobe, HTML5 offers a native implementation for movie streaming, via the &#8216;video&#8217; tag. As HTML5 browsers become more prevalent, and sites like YouTube switch to either a single HTML5 portal, or a dual HTML5/Flash service, Adobe will have a harder time justifying the need for Flash in the Movie Player category.</p>
<p><strong>Photo Galleries</strong> As an amateur photographer, I&#8217;ve found that the many self-hosted photo gallery solutions for servers are Flash based. However, this is again generally due to laziness on the part of programmers, or because there are a lot of easy, of-the-shelf solutions for the photographers with little computer knowledge. There are many native web coded galleries that work just as well, and are not hard to implement. Unfortunately, the majority of photographers do not have much of a budget for displaying their photos on the web, and generally hire a low-cost (usually inexperienced) web developer to build a photo site for them. There&#8217;s no technical justification for using Flash to display a gallery of photos.</p>
<p>Over the next few years, as HTML5 capable browsers become more ubiquitous, and providers start providing dual-service HTML5/Flash streaming, the need for Flash Movie Players will become miniscule. Thanks to the iTunes App Store, the desire for Flash games is swiftly disappearing. As applications like Lightroom and Aperture continue integrating web-publishing, photographers using professional tools for their photos will have less and less need to hire a third-party, inexperience web developer for Photo Galleries. In the end, the only justification for a webmaster to use Adobe Flash is for publishing Ads, and using it as an easy-to-implement Music Streaming player.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kroesbergens.com/portfolio/2010/04/adobe-flash/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Extracting Exchange Contacts from iPhone</title>
		<link>http://www.kroesbergens.com/portfolio/2010/01/extracting-exchange-contacts-from-iphone/</link>
		<comments>http://www.kroesbergens.com/portfolio/2010/01/extracting-exchange-contacts-from-iphone/#comments</comments>
		<pubDate>Tue, 19 Jan 2010 16:50:05 +0000</pubDate>
		<dc:creator>Wes Kroesbergen</dc:creator>
				<category><![CDATA[Featured Articles]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Air Contacts]]></category>
		<category><![CDATA[Exchange]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.kroesbergens.com/portfolio/2010/01/extracting-exchange-contacts-from-iphone/</guid>
		<description><![CDATA[Last week I was helping an individual migrate information over from his old company to his new company. As he no longer had physical access to the company computers, but still had Exchange access until the end of the month, one would have thought it a relatively trivial task. Quite the contrary. Though he had [...]]]></description>
			<content:encoded><![CDATA[<p>Last week I was helping an individual migrate information over from his old company to his new company. As he no longer had physical access to the company computers, but still had Exchange access until the end of the month, one would have thought it a relatively trivial task. Quite the contrary. Though he had access to his information via Outlook Web Access and his iPhone, he did not have a personal copy of Outlook, so using Outlook to export information was out of the question. OWA also does not allow you to export contact information, and instead presents them in an HTML page. After a number of attempts to extract the contact information via iTunes, I started looking at alternative means. At this point I discovered Air Contacts. </p>
<p>Air Contacts is a great app. It essentially sets up a localized webserver, and presents all your contact information (no matter the source) in a simple, MobileMe-esque interface. You can browse individual contacts, with an option at the bottom of each contact item to export a vCard. At the top of the web interface there is an option to export all contacts. This page in turn has options to export a zip file with the information, a Windows formatted vCard, a Mac vCard, or an iPhone contact backup vCard. It is a very well thought out design. </p>
<p>I initially ran into a bug with contact export crashing the app. After contacting the developer and submitting the crash logs, it was determined that some malformed contact image data wasn&#8217;t being handled properly. A few hours later the developer sent me an updated test application to see if he&#8217;d fixed the issue. After running the test app, I can safely say that the problem is fixed. Once the updated version hits the App Store (v1.7), I highly recommend this app to anyone looking for an easy way to extract their old Exchange contact information from their iPhone. </p>
<p>Overall, I give this app a 4/5. This app serves its purpose very well. Had it not been for the bug I ran into, this would have been 5/5.</p>
<p>You can view the developer&#8217;s website at <a href="http://www.apptism.com/apps/air-contacts" onclick="pageTracker._trackPageview('/outgoing/www.apptism.com/apps/air-contacts?referer=');">http://www.apptism.com/apps/air-contacts</a> and purchase it on the iPhone App Store for $1.99.  </p>
]]></content:encoded>
			<wfw:commentRss>http://www.kroesbergens.com/portfolio/2010/01/extracting-exchange-contacts-from-iphone/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

