<?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>Scott Means &#187; smeans</title>
	<atom:link href="http://smeans.com/author/admin/feed/" rel="self" type="application/rss+xml" />
	<link>http://smeans.com</link>
	<description>Ripping the envelope of software development, one technology at a time.</description>
	<lastBuildDate>Tue, 06 Oct 2009 13:47:26 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>I&#8217;m a guest blogger!</title>
		<link>http://smeans.com/2009/10/06/im-a-guest-blogger/</link>
		<comments>http://smeans.com/2009/10/06/im-a-guest-blogger/#comments</comments>
		<pubDate>Tue, 06 Oct 2009 13:47:26 +0000</pubDate>
		<dc:creator>smeans</dc:creator>
				<category><![CDATA[life]]></category>
		<category><![CDATA[blogging]]></category>
		<category><![CDATA[guest]]></category>
		<category><![CDATA[quintesocial]]></category>

		<guid isPermaLink="false">http://smeans.com/2009/10/06/im-a-guest-blogger/</guid>
		<description><![CDATA[Check it out, I&#8217;m on the Quintesocial blog:
http://www.meetbarb.com/2009/10/guest-blogger-scott-means.html
]]></description>
			<content:encoded><![CDATA[<p>Check it out, I&#8217;m on the Quintesocial blog:</p>
<p>http://www.meetbarb.com/2009/10/guest-blogger-scott-means.html</p>
]]></content:encoded>
			<wfw:commentRss>http://smeans.com/2009/10/06/im-a-guest-blogger/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Core data model migration on the iPhone.</title>
		<link>http://smeans.com/2009/08/02/core-data-model-migration-on-the-iphone/</link>
		<comments>http://smeans.com/2009/08/02/core-data-model-migration-on-the-iphone/#comments</comments>
		<pubDate>Sun, 02 Aug 2009 21:39:21 +0000</pubDate>
		<dc:creator>smeans</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://smeans.com/?p=196</guid>
		<description><![CDATA[Doing something as simple as adding a new attribute to an entity in your Core Data model will break your application when it comes to opening older persistent data stores. Core Data has some support for automatic migration, documented in the &#8220;Introduction to Core Data Model Versioning and Data Migration Programming Guide&#8221; (whew!) in the [...]]]></description>
			<content:encoded><![CDATA[<p>Doing something as simple as adding a new attribute to an entity in your Core Data model will break your application when it comes to opening older persistent data stores. Core Data has some support for automatic migration, documented in the &#8220;Introduction to Core Data Model Versioning and Data Migration Programming Guide&#8221; (whew!) in the Lightweight Migration section. Unfortunately, there are crucial steps that are not mentioned in this section. Kudos to Grouchal on Stack Overflow for giving us the <a href="http://stackoverflow.com/questions/1018155/what-do-i-have-to-do-to-get-core-data-to-automatically-migrate-models/1219911#1219911">rest of the story</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://smeans.com/2009/08/02/core-data-model-migration-on-the-iphone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Coolibah!</title>
		<link>http://smeans.com/2009/07/23/coolibah/</link>
		<comments>http://smeans.com/2009/07/23/coolibah/#comments</comments>
		<pubDate>Fri, 24 Jul 2009 03:55:02 +0000</pubDate>
		<dc:creator>smeans</dc:creator>
				<category><![CDATA[life]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[scrapbooking]]></category>

		<guid isPermaLink="false">http://smeans.com/2009/07/23/coolibah/</guid>
		<description><![CDATA[I was on the phone with my friend tonight, and I realized that I haven&#8217;t put any links to my latest iPhone project on the blog. Oops! Here&#8217;s a demo video showing Coolibah, the iPhone scrapbooking project I&#8217;m doing with my sister Bobbie:

You can also visit the Coolibah blog for the latest updates. We&#8217;re also [...]]]></description>
			<content:encoded><![CDATA[<p>I was on the phone with my friend tonight, and I realized that I haven&#8217;t put any links to my latest iPhone project on the blog. Oops! Here&#8217;s a demo video showing Coolibah, the iPhone scrapbooking project I&#8217;m doing with my sister Bobbie:<br />
<object width="560" height="340"><param name="movie" value="http://www.youtube.com/v/DzZvRDPB0cU&#038;hl=en&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/DzZvRDPB0cU&#038;hl=en&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="560" height="340"></embed></object></p>
<p>You can also visit the <a href="http://coolibahme.blogspot.com">Coolibah blog</a> for the latest updates. We&#8217;re also on Twitter (@coolibahme).</p>
]]></content:encoded>
			<wfw:commentRss>http://smeans.com/2009/07/23/coolibah/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My MySQL tool is on softpedia.com.</title>
		<link>http://smeans.com/2009/06/18/my-mysql-tool-is-on-softpediacom/</link>
		<comments>http://smeans.com/2009/06/18/my-mysql-tool-is-on-softpediacom/#comments</comments>
		<pubDate>Thu, 18 Jun 2009 20:06:21 +0000</pubDate>
		<dc:creator>smeans</dc:creator>
				<category><![CDATA[.Net]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://smeans.com/?p=184</guid>
		<description><![CDATA[I just got the notice today. I wrote this bulk row insert tool for MySQL that is designed to run over the Internet. It&#8217;s for really large data sets being loaded into &#8230; ahem &#8230; inexpensive hosted MySQL databases. Check out the mysqlxfer softpedia page.
]]></description>
			<content:encoded><![CDATA[<p>I just got the notice today. I wrote this bulk row insert tool for MySQL that is designed to run over the Internet. It&#8217;s for really large data sets being loaded into &#8230; ahem &#8230; <em>inexpensive</em> hosted MySQL databases. Check out the <a href="http://www.softpedia.com/get/Internet/Servers/Database-Utils/mysqlxfer.shtml">mysqlxfer softpedia page</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://smeans.com/2009/06/18/my-mysql-tool-is-on-softpediacom/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Roll-your-own iPhone framework.</title>
		<link>http://smeans.com/2009/06/06/roll-your-own-iphone-framework/</link>
		<comments>http://smeans.com/2009/06/06/roll-your-own-iphone-framework/#comments</comments>
		<pubDate>Sat, 06 Jun 2009 16:05:34 +0000</pubDate>
		<dc:creator>smeans</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://smeans.com/?p=179</guid>
		<description><![CDATA[After starting work on my latest iPhone app (#6 or so), I finally decided it was time to get more efficient with my existing library of code. I&#8217;ve been building various helper classes for manipulating bitmaps, etc, and I wanted to be able to share them between my apps in a more organized way.
As usual, [...]]]></description>
			<content:encoded><![CDATA[<p>After starting work on my latest iPhone app (#6 or so), I finally decided it was time to get more efficient with my existing library of code. I&#8217;ve been building various helper classes for manipulating bitmaps, etc, and I wanted to be able to share them between my apps in a more organized way.</p>
<p>As usual, there isn&#8217;t much on the web about this, but I eventually tracked down a couple of useful articles to get me started:</p>
<ul>
<li><a href="http://github.com/keremk/iphone-static-library-project-template/tree/master">keremk&#8217;s iphone-static-library-project-template</a></li>
<li><a href="http://blog.stormyprods.com/2008/11/using-static-libraries-with-iphone-sdk.html">Building static libraries with the iPhone SDK</a></li>
</ul>
<p>The first article shows you how to add your own custom project type template to XCode so you can easily create shared iPhone libraries. The second one shows you how to reference your new library from your application. With a little trial-and-error I now have a nice shared lib of iPhone classes. Pretty soon, who knows, maybe Apple will allow dynamic linking and we can move iPhone development into the 80s!</p>
]]></content:encoded>
			<wfw:commentRss>http://smeans.com/2009/06/06/roll-your-own-iphone-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iPhone programming: fun with grayscale images.</title>
		<link>http://smeans.com/2009/06/03/iphone-programming-fun-with-grayscale-images/</link>
		<comments>http://smeans.com/2009/06/03/iphone-programming-fun-with-grayscale-images/#comments</comments>
		<pubDate>Wed, 03 Jun 2009 17:55:21 +0000</pubDate>
		<dc:creator>smeans</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://smeans.com/?p=177</guid>
		<description><![CDATA[So I was trying to do something that I thought was simple. I needed to convert an image from full color to grayscale in my iPhone application, and I easily found the CGColorSpaceCreateDeviceGray method which seemed to put me on the right track. But the complication came when I tried to use this color space [...]]]></description>
			<content:encoded><![CDATA[<p>So I was trying to do something that I <em>thought</em> was simple. I needed to convert an image from full color to grayscale in my iPhone application, and I easily found the <span style="font-family: monospace">CGColorSpaceCreateDeviceGray</span> method which seemed to put me on the right track. But the complication came when I tried to use this color space with <span style="font-family: monospace">CGBitmapContextCreate</span>. I got this error in the console:</p>
<pre>&lt;Error&gt;: CGBitmapContextCreate: unsupported parameter combination:
8 integer bits/component; 16 bits/pixel; 1-component colorspace;
kCGImageAlphaPremultipliedLast; 1472 bytes/row.</pre>
<p>So the combination of parameters was incorrect. But which one was at fault? Thankfully, I found a helpful <a href="http://lists.apple.com/archives/Carbon-dev/2007/Jun/msg00014.html">post</a> on the web that led me to this article:</p>
<p><a href="http://developer.apple.com/qa/qa2001/qa1037.html">CGBitmapContextCreate Supported Color Spaces</a></p>
<p>Very handy. Wish that this table were actually included in the documentation for the <span style="font-family: monospace">CGBitmapContextCreate</span> method. Imagine how useful that would be! So, for your convenience, here is a function to create a grayscale copy of a <span style="font-family: monospace">UIImage</span>:</p>
<pre>UIImage *createGrayCopy(UIImage *source)
{
	int width = source.size.width;
	int height = source.size.height;

	CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceGray();

	CGContextRef context = CGBitmapContextCreate (nil,
						 width,
						 height,
						 8,      // bits per component
						 0,
						 colorSpace,
						 kCGImageAlphaNone);

	CGColorSpaceRelease(colorSpace);

	if (context == NULL) {
		return nil;
	}

	CGContextDrawImage(context,
		CGRectMake(0, 0, width, height), source.CGImage);

	UIImage *grayImage = [UIImage imageWithCGImage:CGBitmapContextCreateImage(context)];
	CGContextRelease(context);

	return grayImage;
}</pre>
]]></content:encoded>
			<wfw:commentRss>http://smeans.com/2009/06/03/iphone-programming-fun-with-grayscale-images/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A day with the Jester.</title>
		<link>http://smeans.com/2009/05/30/a-day-with-the-jester/</link>
		<comments>http://smeans.com/2009/05/30/a-day-with-the-jester/#comments</comments>
		<pubDate>Sat, 30 May 2009 21:47:52 +0000</pubDate>
		<dc:creator>smeans</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[life]]></category>

		<guid isPermaLink="false">http://smeans.com/?p=159</guid>
		<description><![CDATA[I just finished one of the most interesting software development projects ever this week. After responding to a note posted to the Atlanta iPhone Developer Meetup group I ended up trading emails with JD Howard, author of the Naughty Jester blog. JD wanted an iPhone app to help connect with his readers, but he didn&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://naughtyjester.com"><img src="http://smeans.com/wp-content/uploads/2009/05/jesterimage1-143x150.jpg" alt="The Naughty Jester" title="The Naughty Jester" width="143" height="150" class="alignright size-thumbnail wp-image-161" /></a>I just finished one of the most interesting software development projects ever this week. After responding to a note posted to the <a href="http://www.meetup.com/atliphonedev/">Atlanta iPhone Developer Meetup group</a> I ended up trading emails with JD Howard, author of the <a href="http://naughtyjester.com">Naughty Jester</a> blog. JD wanted an iPhone app to help connect with his readers, but he didn&#8217;t have a big budget and he didn&#8217;t have a lot of time. He wanted to &#8220;drive down and knock an app out&#8221; in a day or so.</p>
<p>Never one to pass up a challenge, I told him to come on down. I was careful to set his expectations as low as possible, because one day really isn&#8217;t enough time to do a meaningful application. All I could promise was that at the end we would have something to submit to the iTunes App Store, and he was OK with that.</p>
<p>So at approximately 3:00 PM on Monday (Memorial Day), JD pulled up to my house in Columbia, SC. The trip took him 5 hours, instead of the 3 that he had originally thought. After a brief meet &#038; greet (plus various social networking connections, which I guess are the modern equivalent of <a href="http://en.wikipedia.org/wiki/Visiting_card">calling cards</a>), we sat down to do a quick mockup of his site.</p>
<p>We used a new tool that I really, really like: <a href="http://www.balsamiq.com/products/mockups">Balsamique Markups</a>. It&#8217;s a very nice WYSIWYG tool for laying out web pages, applications, and iPhone apps. For OCD perfectionists (which many developers are), I find the cartoony graphics strangely freeing. It really lets me lay out the gist of something without getting sucked into the minutiae of a full design.</p>
<p>We agreed on a basic application that would:
<ul>
<li>display his blog in a browser control</li>
<li>let the user forward a link to a friend</li>
<li>take the user to a newsletter signup</li>
<li>take the user to feedburner</li>
</ul>
<p>The one rule of iPhone development is that the things you think will be simple will be hard, and the things you think will be hard will be easy. We had a browser window up and running with his blog in it within 30 minutes. But producing a decent-looking home button image took almost an hour.</p>
<p>Possibly the most interesting part of the project was having someone I&#8217;d never met come and crash at my house while developing an application. My mother (who lives with me) was a little leery of the idea at first. &#8220;What if he&#8217;s an axe murderer?&#8221;</p>
<p>After JD and I had been working for a while and I mentioned this to him, he assured her that he was not an axe murderer, which I&#8217;m not sure had the desired effect. I put it to her like this &#8220;It&#8217;s like we&#8217;re running a bed &#038; breakfast, with iPhone development on the side.&#8221; Hmmmm&#8230;.</p>
<p>In any case, working with JD was a real pleasure, and we had some interesting conversations over cigars at the end of the day. Now, let&#8217;s all keep our fingers crossed that Apple will be kind and merciful and approve the app!</p>
]]></content:encoded>
			<wfw:commentRss>http://smeans.com/2009/05/30/a-day-with-the-jester/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Fluid Grids</title>
		<link>http://smeans.com/2009/05/20/fluid-grids/</link>
		<comments>http://smeans.com/2009/05/20/fluid-grids/#comments</comments>
		<pubDate>Thu, 21 May 2009 02:41:14 +0000</pubDate>
		<dc:creator>smeans</dc:creator>
				<category><![CDATA[design]]></category>

		<guid isPermaLink="false">http://smeans.com/?p=122</guid>
		<description><![CDATA[Saw this article today on relative font sizing using em units. Very nice. I&#8217;ve been using percentages for a while, but this seems a little more designer-friendly.
Fluid Grids: &#8220;How awesome would it be if you could combine the aesthetic rigor and clarity of fixed-width, grid-based layouts with the device- and screen size independence and user-focused [...]]]></description>
			<content:encoded><![CDATA[<p>Saw this article today on relative font sizing using em units. Very nice. I&#8217;ve been using percentages for a while, but this seems a little more designer-friendly.</p>
<p><a href="http://www.alistapart.com/articles/fluidgrids/">Fluid Grids</a>: &#8220;How awesome would it be if you could combine the aesthetic rigor and clarity of fixed-width, grid-based layouts with the device- and screen size independence and user-focused flexibility of fluid layouts? Completely awesome, that&#8217;s how awesome. And with a little cunning and a tad of easy math, ALA&#8217;s Ethan Marcotte gets it done. We smell a trend in the offing.&#8221;</p>
<p>(Via <a href="http://www.alistapart.com/articles/">A List Apart</a>.)</p>
]]></content:encoded>
			<wfw:commentRss>http://smeans.com/2009/05/20/fluid-grids/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Easy way to lock your Mac.</title>
		<link>http://smeans.com/2009/05/19/easy-way-to-lock-your-mac/</link>
		<comments>http://smeans.com/2009/05/19/easy-way-to-lock-your-mac/#comments</comments>
		<pubDate>Tue, 19 May 2009 14:46:15 +0000</pubDate>
		<dc:creator>smeans</dc:creator>
				<category><![CDATA[life]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://smeans.com/2009/05/19/easy-way-to-lock-your-mac/</guid>
		<description><![CDATA[When I switched from a Windows box to a Mac, oddly enough the thing that I missed the most was the Windows+L hotkey to lock my screen. I tend to work in coffee shops and restaurants a lot, and if I get up to get something to drink or stretch my legs, I don&#8217;t like [...]]]></description>
			<content:encoded><![CDATA[<p>When I switched from a Windows box to a Mac, oddly enough the thing that I missed the most was the Windows+L hotkey to lock my screen. I tend to work in coffee shops and restaurants a lot, and if I get up to get something to drink or stretch my legs, I don&#8217;t like to leave my computer wide open. I know, someone could always go for the grab, but I&#8217;m just interested in discouraging the idly curious.</p>
<p>After googling around a little, I found out about the Login Window menu item (accessed through your user name in the menu bar), which is nice. But I was poking around with System Preferences (under the apple menu) yesterday and I came across the Exposé feature. It lets you assign actions (like run the screensaver) to &#8220;hot corners&#8221; of your display. Now, all I have to do is drag my mouse to the lower-right corner of my screen and the screensaver pops up. Almost as good as the old hotkey!</p>
]]></content:encoded>
			<wfw:commentRss>http://smeans.com/2009/05/19/easy-way-to-lock-your-mac/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Free Internet at Starbucks (finally)!</title>
		<link>http://smeans.com/2009/05/15/free-internet-at-starbucks-finally/</link>
		<comments>http://smeans.com/2009/05/15/free-internet-at-starbucks-finally/#comments</comments>
		<pubDate>Fri, 15 May 2009 18:01:06 +0000</pubDate>
		<dc:creator>smeans</dc:creator>
				<category><![CDATA[life]]></category>
		<category><![CDATA[free]]></category>
		<category><![CDATA[Starbucks]]></category>
		<category><![CDATA[wifi]]></category>

		<guid isPermaLink="false">http://smeans.com/2009/05/15/free-internet-at-starbucks-finally/</guid>
		<description><![CDATA[Ok, so I&#8217;ve ended my long-running (5+ years?!?) feud with Starbucks because I can now get free Internet. In fact, I&#8217;m typing this from the Starbucks at the Columbiana Mall right now. The secret steps to getting your free access are:
1) Buy a Starbucks gift card. The minimum amount is $5, so guess how much [...]]]></description>
			<content:encoded><![CDATA[<p>Ok, so I&#8217;ve ended my long-running (5+ years?!?) feud with Starbucks because I can now get free Internet. In fact, I&#8217;m typing this from the Starbucks at the Columbiana Mall right now. The secret steps to getting your free access are:</p>
<p>1) Buy a Starbucks gift card. The minimum amount is $5, so guess how much I paid.<br />
2) Fire up your laptop and look for a link on the free WiFi greeting page about &#8220;Complimentary Wifi&#8221;.<br />
3) You&#8217;ll need to create a free Starbucks.com account using the new gift card # and the secret PIN (which you have to scratch-off).<br />
4) Enjoy the yummy free WiFi!</p>
]]></content:encoded>
			<wfw:commentRss>http://smeans.com/2009/05/15/free-internet-at-starbucks-finally/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
