Developing Perspective

#15 - Counting your Time


00:00:00   Hello and welcome to Developing Perspective.

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

00:00:06   and the like.

00:00:07   I'm your host, David Smith.

00:00:08   I am an independent iOS developer based in Herndon, Virginia.

00:00:11   This is show number 15, and today is Wednesday, August 24, 2011.

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

00:00:20   I found interesting since the last show, and then move on to a more general discussion

00:00:23   towards the end.

00:00:24   The show will never be more than 15 minutes.

00:00:26   Let's get started.

00:00:27   All right.

00:00:28   The first thing today is an interesting post

00:00:30   that I came across via a friend of mine, Mike Ash.

00:00:34   It's talking about Plausible Labs.

00:00:36   And Plausible Labs is essentially a software

00:00:39   consulting company.

00:00:41   The interesting thing about them is

00:00:42   that rather than being a typical company where

00:00:46   there's sort of an owner or a founder or something like that,

00:00:51   and then everyone works for them, they're a cooperative.

00:00:54   And they have this article that's

00:00:56   describing how that works and what that looks like for them.

00:00:59   Essentially, it's an interesting prospect

00:01:01   whereby the developers that join the cooperative

00:01:04   have to buy into it.

00:01:06   And then they share evenly in the benefits thereof.

00:01:12   And the interesting thing about that, I think,

00:01:14   is it's a very good way potentially

00:01:16   of being independent, but not necessarily

00:01:18   being totally independent.

00:01:20   So being fully independent has a variety of downsides,

00:01:22   specifically in the United States,

00:01:24   to things like insurance rates and overheads for accounting,

00:01:28   bookkeeping, those types of things,

00:01:30   where it's nice to be just an employee for a lot of that

00:01:33   so that you can just take advantage of those types

00:01:35   of benefits.

00:01:37   But then at the same time, it also

00:01:38   is nice to be independent in the sense of sharing richly

00:01:42   in the rewards of your work.

00:01:44   So if you do good work, you really get excellent work done

00:01:48   and are making great progress to actually benefit directly

00:01:51   from that.

00:01:52   I remember one of the most frustrating things

00:01:54   being a sort of salaried software engineer,

00:01:57   was that I would feel as though there

00:01:59   was no real connection between the quality of the work

00:02:02   that I did and the effort I put into that and the outcome

00:02:05   that I got financially.

00:02:06   And since I was there primarily for financial reasons,

00:02:10   that was always a bit frustrating.

00:02:11   It would always kind of be like, this work I do here

00:02:13   may in some amorphous way benefit my bonus, for example,

00:02:18   at the end of the year.

00:02:19   But typically, even there, it's like my bonus

00:02:21   is capped at a certain amount.

00:02:22   And after I've done a certain number of things

00:02:24   that I think are worthy of getting a full bonus,

00:02:27   it starts to become very counter motivating,

00:02:33   whereby rather than me feeling like everything that I do

00:02:37   to constantly be better for the business,

00:02:38   better for the business, better for the business,

00:02:40   is always better for me.

00:02:41   And that just creates a strange tension

00:02:43   that is part of why I like being independent.

00:02:45   If I do a good work, I benefit directly from it.

00:02:47   If I do bad work, I am hurt directly by that.

00:02:50   And that creates-- so if you're incentivizing the right things.

00:02:53   The things that I do that make me money

00:02:55   are good for the business.

00:02:56   Things that I do that don't make money

00:02:58   are not good for the business, and I share richly in that.

00:03:01   This is just an interesting thing I'd never really thought

00:03:04   about as a structure for a business

00:03:06   to have a little bit of the best of both worlds.

00:03:09   So definitely worth checking out.

00:03:11   Next, there was an interesting article by Benjamin De Cook

00:03:16   talking about his experience with writing an iOS app,

00:03:21   but doing it as a web app.

00:03:23   And essentially what he sounded like what he was doing

00:03:25   is creating some experimentation in really

00:03:28   what does that look like to make it HTML5, CSS3,

00:03:32   sort of awesome app.

00:03:34   And it's just interesting.

00:03:35   And I think his experience proves out

