PodSearch

Developing Perspective

#11 - My Workflow

 

00:00:00 ◼   ► Hello, and welcome to Developing Perspective.

00:00:03 ◼   ► Developing Perspective is a near-daily podcast discussing the news of note in iOS, Apple,

00:00:07 ◼   ► and the like.

00:00:08 ◼   ► I'm your host, David Smith.

00:00:09 ◼   ► I'm an independent iOS developer based in Herndon, Virginia.

00:00:13 ◼   ► This is show number 11, and today is Thursday, August 11, 2011.

00:00:19 ◼   ► The format of Developing Perspective is that I'll cover a handful of articles, links, things

00:00:23 ◼   ► that I found interesting in roughly the last 24 hours, and then move over to a more general

00:00:27 ◼   ► discussion towards the end.

00:00:28 ◼   ► The show will never be more than 15 minutes.

00:00:30 ◼   ► Let's get started.

00:00:32 ◼   ► All right, our first article today

00:00:34 ◼   ► is over on the Fog Creek Software blog.

00:00:36 ◼   ► And they're starting an interesting series here,

00:00:38 ◼   ► talking about the price of developer happiness.

00:00:41 ◼   ► And essentially, what I think they're looking through

00:00:43 ◼   ► is trying to put some numbers and some quantities on really

00:00:47 ◼   ► what it is that you would need to do as if you run a software

00:00:49 ◼   ► company to make your developers the most productive,

00:00:52 ◼   ► the happiest, and sort of the best environment

00:00:55 ◼   ► that you can for them, and kind of really what that looks like.

00:00:58 ◼   ► So as an example, what they did in this article

00:01:00 ◼   ► is they sat down and took essentially a workstation,

00:01:04 ◼   ► a top notch, top of the line workstation,

00:01:07 ◼   ► and kind of built it together and saw

00:01:09 ◼   ► what the total cost that you would end up spending would be.

00:01:13 ◼   ► And so here, for example, it's got an Aeron chair,

00:01:16 ◼   ► which is $1,000.

00:01:17 ◼   ► A little side note, I really recommend the Embody chair

00:01:20 ◼   ► rather than the Aeron.

00:01:21 ◼   ► I've used both.

00:01:22 ◼   ► And the Embody, it's a bit more expensive,

00:01:24 ◼   ► but it is quite a chair.

00:01:27 ◼   ► Next, they have an amazing adjustable sit-stand desk.

00:01:31 ◼   ► And then you have an anti-fatigue mat,

00:01:34 ◼   ► a big 30-inch monitor with a little one on the side,

00:01:37 ◼   ► some beefy workstation.

00:01:38 ◼   ► They're talking mostly about Dells and things.

00:01:40 ◼   ► If I remember correctly, Fog Creek is a .net shop.

00:01:44 ◼   ► So that's probably why they're focusing there rather than it

00:01:47 ◼   ► getting a 27-inch cinema, Thunderbolt display,

00:01:51 ◼   ► and a Mac Pro.

00:01:52 ◼   ► But then the numbers work out relatively similar.

00:01:55 ◼   ► whatever keyboard you want, a fancy mouse, fancy trackpad,

00:01:59 ◼   ► whatever it is.

00:02:01 ◼   ► And basically, they came down and they ended up

00:02:03 ◼   ► with a total cost of just over $6,000, which is a little bit--

00:02:08 ◼   ► it's a maximum.

00:02:09 ◼   ► You likely wouldn't end up spending all of that

00:02:11 ◼   ► because people would choose different parts of that setup.

00:02:16 ◼   ► The interesting thing that he said is because of the way

00:02:18 ◼   ► depreciation works, it basically works out

00:02:22 ◼   ► to be about $100 a month per developer

00:02:26 ◼   ► to have this in terms of you depreciate most of those assets

00:02:29 ◼   ► over five years.

00:02:30 ◼   ► And so that's not that much.

00:02:33 ◼   ► I mean, $100 a month versus the cost of an actual developer

00:02:38 ◼   ► who you probably are spending thousands of dollars a month,

