<?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>KDBDallas &#187; Programming</title>
	<atom:link href="http://kdbdallas.com/category/programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://kdbdallas.com</link>
	<description>Mac and iPhone Developer, Lacrosse Fan and Coach, Husband, Father, all in one</description>
	<lastBuildDate>Fri, 13 Jan 2012 21:35:25 +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>Manually Creating Universal Binaries for iOS</title>
		<link>http://kdbdallas.com/2012/01/13/manually-creating-universal-binaries-for-ios/</link>
		<comments>http://kdbdallas.com/2012/01/13/manually-creating-universal-binaries-for-ios/#comments</comments>
		<pubDate>Fri, 13 Jan 2012 21:30:24 +0000</pubDate>
		<dc:creator>Dallas</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[Cocoa Touch]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Lipo]]></category>
		<category><![CDATA[Static Library]]></category>
		<category><![CDATA[Universal]]></category>

		<guid isPermaLink="false">http://kdbdallas.com/?p=414</guid>
		<description><![CDATA[Universal Binaries are a wonderful thing, and not just if you are still writing Mac Power PC code, they are just as useful in the iOS development world. If you do any amount of iOS development, chances are you have used (in one way or another) a static library. Usually when you use a static [...]]]></description>
			<content:encoded><![CDATA[<p>Universal Binaries are a wonderful thing, and not just if you are still writing Mac Power PC code, they are just as useful in the iOS development world.</p>
<p>If you do any amount of iOS development, chances are you have used (in one way or another) a static library.<br />
Usually when you use a static library you get (or compile) 2 versions.<br />
One for the device, and one for the simulator.</p>
<p>This is fine until you want to add the library to your app.<br />
If you are using the simulator and the device for testing you have to play a swapping game with the corresponding library version.</p>
<p>Wouldn&#8217;t it be easier if you could just have 1 version of the library and it worked on the device or the simulator without you having to make any changes?<br />
Sounds nice? I would say so, and luckily it is pretty easy.</p>
<p>The first thing you need to do is open a Terminal window (don&#8217;t worry, its just 1 command)</p>
<p>Use the following command (replacing the library path and name, with your libraries information):</p>
<p><code>lipo -output <em>&lt;StaticLibraryUniversal&gt;.a</em> -create <em>&lt;StaticLibraryDevice&gt;.a</em> -arch i386 <em>&lt;StaticLibrarySimulator&gt;.a</em></code></p>
<p>Thats it!</p>
<p>Just use the new static library file in your project and you can move between the device and the simulator without worry about anything!</p>
<p>Have fun.</p>
]]></content:encoded>
			<wfw:commentRss>http://kdbdallas.com/2012/01/13/manually-creating-universal-binaries-for-ios/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Complete Friday Q&amp;A by Mike Ash</title>
		<link>http://kdbdallas.com/2011/01/27/the-complete-friday-qa-by-mike-ash/</link>
		<comments>http://kdbdallas.com/2011/01/27/the-complete-friday-qa-by-mike-ash/#comments</comments>
		<pubDate>Fri, 28 Jan 2011 04:31:38 +0000</pubDate>
		<dc:creator>Dallas</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[Cocoa Touch]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[SDK]]></category>
		<category><![CDATA[C]]></category>

		<guid isPermaLink="false">http://kdbdallas.com/?p=367</guid>
		<description><![CDATA[Mike Ash has turned his famous Friday Question and Answer series into a book, available in either iBooks or Kindle versions. Mike is an amazingly smart guy, who knows more about programming then you could ever imagine. If you work with Objective-C you owe it to yourself to check out his book and his site.]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.mikeash.com/pyblog/">Mike Ash</a> has turned his famous Friday Question and Answer series <a href="http://www.mikeash.com/pyblog/complete-friday-qa-now-available.html">into a book</a>, available in either <a href="http://itunes.apple.com/us/book/the-complete-friday-q-a-volume/id417272297">iBooks</a> or <a href="http://www.amazon.com/Complete-Friday-ebook/dp/B004KZQ0LO/ref=sr_1_14?ie=UTF8&#038;qid=1296154100&#038;sr=8-14">Kindle</a> versions.</p>
<p>Mike is an amazingly smart guy, who knows more about programming then you could ever imagine.</p>
<p>If you work with Objective-C you owe it to yourself to check out his book and his site.</p>
]]></content:encoded>
			<wfw:commentRss>http://kdbdallas.com/2011/01/27/the-complete-friday-qa-by-mike-ash/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>XMLRPC-iOS</title>
		<link>http://kdbdallas.com/2011/01/07/xmlrpc-ios/</link>
		<comments>http://kdbdallas.com/2011/01/07/xmlrpc-ios/#comments</comments>
		<pubDate>Fri, 07 Jan 2011 16:51:32 +0000</pubDate>
		<dc:creator>Dallas</dc:creator>
				<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[Cocoa Touch]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Mercurial]]></category>
		<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[XMLRPC]]></category>

		<guid isPermaLink="false">http://kdbdallas.com/?p=363</guid>
		<description><![CDATA[I am working on a project where I need to make a XMLRPC connection to an API in Objective-C, and someone pointed me to: Eric Czarny&#8217;s XMLRPC project on GitHub. While this is great, it was done as a framework for Cocoa and since the project I am working on is for iOS 3rd party [...]]]></description>
			<content:encoded><![CDATA[<p>I am working on a project where I need to make a XMLRPC connection to an API in Objective-C, and someone pointed me to:<br />
<a href="https://github.com/eczarny/xmlrpc">Eric Czarny&#8217;s XMLRPC project on GitHub</a>.</p>
<p>While this is great, it was done as a framework for Cocoa and since the project I am working on is for iOS 3rd party frameworks are not allowed. Instead they have to built as a Static Library.</p>
<p>So I started a new iOS Static Library project and converted over Eric&#8217;s code.<br />
I now have a XMLRPC iOS Static Library ready for SDK 4.0 and greater.</p>
<p>You can find my iOS version on my BitBucket account.<br />
Specifically: <a href="https://bitbucket.org/kdbdallas/xmlrpc-ios/wiki/Home">https://bitbucket.org/kdbdallas/xmlrpc-ios</a></p>
]]></content:encoded>
			<wfw:commentRss>http://kdbdallas.com/2011/01/07/xmlrpc-ios/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My Mac/iOS Setup at Work</title>
		<link>http://kdbdallas.com/2010/12/17/my-macios-setup-at-work/</link>
		<comments>http://kdbdallas.com/2010/12/17/my-macios-setup-at-work/#comments</comments>
		<pubDate>Fri, 17 Dec 2010 18:07:57 +0000</pubDate>
		<dc:creator>Dallas</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Fanboy]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[HashBang Ind]]></category>
		<category><![CDATA[iDeskCal]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Programs]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://kdbdallas.com/?p=349</guid>
		<description><![CDATA[Inspired by a similar post I saw today, I thought I would take a snap of my computer setup at work and share it with all of you. I have uploaded it to Flickr with notes on what everything is, but I will attach the basics to this post. This is my setup at work [...]]]></description>
			<content:encoded><![CDATA[<p>Inspired by a similar post I saw today, I thought I would take a snap of my computer setup at work and share it with all of you.</p>
<p>I have uploaded it to Flickr with notes on what everything is, but I will attach the basics to this post.</p>
<p><a href="http://www.flickr.com/photos/kdbdallas/5268639089/" title="Work Setup by Dallas Brown, on Flickr"><img src="http://farm6.static.flickr.com/5128/5268639089_c4050fdffe.jpg" width="500" height="375" alt="Work Setup" /></a></p>
<p>This is my setup at work &#8211; Moki Networks &#8211; <a href="http://www.mokinetworks.com">mokinetworks.com</a><br />
All Displays powered by the iMac.</p>
<p>27&#8243; iMac &#8211; 2.8 GHz Intel Core i7. 8GB RAM &#8211; Running Xcode<br />
Samsung 27&#8243; Monitor &#8211; Running my Mac app &#8216;iDeskCal&#8217; <a href="http://www.HashBangInd.com/iDeskCal" rel="nofollow">www.HashBangInd.com/iDeskCal</a> and Safari viewing <a href="http://www.philhendrieshow.com" rel="nofollow">www.philhendrieshow.com</a><br />
Dell 24&#8243; Monitor &#8211; Powered via EVGA UV Plus+ 16 (USB Display Adapter) Running iPhone 4 Simulator and Xcode Console<br />
iPad running as a monitor using the app Air Display. Using for Mac OS Dock, Twitter (Echofon), and IM (Adium)<br />
iPhone 4 running Safari, viewing personal Mac and iOS company HashBang Industries. <a href="http://HashBangInd.com" rel="nofollow">HashBangInd.com</a><br />
iPhone 3GS<br />
iPhone 3G (broken screen but working)<br />
iPod Touch &#8211; 2nd Generation<br />
iPhone &#8211; 1st Generation<br />
Bose QuietComfort 15 Noise Canceling Headphones<br />
Dr Pepper!</p>
]]></content:encoded>
			<wfw:commentRss>http://kdbdallas.com/2010/12/17/my-macios-setup-at-work/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Very Very Classy</title>
		<link>http://kdbdallas.com/2010/06/17/very-very-classy/</link>
		<comments>http://kdbdallas.com/2010/06/17/very-very-classy/#comments</comments>
		<pubDate>Thu, 17 Jun 2010 22:25:49 +0000</pubDate>
		<dc:creator>Dallas</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[Cocoa Touch]]></category>
		<category><![CDATA[Fanboy]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[WWDC]]></category>

		<guid isPermaLink="false">http://kdbdallas.com/?p=324</guid>
		<description><![CDATA[I was VERY disappointed that I was unable to make it to Apple&#8217;s WWDC (World Wide Developer Conference) this year (it was last week). The sessions are always VERY informative, but it is also a excellent chance to not only meet with other Mac/iOS developers, but you have the chance to talk one on one [...]]]></description>
			<content:encoded><![CDATA[<p>I was VERY disappointed that I was unable to make it to Apple&#8217;s WWDC (World Wide Developer Conference) this year (it was last week).</p>
<p>The sessions are always VERY informative, but it is also a excellent chance to not only meet with other Mac/iOS developers, but you have the chance to talk one on one with the very people who are writing the software and API&#8217;s (Application Programming Interface) that we write software for/with.</p>
<p>Apple does make the videos of the sessions (along with the slides) available to everyone that attends, and allows those that didn&#8217;t attend to purchase the videos.<br />
Before last year, these videos usually took around 6 months to become available, however last year they had them released within a month.</p>
<p>This year Apple TOTALLY outdid themselves and have released the videos all today!<br />
That is LESS than 1 week!<br />
Not only did they release everything within a week, but Apple has made all of the videos and slides available to ALL registered developers (even the free developer accounts) FOR FREE!!! That is a $500 savings for those that couldn&#8217;t attend!</p>
<p>I only have 2 things to say&#8230;</p>
<p>First: Good bye to my Hard Drive space <img src='http://kdbdallas.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  (The videos are available in HD and Standard formats this year)</p>
<p>and Secondly&#8230; Classy Apple! VERY VERY CLASSY!</p>
<p><em>Reminder: Even though the videos did not cost this year, they are still covered under an NDA that you agree to when signing up for a developer account. Don&#8217;t make them sorry that they were so giving.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://kdbdallas.com/2010/06/17/very-very-classy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why Engineers Hop Jobs</title>
		<link>http://kdbdallas.com/2010/05/03/why-engineers-hop-jobs/</link>
		<comments>http://kdbdallas.com/2010/05/03/why-engineers-hop-jobs/#comments</comments>
		<pubDate>Mon, 03 May 2010 17:23:40 +0000</pubDate>
		<dc:creator>Dallas</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://kdbdallas.com/?p=314</guid>
		<description><![CDATA[Repost of an article by Ted Dziuba on Saturday May 01, 2010. Read the original article at: http://teddziuba.com/2010/05/why-engineers-hop-jobs.html &#8212;&#8212;- What&#8217;s with all the hate on my generation? It started when somebody quit Jason Calacanis&#8217;s industrial web spam startup, Mahalo, for a higher paying position at a competitor. Invariably, Calacanis went apeshit on the poor guy [...]]]></description>
			<content:encoded><![CDATA[<p><em>Repost of an article by Ted Dziuba on Saturday May 01, 2010.<br />
Read the original article at: <a href="http://teddziuba.com/2010/05/why-engineers-hop-jobs.html">http://teddziuba.com/2010/05/why-engineers-hop-jobs.html</a></em></p>
<p>&#8212;&#8212;-</p>
<p>What&#8217;s with all the hate on my generation? It started when somebody<br />
 quit Jason Calacanis&#8217;s industrial web spam startup, Mahalo, for a higher<br />
paying position at a competitor. Invariably, Calacanis went apeshit on<br />
the poor guy in a very public way, and this started a cascade of blogosphere<br />
butthurt about people in software under thirty: that we&#8217;re unreliable,<br />
that we&#8217;re lazy, that we&#8217;re entitled.</p>
<p>Well I&#8217;m as unreliable, lazy, and entitled as the next guy, but that&#8217;s not<br />
why I&#8217;ve hopped jobs in the past. People in my generation have a very<br />
low tolerance for bullshit, and software engineering, in general, is a<br />
very high bullshit career. If you couple that with the standard load<br />
of bullshit you would get from a non-technical Harvard MBA type boss &mdash;<br />
like many CEOs that you find trying to get rich in Silicon Valley by<br />
hiring some engineers to &#8220;code up this idea real quick&#8221; &mdash; it&#8217;s no<br />
wonder that a good engineer will walk off the job after his one year<br />
cliff vesting.</p>
<p>As an engineer, you are told that you&#8217;re &#8220;lucky to have a job&#8221;, because there are &#8220;a hundred people lined up<br />
outside, ready to take it&#8221;. (As chance would have it, there are at<br />
least a thousand lined up to take the job of <em>rich prick who tells<br />
people what to do</em>). This backlash is the product of diseased<br />
thinking. A CEO who makes an engineer work 80 hours a week is a driven<br />
entrepreneur, but an engineer asking for a comfy chair is a prima<br />
donna. So, when we are up to our knees in golf-course, martini-lunch<br />
bullshit, don&#8217;t be surprised when we jump ship for a higher<br />
salary.</p>
<p>I recognize the value of business people and<br />
management. Somebody has to sell the code that I write, which in turn<br />
puts food on my table. Since I <em>am</em> an engineer, I like<br />
iterative optimization. Every time I have left a job, I have<br />
further refined the requirements that a person must fill before I agree to work for him. After every job, I add one or two requirements to the list, and<br />
I have found that my happiness at work improves dramatically with<br />
every step.</p>
<p>This is my current list:</p>
<ul>
<li>The organization must need me at least as much as I need it.</li>
<li>My direct manager must have a technical background &mdash; enough to understand why programming is hard.</li>
<li>My direct manager must have enough experience or raw intelligence such that I can trust him/her to make decisions, even though I may not understand the reasoning.</li>
<li>I must have absolute faith in the business plan.</li>
<li>I must have absolute faith in &#8220;the business side&#8221; to execute that plan.</li>
</ul>
<p>So, Jason, when that fellow quit Mahalo, he didn&#8217;t just leave you<br />
in the lurch. He added something to his list. Maybe you should find<br />
out what that is.</p>
]]></content:encoded>
			<wfw:commentRss>http://kdbdallas.com/2010/05/03/why-engineers-hop-jobs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Core Data Speed Gotcha</title>
		<link>http://kdbdallas.com/2009/12/31/core-data-speed-gotcha/</link>
		<comments>http://kdbdallas.com/2009/12/31/core-data-speed-gotcha/#comments</comments>
		<pubDate>Thu, 31 Dec 2009 17:16:59 +0000</pubDate>
		<dc:creator>Dallas</dc:creator>
				<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[Cocoa Touch]]></category>
		<category><![CDATA[Core Data]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://kdbdallas.com/?p=296</guid>
		<description><![CDATA[Recently I was doing some performance stress testing on my upcoming iPhone app, Newsprint, and ran into a little Core Data gotcha that I thought I would document for both myself and for Google to index for others. Special thanks to Jeff LaMarche for guiding me in the right direction to figure this out. You [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I was doing some performance stress testing on my upcoming iPhone app, Newsprint, and ran into a little Core Data gotcha that I thought I would document for both myself and for Google to index for others.</p>
<p><strong>Special thanks to Jeff LaMarche for guiding me in the right direction to figure this out. You can find his blog at: <a href="http://iphonedevelopment.blogspot.com/">http://iphonedevelopment.blogspot.com/</a></strong></p>
<p>This issue came to play when I needed to do a fetch request from Core Data and then run a couple of Predicate &#8220;searches&#8221;/&#8221;filtering&#8221; on the data.</p>
<p>My original thought was that doing a single fetch request and then running my different predicates on the returned set of objects would have better performance then doing multiple fetch requests since I would only have to pull from the Core Data SQLite DB once and then I would have everything in memory and I could just simply manipulate it.</p>
<p>Turns out that this is HIGHLY incorrect.</p>
<p>If instead you just do multiple fetch requests and implement your predicate into your fetch request, that Core Data and SQLite are smart enough to scan the records more efficiently and without causing Core Data Faults to fire.</p>
<p>This gives a MASSIVE speed increase!</p>
<p>So if you are ever doing something similar, make sure to check this method and see if it to can speed your app up.</p>
]]></content:encoded>
			<wfw:commentRss>http://kdbdallas.com/2009/12/31/core-data-speed-gotcha/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How NOT to do app demos/trials</title>
		<link>http://kdbdallas.com/2009/12/04/how-not-to-do-app-demostrials/</link>
		<comments>http://kdbdallas.com/2009/12/04/how-not-to-do-app-demostrials/#comments</comments>
		<pubDate>Sat, 05 Dec 2009 01:17:06 +0000</pubDate>
		<dc:creator>Dallas</dc:creator>
				<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://kdbdallas.com/?p=288</guid>
		<description><![CDATA[In the today&#8217;s world of software I think it is safe to say that the majority of applications offer some type of demo or trial. For example, I offer a fully functional trial of iDeskCal for 14 days. There are many different ways a developer/company can do/offer demos/trials. I am not going to go into [...]]]></description>
			<content:encoded><![CDATA[<p>In the today&#8217;s world of software I think it is safe to say that the majority of applications offer some type of demo or trial.</p>
<p>For example, I offer a fully functional trial of iDeskCal for 14 days.</p>
<p>There are many different ways a developer/company can do/offer demos/trials.<br />
I am not going to go into all the different ways and their pros and cons (perhaps I will in another post later).<br />
What I want to talk about today is one thing you should NOT do no matter how you choose to implement your demo/trial.</p>
<p>The inspiration for this post comes from a real world experience that I had recently when trying out a trial from a company, who will remain nameless as this post isn&#8217;t about blasting them but instead educating developers no matter what platform they write for.</p>
<p>Recently I needed to try and recover some accidentally deleted photos.<br />
I found an app that seemed to be exactly what I was looking for, and was excited because they offered a trial version with the statement that you can find out if their app can restore your files before you pay for the app.<br />
I say I was excited because from my experience backup and recovery applications are ones the tend to break my rule above about most offering trials.<br />
As I was searching a 1TB drive it took 13 hours to complete the search.</p>
<p>It is at this point that the app gives you a list of pictures to view and select to restore, so I started selecting items from the 70Gig worth of images it found (which took a while).<br />
I hit restore forgetting that I was still in trial mode, at which point the application reminded me that to restore I needed to purchase a license.</p>
<p>Up to this point everything with the trial was fine.<br />
There are some things they could have done to make it even better, but in general it was fine.<br />
But this is the point where it took a face dive as well.</p>
<p>I am redirected to their website, as expected, and I purchased a license.<br />
After purchasing I was expecting to get a serial number or registration file, but alas no&#8230;.</p>
<p>It was at this point (and ONLY this point) that I was informed that the trial application executable was ONLY a trial executable.<br />
I now had to download their app a second time, this time without limitations.<br />
Which meant that after running for 13+ hours I had to lose everything I had done.</p>
<p>This is the main point of this post.<br />
Let me say this clearly and to the point&#8230;.</p>
<p><strong>DO NOT DO THIS!</strong></p>
<p>Now that were clear, let me explain the reasons why you should not do this.</p>
<p>Lets start with the general aspects that apply to any program.<br />
Firstly, there is no reason to make your customer download your program again.<br />
By them purchasing you should be making their life easier not harder.</p>
<p>Secondly, depending on your programs focus there is a good chance that a large amount of your customers are not going to be geeks.<br />
In fact the opposite is more likely to be true.<br />
Chances are that most of your customers will the type that know just enough to get around, or less!<br />
This means any extra steps in your process adds to the chance for confusion.<br />
This is bad is very which way, as it frustrates the user who is likely to make that frustration known to others, as well as increases the chance that you will receive a support request, which if you are a small development shop means you have to stop coding to respond to the support request.</p>
<p>Last yet most importantly, If your program lets users do any kind of data manipulation give the user a way to save that data, so by purchasing they do not lose anything they did in the trial.<br />
If your trial doesn&#8217;t let them save without purchasing, then you REALLY should not be having separate executables.<br />
At VERY least give them the ability to save into a proprietary file format, that you can go as far as encrypting if you need/want.</p>
<p>Along with this, make sure that the user can Open that saved data after installing the full version.<br />
I was stung with this as well.<br />
I was able to save my 13 hour search results, but when I tried to open them in the full version, the app would just crash no matter how many times I tried to open it.</p>
<p>Whatever you do just make sure they do not lose their work/changes!</p>
<p>So in conclusion, when coming up with how to do the trial for your program try and make the process as smooth as possible.<br />
Try and make it so the user has to do a little work as possible.</p>
<p><strong>Remember: Don&#8217;t screw over your paying customers just to try and keep your app from being pirated.</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://kdbdallas.com/2009/12/04/how-not-to-do-app-demostrials/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cocoa Touch for iPhone OS 3, Now Shipping!</title>
		<link>http://kdbdallas.com/2009/11/19/cocoa-touch-for-iphone-os-3-now-shipping/</link>
		<comments>http://kdbdallas.com/2009/11/19/cocoa-touch-for-iphone-os-3-now-shipping/#comments</comments>
		<pubDate>Thu, 19 Nov 2009 23:02:52 +0000</pubDate>
		<dc:creator>Dallas</dc:creator>
				<category><![CDATA[App Store]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[Cocoa Touch]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[SDK]]></category>

		<guid isPermaLink="false">http://kdbdallas.com/?p=279</guid>
		<description><![CDATA[The book that I was the Technical Editor for, Cocoa Touch for iPhone OS 3, is now shipping from Amazon.com and should also be in (hopefully) most Barnes and Nobles. View it at Amazon.com by clicking here. This book is great for new iPhone developers as well as experienced ones. You will need some Objective-C [...]]]></description>
			<content:encoded><![CDATA[<p>The book that I was the Technical Editor for, Cocoa Touch for iPhone OS 3, is now shipping from Amazon.com and should also be in (hopefully) most Barnes and Nobles.<br />
<a href="http://www.amazon.com/dp/0470481072" target="_blank">View it at Amazon.com by clicking here.</a></p>
<p>This book is great for new iPhone developers as well as experienced ones.<br />
You will need some Objective-C knowledge, but if you have some OOP (Object Oriented Programming) experience you should be ok with picking up an Objective-C book as well for as you work through the book.</p>
<p>If you are in a B&#038;N stroll into the Geek, err, I mean Computer Programming section and look for the book.<br />
Feel free to buy a copy to support my good friend and author of the book, Jiva DeVoe.<br />
If you can&#8217;t get yourself to that level of geek, at least pick it up and look at the &#8216;Credits&#8217; page, right before the Table of Contents and then you can go around to all the geeks in that area and say, &#8220;I KNOW THIS GUY!&#8221; <img src='http://kdbdallas.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>This makes 2 iPhone development books that I have been involved in, each one with more of a role than the last, however I can safely say it will be my last as after being involved with the book writing processes and having the author be a close friend of mine, I don&#8217;t really have a desire to write one myself (unless it&#8217;s an offer I just can&#8217;t refuse).</p>
<p><a href="http://kdbdallas.com/wp-content/uploads/2009/11/cocoaTouchForIPhone.png"><img src="http://kdbdallas.com/wp-content/uploads/2009/11/cocoaTouchForIPhone.png" alt="cocoaTouchForIPhone" title="cocoaTouchForIPhone" width="300" height="376" class="aligncenter size-full wp-image-280" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://kdbdallas.com/2009/11/19/cocoa-touch-for-iphone-os-3-now-shipping/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Goodbye GeoCities</title>
		<link>http://kdbdallas.com/2009/10/26/goodbye-geocities/</link>
		<comments>http://kdbdallas.com/2009/10/26/goodbye-geocities/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 19:14:17 +0000</pubDate>
		<dc:creator>Dallas</dc:creator>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://kdbdallas.com/?p=267</guid>
		<description><![CDATA[Today marks the end of an era&#8230; Today we mark the end of GeoCities! GeoCities was the premiere place to get your own personal &#8220;web space&#8221; back circa-1995. GeoCities provide the initial playground for many of today&#8217;s web professionals (including myself). I remember many-a-night hacking away on my GeoCities page. Having informal feuds with others [...]]]></description>
			<content:encoded><![CDATA[<p>Today marks the end of an era&#8230;</p>
<p>Today we mark the end of GeoCities! <img src='http://kdbdallas.com/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /> </p>
<p>GeoCities was the premiere place to get your own personal &#8220;web space&#8221; back circa-1995.<br />
GeoCities provide the initial playground for many of today&#8217;s web professionals (including myself).</p>
<p>I remember many-a-night hacking away on my GeoCities page.<br />
Having informal feuds with others on who could do the best site with the latest and greatest web technologies of the times, like frame and guest books!</p>
<p>GeoCities has therefore always been, and continued to today&#8217;s closure, the ultimate place to find the worst looking webpages with the most crap and the worst code.</p>
<p>In honor of the closing I took it on myself to throw everything I know from doing professional web development for 12 years, out the window and come put together the following for your enjoyment.</p>
<p><iframe src="http://kdbdallas.com/wp-content/uploads/geocities/" width="595" height="400"></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://kdbdallas.com/2009/10/26/goodbye-geocities/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