00:03:38   a thing that I suspected, where you can see that Apple really

00:03:41   is taking very seriously making web applications

00:03:45   first class citizens in the sense of attention

00:03:48   that they're giving to that.

00:03:49   They're making them as good as they can be.

00:03:52   And if you look at his application

00:03:54   and install it on your iPhone, it's

00:03:55   a pretty interesting application that is actually surprisingly

00:03:58   effective for web application.

00:04:01   And I think that's certainly encouraging that you can do

00:04:04   a lot with HTML5 in a way that you may not

00:04:07   have been able to previously.

00:04:09   I think it probably is getting even better in iOS5.

00:04:12   Of course, the challenge I think is still

00:04:13   there of the best HTML5 app is never going

00:04:16   to be as good as a native app.

00:04:18   That's just, I think, a given.

00:04:19   And so while this is very interesting,

00:04:21   and I think especially it's helpful for a more

00:04:24   corporate customer or corporate play,

00:04:27   where they're trying to create an application that

00:04:29   hits a lot of different people, I

00:04:31   think you'd probably in some ways

00:04:33   have more luck writing your application as an HTML5 app

00:04:37   than you would if it were using some

00:04:38   of these cross-platform tools.

00:04:40   Where the problem there is then you

00:04:42   have two levels of indirection.

00:04:43   A lot of them are still-- you're running

00:04:48   to their framework, which is then being interpreted

00:04:50   into the native.

00:04:51   And you have all these translations going on.

00:04:53   At least with HTML5, to some degree, most of them

00:04:55   are running WebKit.

00:04:56   For most modern-- at least most smartphones,

00:04:59   I think, other than Windows Phone 7,

00:05:01   I think are all WebKit-based.

00:05:03   And so you have a fair amount of consistency between them all.

00:05:06   And that should make your development much better.

00:05:08   Though I think native application development is

00:05:10   still probably the way to go for most customers.

00:05:13   And then thirdly, there's just a funny little article

00:05:18   that I ran across yesterday that makes

00:05:21   you think of it's like a Bond movie or something, where it's

00:05:23   talking about how Venezuela is trying to move $12 billion

00:05:28   in gold from Europe to Venezuela.

00:05:32   And specifically, I think this is a lot of nationalistic

00:05:35   reasons behind it.

00:05:35   He wants to bring all the gold in and so on.

00:05:39   But it's just kind of a funny thing when you think about the prospect of how you would

00:05:42   actually do that is kind of complicated.

00:05:46   That amount of gold weighs about 211 tons and has a value of $12 billion.

00:05:50   So if you were able to, for example, steal it in transit, that would make you, I believe,

00:05:56   one of the top 20 wealthiest people in the world, which is quite a remarkable thing if

00:06:01   you think about it.

00:06:02   And so it's kind of all this article kind of walks through kind of some of the funny

00:06:05   things about that for the different ways they could do it and kind of what that would look

00:06:10   like.

00:06:11   So just the words, just sort of worth reading for a smile.

00:06:14   And our last link today is a thing from over on the Brooks Review.

00:06:18   And specifically, he's actually, it's a Brooks Review commenting on Robert X. Kringley's

00:06:23   article about whether the Mac Pro will die or not.

00:06:28   And essentially what he is talking about is he is speculating about if Apple may be heading

00:06:32   in a direction whereby they use Thunderbolt or things like Thunderbolt to be able to sort

00:06:38   of mix and match your, the fastest computer. For example, you would buy, you know, four

00:06:43   Mac Minis and daisy chain them together in some interesting way. You then take advantage

00:06:48   of the fact that Thunderbolt is essentially a system bus. I think it's, you know, sort

00:06:53   of PCI Express on a wire or something like that. And so you can actually get away with

00:06:57   with quite a lot of sharing between resources.

00:07:01   So you can have a machine where it has all of its processors

00:07:04   talking together and showing up as different cores

00:07:07   for the central processor.

00:07:10   They're sharing RAM, those types of things.

00:07:13   And I think I agree with Ben Brooks's take on that,

00:07:17   and I just don't see it.

00:07:18   I think the thing that is ultimately