00:02:41 ◼   ► it's really not that bad to give them an ideal setup.

00:02:44 ◼   ► And so definitely it's good to see that number

00:02:47 ◼   ► and put it in perspective.

00:02:49 ◼   ► All right, next, there's a great article

00:02:52 ◼   ► on FastCompany.com talking about Adam Isigore.

00:02:55 ◼   ► So if you're at all familiar with his work,

00:02:57 ◼   ► which at this point I would hope you are,

00:02:59 ◼   ► if you're not, go over and check out SandwichVideo.com.

00:03:02 ◼   ► But basically he's known as Lonely Sandwich.

00:03:05 ◼   ► If you listen to 5x5 shows with John Gruber or Merlin Mann,

00:03:08 ◼   ► they call him Sandy because of his sandwich name.

00:03:12 ◼   ► And basically it's just an interesting walkthrough

00:03:14 ◼   ► of kind of getting into what he does,

00:03:17 ◼   ► getting into sort of rather than just seeing the end result,

00:03:19 ◼   ► getting a sense of what it is that, what it is and how it is that he's done, what he has,

00:03:25 ◼   ► and how he's kind of taken such a different approach and created this whole niche where

00:03:30 ◼   ► he is just sort of the legend and the king over a relatively short period of time. In many ways,

00:03:37 ◼   ► it's kind of impressive for, you know, he does amazing work and rightfully so, he's gotten such

00:03:44 ◼   ► impressive results, but it's just kind of, wow.

00:03:48 ◼   ► He took a very distinct approach and really ran with it, and the results have been amazing.

00:03:53 ◼   ► All right, next, over on Dr. Drank's blog, Lean Crew, he kind of, it's an interesting

00:04:01 ◼   ► title, "Giving Up on Giving Up Text Mate."

00:04:04 ◼   ► And I think it's, he seems to be ending up in a very similar place to where I ended up.

00:04:09 ◼   ► And he's someone who I know has spent a tremendous amount of time doing both of these types of

00:04:14 ◼   ► working with text editors, customizing text editors,

00:04:17 ◼   ► that's kind of what he does.

00:04:19 ◼   ► And essentially, it sounds like he's in the same place

00:04:21 ◼   ► that I am, where the thing is that TextMate works

00:04:24 ◼   ► for my workflow.

00:04:25 ◼   ► It works how I like using it.

00:04:29 ◼   ► And it does some things in a way that just totally

00:04:31 ◼   ► crushes everything else.

00:04:33 ◼   ► And most of that is just its scope system, the way

00:04:35 ◼   ► that it is very smart about what it is that you're working on

00:04:39 ◼   ► at different parts of a document.

00:04:41 ◼   ► So even if you have sort of a mixed format document that's got some HTML with some CSS

00:04:46 ◼   ► with all those types of things, it really just, you know, it kind of works it out and

00:04:51 ◼   ► lets you adapt the assistance that you get and adapts the syntax highlighting and coloring

00:04:57 ◼   ► and all those things in a way that is just really clever.

00:05:00 ◼   ► And it sounds like at this point he's probably going to end up sticking with TextMate.

00:05:03 ◼   ► He gave BBEdit a good try and that's great.

00:05:06 ◼   ► I did the same thing, but in the end, it just didn't work.

00:05:11 ◼   ► It doesn't work for my workflow.

00:05:13 ◼   ► I hope at some point TextMate gets updated.

00:05:18 ◼   ► And when that happens, that will be wonderful.

00:05:20 ◼   ► But at this point, TextMate 1.4 or whatever it is I'm running,

00:05:24 ◼   ► works fine.

00:05:25 ◼   ► And I'm just happy to keep it that way.

00:05:28 ◼   ► And lastly, on the link front today,

00:05:30 ◼   ► I have a link over to the new Amazon Kindle Cloud app.

00:05:35 ◼   ► And so if you're not familiar with this, basically the back story is a couple of-- it was almost

00:05:41 ◼   ► a year ago, I guess, so eight, nine months-- Apple announced a bunch of changes to the

