0:00:00Hello, and welcome to Developing Perspective.
0:00:03Developing Perspective is a near daily podcast discussing what's new and interesting in iOS,
0:00:07Apple, and related technologies.
0:00:09I'm your host, David Smith.
0:00:10I'm an independent iOS developer based in Herndon, Virginia.
0:00:13The format of the show is pretty straightforward.
0:00:15I'm going to talk about the things that I found interesting, worth looking at over the
0:00:19last 24 hours or so, talk about that for the first half of the show, and kind of have a
0:00:25a more general discussion and the show will never be longer than 15 minutes.
0:00:30So it should just hopefully be an ill adjunct to your day rather than being a major time
0:00:36sink.
0:00:37The show is currently, I guess you could call it, beta.
0:00:40I'm kind of trying it out, shaking a few things out.
0:00:44So if, as they say, pardon the dust.
0:00:47All right, let's get started.
0:00:49The first thing I'm going to talk about is a pretty interesting article over on Macworld
0:00:53talking about why Apple dares to change your apps.
0:00:56And I think this is a discussion about the Final Cut Pro 10 sort
0:01:03of debacle and the interesting thing
0:01:05about it is it's just a pretty honest description
0:01:07of I think why Apple's doing what they're doing there.
0:01:10And you just kind of understand that Apple's purpose
0:01:16in that is to go their business and fit their strategy.
0:01:20It's not that they don't care about creatives anymore
0:01:23But what they really care about is the millions of other people who buy their products.
0:01:27And so definitely worth checking that out.
0:01:29Next, there's an interesting article about on --
0:01:34over on Ars Technica about getting a -- making a clean start with Lion.
0:01:39I think, let's see, today is July 18th.
0:01:41And it's expected, I think, that Lion will be coming out at some point this week.
0:01:47And as part of that, you have sort of the usual dilemma
0:01:52of how do you actually set that up?
0:01:54Do you want to do just the native migration
0:01:58where you run the installer and it'll set it up for you?
0:02:01Do you want to set it up on a totally clean install?
0:02:04Set it up on a clean install and use migration assistant.
0:02:07And this article is a walkthrough of how
0:02:10to do a totally clean install on migration,
0:02:14which is what I'm expecting to do myself when I get live.
0:02:17I think OS updates come out infrequently enough that it's definitely worthwhile to sit down
0:02:24and really go through the effort of making a clean start.
0:02:27I think your performance for your machine, as well as unused disk space and those types of things
0:02:32will just be so much better starting from scratch,
0:02:34making sure you're pulling over only the things that you really use,
0:02:37and you're just kind of removing the cruft, all the stuff and junk that builds up over time.
0:02:43Next, I was going to talk about a delightful little script over on the iPhone development
0:02:50blog by Jeff LaMarche. And it's just a really nice little script that he's been working
0:02:56on that auto-updates build numbers from within Xcode. And this is especially helpful if you're
0:03:03using something like TestFlight or a related technology where the build number is used
0:03:09not just for marketing and related
0:03:13uses actually used for
0:03:17fit for the system to be able to keep track of what the build is
0:03:19where it uh... where it fits within your job and scheme etcetera so it's a really
0:03:23nice way
0:03:25uh... do that stuff it's going to be worthwhile looking at it if we would
0:03:28check that out
0:03:31i said that's uh...
0:03:33jeff lemarch
0:03:34repair development block
0:03:36Next, there's a really interesting video series.
0:03:39I think this is probably going to be an ongoing thing,
0:03:42but at this point it was just the first episode was posted.
0:03:44And it's an interview done by David Hanemeyer-Hanson
0:03:48of 37signals of different founders.
0:03:51And his first candidate was the Slicehost guys,
0:03:55which for a little bit of background is a company
0:03:58that was founded a couple years ago doing virtual private
0:04:01server hosting.
0:04:03And they've recently, maybe a year ago or two years ago,
0:04:08got bought by Rackspace.
0:04:09And there's been a little bit of drama about that.
0:04:14They recently denounced that they're shutting
0:04:16down their VPS system and moving everybody who was on that
0:04:20to the Rackspace cloud and a whole bunch
0:04:23of interesting things.
0:04:24But what's really interesting here,
0:04:26certainly David Hanmer Hansen's interviewing them
0:04:29from the perspective of his sort of standard online persona
0:04:32of someone who doesn't really like VC, who doesn't think you should ever sell out, those
0:04:39types of things, which I don't argue with.
0:04:42But it's a very interesting story nonetheless.
0:04:44And it's especially interesting when you see the section where they're talking about what
0:04:48it was like after they sold out, after their golden handcuffs came off and they finally
0:04:54just found themselves, probably, I don't know exactly how old they are, but in their late
0:04:58early 30s with a lot of money and a lot of time.
0:05:02And kind of it's just sort of a good sobering thing to see
0:05:06that, you know, that's really not that fun.
0:05:10It's fun for a little while but especially if you go
0:05:13from running a successful business that sort of the let
0:05:16down that you'll get at the end
0:05:17of that is probably not worthwhile.
0:05:19And then our last link that I was going to point
0:05:25to is something I haven't had a chance to play around with yet
0:05:27but that looked really interesting and fascinating.
0:05:29And this is over on the corner, the development blog
0:05:32for the Square guys.
0:05:33And basically they just released a new framework
0:05:36for iOS integration testing.
0:05:38It's called KIF, I guess Kif.
0:05:41And basically this is a framework
0:05:44by which you can script interaction
0:05:47and integration tests.
0:05:49So for a little bit of background there,
0:05:51an integration test is something whose purpose is
0:05:54you simulate the system in use rather than something like a unit test which is focused
0:06:01on testing in the individual section of code or a functional test which is testing a particular
0:06:07module of code.
0:06:09Integration testing is about seeing if the system at large works together.
0:06:13And so this is, if you can imagine, in many ways it works with, it's a way of setting
0:06:18it up that you can simulate users actually working with your application.
0:06:22So it's, the user opens this page, clicks this button, enters this text, hits this button,
0:06:27does this, and it's an interesting way of doing that.
0:06:29Some advantages of this, A is of course it's you get to a nice baseline.
0:06:34You can do, also incorporate this into your own continuous integration system.
0:06:39So if you have a base set of tests that need to always work, you can verify that nothing
0:06:45breaks there.
0:06:46So definitely something to check out if you're at all interested in integration testing.
0:06:50Alright, for today's sort of finishing discussion, I'm going to take a slight break from what
0:06:57I've done for the last couple of episodes and talk about something that's near and dear
0:07:03to me, and that is coffee. And this is not atypical for a developing perspective that
0:07:09I'm going to be talking about things that are not strictly developer-oriented but are
0:07:16to developers, things that are interesting and fun for us.
0:07:19If there's one thing I think you could say fairly categorically is
0:07:23the average developer enjoys their caffeine, and many of those people enjoy it in coffee form.
0:07:29And I've recently been reading a book called "God in a Cup," which is just an interesting discussion
0:07:34of specialty coffee from sort of the ground up.
0:07:39And there's a really interesting paragraph that I'm just going to read.
0:07:42to read, it shouldn't take too long, but it was a very interesting overview of where
0:07:46coffee comes from and what it starts as, which is something that, while I've drunk a lot
0:07:51of coffee, I don't have as much familiarity with. So like I said, this is in God and the
0:07:57Cup and starting in a section called Coffee 101. Coffee beans are dried from the red fruit,
0:08:06the cherry that coffee trees produce. Coffee trees grow in farms and in forests. The higher
0:08:10the altitude, in general, the better the coffee. Coffee trees require fertilizer,
0:08:15organic or industrial, and pruning. They need a moderate amount of sun and rain
0:08:19at certain times of their growing cycle. Coffee cherries do not ripen in a
0:08:23uniform rate. In order to pick ripe cherries, pickers must make repeated
0:08:27passes through coffee orchards. Once picked, coffee cherries in Latin America
0:08:32are generally depulped mechanically to remove the skins and most of the fruit,
0:08:36and then they are subjected to a process called washing,
0:08:40which may or may not actually involve water,
0:08:42during which they ferment.
0:08:44Fermenting or washing, the terms used interchangeably,
0:08:47dissolves the sticky coating called mucilage
0:08:50that covers the hinged pair of coffee beans
0:08:53and it alters the flavor of the coffee.
0:08:55Washing techniques vary from farmer to farmer,
0:08:57region to region, and can take one to three days or more.
0:09:01Washing stations are not terribly expensive to build
0:09:03build in villages, co-ops, and other small groups often have their own washing facilities.
0:09:08After washing, coffee must be dried. Farmers around the world use a number of different
0:09:12drying technologies. Beans can be dried on racks, on cement patios, or mechanical dryers
0:09:18that may be wood burning, gas burning, or fired with coffee parchment. Some of these
0:09:24machines use coffee tree prunings as fuel. Again, this process may take days, and if
0:09:29rains, mold and mildew can ruin or degrade the coffee.
0:09:32After drying, coffee must be milled.
0:09:34During this process, a papery parchment skin covering the
0:09:38coffee is stripped from the bean.
0:09:40Next, the coffee beans are sorted by size and quality.
0:09:42This can be done by hand or by machine.
0:09:45Once the beans are sorted, they are packed into clean bags
0:09:47and stored in a dry place.
0:09:49After resting for a month or two, the beans are ready for
0:09:51sampling.
0:09:52At every step along this production process, the coffee
0:09:55loses weight, and that the final milled product is
0:09:58approximately 20% of the original. During the roasting process, coffee shrinks another
0:10:0315% or so. And I said, it's a bit of a diversion, but I thought that was a very, very interesting
0:10:10discussion to kind of give some background on where coffee coffee comes from. And so
0:10:16obviously from that stage on, you just get, you roast it and then consume it. I'm a bit
0:10:22of a coffee guy myself. In case you're curious, I use an AeroPress for making almost all of
0:10:28my coffee. This is the hat tip to Marco Orment who recommended that and I think he has probably
0:10:34sold more AeroPresses than anybody in the history of the world. Everyone I know who
0:10:40uses one uses it because of him or because someone who heard about it from him second
0:10:46hand. It's an excellent way to make good, well-tasting coffee without needing to make
0:10:52large quantities of it and without quite having the usual expense of high-end coffee machines
0:10:58and AeroPress is 20 bucks or so. And I think that's going to be about it for today's show.
0:11:06It'll be a little bit shorter than normal, but that's probably going to be common over
0:11:09the weekend because less has happened. Some things to be looking for this week is hopefully
0:11:15line will come out. Definitely be checking your Mac App Store for that or Twitter or
0:11:21whatever you want to keep up with that. Like I said, I'd recommend doing a clean install.
0:11:25I think you'll thank yourself later even though it may be a little rough at the time. Hopefully
0:11:29there might be some new hardware coming out, some new MacBook Airs maybe, new Mac Mini
0:11:34maybe, who knows. Rumors like that are always just kind of silly. But beyond that, I hope
0:11:40you guys have a good week. Happy coding and I will talk to you tomorrow. Bye.