00:07:20   where the Mac Pro falls into is the Mac Pro creates

00:07:24   a great bookend for the Apple line, where it is that is,

00:07:29   if performance is what you're after, buy a Mac Pro.

00:07:33   And it is priced accordingly.

00:07:35   They probably make good margins on it.

00:07:37   But it's also targeted at a very specific type of user.

00:07:41   And it's someone for whom their time is worth more than money.

00:07:46   Or if you look at it that way, they make a lot of money

00:07:49   with their time.

00:07:50   And so for them, spending $6,000 on a computer that

00:07:54   is the absolute fastest thing that money can buy

00:07:59   is totally worthwhile to them.

00:08:01   They make that back very quickly.

00:08:03   And in a way that--

00:08:05   also, I think it's important that--

00:08:06   I think what Ben talks about here

00:08:09   is that a lot of the people who buy Mac Pros,

00:08:12   as best as I understand it, are people who are,

00:08:15   for example, creative professionals.

00:08:17   Let's just say.

00:08:18   They aren't necessarily software engineers, they aren't hardware designers, they aren't

00:08:22   things like that.

00:08:23   There are a lot of photographers, videographers, graphic designers, those types of applications.

00:08:29   And the thing about them is those aren't especially technical people.

00:08:33   They're very technical in their particular sort of niche, whatever that may be, you know,

00:08:37   Photoshop or photography or those types of things.

00:08:40   But if you're talking about a system whereby you're daisy chaining different machines together

00:08:43   and building all this complexity, I don't think that would be especially appealing to

00:08:47   them. All they want to do is to go into the Apple store and say, "Hey, I'm a very successful

00:08:52   video maker. I want the fastest machine that you have." And to walk out with that, they

00:08:56   plug it in, and that's that. Rather than having it be this kind of niche thing that I think

00:09:01   a lot of geeks like myself, I could see enjoying that, kind of playing with it. It reminds

00:09:06   me a lot of the days back on the PC when I would tinker and build my own PCs. I'd be

00:09:14   different configurations, changing the CPU, changing the RAM, those types of things.

00:09:19   But I think for a lot of people, that just doesn't appeal.

00:09:21   Anyway, so I'm going to move on to our more general discussion today.

00:09:25   And today I'm going to be talking about billing hourly.

00:09:28   So if you do any amount of consulting, which if you're an independent iOS developer or

00:09:32   something like that, you've probably either done that or thought about doing that.

00:09:36   One of the sort of common ways that you will earn your money is that you will have a contract

00:09:40   with a customer whereby you are charging them per hour.

00:09:44   So say, for example, you're charging them $100 an hour, $125 an hour, $200 an hour,

00:09:50   whatever it may be.

00:09:51   And that's sort of the way that you quantify the work that you're doing for them.

00:09:57   And specifically, I'm not going to go too much about rates or negotiations, those types

00:10:00   of things.

00:10:01   What I'm mostly interested in talking about today is how you actually count your hours.

00:10:05   And this is, I think, something that I've talked to a lot of different people about,

00:10:08   And it's a very tricky and nuanced subject.

00:10:11   Because at the end of the day, you have to decide what's your goal.

00:10:14   Is your goal to get the most money out of your client that you can?

00:10:18   Is your goal to accurately represent the work that you do?

00:10:23   Is the goal to get a fair value for the attention and your XP expertise that you're giving that

00:10:30   client?

00:10:31   And it's kind of important to make sure you understand that.

00:10:33   And then I think beyond that, it's the importance of actually putting that into the contract

00:10:38   that you're entering into and be talking about why you're charging hourly, what is the purpose

00:10:45   behind that, what it is that you're expecting to be giving them in exchange for that money.

00:10:51   And then I'll also just point out is that hourly contracting often will almost always,

00:10:57   in my experience, be also joint with an hourly cap. So essentially, you're working fixed

00:11:05   price, but the client would get a discount if you don't use all your hours.

00:11:08   And that certainly gets tricky for if you don't finish the work and the hours are allocated

00:11:13   and so on.

00:11:14   But those are many, often very similar to things that you would have problems you'd