00:05:46 ◼   ► in-app purchase rules, which essentially meant that if you sell digital content inside of

00:05:51 ◼   ► an application, you have to sell it as in-app purchase.

00:05:57 ◼   ► Or if you don't, then you are not allowed to link to the store where you sell that content.

00:06:04 ◼   ► And one of the big sort of canonical examples where we were going to see the edge of this

00:06:10 ◼   ► is where they ended up serving the Amazon Kindle app where they have thousands and thousands

00:06:18 ◼   ► and thousands of books that they're trying to sell, which you couldn't realistically

00:06:22 ◼   ► set up as an in-app purchase given the way that Apple has their system.

00:06:26 ◼   ► I think there's even a max of number of items that you can have.

00:06:30 ◼   ► And also, of course, it would mean that Amazon would have to pay Apple a 30% cut on all of

00:06:34 ◼   ► their sales, which given the way that the agency model works for books, that's just

00:06:38 ◼   ► not realistic.

00:06:39 ◼   ► For Amazon, they would make no money from their Kindle store.

00:06:43 ◼   ► And so it was always kind of interesting to see how that was going to happen.

00:06:46 ◼   ► And then as a developer, I was mostly interested to see how that would play out, how they would

00:06:51 ◼   ► be pushing the limits of the rule in such a way that it would be adjusted and tweaked

00:06:55 ◼   ► for smaller developers like myself.

00:06:58 ◼   ► And it seems like as a response to that,

00:07:00 ◼   ► they recently released an update to Kindle

00:07:02 ◼   ► that removed the link to the store.

00:07:04 ◼   ► So you can still read and do all kinds of interesting things

00:07:06 ◼   ► inside the Kindle app, but you cannot get to the store

00:07:10 ◼   ► directly from there.

00:07:11 ◼   ► You have to open up Safari and go to amazon.com

00:07:14 ◼   ► and buy your books and then open up the app.

00:07:16 ◼   ► So it's a bit awkward.

00:07:18 ◼   ► To counteract that, what Amazon released yesterday

00:07:20 ◼   ► is the Cloud Reader, which is a HTML5 web

00:07:25 ◼   ► app that has roughly all the same functionality

00:07:28 ◼   ► that a Kindle app does, but doing all of it

00:07:32 ◼   ► without avoiding the actual app store.

00:07:35 ◼   ► And it's a very impressive application.

00:07:36 ◼   ► If you sort of have it-- especially once you pin it

00:07:39 ◼   ► to your home screen, it works very well as an application.

00:07:45 ◼   ► The thing that I found sort of struggling with it,

00:07:47 ◼   ► though, is for all of its impressive sort

00:07:49 ◼   ► of technical achievement, which is very, very good,

00:07:54 ◼   ► It falls in some ways because of its impressive technical ability.

00:07:59 ◼   ► It falls into the strange uncanny valley where it feels like it should be native.

00:08:03 ◼   ► It's almost native, but it keeps falling down in these small little ways that make it incredibly

00:08:09 ◼   ► distracting and frustrating to use.

00:08:12 ◼   ► And so it's kind of this strange thing where its UI is making all of these promises that

00:08:18 ◼   ► it looks and feels just like an app, but then you interact with it and it just doesn't work

00:08:23 ◼   ► quite right. And I look forward to seeing how they improve and develop this application.

00:08:27 ◼   ► I imagine it's going to be getting a lot of love over the next, you know, little while.

00:08:32 ◼   ► But it's just such a thing at the end of the day that a native app, I think, is always

00:08:36 ◼   ► going to feel better. No matter how good your web app is, it's just never going to be quite

00:08:42 ◼   ► as good as a native app. And that's unfortunate. If your goal as a developer is to make the

00:08:46 ◼   ► best application you can, it's sort of like trying to write an application without using

00:08:52 ◼   ► four loops or you know I'm not I'm only going to use one button in the entire application.

00:08:58 ◼   ► So if you're tying your hands in a way that's going to be frustrating I think.

00:09:01 ◼   ► And as a user of the application I mean I'll still use the native app as long as I can

00:09:05 ◼   ► because I think it's just better.