00:11:17   have with a fixed price contract.

00:11:20   Anyway, and so I always thought of recently thinking about this, I thought I'd go to the

00:11:25   place that probably does the most hourly billing and that is lawyers.

00:11:29   And specifically, I went to the American Bar Association and was curious about their policy

00:11:32   about it.

00:11:34   And they have a sort of a, I guess you could call it a best practices document that they

00:11:41   include in their sort of recommendations for attorneys.

00:11:46   And I'll link to it in the show notes.

00:11:47   But it has some very interesting things that I think are fairly sort of true.

00:11:53   And essentially what they're talking about is what your goal is to be reasonable.

00:11:56   Your goal is to represent your client's best interests in your hourly billing scheme.

00:12:04   So for example, they create a couple of different scenarios where one, for example, if you have

00:12:10   simultaneous appearances on a client's behalf is one they have.

00:12:13   Or perhaps a more interesting one is say you're flying on a – taking a plane trip on a client's

00:12:19   behalf.

00:12:20   In your contract, you're able to allow yourself to bill for that.

00:12:23   So from the time you leave your house to the time you arrive at your hotel, for example,

00:12:27   is billable time.

00:12:28   That's just part of your contract.

00:12:29   Now, say if on that flight you say, "I'm going to work for another client.

00:12:34   I'm going to work on the brief for them or I'm going to write this app for them while

00:12:37   I'm traveling."

00:12:38   You get to count twice.

00:12:40   You get to benefit both ways from that.

00:12:43   And a similar thing.

00:12:44   So say I do work for one client that creates a library, for example.

00:12:48   They talk about doing research.

00:12:50   in the software engineers view, maybe it's like, okay, I worked on a library for one

00:12:54   client that benefits directly the other another client, can I get to build for the time that

00:12:58   I wrote the first one? And I think what they ended up saying here sounds pretty, pretty

00:13:02   accurate. It's the rather than you looking to profit, and this now I'm quoting from them

00:13:07   from the fortuity of the coincidental scheduling, the desire to get work done rather than to

00:13:12   watch a movie, for example, or the lack of being asked to identical question twice, the

00:13:17   has agreed to build solely on the basis of time is spent as a blind to pass the benefits

00:13:21   of these economies onto the client."

00:13:23   Which I couldn't agree with more.

00:13:26   I think so much of this ultimately comes down to, as you're looking out for the best interest

00:13:31   of your client, you'll ultimately be a better sort of consultant for them, and which is

00:13:35   going to do good things for your business in the long run.

00:13:38   And secondarily, it's rather than trying to find all these little ways that you can sort

00:13:41   of squeeze an extra hour out, it's just going to be bad for business.

00:13:45   And I think you're going to drive yourself crazier than you would otherwise.

00:13:49   One thing that I'll say is this is sort of my policy for how I handle this is all of

00:13:53   my consulting work that I do hourly tends to have whatever a minimum unit of time is.

00:13:58   And that's probably the only part where it gets interesting.

00:14:00   Otherwise, I record roughly the exact time that I spend on each project.

00:14:05   And I try and organize my activities so that I only work on one thing at a time as much

00:14:09   as I can.

00:14:10   So for a lot of projects, let's say to the quarter hour to the half hour.

00:14:14   And then I'll bill to a minimum of that per day.

00:14:17   So if I only spend five minutes on a project,

00:14:19   I will go ahead and bill whatever the minimum is.

00:14:21   But if I spend 30-- see, my unit of time is half an hour,

00:14:26   and I spend 31 minutes, well, I'll charge him half an hour.

00:14:29   And it's just rounding to the nearest sort of increment

00:14:32   that I met Bill to, and that seems to work pretty well.

00:14:35   Anyway, so let me talk about sort

00:14:37   of the other sides of this a little bit later.

00:14:38   But that's all I have for today.

00:14:40   Anyway, I hope you enjoyed the show.

00:14:41   And otherwise, happy coding.

00:14:43   If you like the show, make sure you tell a friend, tell somebody about it, and share

00:14:47   the word.

00:14:48   Otherwise, have a good day.

00:14:49   Bye.

00:14:49   Bye.