00:09:07 ◼   ► I think it's just a better experience and I you know but I wish them the best with it

00:09:11 ◼   ► because it's very impressive from just from an engineering perspective.

00:09:16 ◼   ► All right and so now I'm going to move over into a general discussion today and I thought

00:09:20 ◼   ► it would be interesting to discuss my workflow for how I put together the show. There's a

00:09:26 ◼   ► lot of different moving parts for that, and I thought it would be an interesting thing

00:09:29 ◼   ► to have as a discussion. Workflow shows are always kind of funny because, especially if

00:09:35 ◼   ► you listen to, for example, on the MacPower users podcast, they have a lot of workflow

00:09:39 ◼   ► shows. A lot of times it doesn't really apply to you, so sometimes it feels like, "Ah, this

00:09:44 ◼   ► doesn't really make sense. This isn't what I need to be doing." But the thing that I've

00:09:47 ◼   ► I've often found is I've never listened to a workflow show and not found something that

00:09:51 ◼   ► I thought was helpful and useful moving forward. So hopefully it's helpful and interesting

00:09:55 ◼   ► to you. If not, just hang in there and it will be over soon.

00:10:00 ◼   ► All right, so essentially if you can imagine the way the developing perspective works,

00:10:04 ◼   ► where I walk through a couple of links and then I have a general discussion, probably

00:10:08 ◼   ► the part that requires the most preparation is the link creation. And essentially that's

00:10:13 ◼   ► just an extension of what I was doing normally. Before I started working on the show, it was

00:10:18 ◼   ► something that I was doing anyway. I read a lot online. You may remember from yesterday's

00:10:23 ◼   ► Digital Diet Show, it's something that was even becoming a problem that I was doing so

00:10:27 ◼   ► much. And so essentially what I did is I just kind of created a bit of a workflow around

00:10:32 ◼   ► that. And I use Instapaper as the core of that, so Instapaper.com, and it's a great

00:10:36 ◼   ► app if you're not familiar with it, for saving bookmarks later for reading, to read and look

00:10:42 ◼   ► at later. And essentially what I do is during the day, so during the 24 hours after I finish

00:10:48 ◼   ► a show to when I start the next one, anything that I think will be interesting, either for

00:10:52 ◼   ► me or especially for the show, I hit read later on. And they all just go into one big

00:10:57 ◼   ► queue. And I just sort of, they're throwing anything and anything in there. I try very

00:11:01 ◼   ► hard to not be too particular at the ingestion stage. It's very similar to a lot of what

00:11:07 ◼   ► you'd see in a GTD system where the time when you are thoughtful about what it is you're

00:11:13 ◼   ► sort of putting into your system is not in the inbox phase.

00:11:16 ◼   ► You throw everything you think of in there and it's far better to then organize and categorize

00:11:20 ◼   ► that later so you're not spending the energy on the in, you're spending it when it's the

00:11:24 ◼   ► appropriate time to really think about the task.

00:11:28 ◼   ► And so I throw everything in there and then I create a folder for every day.

00:11:32 ◼   ► So for example, today's the 11th, so this is, I have a folder in my Instapaper queue

00:11:36 ◼   ► and my system called 11.

00:11:39 ◼   ► And as I'm going, I just move articles for the next day's

00:11:42 ◼   ► show into the 11 folder.

00:11:44 ◼   ► Sometimes I'll do one or two shows out.

00:11:46 ◼   ► So if it's something that I think will require more time,

00:11:49 ◼   ► say I'll throw it into-- in this case,

00:11:51 ◼   ► it would be like into the 12 folder--

00:11:52 ◼   ► to kind of talk about for the next day.

00:11:56 ◼   ► And once I end up with that, I'll end up at the end of the day

00:12:00 ◼   ► or by the following morning with a list of-- usually

00:12:03 ◼   ► seems pretty consistently around five or six articles, sometimes a little less, sometimes

00:12:08 ◼   ► a little more, that I think are really good, things that are worth discussing, things that

00:12:12 ◼   ► I enjoy during that day. So I'll take that. And so that's now the basis for the first

00:12:16 ◼   ► part of the show. And then the general discussion, I just have a notebook where I've kind of

00:12:21 ◼   ► had different notes of things that I think are interesting to talk about, different topics,

00:12:25 ◼   ► different ideas, things that have struck me during the day. And those are often either

00:12:30 ◼   ► What I do is either write them in a notebook or I wrote an app that's actually in the app

00:12:35 ◼   ► store if you're interested in it.

00:12:36 ◼   ► It's called Note to Self.

00:12:39 ◼   ► Note to the number two in self.

00:12:41 ◼   ► And basically what it's an app is all it does is sends an email to your inbox with a brief

00:12:48 ◼   ► message.

00:12:49 ◼   ► And what I really like about that is it takes like two seconds.

00:12:51 ◼   ► I hit the app.

00:12:52 ◼   ► It's on the home screen of my iPhone.

00:12:55 ◼   ► It just comes up straight with a cursor ready to start writing.

00:12:58 ◼   ► I start writing.

00:12:59 ◼   ► I hit send.

00:13:00 ◼   ► is gone. And that lets me easily capture things wherever I am in a way that, you know, if

00:13:06 ◼   ► I could have a notebook, but even with a notebook I think it would be faster just opening up

00:13:09 ◼   ► note to self and writing them in there. And so that's where you have kind of a collection

00:13:13 ◼   ► of articles. And then there are just not, at this point, my sort of things for the ends

00:13:18 ◼   ► of the show are just all in one big text document. And I just kind of walk through, you know,

00:13:21 ◼   ► what's going to be interesting today, what kind of fits, and often that gets bumped if

00:13:25 ◼   ► if there's news or something that comes up.

00:13:28 ◼   ► But otherwise, that's just kind of how I work through.

00:13:30 ◼   ► And then I do some basic preparation,

00:13:32 ◼   ► a little bit of outlining, and then just kind of go for it.

00:13:34 ◼   ► It's mostly off the cuff, because I think that kind of

00:13:36 ◼   ► gets a better flavor.

00:13:38 ◼   ► Then I record the show every morning.

00:13:40 ◼   ► I use a Rode Podcaster mic on a nice swivel arm and shock

00:13:45 ◼   ► mount.

00:13:46 ◼   ► This is onto my 27-inch iMac.

00:13:49 ◼   ► I record just into Audacity, which

00:13:50 ◼   ► is a great little free piece of software that just does

00:13:53 ◼   ► basic single track recording, which is really all I need. I've tried more complicated things,

00:13:58 ◼   ► but since it's just sort of a one-take show, that works just fine for me. I then, I finish

00:14:05 ◼   ► that, I export it, the show, to an MP3 file. I think I do 64 kilobits per second encoding,

00:14:13 ◼   ► and then I have a transmit sort of drop point, I guess you could call it, where essentially

00:14:19 ◼   ► It's a bookmark that's in the sidebar of my finder.

00:14:23 ◼   ► And you just take the MP3 file, drop it onto that,

00:14:25 ◼   ► and it does all the FTP upload stuff

00:14:27 ◼   ► to the server where it's hosted.

00:14:29 ◼   ► I log into my WordPress site where I host the show,

00:14:33 ◼   ► create the show, drag the links in from my Instapaper Q,

00:14:36 ◼   ► which you can actually just do in Safari.

00:14:38 ◼   ► If you click the link and drag it,

00:14:39 ◼   ► it'll just create a link in WordPress,

00:14:42 ◼   ► which is very helpful.

00:14:43 ◼   ► And then hit Publish.

00:14:44 ◼   ► And then, hopefully, you enjoy the show,

00:14:47 ◼   ► and it gets sent around the world.

00:14:49 ◼   ► And then I track my stats just using the podpress plugin for wordpress that does all the actual

00:14:54 ◼   ► feeds and things for me.

00:14:55 ◼   ► So that's it.

00:14:56 ◼   ► Hope you enjoy it.

00:14:57 ◼   ► That's it for today's show.

00:14:58 ◼   ► Have a good day.