95: The Bear Wakes Up and Bites You


00:00:00   Like everything in life, it is one FFmpeg command,

00:00:03   but it'll take you three hours to figure out

00:00:05   what that command actually is.

00:00:07   - Yeah, yeah, yeah.

00:00:08   (electronic beeping)

00:00:09   All right, so you wanna do a little follow-up?

00:00:11   - Follow-up.

00:00:12   - As soon as I said that, I was like,

00:00:14   oh God, that sounded a lot like the prompt.

00:00:16   - Just the way you said it.

00:00:17   - I know.

00:00:18   All right, let's do that again.

00:00:20   Hey, so you wanna do a little bit of follow-up?

00:00:22   - Follow-up. - Got it, did it again!

00:00:23   God!

00:00:24   This is the worst.

00:00:25   All right, somebody else talk.

00:00:26   - Don't phrase it as a question, Casey.

00:00:29   All right, let's do some follow up.

00:00:30   Ah, see, you're right, that's the key.

00:00:32   John, you're so smart.

00:00:33   Anyway, so let's talk about Crossy Road

00:00:37   and in-app purchases and top grossing lists.

00:00:40   And I'm not sure which one of you put this

00:00:42   in the show notes, but it was not me.

00:00:43   - It was me.

00:00:45   We were talking about the financial prospects

00:00:47   for Crossy Road, indirectly talking

00:00:49   about the financial prospects.

00:00:51   And Joe F. Tweet was one of the first people to tweet

00:00:53   that when we're looking at the top grossing lists,

00:00:55   he says those ads won't show up

00:00:57   as part of the top grossing, only in-app purchases will.

00:01:01   And I think it's also because that they appear

00:01:03   to be third-party ads and not ads

00:01:05   through Apple's iAd system.

00:01:06   I don't know if you did like Apple's iAds,

00:01:09   if that would contribute to top grossing,

00:01:11   but certainly if you're getting paid through a third party

00:01:14   for the ads and your thing, that won't contribute.

00:01:18   Although it's kind of interesting that the Apple doesn't,

00:01:21   as far as I know, ask for a 30% cut of ads

00:01:24   that you run that are not through Apple.

00:01:26   - Yeah, I'm actually kind of surprised

00:01:27   they allow that at all.

00:01:29   I think the only reason they do is because

00:01:32   people were doing ads in their app before iAd existed,

00:01:35   and I think Apple doesn't really care that much about iAd

00:01:38   to really force that to be the case.

00:01:41   But yeah, it is kind of weird.

00:01:43   You can't do a third-party credit card processing thing

00:01:46   for in-app purchase,

00:01:48   but they allow you to have third-party ads.

00:01:50   - Yeah, that does make a lot of sense.

00:01:52   Not that that ever happens with Apple and their rules.

00:01:55   And then would you like to talk about our friend of the show, Steve Lubitz, and what

00:02:00   he had to tell us?

00:02:01   Yeah, so shortly after we recorded last week's show, we talked a lot about Crossy Road and

00:02:05   its monetization strategy.

00:02:07   The game has changed a little bit of its monetization strategy, and Steve wrote in with one aspect

00:02:13   of that, that you could buy what they call a coin doubler.

00:02:17   You earn coins at a faster rate, and you get a bonus, 1,000 coins for $3.99.

00:02:23   That's buying the piggy bank.

00:02:24   So there is something that doesn't change the gameplay in sort of getting an extra life

00:02:29   or walking on water or slowing down time when the train is coming or anything like that.

00:02:34   It changes parts of the game that are part of monetization.

00:02:39   So when I saw this I said, "Okay, this is like a power-up.

00:02:43   Earn coins faster, right?

00:02:45   But what can you do with those coins?

00:02:47   You're just using them to get more chances at the gumball machine to get your characters."

00:02:53   One thing we didn't mention on the last show,

00:02:54   speaking of the characters,

00:02:55   is that the Gumball Machine is random,

00:02:57   and it doesn't care, like any Gumball Machine,

00:02:59   doesn't care what things you already have.

00:03:01   So as you accumulate players from the Gumball Machine,

00:03:05   you'll end up getting duplicates.

00:03:06   You know, you get another crazy old Ben for the 15th time.

00:03:10   So it's not like you're going to inevitably

00:03:11   get all the characters,

00:03:12   and I don't even know if the Gumball Machine

00:03:14   vends all the characters.

00:03:15   Some of them maybe purchase only.

00:03:17   But they added a bunch of new characters.

00:03:19   They added a thing where you can try out a new character

00:03:22   for a short period of time,

00:03:23   and then at the end of that time,

00:03:24   they let you buy it at a discounted rate.

00:03:27   All sorts of new things are showing up

00:03:28   in updates to this thing.

00:03:29   They're further emphasizing the thing that was always there,

00:03:32   I think the little share sheet that lets you share

00:03:34   like a screenshot of your score and your death.

00:03:36   Now that is much more prominent and makes you notice it.

00:03:38   It's either more prominent or it didn't exist before.

00:03:40   I certainly didn't even know it existed before

00:03:42   'cause I'm not looking for a share button.

00:03:43   And now it's more in my face.

00:03:45   And not only do I see it in the game,

00:03:46   but I see things that other people post.

00:03:48   So anyway, the monetization strategy of Kowarski Road

00:03:52   fluid and is moving more towards

00:03:55   Things that are slightly more aggressive about getting you to to buy things than it was before I

00:04:01   And I don't think that's because the developer is desperate for money

00:04:04   Because all these things are still pretty mild in the grand scheme of things. They're not

00:04:09   They're they're not punitive. It's still entirely, you know

00:04:14   for fun and

00:04:17   Not you know pay to win type of gameplay still, you know

00:04:20   Even with the coin double nothing affects the actual game which is avoiding being hit by cars and falling in the water and being hit

00:04:25   by trains

00:04:27   If it ever makes that turn, I'm sure we will note it on the program

00:04:30   But I'm pretty confident now especially with seeing cross your own climb the charts that they're doing just fine with this game

00:04:35   Yeah, in fact. I mean it's been a pretty big difference so in I would say the changes

00:04:41   they're making are working to bring them more money because

00:04:43   They've made a pretty large jump in the top grossing chart since last week like when we were talking

00:04:49   They were somewhere around the 200 range of top grossing and now they're like in the 60s

00:04:54   So they did whatever they're doing, you know, the changes they're making are working to bring them in more money

00:05:00   That's more proportional to the actual downloads. Okay. I don't know the timing though

00:05:03   I don't know if they started climbing the charts before or after they rolled out these changes

00:05:07   I don't know the specifics so it could just be you know gaining traction from word-of-mouth and and you know, I

00:05:12   It's so hard to say anyway, it's still a good game. You should still check it out

00:05:16   Tiff is now totally hooked and yeah, I hopped over her name earlier. Yeah

00:05:20   She's very mad at you for continuing to move your score forward to pass hers

00:05:26   I just I stopped moving it for once I became the number one in my game centralist

00:05:30   So I beat my son's score be Jason store and now I'm really played that much. Oh goodness. What is your current score?

00:05:35   My score is depressing as I was trying to be Jason score like it

00:05:38   You know

00:05:39   I couldn't get him to accept my son's friend request so this I can maybe didn't want to accept the request of someone whose score

00:05:45   know would be above his so I'm like all right I'm gonna have to beat it and his score was like 193

00:05:49   and I got 191 and I had that for a while and then I got 192 I had that for a while and boy there's

00:05:56   nothing worse than than seeing yourself die when you're like one hop away from tie and two hops

00:06:01   away from yeah anyway and then I eventually got 216 and I'm depressed by the 216 because when I

00:06:06   got the 216 my death was super stupid I just got I was just so happy that I had won it was like okay

00:06:11   Now I don't really need to go any farther and I could have gone much farther. It was a stupid death

00:06:15   So I'm kind of off that I've gone back to desert golf

00:06:17   Golfing yeah, whatever. I still haven't tried that one, but I am enjoying crossy road more than I probably should it is a good game

00:06:26   So we should probably talk about what Daniel Jalkitt said about push notification spam filtering Marco

00:06:32   Did you get a chance to read this earlier today? I read this ten minutes ago

00:06:35   yeah, so what what we were talking about last episode and

00:06:38   What Daniel was kind of replying to was what especially Marco had talked about with regard to push notification spam and

00:06:46   And how the three of us really didn't come up with a terribly awesome way

00:06:51   To for Apple to filter the spam or take action on the spam and so one of the things we talked about was well

00:06:57   maybe we could they could enlist users to

00:07:00   To help filter the spam and notify Apple of it

00:07:05   And so Daniel had an interesting point,

00:07:07   and I'm gonna read from this post

00:07:08   that we'll put in the show notes.

00:07:09   "Apple can still use its unique role

00:07:11   "as the creator of all things iOS to devise a system

00:07:13   "through which they would themselves

00:07:15   "be virtually subscribed to all unremarkable notifications

00:07:18   "from a particular app's developer.

00:07:20   "Think about the worst notification spam you've seen.

00:07:21   "In my experience, it's not super personalized.

00:07:24   "In fact, it's liable to be an inducement

00:07:26   "to keep using the app, to advance in a game,

00:07:28   "to become more engaged, et cetera.

00:07:30   "I think Apple would collect a ton of useful information

00:07:32   "about spamming developers if they simply arranged

00:07:34   that every app on this app store is capable of sending push notifications included among

00:07:38   its list of registered devices a pseudo-device in Cupertino whose sole purpose was to receive

00:07:44   notifications, scan them for spammy keywords, apply Bayesian filters, and flag questionable

00:07:49   developers.

00:07:50   I think it's a really good idea.

00:07:52   That seems like it would be hard as crap to put together, but it is a very interesting

00:07:57   point.

00:07:58   I mean, when you are in control of the entire ecosystem, you probably can get away with

00:08:01   with doing something like that.

00:08:02   And I was curious to hear what you guys thought.

00:08:04   - See, it's a really good idea.

00:08:06   So what you said earlier in the post

00:08:08   is like one of the problems is they can't just run

00:08:10   these kind of filter server side

00:08:12   because everything's encrypted end to end.

00:08:14   So in order to see the content of a message,

00:08:16   you have to be one of the recipients of the message.

00:08:20   And that's actually not entirely true.

00:08:25   When you send a push notification request,

00:08:29   you send it over SSL, but the server on the other side

00:08:33   has the decryption key and you're just sending

00:08:34   a JSON dictionary.

00:08:36   So your server is not encrypting that data

00:08:39   separately from SSL.

00:08:40   That encryption is happening after it gets

00:08:43   into Apple's hands.

00:08:44   So Dana's assumption early on is actually not correct

00:08:48   that they could be doing the server side if they wanted to

00:08:50   without having this big pseudo device.

00:08:52   I think there's two problems with it.

00:08:54   Number one, it would have to,

00:08:57   it would almost certainly be abused

00:09:00   and worked around very quickly.

00:09:02   For instance, developers could start using different schemes.

00:09:06   So for instance, background refresh,

00:09:09   you can just send whatever you want

00:09:11   as the payload of a silent notification

00:09:13   for background refresh that doesn't show

00:09:15   any text to the user.

00:09:17   Then you can have your app generate a local notification

00:09:21   based on whatever you want

00:09:22   that says whatever you want from that.

00:09:24   That's actually how I send all of mine.

00:09:26   every overcast notification is messageless.

00:09:29   It is a content available notification.

00:09:31   And then the app wakes up, performs a sync,

00:09:34   and then for any new podcast episodes it finds,

00:09:38   it shows a notification from their title.

00:09:40   So all of the text that is being shown to the user

00:09:44   in push notification is not going through Apple servers

00:09:47   and will require the app to be launched to generate.

00:09:51   And of course, developers would very quickly

00:09:53   work around this kind of system if it was in place.

00:09:56   they would show the text in different ways.

00:09:59   They would respond to silent notifications,

00:10:01   or they would encrypt the messages

00:10:03   and then decrypt them with a custom scheme

00:10:04   with the app or whatever.

00:10:06   So that method wouldn't entirely work.

00:10:09   What would work better,

00:10:11   and what would actually be a prerequisite

00:10:15   to having that kind of setup at all,

00:10:18   is if Apple cared.

00:10:20   That's the biggest problem here,

00:10:21   is that it really seems like Apple

00:10:23   doesn't care about this problem

00:10:25   by their complete inaction and complete seeming inability

00:10:30   and unwillingness to enforce this rule

00:10:33   and then to even break it themselves

00:10:34   with one of their teams.

00:10:35   I think it's very clear that Apple simply doesn't think

00:10:39   this is a problem because when Apple thinks something

00:10:41   is a problem, it tends to get attention,

00:10:42   it tends to get addressed.

00:10:45   And then when Apple, you know,

00:10:46   Apple has kind of this tunnel vision sometimes

00:10:48   where whatever they care about,

00:10:51   whatever the hot thing is at that moment,

00:10:53   it gets this laser focus, they do crazy things,

00:10:56   it gets remade or gets massive progress made on it,

00:10:59   and then it gets left alone untouched for 10 years.

00:11:02   And I think this is one of those things where like,

00:11:05   like this is an area of the App Store

00:11:07   that they just don't care about,

00:11:08   like much of the App Store, honestly.

00:11:10   I mean, most of the App Store does not see rapid change.

00:11:13   The policies sure don't.

00:11:15   And I think it's just very clear this is a problem,

00:11:19   this is a problem to geeks like us

00:11:22   and people who are as picky as me,

00:11:25   but Apple does not think this is a problem

00:11:27   because if they thought it was a problem,

00:11:29   they would be doing more to enforce the rule,

00:11:31   and they're not.

00:11:31   - I think there's another reason why

00:11:33   the Jockut proposed solution, ignoring encryption,

00:11:36   ignoring fake local notifications, stuff like that,

00:11:39   even if all those workarounds didn't exist,

00:11:42   this would still require Apple to do two things.

00:11:47   One thing that Apple doesn't like to do

00:11:49   and one thing that they're not very good at.

00:11:51   The thing they don't like to do

00:11:52   is this would require them to essentially log all push notifications, right?

00:11:57   Yeah.

00:11:58   And or store them in some way so that you could verify that they were sent for some, you know,

00:12:02   they would have to store some window of time.

00:12:04   And the reason that we had to store them is because the second thing that I don't think they'd be very good at is

00:12:09   figuring out if something is in

00:12:11   violation of the guidelines by looking at the content computer wise, you know, spam detection and

00:12:17   To do that. Well, it's not easy to do that. Well and do it fast at the same time

00:12:22   So it's not like they could watch up all the traffic as it goes by

00:12:25   Categorize it a spam or not spam and then discard it because what if they got it wrong and they want to retrain their filter

00:12:31   Or whatever so it would have to be stored for some period of time

00:12:33   so even if they could man-in-the-middle everything decrypt everything because they control the key servers and all this other stuff like

00:12:39   Undo all their end-end encryption look at the content great now you're looking at all the push notice

00:12:44   Oh, and by the way, simulate user activity

00:12:47   so that you get the push notifications

00:12:48   that are in response to you using the application

00:12:51   or not using the application

00:12:52   or having used it within a certain period of time.

00:12:55   You'd have to do a hell of a lot to make a fake thing

00:12:59   that behaves in a way that is sure to trigger

00:13:02   all of these spammy push notifications.

00:13:04   Then you're just left with a pile of push notifications

00:13:06   that you have to look at

00:13:07   and determine which ones are legitimate.

00:13:08   And that's hard for humans to do.

00:13:09   I mean, app reviewers can't even determine

00:13:11   if an app is legitimate.

00:13:12   And you're expecting a computer

00:13:14   in a few milliseconds to figure out if a push notification is in violation of the no promotions

00:13:19   rule. So that's why I keep coming back to the only solution to this has to involve some

00:13:25   kind of reporting by recipients. You know, I have received this spam push notification

00:13:33   report this application or disable notifications and maybe like, you know, I was trying to

00:13:37   think of all less intrusive UIs for doing this that wouldn't bother regular people.

00:13:43   when you turn off push notifications for an app,

00:13:46   it may ask you if that, you know,

00:13:48   if that app has ever sent you push notifications

00:13:50   or if it had sent you a push notification recently,

00:13:52   like within the past five minutes,

00:13:53   it may ask you, are you disabling notifications?

00:13:55   Because for one of these five reasons,

00:13:57   and you can say spam, whatever, you know,

00:14:00   like some kind of thing like that,

00:14:01   that only some nerd will see that's heavily gated

00:14:04   on the thing that we all do,

00:14:06   which is something sends you notification,

00:14:08   you realize you forgot to turn it off,

00:14:09   you immediately go to system preferences,

00:14:12   whatever the hell they call it in iOS settings.

00:14:14   And it's a gear icon, it's killing me.

00:14:16   It's in both places now.

00:14:17   (laughing)

00:14:19   And you immediately go to turn it off.

00:14:21   And you know, iOS can detect that sort of pattern

00:14:24   and can throw up something that says, you know,

00:14:26   kind of like those annoying unsubscribe things

00:14:28   like you've successfully unsubscribed.

00:14:30   Did you unsubscribe because

00:14:31   and you never want to answer the questions?

00:14:32   Well, if you're angry because something sent you spam,

00:14:34   I know I would click the little thing

00:14:36   or tap the little thing that says,

00:14:38   yeah, I just disabled it 'cause it sent me an ad

00:14:40   or something that looked like an ad.

00:14:41   And that'll have tons of false positives

00:14:43   from people who are just angry

00:14:44   they got notifications, period.

00:14:45   But the volume of hundreds of millions of iOS users

00:14:48   is enough that they could do these in graphs and say,

00:14:50   all right, this looks like a spammy app,

00:14:52   let's maybe investigate it.

00:14:54   And have five people a week just run that app on their phone

00:14:56   and see if it sends them an ads.

00:14:57   And, you know, yeah, and talk about this last show.

00:15:00   Apple has all the power here.

00:15:02   They can totally stop this.

00:15:04   Like they're not powerless to, you know,

00:15:06   all they have to do, like Margo said,

00:15:09   is care about it a little bit.

00:15:10   And then they can, at their leisure, do almost anything,

00:15:15   almost any possible sort of end-user solution,

00:15:18   really, really lightweight,

00:15:20   and their volumes will make it such

00:15:21   that it'll become super clear

00:15:22   what the popular app that is spamming people is.

00:15:25   You're never gonna get the obscure app

00:15:26   that's spamming people

00:15:27   because seven people haven't installed,

00:15:28   but you'll get the popular app that's spamming people,

00:15:30   and then you send them a nice little note and say,

00:15:32   "Hey, I noticed your app is spamming people.

00:15:33   "Maybe stop that."

00:15:35   And they will stop, and if they don't,

00:15:36   their app has gone out of the store.

00:15:38   It's just, you know, having such incredible power

00:15:41   of everything that's in the App Store,

00:15:42   it's just like they're wasting it by not using it for good.

00:15:45   - Oh yeah, I mean this is, you know,

00:15:48   as we get into the App Store discussion,

00:15:50   I'm sure I'll bring this up again,

00:15:51   but there are so many areas

00:15:52   in which they could use this for good.

00:15:54   For example, the way the new Twitter app scans URL schemes

00:15:59   and maybe process listing, I don't know,

00:16:01   but they scan for the apps you have installed

00:16:04   and they send that list of apps that you have installed

00:16:07   to Twitter and Twitter uses that to advertise to you.

00:16:11   This is a pretty big privacy violation.

00:16:13   People on iOS generally expect,

00:16:16   because the way iOS works in most ways

00:16:19   is that apps are sandboxed

00:16:21   and can't read data from other apps.

00:16:22   They can't even see other apps.

00:16:24   They can't even tell what you have installed,

00:16:26   conceptually at least.

00:16:28   In practice, there are two ways to tell

00:16:29   if you have an app installed.

00:16:30   One is if the app registers for any URL schemes,

00:16:34   then you can check for those,

00:16:36   whether they're registered or not,

00:16:38   and the second is there's a low level,

00:16:41   some kind of assist control function,

00:16:42   something like that, I don't know which exactly one it is,

00:16:44   but there's a low level POSIX function

00:16:46   to get the list of running process names.

00:16:49   And so if you pull that list on a regular basis,

00:16:53   the chances are you're gonna catch a lot of apps

00:16:55   the user has installed in their currently running state,

00:16:57   and so you'll eventually build up a list

00:16:59   of what apps they have installed

00:17:00   based on their process names.

00:17:01   That function, I'm not sure there's a good reason

00:17:05   for that to exist on iOS or to return valid data.

00:17:10   It wouldn't surprise me if in the future,

00:17:13   similar to the way that Apple basically

00:17:15   removed MAC address access from those low-level

00:17:18   system calls in iOS, I think seven did that,

00:17:23   where the call is still there, you can call it,

00:17:25   but it just returns all zeros for a MAC address now.

00:17:28   Similar for that, I don't think there's a reason

00:17:31   why iOS needs this function to return valid process names

00:17:35   to the app that's calling it.

00:17:37   There's no XPC that's app controlled or anything like that.

00:17:40   So if there's a good reason, please let us know once.

00:17:44   (laughing)

00:17:45   - That's not how this works.

00:17:47   - Yeah, I know.

00:17:47   (laughing)

00:17:48   I don't think there's a reason for that.

00:17:50   So I think privacy-wise,

00:17:53   I think Apple should care about this problem

00:17:55   because I think the list of apps you have installed

00:17:57   should be considered private information,

00:18:01   personal information that any one app

00:18:03   shouldn't be able to get a list of apps on your phone.

00:18:06   URL schemes, though, that's a trickier one.

00:18:08   So some apps, they have URL schemes in place

00:18:11   for various workflow things.

00:18:12   There's various reasons why you'd wanna have

00:18:16   and publish a URL scheme, and if you're gonna do that,

00:18:19   I guess there's no real way around that,

00:18:22   around your app being discovered.

00:18:24   On the other hand, there's a lot of apps

00:18:26   that have URL schemes in place for other reasons,

00:18:28   like some OAuth SDK thing, the Facebook login thing,

00:18:33   some plugin or component of your app requires

00:18:37   some kind of work around, like where it kicks you

00:18:39   to some other app, you sign in and then it kicks you

00:18:41   back to your app, and so you have to have a URL scheme

00:18:44   to make that work.

00:18:45   And so a lot of apps have URL schemes

00:18:46   that really aren't using them for any other purpose

00:18:48   besides that sort of thing.

00:18:50   iOS 8 and the new extension system makes a whole lot

00:18:53   of that unnecessary.

00:18:55   So I would actually suggest, and I say this

00:18:58   as one of the designers of X-Callback URL,

00:19:01   I would suggest that URL schemes possibly be deprecated

00:19:04   in the future and removed later after that.

00:19:06   I think that there are better ways around that problem

00:19:08   that they've designed in iOS 8.

00:19:10   If Apple seems to think that it's okay for apps

00:19:13   to have a list of 10,000 known URL schemes

00:19:15   and scrape all your apps and send them to a server

00:19:18   and advertise to you based on that,

00:19:19   which is what they're currently permitting Twitter to do,

00:19:22   if Apple thinks that's okay, that's gonna continue

00:19:24   and that's gonna be in every analytics package

00:19:26   in every scammy ad package for iOS,

00:19:31   and it's gonna become very standard of practice

00:19:32   for apps to spy on your other apps

00:19:34   and report those back to their shady companies.

00:19:38   And that's really not good.

00:19:38   I really don't like that at all.

00:19:40   And so I think as URL schemes become dramatically

00:19:45   less necessary with iOS 8,

00:19:47   maybe the way forward is not to have them

00:19:50   to remove that possible area of abuse.

00:19:53   Secondarily, Apple could just have a rule

00:19:55   that they actually enforce that says,

00:19:58   you can't collect lists of apps from your device

00:20:00   and send them to your servers.

00:20:01   Like, that could just be a rule.

00:20:03   They don't seem to care though.

00:20:06   - Don't you get the feeling like, again,

00:20:08   we have no visibility into what anyone is actually thinking,

00:20:10   so we just have to guess and there's void information.

00:20:13   But that like, there's this tiered system

00:20:16   in terms of developers.

00:20:18   Externally, you're all the same, but internally to Apple,

00:20:21   if the Twitter app starts doing something spammy,

00:20:24   Apple's reaction, I would imagine,

00:20:26   is not to send a generic email from some person that

00:20:31   says your app's gonna be pulled in two weeks

00:20:33   if you don't stop doing this,

00:20:34   like what they do to other people, you know what I mean?

00:20:36   Instead, someone much higher level has a nice,

00:20:40   friendly phone call with someone higher level on Twitter

00:20:42   and they have a discussion about it,

00:20:43   because it's Twitter, what are they gonna do?

00:20:44   Pull the Twitter app?

00:20:45   I mean, yeah, eventually they would if there was some sort

00:20:47   of actual disagreement, I'd totally believe

00:20:49   they would pull the Twitter app,

00:20:50   but you get handled a little bit differently

00:20:52   when you're Twitter.

00:20:53   I know they pulled path for pulling all your contacts and everything but path that was not as big as Twitter and

00:20:58   Like I mean, they're nice to everybody like they're it's not like they're they're mean to other people and nice to Twitter

00:21:04   But it I just get the feeling

00:21:06   based on nothing other than

00:21:09   seeing their actions externally without knowing what's going on in the box and maybe hearing a little bit about sort of the

00:21:14   The treatment and who gets picked to you know, come two weeks early and do a demo for a keynote or whatever

00:21:20   Not every not every developer is treated the same, and I think this is appropriate in general, but it goes against the sort of egalitarian

00:21:26   Idealistic story of the App Store where you know anybody can play and all the rules are the same for everybody

00:21:32   It's not quite doesn't seem like from the outside that it's quite the same for everybody, so I don't

00:21:38   For all we know Apple has already talked to Twitter and say we would really prefer you not to get a list of apps

00:21:44   It's not like we're gonna play you from the store. We know you have schedules

00:21:48   just tell us that in the next version you'll fix this and give us a rough timeline and

00:21:51   we'll say okay and then we won't say anything about it publicly and everything will be fine.

00:21:56   It's totally plausible to me that that could be happening inside Apple but of course we

00:21:59   don't know.

00:22:00   So why don't you tell us about something we do know, Marco?

00:22:04   We do know that we were sponsored this week by a new sponsor, it is Oscar.

00:22:09   Oscar is a new kind of health insurance company.

00:22:11   They use technology to guide you to better care.

00:22:13   It's at highoscar.com/atp.

00:22:17   it's high, like, you know, hi, hi, oscar.com/ATP.

00:22:21   So most health insurers have, you know,

00:22:23   other big corporations as their primary customers,

00:22:25   not individuals and families, and it really shows.

00:22:28   Oscar only offers plans for individuals and families.

00:22:32   They're focused on the needs of the individual.

00:22:34   They put people first,

00:22:35   and they've transformed health insurance

00:22:37   from scary and overwhelming to friendly and simple.

00:22:40   Buying health insurance for yourself

00:22:42   is a pretty intimidating process.

00:22:43   I've gone through it myself a number of times.

00:22:46   Some of which were before the Affordable Care Act.

00:22:48   And let me tell you, that was terrifying.

00:22:50   Because before the Affordable Care Act,

00:22:53   there were all these risks that you would take

00:22:55   that aren't there anymore where it's like,

00:22:56   you have to understand all these different numbers

00:22:58   and all these different conditions

00:22:59   and you always have to ask yourself like,

00:23:00   well, in which ways could this bankrupt me?

00:23:02   Like, unfortunately, most of those things are now illegal.

00:23:05   But there's still a whole bunch of like crazy numbers

00:23:08   you gotta understand and everything.

00:23:10   Oscar makes it as easy as possible.

00:23:12   Oscar, they have these clear, honest language

00:23:15   around their plans.

00:23:16   There's only a few plans to choose from

00:23:17   and they're all pretty much the same plan,

00:23:19   just like how much deductible do you want.

00:23:21   And they had this beautifully designed website

00:23:23   that's easy to use, full of information,

00:23:25   and very, very clear.

00:23:27   You would not believe how bad

00:23:29   other health insurance websites are,

00:23:31   unless you've used them, in which case

00:23:32   you know exactly what I'm talking about.

00:23:34   And Oscar also offers great customer service

00:23:37   via phone or email, which again, is extremely unusual

00:23:41   for health insurance companies.

00:23:43   Oscar plans include benefits like free checkups,

00:23:46   some free generic drugs, free primary care doctor visits,

00:23:50   specialists without referrals,

00:23:51   you don't have to get a referral first, huge time saver.

00:23:54   But the coolest benefit that they have, I think,

00:23:56   they have a 24/7 doctor on call service.

00:24:00   So anytime, day or night, you can request a phone call

00:24:04   and a board certified practitioner will call you

00:24:06   in a few minutes who can help you with many questions

00:24:09   and ailments right over the phone

00:24:10   and they can even issue common prescriptions

00:24:13   all right over the phone and that service is free.

00:24:15   There's no copay, there's no limit.

00:24:17   That service is free for Oscar members.

00:24:19   You can get 24/7 doctors on call.

00:24:22   That's incredible.

00:24:23   Starting in January, Oscar members can receive credit

00:24:26   of up to $240 a year for reaching daily walking goals.

00:24:29   These goals are tailored to you

00:24:30   based on your previous level of activity.

00:24:32   If you wanna participate in this,

00:24:33   Oscar will give you a little wearable thing

00:24:35   and then you track your progress right in their app.

00:24:38   Whether you're entirely healthy or you or someone

00:24:40   in your family has a complicated medical condition,

00:24:42   OSCAR's plans will cover you.

00:24:44   You can buy their insurance through the new health

00:24:46   insurance marketplaces if you're in most of Northern New

00:24:48   Jersey or the parts of New York that are in and around

00:24:50   the city like Westchester, Rockland, Suffolk, Nassau.

00:24:54   So check their website to see if they cover you.

00:24:56   Again, that's most of Northern New Jersey

00:24:58   and Metro New York.

00:24:59   Hi, oscar.com/atp will show you more about that

00:25:02   and let you just type in a zip code.

00:25:04   You can get a quote in like two seconds.

00:25:05   You just type in like a zip code in your age basically

00:25:07   and that's it.

00:25:09   Because of the way the healthcare marketplaces work,

00:25:10   You can only sign up from now through February, so hurry up.

00:25:14   There's these tier deadlines, so if you sign up

00:25:17   in the next couple days by December 15th,

00:25:19   you can get insurance for January 1st.

00:25:21   If you sign up by January 15th,

00:25:23   you'll get insurance for February 1st.

00:25:25   Hurry up if you're into this.

00:25:26   This is not the kind of thing you want to delay on.

00:25:29   If you need to buy health insurance for yourself

00:25:30   and/or your family, this is a great way to do it.

00:25:33   Oscar is a novel approach to an industry

00:25:35   that hasn't been innovative in decades.

00:25:37   To learn more about their plans or to get a quote,

00:25:39   visit highoscar.com/ATP or call,

00:25:43   they have a special number just for ATP listeners,

00:25:46   1-844-OSC-R-98.

00:25:49   So thanks a lot to OSCAR for sponsoring our show.

00:25:51   Man, buying health insurance does suck.

00:25:54   - It sucks even if you're employed at a regular job

00:25:57   like Jon and I are, it's still a pain in the butt.

00:26:00   - You know, so the self-employed thing

00:26:01   is definitely more difficult and usually more expensive.

00:26:04   But the one big downside of employer provided

00:26:07   is that you usually have little or no choice.

00:26:11   So you don't get to shop around.

00:26:12   What if I liked Oscar and think it's awesome?

00:26:14   Well, tough luck.

00:26:15   You can, you know,

00:26:16   you can't forego the employer funded one

00:26:19   because it's always so much cheaper

00:26:20   'cause they contribute some money to it,

00:26:22   but you have so few choices.

00:26:24   - You should grit your job.

00:26:25   (laughing)

00:26:28   - Yeah, yeah.

00:26:29   - All right, so anyway,

00:26:30   so we're still not happy with the App Store, are we Marco?

00:26:34   - I thought we were past all this.

00:26:36   I really did.

00:26:37   You know, there was a time when the App Store first came out

00:26:40   and over the first couple of years it was out,

00:26:43   we had a bunch of bumpy rejections

00:26:45   from Apple figuring out its policies,

00:26:47   developers figuring out what Apple wanted,

00:26:49   Apple at first being pretty bad

00:26:51   about communicating their policies

00:26:52   and then later getting less bad at it.

00:26:54   Overall, App Review is a good idea.

00:26:57   Overall, I support App Review

00:27:00   and overall, I think it has benefited customers

00:27:03   and developers at Apple.

00:27:05   But there are still these dark patches

00:27:08   and there are still times when it seems like

00:27:12   Apple is a little bit too,

00:27:15   I wouldn't necessarily say power hungry,

00:27:17   but they seem to be too strictly or overreaching

00:27:22   in their rule enforcement in a way that doesn't seem

00:27:25   to benefit anybody, possibly even including Apple.

00:27:29   That they're not seemingly looking out

00:27:32   for any kind of clear user benefit.

00:27:35   There's no major reason why, at least that we can see,

00:27:39   why Apple needs to enforce certain rules

00:27:42   or wants to enforce certain rules.

00:27:44   And there are a lot of rules they enforce

00:27:46   that are unwritten.

00:27:47   And this is the biggest problem,

00:27:50   this is one of the things that's going on now

00:27:52   around these notification center widgets.

00:27:54   And there seems to be this disconnect.

00:27:56   These are two different parts of Apple,

00:27:58   two very, very distantly separated parts of Apple.

00:28:01   So on one end you have Craig Federighi

00:28:03   and his organization making the software

00:28:06   and making the SDKs and adding these great abilities

00:28:10   to the OSs.

00:28:11   But developer relations and all parts

00:28:14   of developer relations, including app review,

00:28:17   are all buried deeply in Phil Schiller's organization.

00:28:21   So these are very separate parts of Apple.

00:28:23   And I think what we're seeing here,

00:28:26   we've seen some speculation over the last couple days

00:28:29   from a couple of blogs.

00:28:30   In fact, I'm a Stratechery member, Ben Thompson's site, Stratechery.

00:28:36   I'm one of his premium members, and so I get his daily updates, and I highly recommend

00:28:41   these daily updates.

00:28:42   They're extremely good.

00:28:43   He is one of the smartest writers in our business right now, and he wrote one today basically

00:28:48   saying, along with a few other things I've seen recently, that it sure seems like maybe

00:28:53   there's some friction here between Shiloh's organization and Federighi's organization.

00:28:58   I don't know enough about it to say any more than that,

00:29:00   but I think looking from the outside,

00:29:01   it does certainly seem like these two different parts

00:29:03   of Apple are not on the same page on everything.

00:29:06   And something is going wrong there.

00:29:08   There's some kind of friction or communication breakdown

00:29:11   or different priorities.

00:29:13   Something is going wrong there because we have the massive,

00:29:18   as we said this past summer at WBC,

00:29:20   the massive love letter to developers

00:29:22   that Apple basically had this past summer,

00:29:24   saying look at all this great new stuff,

00:29:26   all these walls we're lifting,

00:29:27   All these things you thought we'd never do,

00:29:29   well we did 'em.

00:29:30   All these things you thought your apps could never do,

00:29:32   now you can do them.

00:29:34   Now, months later, after this stuff is out

00:29:36   and in consumers' hands and these OSes are out,

00:29:39   and people actually start trying to do things with them,

00:29:41   we're seeing so many problems and rejections

00:29:45   from the app review side of things.

00:29:47   Oh, and by the way, also a third division

00:29:51   is the App Store editorial team, which is under ADQ.

00:29:55   So you have the people who make the SDKs,

00:29:58   the people who pick which apps are featured

00:30:00   to be great examples of what apps should be doing,

00:30:03   and then the people making the policies

00:30:04   of actually enforcing those rules,

00:30:06   those are all three different organizations

00:30:07   under three different SVPs inside Apple,

00:30:10   and who apparently have different viewpoints on things.

00:30:13   - I don't know if you could say that the development

00:30:15   is in conflict with any of those other two.

00:30:18   You could say that App Review and App Store Auditorial

00:30:22   are at best just not communicating with each other

00:30:26   and doing embarrassing things.

00:30:27   But engineering, their responsibility is in cooperation

00:30:32   with whatever their product design thing

00:30:35   or whoever's designing what the product's gonna do.

00:30:37   Engineering's job is to implement it

00:30:40   and maybe, I don't know if the product design

00:30:41   is under that umbrella, but probably.

00:30:43   Anyway, they create the APIs

00:30:45   and every API they create, there's some expectation

00:30:49   is like, we're just going to make something possible.

00:30:52   But although you may be able to do a thing with these APIs--

00:30:56   for example, read all the contacts

00:30:57   and email them to your server.

00:30:59   Like the people who made those APIs,

00:31:00   it's not their fault that you can do that.

00:31:02   It's like, we're going to implement these features.

00:31:04   We're going to make these APIs that make features possible.

00:31:07   I don't know if--

00:31:09   I don't think Craig Vitteri sees it as his responsibility

00:31:12   to worry about-- and whatever APIs we make,

00:31:15   obviously some developer is going

00:31:16   to use those APIs to do something

00:31:18   that App Review is going to reject.

00:31:20   And that does not necessarily imply a conflict

00:31:22   between Craig Federighi and the App Review section

00:31:25   of the organization.

00:31:27   I don't think he would say that he sees it as his role

00:31:30   to make those decisions because they aren't his decisions.

00:31:32   There are features that they want developers to be able

00:31:35   to add to their products that are made possible by his APIs.

00:31:38   There are also things that people can do with the APIs

00:31:41   that the engineering side makes

00:31:43   that are gonna be against App Review.

00:31:44   And that is the way it's always been.

00:31:47   Anecdotes about like well, I showed this to an engineer in the you know in the labs the WWDC and they thought it was awesome

00:31:53   Yeah, they probably do think it's awesome

00:31:56   But again, they they know they're not in charge of app review and they're excited to see someone using their API to do something cool

00:32:03   but I all but I still don't think that it implies a conflict between engineering and the rest the organization I think the

00:32:09   the only thing we can say for sure is the

00:32:13   embarrassing lack of communication between

00:32:15   editorial and app review in terms of promoting an application and then pulling it while it's under promotion like that's just

00:32:21   That's the type of thing that shouldn't happen if those things communicate with each other better. So

00:32:24   There could be a conflict between it's a natural like we're geeks out here

00:32:29   we're like if something is possible and and we can't think of a reason why we shouldn't do it, it should be allowed and

00:32:35   that's sort of a

00:32:38   Sort of Apple engineers mindset a true engineers mindset would be like, you know

00:32:42   well the Linux thing if it's possible everyone should be allowed to do it is free, you know,

00:32:45   anarchy for all. The Apple mindset if it's possible and if we think about it and we can't

00:32:50   think of a reason to stop it then it should be possible. So it's probably true that if you were

00:32:55   to poll the entire organization the vast majority of the people who work in engineering in Apple

00:32:59   would say yes that should be possible and no I would never poll the pcalc you know thing for

00:33:04   for putting a calculator in that today view, but I'm hesitant to turn it into a vice president

00:33:13   versus vice president internal turf war type battle.

00:33:16   Oh yeah, that's why I'm careful to say that it's under these people's organizations.

00:33:21   We don't know if Schiller is involved with these decisions personally or if Federighi

00:33:25   is mad about these decisions personally or anything like that, but what we can clearly

00:33:29   see is that these parts of Apple are not working together correctly.

00:33:35   And it's so bad that it's leaking out that it's publicly visible.

00:33:39   But do you think, like I said, I think this is the correct working of engineering and

00:33:44   App Review, in that engineering makes the APIs and App Review decides if the things

00:33:48   developers are using them for are allowed.

00:33:51   Our complaint is that App Review is making decisions that we don't agree with.

00:33:55   And that conflict with editorial.

00:33:56   - Yeah, and like I said, that could just,

00:33:59   I'm willing to chalk that up to lack of communication.

00:34:02   - Well, but that's a pretty big thing,

00:34:04   because see, and this is coming at a particularly bad time

00:34:08   for Apple, because right now, in this time,

00:34:12   late 2014, the last couple weeks of 2014,

00:34:15   the Apple Watch is coming out soon,

00:34:18   iPad sales are not that great,

00:34:20   it is harder than ever to make money in the App Store,

00:34:22   and Android is massive.

00:34:25   And Android just released a major update,

00:34:28   the whole paper thing, whatever they call it,

00:34:30   material design, like the Android 5.0,

00:34:32   that's actually getting pretty good reviews from people.

00:34:35   So what we have is, Apple is enforcing all these rules,

00:34:39   they've been enforcing all these rules for years,

00:34:41   and they have this crazy position of power

00:34:43   because there was really no other place to go

00:34:47   if you wanted to make any reasonable money developing apps.

00:34:49   I mean, some people make money on Android,

00:34:52   it's possible to, but it's historically been harder.

00:34:55   As hard as you think it is on iOS to make money,

00:34:58   it's historically been even harder on Android.

00:35:00   And a lot of things just weren't as good on Android.

00:35:04   But that gap is closing.

00:35:05   And I'm not sure it ever will close, period.

00:35:08   I don't think it will anytime soon.

00:35:10   But it's a lot smaller than it's ever been before.

00:35:13   Meanwhile, at the exact same time,

00:35:14   you have the iPad not doing particularly well,

00:35:18   relative to how it was doing.

00:35:21   You have immense competition in the App Store

00:35:24   that drives prices way, way down

00:35:26   and makes it very hard to make any money.

00:35:28   And you have this new platform, the watch,

00:35:31   that you're expected to develop for in parallel.

00:35:35   And this is combining to make it a tougher sell

00:35:39   than it previously has been to be an iOS developer.

00:35:42   You have now more platforms you need to target,

00:35:45   there's more work for you to do.

00:35:47   You might have to do adaptive layout

00:35:50   to make resizable iPad apps,

00:35:51   if that ever ships, like we talked about before.

00:35:54   So there's more and more work to be a current,

00:35:58   up-to-date, responsible iOS developer.

00:36:00   There's more and more work than there's ever been before.

00:36:02   The alternative of Android development is less bad

00:36:07   than it used to be relative to iOS development.

00:36:09   And you're making less money on iOS than you've ever made before.

00:36:14   This is not a good time for Apple to add more reasons

00:36:17   for developers to become disillusioned with the platform.

00:36:20   This is strategically a really terrible time for that

00:36:24   because Apple needs fantastic developers

00:36:27   to do two big things for it.

00:36:29   It needs good developers to push the boundaries

00:36:32   to make the iPad a better general computing device

00:36:35   than it is, and it needs developers to make great apps

00:36:38   for this new watch coming out in the spring.

00:36:40   And on some level, there's always gonna be more developers.

00:36:43   You can always say, well, there's more people waiting.

00:36:46   When you guys all leave, more people will come in.

00:36:48   There's always gonna be a fresh batch,

00:36:49   like the entertainment industry,

00:36:50   lots of industries work that way.

00:36:52   That's true, but if you want the best developers

00:36:56   making the best apps, and if you want

00:36:59   the boundaries to be pushed, if you want,

00:37:01   what Apple said in WWDC, they said,

00:37:04   on a number of occasions, we can't wait

00:37:06   to see what you do with this stuff.

00:37:09   And then they see what we do with it,

00:37:10   and they tell us, oh, you can't do half of that.

00:37:12   - As long as you do what they want you to do.

00:37:14   - Right, I mean, they need good developers

00:37:17   to push the boundaries and to make fantastic software

00:37:20   that is sustainable and that takes advantage

00:37:23   of the platform and that pushes it

00:37:25   and makes it useful for people

00:37:26   and it makes people buy their devices

00:37:28   and stick with their ecosystem.

00:37:30   They need us right now more than their actions say.

00:37:35   - Yeah, if we had to pick out things that are in conflict,

00:37:38   it's not that engineers conflict

00:37:40   with any of the non-engineering parts,

00:37:42   but it's the broad trends within Apple

00:37:45   in sort of the post-jobs era

00:37:46   that in the recent years, and especially in this most recent year, 2014, engineering's

00:37:52   reorganization, which has gone through a lot of growing pains and change of leadership,

00:37:58   and Steve Jobs goes and Forrestal goes and things are realigned, and there are new people,

00:38:02   and Johnny Ives elevated and all that stuff.

00:38:04   All of that rejiggering has culminated in an engineering organization that, like you

00:38:09   said, Marco, and like I said in my Yosemite review and everything, an engineering organization

00:38:15   that does things that previously it had refused to do,

00:38:18   but that had been widely desired

00:38:22   by their constituent developers

00:38:24   and indirectly by their customers.

00:38:26   That is the overall trends in engineering

00:38:28   in the last year or so.

00:38:29   And it's the result of all,

00:38:31   you have to think it's the result

00:38:32   of all these reorganizations that whoever was opposing this

00:38:34   is either not in power, not in the company anymore,

00:38:36   or lost an argument, right?

00:38:38   And now suddenly engineering is doing things

00:38:40   that are directly beneficial to developers

00:38:44   and indirectly beneficial so far to customers,

00:38:47   'cause customer is one of these things too.

00:38:49   Whereas app review has not undergone, as far as I know,

00:38:53   such an organizational change,

00:38:55   and is instead acting the way it has always acted

00:38:58   sort of in cycles where a lot of the time it's dormant

00:39:01   and sleeping, and then sometimes the bear wakes up

00:39:03   and bites you.

00:39:04   And we've had fits of that, you know, it's gone in cycles

00:39:09   and why is it awake now?

00:39:10   Why is it sleeping other times?

00:39:12   Hard to say, but one thing you can say is

00:39:15   it has not undergone the same transformation

00:39:17   that the engineering organization has gone through.

00:39:19   It's App Store is not suddenly letting in things

00:39:21   that it previously let in.

00:39:22   It is not suddenly being more reasonable,

00:39:25   being more transparent, you know,

00:39:27   explaining itself better.

00:39:29   Like the only thing you can say

00:39:30   for the app reorganization is that they have cut down

00:39:32   on wait times, that consistently the trend has been,

00:39:35   you know, don't have ridiculous wait times for things

00:39:38   with a few bumps in the road for like releases

00:39:40   where the Mac apps have to be delayed forever

00:39:42   and stuff like that.

00:39:43   - Usually it's about a week still.

00:39:44   And you'd be able to say it's about a week

00:39:47   for the last five years.

00:39:49   - Right, so the overall trend,

00:39:50   like if you look at the entire history of the app store,

00:39:52   is that they have moved that metric

00:39:53   to be better in a way that developers like

00:39:57   and that indirectly benefits customers,

00:39:58   which is the same sort of yardstick

00:40:00   I was using in engineering.

00:40:01   And so it's all the more glaring

00:40:03   when engineering is suddenly doing things

00:40:06   that everyone would have said are no-blame,

00:40:08   and doing them in a cautious way,

00:40:09   doing them in a good Apple way,

00:40:10   but making positive progress

00:40:12   where we say, you know, iOS 8 is better for developers

00:40:15   than iOS 7 was and so on and so forth.

00:40:18   Whereas App Review just does not seem

00:40:20   to be making any progress.

00:40:21   And I'm not familiar with the internal organization

00:40:24   of App Review or that side of the organization,

00:40:26   but if it has undergone any sort of transformation

00:40:30   or change in leadership that is,

00:40:34   that sort of parallels the engineering one,

00:40:35   I'm not aware of it.

00:40:36   And if it hasn't undergone that,

00:40:37   then that entire organization looks to me

00:40:40   like a typical corporate organization with people who are in power who are

00:40:43   stubborn who are wrong and who can't be convinced by their underlings right like

00:40:47   and you just stuck it's like well I disagree with you and I'm your boss the

00:40:50   end the other interesting thing to go back just a half step to what Marco was

00:40:55   saying is that not only our developers feeling like we got a little bit of a

00:41:02   bait-and-switch from WWDC because I believe Marco you did and I know I wrote

00:41:06   blog posts on the way back from WWDC about how you know we finally got all

00:41:11   the things we've been asking for we finally got all the things we wanted and

00:41:14   you know it's so I don't remember who was that said it first but it's like

00:41:18   Lucy and and Charlie Brown with the football you know and so here it is we

00:41:22   got all the things we want oh just kidding and and so developers are

00:41:27   obviously furious but a lot of users that I speak to just regular people who

00:41:33   not developers, they're getting more and more frustrated with Apple too.

00:41:36   It started with Apple Maps being crap and Google Maps not being available.

00:41:42   And then it continued to buggy iOS 7 that all of a sudden looks different and people

00:41:48   keep telling me how iOS 8 is buggy.

00:41:50   And to be honest, I haven't really had any particular issues.

00:41:53   But that being said, it seems like a lot of people I know who used to be really into all

00:41:59   things Apple maybe aren't. And that's a tough place to be. And so here it is, Apple is in

00:42:09   a position where they really shouldn't be pissing off their developers, not only for

00:42:12   the developer's sake, but also for users' sake.

00:42:15   Do you have any actual, any non-geeky user friends who talk to you about applications?

00:42:21   Are you just talking about the luster of Apple's gone off, or are you talking about users who

00:42:25   notice the transmit can't send things to iCloud Drive anymore?

00:42:27   No, no, no, no, the former, where the luster,

00:42:30   how it's always infallible, they always work.

00:42:33   - But that luster goes in cycles too,

00:42:34   that's just the typical celebrity type,

00:42:36   build 'em up, tear 'em down.

00:42:38   I don't attach anything particular to that,

00:42:40   because the cycle for that is practically yearly

00:42:44   at this point.

00:42:44   Yearly everybody loves Apple,

00:42:46   and yearly everybody hates it.

00:42:47   It seems to be getting faster.

00:42:49   - Oh yeah, although to be fair,

00:42:51   one thing that does definitely impact customers

00:42:53   is when an app is approved with a certain feature,

00:42:56   they buy it, they use that feature,

00:42:57   and then they have to remove that feature

00:42:59   because of Apple's policy after the fact.

00:43:01   - That's why I was asking, I was asking if people,

00:43:03   if people noticed that, like,

00:43:04   do they read the release notes?

00:43:05   Do they just get mad at the developer?

00:43:07   Like, does that blame even land on Apple?

00:43:08   Or do people, do the type of features

00:43:10   that get removed in that way,

00:43:11   are they below the notice of people?

00:43:13   Because, you know, the feature

00:43:15   that was removed from transmit,

00:43:16   people who use transmit are already probably kind of geeky,

00:43:20   and maybe they read the release notes.

00:43:22   I'm trying to think if there's like a mass market example,

00:43:24   like if the Facebook app could do something

00:43:25   that everybody thought was great and then Apple removed it.

00:43:28   Maybe that would get some notice,

00:43:30   but I've never heard any person who uses iOS

00:43:34   complain to me that an app was updated

00:43:35   and a feature was removed.

00:43:37   - I have, but it was not at all because of Apple.

00:43:40   Everyone I know is furious about you not being able

00:43:45   to send messages in the standard Facebook app anymore,

00:43:48   and you have to download a different Facebook Messenger app

00:43:51   in order to send messages.

00:43:52   - Oh yeah, no, I remember that, yes.

00:43:53   And that was and that blame landed on Facebook and that totally was Facebook as they decided to split their own stupid app

00:43:58   so whatever but

00:44:00   Yeah, I guess they would notice that because that is a that's sort of cutting an application in half into into two pieces

00:44:05   but for for features that are

00:44:09   Banned because of app store rules. I don't know like I mean it just may just be the people I come in contact

00:44:16   It's not big. It's not that big of a deal like

00:44:19   Again, a lot of these issues are magnified for us because of the the circles we travel in

00:44:23   the Apple losing its luster type thing is more likely a tertiary effect of what Arco was talking about where it's like

00:44:30   Apple needs developers to help drive its platform forward and

00:44:34   Developers are trying to drive it forward and every time they go, you know, take a step too far Apple

00:44:40   You know snaps the weapons as well. Not that far

00:44:42   We don't want you to make that too useful

00:44:43   Right like but we have to think about this for a cup for six months or nine months or we have some senior repeat

00:44:48   who really thinks we should never, ever do that.

00:44:50   So we're never gonna let you do that.

00:44:52   It's like, how do you, you become gun shy.

00:44:55   You become, you know, sort of like,

00:44:56   there's many, many articles from developers

00:44:59   expressing their reservations about using new APIs.

00:45:02   Like even in best case, it's just like,

00:45:04   let's lay off this new API for a year

00:45:06   and see how many people invested in it for a year

00:45:09   and get their app rejected.

00:45:10   And then maybe we'll get the lay of the land

00:45:12   and sort of divine with chicken bones

00:45:14   and other, you know, dice and stuff and figure out,

00:45:17   I think this will probably be okay.

00:45:18   We'll work on this for six months and see.

00:45:21   It's making developers more cautious

00:45:22   and really they should be blazing their way forward

00:45:24   and making apps that, you know, like the stupid line,

00:45:27   you know, the apps that Apple hasn't even thought of before.

00:45:30   Show us your amazing apps.

00:45:31   It's just like, you get the feeling

00:45:33   that in some Apple executives' mind,

00:45:35   they're like, make amazing apps

00:45:37   exactly the way I'm envisioning my mind

00:45:38   that I'm not gonna tell you about.

00:45:40   I have a picture in my mind

00:45:41   of what an amazing app would be like.

00:45:42   I'm not gonna tell you what that picture is.

00:45:44   Go make it and if you don't, I'm gonna reject your app.

00:45:46   Like that's, it's a chilling effect on development.

00:45:49   And so like, if customers are gonna notice anything,

00:45:53   it's gonna be this multi-year delayed thing

00:45:55   from developers being more cautious to use APIs

00:45:57   and then bring out apps later

00:46:00   and without more interesting features.

00:46:01   And all you need is, you know,

00:46:04   I was thinking of, Marco already brought this up,

00:46:07   but like, what does it take for someone to switch?

00:46:09   What does it take for someone to say,

00:46:10   well, screw this, I'm gonna undevelop for Android now.

00:46:13   They need to be able to make money doing it.

00:46:14   And some structural issues probably need to be sorted out

00:46:19   so they become less of a deterrent.

00:46:20   Like for an iOS developer,

00:46:22   even with all the devices that are out there now,

00:46:24   you have to think fragmentation and install base

00:46:27   of the most recent version are a huge drag

00:46:31   on switching over to Android

00:46:32   because you just have to wait for so long

00:46:34   for the 5.0 to be everywhere.

00:46:38   And then you have to deal with so many more devices

00:46:40   that you have to wait for some sort of consolidation.

00:46:42   - Well, but even that is not nearly as bad

00:46:44   it used to be though.

00:46:45   Like they did this crazy thing,

00:46:46   I don't know the crazy details of it,

00:46:47   but they did this crazy thing a couple years ago

00:46:49   where they started bundling all the APIs together

00:46:51   into the Google Play services which can self update.

00:46:54   - I was thinking like hardware recommendations

00:46:55   and the screen sizes and CPU and GPU combinations,

00:46:59   stuff like that, again.

00:47:00   - It's a problem for really just games.

00:47:02   Like for apps it's a lot less of a problem

00:47:04   because the GPUs stop mattering as much for apps than games.

00:47:08   - Well I know but like the reason,

00:47:09   I'm not just thinking of games,

00:47:10   what I'm thinking of is in terms of

00:47:12   what kind of applications are going to drive the platform

00:47:15   forward and do amazing things that no one had ever thought of.

00:47:17   And those are always the ones that push the system.

00:47:19   And it's easier-- right now, it's

00:47:20   easier to make those on iOS because you have a better

00:47:24   idea of what you're going to be aiming at

00:47:26   and the install basis on a more recent version.

00:47:28   So if you're going to do something amazing in advance,

00:47:30   you can make more money doing it on iOS, and it will be easier.

00:47:33   What will it take for those people

00:47:34   to bail and go to Android and try to do the same thing?

00:47:36   Because that's what you don't want to happen

00:47:37   is someone to come up with a new app idea that hasn't existed.

00:47:40   Let's take BitTorrent as an example,

00:47:42   because pretend BitTorrent didn't exist

00:47:44   and someone came up with that idea and all our phones were,

00:47:47   this is a terrible idea 'cause it would kill your battery.

00:47:48   But anyway, some type of application

00:47:52   that does something that would not be allowed

00:47:54   on the App Store, but that has a user benefit,

00:47:58   like users really like this application

00:47:59   and this application would not be possible in iOS

00:48:01   and it happens to land on Android first.

00:48:03   And everybody's like, well, I would get an Apple phone,

00:48:05   but only Android has insert whatever this killer app is.

00:48:09   That's Apple's worst nightmare.

00:48:12   If Twitter came out today and was only available in Android

00:48:14   because Apple didn't allow SMS access or some crazy thing,

00:48:19   whatever, you don't want-- you want to have that app.

00:48:23   You want to have-- even if it's something as stupid as Flappy

00:48:25   Bird, and even though I'm sure there was on Android too

00:48:27   and everything, you want to be the platform where

00:48:31   the great new thing happens.

00:48:32   And you can't plan for the great new thing.

00:48:34   And you don't know where it's going to come from.

00:48:35   And you don't know who's going to make it.

00:48:36   And you don't know when it's going to appear.

00:48:38   But you do know that the more you restrict your platform,

00:48:41   But the higher the chances that this thing will appear only someplace else.

00:48:45   Well, and it has a lot to do with also who is using your platform.

00:48:49   You know, like somebody in the chat pointed out, it was Hi Endian in the chat pointed

00:48:53   out, like, you know, a lot of times the gotta have it apps that are only on one platform,

00:49:00   a lot of times that's not because of technological limitations.

00:49:03   It's because the developer happened to use that platform or the most early adopters are

00:49:07   on that platform.

00:49:08   For the most part, that platform today is iOS,

00:49:10   and it has been iOS for a while.

00:49:13   I think since the iPhone was launched, it's been iOS.

00:49:16   But that's not guaranteed to always be the case.

00:49:20   Like Instagram launched on iOS first,

00:49:22   because that's just what you did in 2010

00:49:24   or whenever it launched.

00:49:25   Today, I don't think anything would launch Android first,

00:49:30   but it would be increasingly difficult

00:49:32   for a service to get really big and be iPhone only today.

00:49:36   because the expectation gets higher every year

00:49:39   that you should be on both of those platforms

00:49:41   at the same time.

00:49:42   I would, you know, I'm still fine being iOS only

00:49:44   'cause I'm just one guy and I'm not trying

00:49:45   to take over the world and make a billion dollars

00:49:46   from Facebook stock, but I couldn't recommend

00:49:49   to like a big VC-backed company that wants explosive growth,

00:49:53   I couldn't recommend to them that you should go

00:49:55   iOS only necessarily.

00:49:57   I think at this point you gotta have both.

00:49:59   And it's only a matter of time.

00:50:00   Once you've reached this point where we can say,

00:50:03   well, you know, you really should be looking

00:50:05   at both platforms.

00:50:06   It's only a matter of time before something big happens

00:50:10   on Android first.

00:50:12   And I don't think we're near that point yet.

00:50:14   I think we're still a few years off

00:50:15   from that being very likely.

00:50:17   But the direction we're going, that will eventually happen.

00:50:21   And I don't think Apple really cares about that.

00:50:24   Or that I think they're in denial,

00:50:26   or I think they, either they don't think it will happen,

00:50:29   or they don't think it will be very important.

00:50:31   And I think they're wrong on both of those

00:50:33   if they're making those assumptions.

00:50:35   - Well, the other thing Apple has going forward

00:50:36   in that area, and it seems to be their strategy so far,

00:50:39   this is kind of a game console's analogy,

00:50:41   is they just gotta sell a lot of consoles.

00:50:43   Like, no matter how annoying your platform is,

00:50:46   one knob that can always turn is,

00:50:50   let's just sell a bazillion friggin' iOS hardware devices.

00:50:53   'Cause if we sell, we need to keep selling those,

00:50:56   'cause if we don't sell enough,

00:50:57   those would be like Windows Phone

00:50:58   and it'll make anything for us.

00:50:59   And we just need to maintain some kind of,

00:51:02   within some kind of striking distance of Android's market share so that it doesn't become that

00:51:07   big of a deal.

00:51:08   Because if Apple had 15% market share, it wouldn't matter how awesome their platform

00:51:12   is, it wouldn't matter how permissive their app review rules are, they would be like Windows

00:51:15   Phone.

00:51:16   It would be like, "Yeah, that's nice, whatever.

00:51:17   You have some good developers, you make some good apps, but it's not enough."

00:51:20   So they need to make good hardware and sell a lot of it.

00:51:22   And so far, they've been doing pretty good on that.

00:51:24   So it's giving them the room to screw up an app review without as many consequences because

00:51:31   is just like, well, like I said with Android,

00:51:34   no matter how annoying it is,

00:51:35   Android has such a massive market share

00:51:36   that if you are going to be

00:51:39   one of the biggest companies in the world,

00:51:40   you have to address it,

00:51:41   because it doesn't matter how bad Android is,

00:51:43   you just have to.

00:51:44   It's like, it's more than half the market.

00:51:45   You gotta go do it.

00:51:46   And Android is, Apple is only a contender

00:51:50   because it's got a lot of market share,

00:51:52   a big market share, and it's perceived as being better

00:51:55   and having customers who are more willing

00:51:57   to spend money and so on and so forth.

00:51:59   - Yeah, I mean Apple definitely has a larger share

00:52:01   of the most desirable customers for most people right now.

00:52:04   And they have for a while.

00:52:06   But I think the percentage share of that

00:52:09   goes down every year for Apple.

00:52:11   I don't know that for sure, I'm just guessing.

00:52:13   And I still think they have a pretty healthy lead,

00:52:15   but again, it's like, if you look at the sum of all of this,

00:52:20   of why somebody would develop for iOS only or first,

00:52:24   there used to be a lot of very strong reasons.

00:52:26   There were a bunch of apps out there,

00:52:28   There were a bunch of,

00:52:30   like this is where people look to get apps.

00:52:32   There was a bunch of money to be made potentially.

00:52:35   All the early adopters use this platform.

00:52:37   You personally use this platform.

00:52:38   You like this platform.

00:52:40   There's so many great things you can do

00:52:41   only on this platform or easiest on this platform.

00:52:44   All those advantages,

00:52:46   or at least most of those advantages still exist today.

00:52:49   All of them are weaker though than they used to be.

00:52:52   Every time Apple does a chilling effect kind of thing,

00:52:56   like with App Review,

00:52:57   It drops that barrier lower and lower and lower.

00:53:02   And again, it's a slow progression.

00:53:04   No single one of these factors

00:53:07   is totally collapsing suddenly.

00:53:09   They're all just lowering slowly over time.

00:53:12   And I fear that this is gonna catch Apple by surprise

00:53:17   if one day there starts to be some spillover

00:53:19   and Apple just misses it or they didn't see it coming.

00:53:24   And then what happens after that?

00:53:26   What happens when a few prominent iOS developers

00:53:30   really do switch to Android and really start making

00:53:32   really good stuff on Android and not on iOS?

00:53:35   I don't think we're very far away from that happening.

00:53:37   I think that starts to happen this coming year.

00:53:40   And I don't know what happens after that.

00:53:42   But I think the barriers that Apple built around itself

00:53:46   are substantially lower and weaker

00:53:49   than I think Apple thinks they are.

00:53:51   - You think in the next year someone's prominent developer

00:53:54   is gonna bail?

00:53:55   Definitely. Yeah.

00:53:57   Like who? I don't think so.

00:53:59   I mean... I think with the watch coming, there's a lot...

00:54:01   that's a lot to distract people. I agree.

00:54:03   You know, that... well, what... that happened with the

00:54:05   iPad. I remember like when... right before

00:54:07   the iPad came out was when

00:54:09   the Nexus One came out.

00:54:11   And a whole bunch of iOS developers were

00:54:13   like, "Oh man, the Nexus One,

00:54:15   that's kind of interesting." And then Google sent a bunch of them for

00:54:17   free, so a lot of people, including me, I should disclose.

00:54:19   And I started to think,

00:54:21   "Oh, I wonder if I should make Instapaper's website

00:54:23   better on this, maybe eventually I'll make an app for it someday, and then Apple announced

00:54:27   the iPad like a month later and then we all got distracted by the iPad for three years.

00:54:33   That might happen with the watch.

00:54:35   Maybe Apple's banking on that, maybe Apple's assuming that will happen with the watch.

00:54:38   I'm not entirely sure it will.

00:54:41   I think, first of all, you know, watch kit in year one is going to be pretty limited

00:54:46   in what you can even do with it and what kind of apps even make sense to have a watch app.

00:54:51   Not to mention, if you think Apple is being,

00:54:54   you know, controlling and arbitrary and capricious

00:54:56   with the App Store rules with today widgets,

00:54:59   you haven't seen anything yet.

00:55:00   'Cause wait 'til the watch comes out

00:55:02   and they start denying apps for that

00:55:04   for things that we consider invalid or stupid reasons

00:55:07   or they start enforcing inconsistent rules for that.

00:55:10   Believe me, there's gonna be a lot of that going on.

00:55:12   (laughs)

00:55:13   Like, I'm actually honestly a little,

00:55:16   and there's another thing too,

00:55:17   I think a lot of developers

00:55:19   are gonna draw that same conclusion

00:55:20   and they're gonna see the stuff that Apple's pulling now

00:55:23   with the iOS 8 things and today widgets and stuff,

00:55:26   and they're gonna look at this new SDK we got

00:55:28   with the watch game and be like,

00:55:29   "Well, should I really spend the next three months

00:55:31   "developing a watch kit thing,

00:55:33   "or should I just wait and see how the market shakes out,

00:55:35   "because we're gonna see a whole bunch of app review BS

00:55:39   "next spring when this comes out.

00:55:41   "We're gonna see a lot of app review BS

00:55:42   "over the first few months."

00:55:44   - Yeah, but when the watch first comes out though,

00:55:46   there's the gold rush, like you said, with the iPad.

00:55:48   If you're one of the first apps available

00:55:50   does X on the watch, you get a massive,

00:55:53   a massive leg up on everybody else.

00:55:54   You always want to be there when a new device,

00:55:56   especially a new category of device,

00:55:58   like the iPad, like the iPhone.

00:56:00   So I don't think that's going to dissuade many people

00:56:03   who think they have a shot at being there on the launch.

00:56:05   - Maybe, but again, though, there's also,

00:56:07   there's not a whole lot you can do

00:56:09   with the WatchKit apps quite yet.

00:56:11   - It doesn't matter.

00:56:12   You can charge 99 cents for your app

00:56:14   that has watch integration and you get 99 cents

00:56:16   or 70, whatever, 69.9.

00:56:19   - Well, it's not really that cut and dry though, right?

00:56:21   Because you need to have a standalone app first

00:56:25   in order to have a WatchKit app.

00:56:26   And presumably many of the WatchKit apps

00:56:30   will be built upon standalone apps

00:56:32   that presumably you've already paid for

00:56:34   unless you pull a Tweety too.

00:56:36   I don't know, in any case,

00:56:37   let's talk about something else that's really cool.

00:56:39   - It's Backblaze.

00:56:40   We are sponsored once again by Backblaze,

00:56:42   our friends that are in the online backup business.

00:56:44   Now, let me tell you about online backup.

00:56:46   You need this, your family needs this,

00:56:48   everyone you know needs this.

00:56:49   Casey needs this, John needs this, everybody needs this.

00:56:53   Let me tell you, you need online backup.

00:56:54   It's amazing because there are so many catastrophes,

00:56:57   minor disasters, problems that can happen,

00:57:00   that can take out your data on your computer

00:57:02   and any drives that are physically connected to it

00:57:06   or any drives that are in your house with it.

00:57:09   Things like fires, floods, power surges, theft,

00:57:12   all sorts of problems that can happen

00:57:15   that would take out your data with it.

00:57:16   Even just like human error sometimes.

00:57:18   There's a lot of human error you can do.

00:57:20   If your backup is a RAID array, you're so screwed.

00:57:23   Remember, RAID is not a backup.

00:57:25   Anyway, so you want online backup, trust me.

00:57:29   When you go, if you're visiting your family

00:57:31   this holiday season, if you see your parent

00:57:34   or grandparent or sibling's computer without online backup,

00:57:38   give them the gift of installing backplays for them.

00:57:40   So online backup is really, really important.

00:57:44   To use John Gruber's words, if you don't have it,

00:57:45   you're nuts, you should really, really get online backup.

00:57:48   And Backblaze is by far the best one that I have tried.

00:57:52   And I used it long before they were a sponsor of the show.

00:57:55   I've been using it for years.

00:57:56   I tried two other ones recently

00:58:00   and was very disappointed in both of them

00:58:03   for my network drive needs.

00:58:05   Believe me, Backblaze is the one you want.

00:58:08   Backblaze is unlimited and unthrottled

00:58:11   and you get it for just five bucks a month.

00:58:13   So literally this unlimited disk space,

00:58:15   no matter how much you have.

00:58:16   To combine between me and Tiff,

00:58:17   I think we have something like six terabytes now

00:58:20   in Backblaze, it's a lot.

00:58:22   Unlimited disk space, five bucks per month per computer.

00:58:25   Backblaze is amazing, they have iOS and Android apps

00:58:28   to access and share all your backed up files

00:58:29   so you can access your files on the go,

00:58:32   you can do single file restores if you want,

00:58:34   if you're like on a laptop and you forgot a file at home

00:58:37   and you're on vacation somewhere,

00:58:38   you can get to your files that way.

00:58:40   Backblaze runs natively on your Mac,

00:58:42   it is not like a weird Java app or anything,

00:58:44   It's a native Mac OS X app founded by ex-Apple engineers.

00:58:48   Runs native on your Mac, runs native on Yosemite.

00:58:52   They're always up to date with new OS releases.

00:58:54   I've never had Backblaze break on me with an upgrade.

00:58:57   There's no add-ons, there's no gimmicks,

00:58:58   there's no extra charges.

00:58:59   Really, five bucks a month for unlimited, unthrottled,

00:59:02   fully native online backup for the Mac.

00:59:04   It really is the simplest online backup program to use.

00:59:08   Just install it and it does the rest.

00:59:09   So really, this holiday season,

00:59:11   go to your loved ones, install Backblaze.

00:59:13   Someday they will thank you for that.

00:59:15   Maybe not immediately.

00:59:16   They're gonna wonder what you're doing immediately.

00:59:18   Someday they will thank you for that.

00:59:19   Thanks a lot to Backblaze for sponsoring our show once again.

00:59:22   - All right, any other thoughts on the App Store stuff

00:59:25   before we move along?

00:59:26   - There's always, it's like follow up.

00:59:28   It's like there's always gonna be thoughts on the App Store.

00:59:30   Never ending pit of thoughts.

00:59:32   - My final thought I think is that

00:59:34   it's within Apple's power and they have done it before

00:59:38   to smooth over the worst of these misfires

00:59:41   by talking directly to the effective developers

00:59:44   until they're roughly satisfied.

00:59:46   And that is simultaneously the best and the worst thing

00:59:49   that can happen.

00:59:50   It's the best thing in that people come out of it happy.

00:59:54   We get the features we want.

00:59:56   Everyone comes to a compromise.

00:59:57   Everyone walks away satisfied.

00:59:58   It's the worst thing that could happen,

00:59:59   and then it doesn't address the structural problem, which

01:00:02   causes these bear attack flare-ups from App Review

01:00:05   and has for years and years.

01:00:06   So I don't know if we should just be hoping for a larger

01:00:09   crisis, which will become a Christ-tunity for us to, for, for Apple to actually fix

01:00:14   the problems that ail it, or we should be hoping for just for, you know, the, the bad

01:00:20   decisions to be reversed and to go back to the sleeping bear.

01:00:22   Yeah, we'll see. I mean, I don't know. It's just, it seems like such a silly problem to

01:00:27   have, but whatever. Speaking of silly problems to have, let's talk about time commitments.

01:00:35   And I wanted to talk about a couple things.

01:00:39   First is FastText is not for sale anymore.

01:00:42   What?

01:00:43   I pulled it today.

01:00:44   There goes your M3.

01:00:45   I know, right?

01:00:46   Tens of people a day are going to be disappointed by this.

01:00:48   Haha, that'd be a good day.

01:00:51   Now I pulled it for a handful of reasons, and there's a point here, but it's going

01:00:55   to take me a second to get there.

01:00:57   I pulled it because…

01:00:59   Aqua hire?

01:01:00   Yeah, that's totally it.

01:01:03   I pulled it because I feel like I'm kind of kidding myself in thinking that I'm going

01:01:12   to find the time to get it updated for iOS 7 and given that we're already months into

01:01:20   iOS 8, that's kind of getting ridiculous.

01:01:24   I'm getting to the point that I'm feeling guilty every time I do see a sales day of

01:01:28   more than zero, which is most days, although if it's more than five, I'm doing a happy

01:01:32   dance.

01:01:34   I'm feeling guilty about selling someone something that's so dated and knowing deep down in my

01:01:42   heart of hearts that the likelihood of me updating it is not good.

01:01:48   And as John Chigie assumed in the chat, I'm really getting over that being a joke now.

01:01:55   And to be honest, it deserves to be a joke.

01:01:57   It is kind of ridiculously funny, and it's absurd that we are on iOS 8 and I have not

01:02:02   yet updated for iOS 7.

01:02:05   But in the end of the day, it occurred to me that it's really serving no good purpose.

01:02:10   It served its purpose, which was for me to prove to myself that I could get something

01:02:14   in the App Store, and I did.

01:02:16   And I am still proud of that accomplishment, but I'm no longer really proud of the way

01:02:21   the app is today.

01:02:23   And it's a little better on my phone because I've updated most of the issues for iOS 7

01:02:28   and 8.

01:02:29   I still have a couple of lingering bugs that I haven't had time to look at.

01:02:32   But – and I was talking to Erin about it earlier today.

01:02:36   I don't – I can't imagine a time where I'm going to look at her – and now we're

01:02:40   getting a little into analog territory.

01:02:42   But I can't imagine a time where I'm going to look at her and say, "You know what?

01:02:45   Rather than spending time with you and Declan, let me go and hole myself up in the office

01:02:49   and fight with AutoLeo."

01:02:50   That is a bar that you can apply to almost anything else in life and decide that it's

01:02:55   something that you shouldn't do.

01:02:56   But anyway, why not just leave it there and have it be free?

01:02:59   I could, but then it's still going to be, "Oh, haha, you still haven't updated it yet."

01:03:05   And I'm just, I'm over that because it's true and ridiculous.

01:03:09   Like, I'm grumpy about it, I think, because I know it's true.

01:03:13   Like if it was like the "Who the hell is Casey?"

01:03:15   joke, I still find that kind of funny because it's hopefully not really true anymore.

01:03:20   And so I've gotten past it.

01:03:21   But--

01:03:22   You're more famous than us now.

01:03:23   I don't know about that.

01:03:24   But anyway, but in this case, it is true.

01:03:28   And that's just-- I'm feeling super guilty about it.

01:03:34   Have you done a lot of open source development or contributing to open source projects?

01:03:39   Not really.

01:03:40   I mean, I have Camel out on GitHub, which I actually wanted to talk about as well.

01:03:44   But in terms of contributing to like massive open source projects, I haven't.

01:03:49   because the couple times I have and Pigeon is an example which is the multi-protocol

01:03:55   IAM client or library if nothing else.

01:03:59   This is the library that runs ADM, ADM, whatever you call it on the Mac.

01:04:02   Is that the name of the library?

01:04:03   I thought it was LibPurple.

01:04:04   It was the AIM library and Pigeon is the client.

01:04:11   You are correct.

01:04:12   It's LibPurple and Pigeon is the client.

01:04:13   You're absolutely right.

01:04:14   Anyways, I looked into contributing to, I actually may not have even been LibPurple,

01:04:19   it might have been Adium, and I started looking at this code and went, "I have no idea what

01:04:25   the hell's going on here."

01:04:27   And I found that in a couple of open source projects I've briefly considered contributing

01:04:31   to, the code was so crazy complex that, and I feel like I'm pretty good at what I do,

01:04:38   But it was so esoteric and wild that I realized it was not even worth jumping in.

01:04:45   And so I have, in short, I haven't really contributed to any established open source

01:04:50   projects, no.

01:04:51   I bring that up because in this implied time commitments of open source projects, which

01:04:56   is the subheading here under this topic, what I was thinking of is my open source projects

01:05:03   that I started myself or published somewhere or contributed to that I did years and years

01:05:08   ago and most of them are all still out there and they are far worse off than fast text,

01:05:12   believe me.

01:05:13   They are far, far, like things that I haven't worked on in a decade or more and were never

01:05:20   very good because they're written by, you know, the much younger version of myself,

01:05:25   right?

01:05:26   And I mean before I even get into the time commitment things, like that there's code

01:05:30   out there with my name on it that's terrible, that I'm embarrassed by, but I don't pull

01:05:34   it because it's like, that's sort of part of the open source thing.

01:05:36   It's like, I write the source code, I put it up there, and it's free for anyone to grab

01:05:41   and use.

01:05:43   Am I working on it?

01:05:44   No.

01:05:45   Am I adding features?

01:05:46   No.

01:05:47   Am I fixing bugs?

01:05:48   That's a bigger discussion, but it's super low priority, but it would never occur to

01:05:53   me to take it down.

01:05:56   And maybe it's like Casey said, where he doesn't have enough distance from it either, like

01:06:00   who is Casey thing where it's not true,

01:06:02   or you feel that these complaints are founded.

01:06:06   If someone complained to me that one of my CPAN modules

01:06:09   is a piece of crap, I would agree with them,

01:06:11   as Casey seems to agree that FastX

01:06:13   is out of date at this point.

01:06:15   But it wouldn't drive me to pull it.

01:06:18   I would, like, I don't think I have,

01:06:22   I don't think there is an implied commitment for me

01:06:25   to continue to maintain for free this open source code

01:06:29   that I wrote in 1997, right?

01:06:31   I mean, although to be fair, the context is different of having an app in the App

01:06:34   Store versus having a CPAN module available.

01:06:37   But if it's free, if it's for charge--

01:06:39   I understand that, because you're charging people money,

01:06:40   you feel bad about that.

01:06:41   But if it's free, then it's exactly like the open source code in the sense

01:06:46   that, well, whatever, you get what you're paid for.

01:06:49   You didn't like it.

01:06:49   It was a crappy app.

01:06:50   Delete it from your phone.

01:06:51   You didn't pay a dime for it, right?

01:06:52   If you don't like the software, it looks great to you, and you download it,

01:06:55   delete it from your disk.

01:06:56   Fine.

01:06:57   It's the same type of thing.

01:06:59   And the reason in case he said he was pulling it is because he felt he felt bad or guilty when people would complain that

01:07:05   The app wasn't updated and it's like yeah, the app's not updated

01:07:07   I'm not doing fast text anymore, but fast text that I did do is there if it stops working on iOS

01:07:13   Then yeah, pull it or mark it as only working on the old diver like eventually it will age out if you don't modify it

01:07:18   Right unlike most open source software because Unix never changes like it'll it'll more or less continue to work

01:07:23   right, or if it doesn't people just stop complaining about it, but

01:07:27   Anyway, that's how I feel about my older projects is that I feel the same way as Casey does

01:07:32   Embarrassed by them embarrassed by they're not being not being updated

01:07:35   You know and and I feel the same way about future putting more time into it

01:07:40   Am I going to know because I have many other things that I'm doing with my time these days

01:07:43   But I but my decision given all of those things is not to pull it but just to leave it there

01:07:49   Festering I guess on the internet

01:07:51   No, I mean like I totally get this

01:07:54   I mean I went through some of the same things with bug shot

01:07:57   Bug shot does not work on the new iPhones for some reason and I I don't even know why I never really listen to

01:08:05   The I haven't I haven't spent five minutes on it. It could be a five minute fix. I don't know

01:08:09   the reason why it doesn't work is less important than the reason why I'm not working on it, which is that

01:08:15   It made no money like it basically no money. It made I think

01:08:21   dollars the vast majority of which was the very first month.

01:08:27   That's no money?

01:08:28   Oh, you're adorable.

01:08:29   No, well.

01:08:30   Well, you tell me how much money my CPAN modules.

01:08:31   Let me tell you how much money FastText has made.

01:08:33   I don't think I've…

01:08:35   But I win.

01:08:36   I win at zero dollars.

01:08:37   You do.

01:08:38   You do.

01:08:39   But I don't have the numbers in front of me, so I don't want to lie.

01:08:41   But I am extraordinarily confident it's less than a thousand dollars.

01:08:45   And I'm pretty confident it was at or less than 500.

01:08:50   over the course of, I think, four years

01:08:51   it's been in the store.

01:08:53   - Okay, well, regardless, I feel like a jerk,

01:08:56   but it made that amount of money up front,

01:09:00   and then it just stopped making money.

01:09:02   Like, it was down to, and I remember there was even

01:09:05   a brief time when we were comparing Bugshot

01:09:06   to Fasttech sales there, and they were fairly comparable.

01:09:09   So, like, it had a good month, and then it was over.

01:09:14   So, the fact is, it didn't work on iOS 8

01:09:17   on these new devices, and whether it's the OS

01:09:19   of the devices, I don't even know.

01:09:21   It wasn't even worth spending 15 minutes on

01:09:22   because if I'm going to make Bugshot continue as a product,

01:09:27   I would want to do a proper update to it for iOS 8,

01:09:31   which would mean full photo library integration

01:09:34   so that you could, for instance, annotate a screenshot

01:09:37   and then delete it from your camera roll,

01:09:39   which you can't do in the current version

01:09:40   'cause you couldn't do that with the old SDK.

01:09:41   Things like be an extension so that you could,

01:09:44   they have the photo editing extension type.

01:09:46   why isn't Bugshot a photo editing extension?

01:09:49   So I would want to do that to it.

01:09:51   I would want to make it a proper updated app

01:09:54   if I'm gonna keep it in the store and keep it working

01:09:56   and keep it running as a product.

01:09:58   And the fact is, it just doesn't make enough money,

01:10:01   it never made enough money to make that really worth doing.

01:10:04   And so when I look at how do I wanna spend this time,

01:10:09   which is what you were saying, which I'm getting back to,

01:10:11   when you look at do I wanna spend this evening of coding,

01:10:15   Fixing Bugshot, which should really be

01:10:18   at least a couple of weeks of coding

01:10:19   to really do what I would want with it.

01:10:21   So do I wanna spend the next two weeks of coding time

01:10:23   fixing Bugshot or improving Overcast,

01:10:27   which is making money and which is

01:10:29   seemingly a more deserving source of my time?

01:10:32   Or if I'm throwing around two weeks of coding time,

01:10:36   should I even try a whole different app,

01:10:37   maybe some crazy thing for the watch?

01:10:39   Should I try a whole new product

01:10:41   to give that a chance to succeed?

01:10:43   So I made the decision, it was not worth me putting

01:10:47   any more time into it, I didn't want to put

01:10:48   any more time into it because it simply wasn't interesting

01:10:51   and it wasn't going to pay off.

01:10:54   And the things I wanted to do with it

01:10:57   were never gonna be worth doing with it.

01:10:59   And so Casey, first of all, I feel like a jerk

01:11:02   for ever making fun of you now, but second of all--

01:11:05   - But it was deserved, well, deserved just maybe

01:11:08   of poor choice of words, but it was accurate.

01:11:11   - I mean, it wasn't meant to be insulting,

01:11:12   it was meant to be funny, you know.

01:11:13   So now I feel like a jerk and I'm sorry,

01:11:14   but I don't wanna make you feel bad,

01:11:16   but I totally understand what you're saying,

01:11:19   which is like, you can't foresee a time

01:11:22   where you're gonna choose to spend your time doing that

01:11:25   instead of anything else with your work or family.

01:11:28   And I get that, I totally get that.

01:11:30   Like, if that's your reason, I totally support it

01:11:33   because I've made those same kind of decisions

01:11:36   and I think you should be making those kind of decisions.

01:11:38   - Did you pull Bugshot or is it free?

01:11:41   - I pulled it.

01:11:42   I made it free a few months after I released it

01:11:45   when it was clear, maybe six months after I released it.

01:11:48   It became very clear after a while

01:11:49   it was making between zero and three sales a day,

01:11:53   even at a dollar.

01:11:54   It was doing very badly.

01:11:56   And so I eventually, I'm just like,

01:11:58   ah, screw it, I'll just make it free.

01:11:59   - So why did you pull it after it was free?

01:12:01   - It stopped working.

01:12:02   - Oh, well, so there you go.

01:12:04   Marco's strategy I endorse.

01:12:05   Make it free, when it stops working, pull it.

01:12:08   'Cause then you're basically,

01:12:09   you're not putting any more time into it.

01:12:10   But something like Bugshot,

01:12:11   Just because Marco's not interested in putting a time in,

01:12:13   it doesn't make it all of a sudden not a useful application,

01:12:15   especially for the poor, like someone was saying,

01:12:18   you know, this idea of when your app,

01:12:20   when you're not gonna put any more time in your apps,

01:12:22   leaving them on the store as free as bags

01:12:23   that clutters the store.

01:12:24   No, that's exactly the kind of clutter I want.

01:12:26   When I'm looking for an app and like,

01:12:28   I just want something quick and free,

01:12:30   I want it to be an app that a good developer has abandoned.

01:12:33   Maybe it's not the best app, maybe it's an iOS 6,

01:12:35   but it's not gonna be filled with ads.

01:12:36   It's actually gonna do something useful.

01:12:37   It's not gonna be filled with, you know,

01:12:39   spammy reviews that somebody paid for.

01:12:41   I would love to stumble upon Bugshot

01:12:43   as a free screenshot annotation app that I needed in a pinch,

01:12:46   then stumbling on the 8,000 other free apps,

01:12:48   which are probably not even screenshot apps at all,

01:12:50   but some kind of like secret portal to, you know,

01:12:54   some sort of online gambling thing or something, who knows?

01:12:58   So I would say that you should consider

01:13:03   putting Fast Text back as free

01:13:05   until it stops working and then pull it.

01:13:06   Don't put any more time into it if you don't want to,

01:13:08   but if someone is looking for an app

01:13:09   does what fast text does and they stumble upon fast text, it's not filled with that,

01:13:14   it's not filled with malware, they'll download it for free, it'll do what it does, if they

01:13:17   don't like it they'll delete it, fine.

01:13:19   I think you did put work into it, it does do something, it is functional, why not let

01:13:25   people benefit from it?

01:13:27   Even though you may feel bad about not updating or whatever, but I wouldn't spend time feeling

01:13:32   bad about that because you're just making a choice about what to do with your time.

01:13:35   So one of the reasons is I feel like it's calling attention to something that isn't

01:13:41   my best work, which I know you talked about with your CPAN modules, but I don't know.

01:13:48   As I've gotten older and as I've gotten to be some kind of internet persona, I take a

01:13:57   lot of pride in the things that I put out into the internet.

01:14:04   And while camel, for example, the blogging software that I wrote that powers caseylist.com,

01:14:10   it's not terribly great code, but it's not terribly bad code and it works.

01:14:16   And honestly, I'm pretty proud of my website and maybe some people read it, maybe they

01:14:21   don't, maybe some listeners will read it and be like, why is he proud of this?

01:14:25   And that's okay.

01:14:26   I mean, if you don't get it, that doesn't matter to me because I'm proud of it and I'm

01:14:29   not proud of fast text anymore.

01:14:31   And

01:14:32   But see, don't you think that's the way it should be?

01:14:33   Like I've always considered it a badge of honor, a desirable trait.

01:14:39   If you are a programmer, you should always look back at the code you wrote in the past

01:14:43   and think it's bad.

01:14:44   Because if you don't, that means you're not getting any better.

01:14:46   So if you look at the code you wrote last year, you should find problems with it now

01:14:49   that you didn't find then.

01:14:50   If you look at the code that you wrote five years ago, it should look disgusting.

01:14:54   If it was 10 years ago, it should look like nonsense and you can't even believe you were

01:14:58   the same person who wrote it.

01:14:59   That should be true for the life of a working programmer.

01:15:03   So the fact that you are no longer proud of FastTech as a product, as a pile of source

01:15:08   code, as a whatever, shows that you are making progress.

01:15:10   That if you were to make it now, you would do it better.

01:15:12   You would see things in it now that are more wrong or that could be done.

01:15:18   I don't think that should dissuade you.

01:15:20   And yes, it's not your best work.

01:15:21   Yes, it's bad that someone might Google your name and stumble across this thing and not

01:15:25   see the date on it.

01:15:26   And it's the same thing with the CPAN module.

01:15:28   Someone stumbles across my largest giant pile of public pro code and looks at it and it's

01:15:32   all crap and decide that I'm a crap programmer, that's like, I guess I'm willing to take that

01:15:38   risk that they don't see the dates and or whatever, especially since this is all other

01:15:41   topics we can get to and a bit of, especially since I am still actually maintaining that

01:15:46   code on like you're deciding not to maintain fast text, but I don't think you should feel

01:15:50   bad about just because you're not proud of it.

01:15:51   I think, I think all your applications, all your endeavors, you should look back on and

01:15:56   say that is no longer up to my standards.

01:16:01   And I do.

01:16:03   And I mean, I was, and here's the comedy of all this, how I know I made the right call

01:16:07   is I had like half an hour to fiddle around tonight.

01:16:10   And I ended up adding a feature to camel rather than futzing with fast text.

01:16:16   And so that's how I knew that I probably made the right call.

01:16:19   But I agree with you.

01:16:22   And and even as I was looking at camel earlier tonight, I looked at it and thought, Oh, God,

01:16:27   I should really refactor like half of this.

01:16:29   But I feel like with fast text, it's sort of advertising that I'm not good at what I'm

01:16:40   sort of supposed to be good at to be a part of this show.

01:16:43   Same thing as my C-band modules.

01:16:44   What Perl code of mine can you see?

01:16:46   You can see old code that's bad.

01:16:48   What code can't you see?

01:16:49   All the code I write for my employers.

01:16:51   I think it's a little different.

01:16:54   To me, I find it a little different though because your Perl code does not directly relate

01:16:59   to the things that you're known for on the internet.

01:17:01   It's not like you're, I mean, the best analogy

01:17:04   I can think of is like old crappy system seven reviews

01:17:08   that are still out on, which I know you never wrote,

01:17:09   but just hypothetically that you.

01:17:11   - Well, if you wanna go for that,

01:17:13   my old OS X reviews are terrible.

01:17:15   The writing is terrible.

01:17:16   I cannot even look at them.

01:17:18   I've said this before and I don't know why

01:17:21   I'm the only person on the internet pointing this out

01:17:22   because it's the worst thing I've ever said

01:17:24   but people won't seem to notice.

01:17:26   I use smileys in some of them.

01:17:28   colon close parentheses in the middle of the text do you understand that that's

01:17:35   and that's what I'm known for there's always ten reviews and they're out there

01:17:38   and the writing is terrible the content is terrible it's just I don't even want

01:17:44   to think about it but am I gonna pull those reviews no you can release special

01:17:47   editions that have all the crap removed it a much new crap added people keep

01:17:51   asking for you know a collection of them and I'm like that would mean that I

01:17:55   I would have to make hard decisions about, you know, I was like, oh, George Lucas special

01:17:59   edition.

01:18:00   Do I take out the smileys?

01:18:01   Like what order on the line?

01:18:03   Clean up the matte lines and the dust and scratches.

01:18:07   The smileys count as matte lines.

01:18:08   I think so.

01:18:09   Goodness.

01:18:10   So I mean, I understand your point.

01:18:13   To me, it just seems different probably because it's me and not you.

01:18:18   So I just look at it differently.

01:18:20   But I understand your point about making it free.

01:18:23   And that's actually something I hadn't really thought about.

01:18:26   And maybe I'll do that, maybe I won't, I don't know.

01:18:29   But I feel like it calls attention to something.

01:18:34   I guess what I'm trying to say is the CPAN modules you have to kind of seek out, whereas

01:18:40   I think if I were a random person looking to figure out who the three of us are, for

01:18:47   you they would find your OS X reviews, which granted the older ones may not be great, but

01:18:51   The newer ones are just freaking phenomenal.

01:18:54   And for Marco, they'll find a laundry list of successful applications and projects.

01:18:59   And Business Insider blog posts.

01:19:02   Well there's that too.

01:19:04   But for me, I don't want someone to stumble upon fast text and judge me based on that.

01:19:11   And I guess in summary, maybe it's just plain pride.

01:19:14   But I don't know, I just felt like the right answer was to pull it.

01:19:17   I got bad news for you, Casey.

01:19:20   In several years you're going to say the same thing about the podcast we're recording right

01:19:24   now.

01:19:25   And it will be the thing you're known for most widely in the internet.

01:19:29   That's very true.

01:19:30   That's very true.

01:19:31   I mean, I feel like this is true of everything.

01:19:34   If you're getting better at things, which most of us do continue to get better things

01:19:37   as we get older, especially things not having to do with physicality, you will look back

01:19:44   on what you've done previously, even if it's the thing you're most known for, and think

01:19:49   it is not up to your standards and that you could do better now or find things wrong with

01:19:52   it that you didn't find wrong with it now.

01:19:54   I think you should be proud of FastX.

01:19:55   If I had an app on the App Store, I would leave it there until it broke.

01:19:58   I think making it go free is entirely understandable, but I would definitely leave it out there

01:20:06   just to sort of like prove to the world that, like you said, I did make an iOS app once

01:20:11   and it does work and it did do things and here it is.

01:20:14   And maybe you just change how you refer to it on sort of your online resume.

01:20:17   in the same way you say like in my little section on my website, like retired podcasts,

01:20:22   podcasts that I'm no longer doing, right?

01:20:23   I don't know.

01:20:24   I don't think you should feel as bad as you do, but you know, you got to do what you got

01:20:29   to do.

01:20:30   I also think you should put feet on the icon, put it back in for a day and then pull it.

01:20:34   Do you want me to sell it for you?

01:20:36   Fast tax?

01:20:37   Yeah, sure.

01:20:38   If you can get me more than 20 bucks.

01:20:39   Sell it to Marco.

01:20:40   We need a reversal here.

01:20:41   I mean, he needs to buy something instead of selling it.

01:20:43   Yeah, right.

01:20:44   - Well, why don't you tell us Marco about something

01:20:46   that's awesome and then I'd like to talk a little bit

01:20:49   about like what John was referring to earlier,

01:20:52   which is the implied time commitment

01:20:54   of open source projects,

01:20:56   which is a kind of different animal.

01:20:58   - We are sponsored finally this week

01:21:00   by our friends at Igloo.

01:21:01   Igloo is an intranet you will actually like.

01:21:04   It's built with easy to use apps like shared calendars,

01:21:06   Twitter like micro blogs, file sharing,

01:21:08   task management and more.

01:21:10   Igloo is everything you need to work better together

01:21:12   in one very configurable cloud platform.

01:21:15   Go to igloosoftware.com/atp to sign up.

01:21:19   It's free for up to 10 people

01:21:21   and very reasonably priced after that.

01:21:22   It's incredible.

01:21:23   If you need an intranet for a group of 10 people or fewer,

01:21:26   just go do it, it's free forever.

01:21:27   Fantastic.

01:21:28   igloosoftware.com/atp.

01:21:30   With igloos responsive design,

01:21:33   your intranet already works like a champ

01:21:34   on virtually any device, iOS, Android, even Blackberry.

01:21:38   You can review a document, post a project update,

01:21:40   or change to mid settings all right from your phone.

01:21:43   Plus, when you design your igloo,

01:21:44   any change you make to the look and feel

01:21:46   carries across all the devices,

01:21:47   'cause all the designs are responsive

01:21:49   and customizable to you.

01:21:50   In fact, their file preview engine

01:21:52   is also fully HTML5 compatible,

01:21:54   so if one of your coworkers uploads a proposal

01:21:56   or a JavaScript file or a document,

01:21:58   you can preview that inline, add comments,

01:22:00   upload new versions, or assign action items

01:22:03   all right from your phone,

01:22:04   even if it doesn't support Flash or Java

01:22:06   or anything like that, 'cause it's all HTML5.

01:22:09   So Igloo was recently featured in the Gartner Magic Quadrant.

01:22:13   If you're a business, you know what this means.

01:22:15   If you're a customer, this might sound like gibberish,

01:22:18   but trust me, it's good.

01:22:20   Gartner's famous Magic Quadrant

01:22:22   for social software included Igloo.

01:22:24   They appear for the sixth consecutive year

01:22:26   alongside tech giants like Microsoft, IBM,

01:22:28   Google, VMware, Salesforce.com, and SAP.

01:22:31   In a report that values the viability of the vendor,

01:22:34   Igloo is praised for their responsiveness

01:22:36   and customer experience.

01:22:38   If your company has a legacy intranet built on SharePoint,

01:22:41   your own portal technology,

01:22:42   you definitely should give Igloo a try.

01:22:43   They're really cool, fantastic intranet,

01:22:46   really an intranet you will actually like.

01:22:47   And anybody who's ever had to use a corporate intranet

01:22:50   before, that's a pretty bold statement.

01:22:51   And they follow through with it.

01:22:53   It's really great.

01:22:54   So check out Igloo, go to igloosoftware.com/atp

01:22:58   to sign up.

01:22:59   And it's free to use with up to 10 people

01:23:01   and very reasonably priced after that.

01:23:03   Really free for up to 10 people.

01:23:05   You might as well do it.

01:23:05   There's no downside.

01:23:06   Go try it.

01:23:08   Free for up to 10 people.

01:23:08   Go to igloosoftware.com/atp.

01:23:11   Thanks a lot.

01:23:12   - So the other thing I wanted to talk about

01:23:15   is the implied time commitments of open source software.

01:23:20   And I first became affected by this

01:23:25   when I open sourced Camel,

01:23:27   which again is the Node.js based blogging platform

01:23:31   that I use to power my website.

01:23:33   And I got enough attention from it

01:23:36   that a handful of people had forked it

01:23:39   and had issued poll requests

01:23:43   and or made various comments on GitHub.

01:23:45   And I noticed that a lot of times

01:23:50   I just didn't have the time

01:23:53   to handle these in a timely manner.

01:23:55   And apparently I'm trying to squeeze the word time

01:23:57   into the sentence 34 times.

01:23:59   Anyway, I see what I did there, meow.

01:24:02   So anyhow, occasionally there were instances

01:24:07   where people would issue a poll request,

01:24:09   wait a day or two, and then poll or rescind the poll request

01:24:14   saying, "Oh, I guess you didn't like this."

01:24:16   - Those people are jerks.

01:24:17   - Well, kinda, yeah.

01:24:19   But nevertheless, at the same time, I feel, or felt,

01:24:24   especially when there was a little more activity

01:24:26   a couple months back, a few months back,

01:24:28   I felt this overwhelming burden put on me

01:24:32   to get through these pull requests in a timely manner.

01:24:37   And I probably shouldn't have,

01:24:39   and this comes back to what John was saying earlier,

01:24:42   but nevertheless, I felt huge amounts of guilt

01:24:45   and this burden because I wasn't getting

01:24:47   through these pull requests quickly enough.

01:24:50   And it was something I totally did not expect.

01:24:53   And it's a wonderful, wonderful thing

01:24:56   in that people care enough to be issuing these pull requests.

01:25:00   But at the same time, I was not prepared for it.

01:25:01   I kind of thought in my head that I was going to just throw it out into the internet and

01:25:08   then kind of walk away and never look back.

01:25:10   And turns out that's not really the case.

01:25:13   Yeah, so the thing that I'm struggling with is similar only over a longer timeline.

01:25:18   And now you can tell me what you think I should do about this.

01:25:22   So I've got these C-band modules out there.

01:25:24   Most of them nobody uses anymore, which is kind of the ideal that Casey was looking for.

01:25:27   You throw it out there and no one looks at it again.

01:25:32   And I have something like my first one actually

01:25:35   from the 90s, probably doesn't even work anymore.

01:25:37   But no one downloads it, so nobody knows that, so it's fine.

01:25:40   But I do have a couple that people are still using.

01:25:43   And what you did back in the day,

01:25:44   and what you probably still do today,

01:25:45   when you had a CPAIM module that became popular,

01:25:48   is you made a website for it,

01:25:49   you hosted the source code somewhere

01:25:50   where you had a bug tracker,

01:25:53   you put it in version control,

01:25:55   you gave out commit bits to the repository

01:25:56   for people who you wanted to contribute to the project.

01:25:58   You started a mailing list and like, you just,

01:26:00   you built up this ecosystem around it.

01:26:03   - Pre GitHub.

01:26:04   - Yeah.

01:26:05   - Yeah, well, this is, this is, yeah, way before GitHub.

01:26:06   Like this was before SourceForge.

01:26:08   Like when SourceForge came, it was like, wow,

01:26:09   this whole website does all this stuff for you.

01:26:11   So one of the actual time commitments

01:26:16   of having an open source project like this

01:26:18   is that I have had to move those things

01:26:22   to new places when the old places go away

01:26:24   become crappy like SourceForge has. All right, so I move from SourceForge to Google Code.

01:26:29   I'll probably move from Google Code to GitHub. Move version control from CVS to subversion. Now

01:26:34   I'm starting to show my age here. I should probably move from subversion to Git, which

01:26:41   I probably will do eventually. And those are things it's like, at the time you have those decisions,

01:26:47   it's like, well, I could just leave it there forever, but maybe the mailing list broke,

01:26:51   or maybe something's not working, or maybe nobody uses CVS anymore.

01:26:54   So do I not put any more time in and just, you know, like remove it from the internet or just

01:27:01   like let it die? Or do I put in the day or two to move these things? And historically I've decided

01:27:07   that it's worth putting in the time to do these conversions and to move the stuff around

01:27:12   or whatever. And the second part of it is, so you've got this, especially with like the mailing

01:27:16   list, you've got a mailing list that's kind of like an implicit support channel where people

01:27:20   will post questions and the man was so low volume that the only person on the

01:27:24   man was who can answer them is me and over the course of a decade literally

01:27:28   this is manilis there which is degenerated to I give free support for a

01:27:33   module that I haven't worked on in years right so people ask a question and

01:27:37   literally the only person who answer is me and do I should I spend time

01:27:42   answering these people they're not my customers they're not giving any money

01:27:45   do I have any commitment to help these people with their programming problems

01:27:48   which often have nothing to do with my module.

01:27:51   Not really.

01:27:52   And so I struggle with the guilt of like,

01:27:54   do I just not answer anyone's questions anymore

01:27:56   and that's how this mailing list dies?

01:27:57   Do I shut down the mailing list?

01:27:59   Or do I spend the five minutes to answer a question?

01:28:02   And then the final thing, which Casey was getting to,

01:28:04   is the equivalent in the Google code world,

01:28:07   using Subversion and Google code instead of Git and GitHub,

01:28:10   of pull requests and bug reports.

01:28:12   Someone reports a bug.

01:28:13   Someone reports a bug and provides a patch.

01:28:15   Someone makes a feature request.

01:28:17   Feature requests, I'm pretty OK with just ignoring

01:28:19   at this point.

01:28:20   It's like, well, yeah, if you want, then implement it.

01:28:22   But then what if they go off and implement it?

01:28:24   If they implement it and send me a patch,

01:28:26   then I have to get with, like, Casey, where it's like, well,

01:28:29   I probably wouldn't add that feature myself.

01:28:31   Or maybe I would add it, but I would

01:28:32   do it in a different way.

01:28:34   And the same thing with bug fixes.

01:28:36   They send a patch with a bug fix and a test and everything

01:28:40   else and documentation.

01:28:41   And it's like, it just always takes some time

01:28:43   to clean those things up, put them in, test them,

01:28:45   cut a new release, so on and so forth.

01:28:46   And my decision so far has been,

01:28:48   I will incorporate bug fixes.

01:28:50   If you report a bug that's reproducible

01:28:52   and you have a test case,

01:28:53   I will fix that bug to figure out what it takes to fix it.

01:28:56   So I won't add features for the most part,

01:29:00   unless you send a feature tied up in a little bow,

01:29:02   I'll spend the, you know, 15 minutes,

01:29:04   half an hour, an hour to get it integrated.

01:29:06   Or for a module that I myself don't use anymore,

01:29:09   that is terrible and that no one should really use,

01:29:11   that, you know, that is really old,

01:29:13   that has source code that I can barely look at anymore.

01:29:17   But I mean, I don't know what's driving me

01:29:20   to put any time into it, and yet I am.

01:29:22   And so I almost feel like that I'm like a slave

01:29:25   to the lingering popularity of a once popular set

01:29:30   of Perl modules that I just, I don't know how to,

01:29:34   like sometimes I find myself thinking

01:29:36   when I get a message in the email list

01:29:38   and someone makes some demand or whatever,

01:29:39   I'm like, why don't you just implement it yourself?

01:29:41   Like if you're so hot and bothered to do this,

01:29:43   like, you know, I'd be like,

01:29:45   "Why should I answer this question for you?

01:29:47   "Why should I fix this?"

01:29:48   But you get resentful.

01:29:49   Like it's not their fault.

01:29:50   Like I don't act on these instincts,

01:29:52   but you feel like, and I'm your free servant, why?

01:29:56   Like it's like a stack overflow of one.

01:29:58   Like it's stack overflow,

01:29:59   but I'm the only person giving the answers, right?

01:30:01   And like I said, a lot of the time it's, you know,

01:30:04   it's from either something simple

01:30:05   where they don't understand something

01:30:06   basically about programming

01:30:07   or like the insanely most complex thing.

01:30:09   I've got this and that and the other thing,

01:30:11   and they're all tied together like this,

01:30:12   and I'm doing this and that and that,

01:30:12   and I would like to be able to do this,

01:30:14   and you think of a way I can do this,

01:30:15   and it's like, are you kidding?

01:30:16   That's what I do for a job, I get paid to do that.

01:30:19   That is a very complicated problem

01:30:20   that we would have to have a whiteboard

01:30:21   and like days to sit down to figure out,

01:30:24   and it's like, oh, answer for free for me

01:30:25   on this mailing list.

01:30:27   So I'm in a bad situation with these things,

01:30:30   and I'm mostly dealing with it

01:30:32   by doing the minimal work necessary

01:30:34   to make myself not feel guilty,

01:30:35   which means actually fixing bugs,

01:30:36   because hey, people are using these things.

01:30:38   And if I don't want to fix bugs,

01:30:39   Like my final out is to hand off this module to someone who cares like, you know

01:30:43   It's the equivalent of Marco selling his stuff to someone who wants to continue the thing

01:30:47   Is there somebody who wants to take over a maintainer ship of this? Here you go go with it

01:30:52   And I won't do that because I still have some tiny bit of pride and like this was once a pretty good thing

01:30:56   I spent a long time implementing and writing tests and documentation and it still kind of works sort of and you know

01:31:03   I don't know. I just don't feel like I want to give it up because I don't know

01:31:08   So anyway, I don't know how to deal with that situation.

01:31:12   It's a constant source of guilt and potential time suckage.

01:31:15   - Now Marco, how have you dealt with FC model?

01:31:18   Because that's probably the most active

01:31:20   of anything we've described, I would guess.

01:31:22   - Well, recently, I mean, probably the most used thing

01:31:26   I've ever done is BugshotKit,

01:31:28   which I haven't touched in a long time.

01:31:30   And again, for many of the same reasons

01:31:32   that I haven't touched Bugshot.

01:31:34   In fact, much of Bugshot's code is in BugshotKit,

01:31:36   but it's mostly because I did it, it worked,

01:31:40   I used it for a while, I no longer use BugshotKit

01:31:43   in my own app, 'cause I just don't really need

01:31:45   that kind of integration of testing and stuff anymore,

01:31:48   and that's it, so I haven't touched it in a long time,

01:31:51   and it doesn't really need anything,

01:31:53   it generally works, and all the code is pretty simple,

01:31:56   and if you need it to do something,

01:31:57   you can just do it yourself in your own app.

01:31:59   I do occasionally get pull requests on BugshotKit.

01:32:02   If it's something really trivial that's an obvious,

01:32:06   minor improvement or minor bug fix, I'll just accept it.

01:32:09   If it's more than that, I'll usually just sit on it

01:32:11   and forget to do it for a month, and then eventually,

01:32:14   it'll become so ridiculously outdated that, you know,

01:32:17   there's no point in accepting it, kind of like old emails.

01:32:20   With FC model, it's different though.

01:32:22   So there really isn't a group of people out there

01:32:25   wandering around looking at like your open source library

01:32:28   that does some really specific thing

01:32:32   that they don't need to do,

01:32:33   or that does some really general thing

01:32:35   like your utility library.

01:32:37   Like I have my utility library open source

01:32:38   like so many people do.

01:32:40   Nobody uses it, nobody looks at it.

01:32:42   I get no pull requests on it.

01:32:44   Like it gets no activity because there's not a whole lot

01:32:47   of people looking around for your utility library.

01:32:49   (laughing)

01:32:51   So it just like there's not a lot of value to that

01:32:53   for most people.

01:32:54   To get pull requests, you know, they don't just come

01:32:57   from the pull request fairies, like they come from people

01:33:00   who are using your code, people who need the code

01:33:02   you've written, who value it, the code for which

01:33:05   there aren't a lot of alternatives,

01:33:06   or there aren't a lot of big, well-known alternatives,

01:33:10   and that they need to be modified in some way,

01:33:14   and then the percentage of those people

01:33:16   who actually go through with the modification,

01:33:18   or at least filing a bug report with you,

01:33:20   or asking you about it, rather than just ripping it out

01:33:22   and doing something else, or fixing it quietly themselves

01:33:25   and never submitting it back to you.

01:33:26   So for most projects, most open source projects,

01:33:29   the reason why you probably get no pull requests,

01:33:30   because just having open source something

01:33:33   doesn't inherently make it useful to enough people

01:33:38   that they will start using it

01:33:39   and submitting improvements to you.

01:33:41   I do completely agree with Jon

01:33:43   that it is kind of annoying though

01:33:45   when somebody submits a pull request

01:33:46   that is well-intentioned,

01:33:49   but either something that I wouldn't do

01:33:50   or something I would have done differently.

01:33:52   - Well, ignoring even pull requests,

01:33:53   what if someone sent you an email,

01:33:55   because you don't have a mailing list for FC model

01:33:57   or any of these things as far as I know,

01:33:58   sent you an email and said,

01:33:59   "Hey, I was using your whatever, your utility library,

01:34:01   "FC model, bug jacket, whatever, and I was trying to do X,

01:34:04   "and I couldn't quite figure out a way to do it.

01:34:05   "I tried to do this and it didn't quite work,

01:34:07   "and I thought maybe you could do that,

01:34:09   "but I'm not sure if I'm using your own.

01:34:10   "Can you help me?"

01:34:11   What would you do with that email?

01:34:13   - I wouldn't respond, probably,

01:34:14   unless it was a really quick response.

01:34:16   - You would not respond at all?

01:34:18   - I would treat it like any other support email.

01:34:19   I mean, I get so much email,

01:34:20   I can't spend like a half hour responding to that.

01:34:23   - Yeah, that's what I'm saying.

01:34:25   Like, that type of email, all right,

01:34:26   And imagine if you got like maybe three of those a week for a decade.

01:34:30   Like it starts to wear on you.

01:34:33   I just feel like like because you feel so bad.

01:34:36   Like I'm the king of ignoring people's emails, right?

01:34:40   I don't know about that.

01:34:40   But even I even I start to feel bad because it's like,

01:34:44   especially with programming questions.

01:34:46   And it happens on Twitter too.

01:34:49   It's like I could get the answer to this question often by at this point.

01:34:55   It might as well be someone else's code because I don't

01:34:57   remember it anymore.

01:34:58   Like, you could figure out-- you could--

01:34:59   the answer to the question could be,

01:35:01   you can't use my utility library to do that because it

01:35:02   doesn't work that way.

01:35:04   And then you feel like now you're

01:35:04   in a conversation with them.

01:35:05   They're going to be like, well, can you add that feature?

01:35:07   And then your only answer is like, no,

01:35:09   because I'm not spending time on that and I don't want it.

01:35:11   And then it's like, you just wasted--

01:35:12   you already wasted more time than you

01:35:14   wanted to spend on this.

01:35:15   And that's the best case, trying to get out as fast as possible.

01:35:18   The worst case is you don't know the answer,

01:35:20   and you'd have to investigate.

01:35:21   And you're like, why am I investigating this guy's

01:35:23   programming problem?

01:35:24   You know what I mean?

01:35:26   Just because you wrote FC model,

01:35:27   does that mean that there is implicit support contract

01:35:30   with everyone who tries to use FC model?

01:35:32   Do you have to provide them support?

01:35:33   - No.

01:35:34   - I don't think you do, but if you don't,

01:35:36   you end up looking like a jerk.

01:35:37   If you reply and say, sorry, this library is not supported.

01:35:40   They're gonna be like, I demand my money back.

01:35:42   What are they gonna say?

01:35:42   But they will think you're a jerk.

01:35:45   - FC model is actually a really good example

01:35:47   of everything working very, very well.

01:35:49   So the quick version is,

01:35:51   It's a very thin, lightweight model layer.

01:35:55   Instead of using something like Core Data,

01:35:57   it's basically sticking a very thin layer

01:35:59   around on top of SQLite, and you can do things

01:36:01   like the database would.

01:36:04   I use this because I'm a jerk, and I don't like Core Data,

01:36:06   and I like to write everything myself.

01:36:08   So I wrote this thing.

01:36:10   FC model has what appears to be very few users.

01:36:14   I would guess the number of people building apps

01:36:18   with it is probably less than 10.

01:36:20   It is a very small group of people.

01:36:23   But of those, like three or four of them

01:36:27   actually actively submit pull requests,

01:36:31   and they're actually really good.

01:36:32   And usually we'll discuss something,

01:36:34   like before a substantial change,

01:36:36   we'll discuss it in an issue, and then I'll write the fix,

01:36:38   'cause I'm a control freak.

01:36:40   But when people have submitted so many

01:36:42   little tiny bug fixes and little improvements here and there,

01:36:45   they're only a few lines long, and that's all great.

01:36:48   - But you still are supporting it then,

01:36:49   Because when someone says, hey, I was trying to do this thing

01:36:52   and it didn't work or it would be cool if it did this,

01:36:54   you are providing support because your support

01:36:56   is engaging in a discussion with them about the feature,

01:36:58   getting at the heart of what it is that they want,

01:37:00   and then you maintaining ownership by essentially saying,

01:37:03   well, this is how I would do it and this is what I would do

01:37:05   and then implementing that.

01:37:07   So it's a support function.

01:37:08   You're essentially implementing features at their request

01:37:11   maybe just not exactly the way they did

01:37:13   and talking to them and answering their questions about it.

01:37:15   - Well, I am, well, but if it's like a

01:37:17   how does this work question,

01:37:18   usually I don't answer those.

01:37:19   And sometimes somebody else will, which is really nice,

01:37:22   but I don't get a lot of those, 'cause again,

01:37:24   not a lot of people use this.

01:37:26   - And the people who use it know what they're doing,

01:37:27   like it's not a bunch of beginners flooding in

01:37:28   who like, I just started writing my first iOS app

01:37:31   and I stumbled across your thing,

01:37:32   can you tell me how to use it?

01:37:33   - Right, because they're not gonna be looking

01:37:35   for something like this, they're gonna be using Core Data,

01:37:37   'cause that's what all the tutorials use,

01:37:38   and that's fine, they shouldn't be using something

01:37:40   like this probably.

01:37:40   - And Core Data is much simpler than your module,

01:37:42   so it'll be fine.

01:37:43   - Right, so, yeah, right. (laughs)

01:37:47   What's great about this though is,

01:37:49   the reason why I'm engaged with it,

01:37:51   the reason why I react to the pull requests

01:37:54   and I improve it, is purely selfish.

01:37:57   It's because I use it in Overcast

01:37:59   and I will probably use it in any near future apps

01:38:02   that I would write as well.

01:38:03   Not that I'm starting anything,

01:38:04   this is not a product announcement,

01:38:05   just if I would start something new,

01:38:06   I'd probably use it again.

01:38:07   That's why I pay attention

01:38:10   because it's improving my app too.

01:38:13   And my needs for Overcast drive FC models development.

01:38:18   The bugs I run into, I fix an FC model, et cetera.

01:38:23   The performance issues I run into, I fix there,

01:38:25   everyone gets it.

01:38:26   - So this is the honeymoon period

01:38:27   when you're still using it for your own work.

01:38:28   I had several years of that too.

01:38:30   It was like my CPAN modules, for the most part,

01:38:32   were written for jobs I had at the time

01:38:35   so that I could write them, put them up,

01:38:36   and then get the benefits I was able to convince

01:38:39   the various people who I work for

01:38:40   that there is a benefit in open sourcing

01:38:42   this part of the product

01:38:43   because I will get usage from other people,

01:38:45   bug reports from other people,

01:38:46   and like, you know, the open source model.

01:38:48   And it worked for the years that the software was relevant,

01:38:51   but as it became less relevant and sort of aged out,

01:38:53   I stopped using it, other people stopped using it,

01:38:56   and now it's like in zombie form.

01:38:57   Right now, FC model is new, relevant,

01:38:59   extremely relevant in light of the various weird,

01:39:02   you know, iCloud Core data things that were going on, right?

01:39:04   And which motivated its existence.

01:39:06   And that, you know, so it's definitely in the period

01:39:10   where you are reaping the benefit of this being a module

01:39:14   that is, I mean, it's not widely used,

01:39:15   you use it like 10 active people,

01:39:17   but it's useful to you, even if you were the only user,

01:39:20   you would like to have it out there

01:39:21   just in case someone happens to stumble across it

01:39:24   and find some bug or whatever.

01:39:26   Even the talking to the bear thing,

01:39:29   where say nobody ever looks at the source code,

01:39:32   but the mere act of you publishing it,

01:39:33   like the mere act of you publishing a blog post

01:39:35   will suddenly cause you to find a typo that you didn't see

01:39:38   when you've been staring at it for the previous hour

01:39:39   when it was in your unpublished state.

01:39:42   - Oh yeah, I mean, FC model is probably the best code

01:39:46   in Overcast, by a long shot.

01:39:48   - And would you say that's because of the contributions?

01:39:50   - No, 'cause he had to show it to people,

01:39:52   so he had to clean it up to make it look not embarrassing.

01:39:54   - I mean, it's both.

01:39:55   I mean, one thing the contributions have really helped with

01:39:58   is the contributions will often be by very good

01:40:02   COCO programmers who have been around much longer

01:40:03   than I have at this, or are just better than me at it.

01:40:07   and they will use a convention

01:40:10   that I didn't even know existed.

01:40:12   Like instead of doing preprocessor defines

01:40:15   for string constants, they'll do the extern thing.

01:40:17   Or like using NSEnum instead of defining an enum

01:40:20   the old C way so that some autocomplete thing works better.

01:40:23   Like there's little things like that

01:40:25   that I pick up from the pull requests,

01:40:27   then I start doing that everywhere.

01:40:29   So it's like I'm working with a bunch of smart people

01:40:31   who are slowly and subtly improving my own skills

01:40:34   by showing me cool things I could do

01:40:35   that I didn't even realize I could do

01:40:36   or showing me better ways of doing things,

01:40:38   in various, you know, oftentimes in very small ways,

01:40:40   but over time that builds up.

01:40:42   I mean, FC model is really, like,

01:40:45   it is by far the only successful open source thing

01:40:48   I've ever done, and the most successful open source thing

01:40:51   I've ever done.

01:40:52   Everything else I've ever open sourced

01:40:53   has been really minimally benefited anybody, including me.

01:40:58   And you know, John, you're right,

01:41:00   FC model is in the honeymoon phase now,

01:41:01   'cause I'm using it.

01:41:02   I stopped using BugshotKit, and so BugshotKit is languishing,

01:41:05   and it will probably never get an update again.

01:41:08   If I ever stop using FC model,

01:41:10   the project will probably die at that point,

01:41:12   or somebody else can take it over if they want to,

01:41:13   but probably nobody would want to, and that would be it.

01:41:18   But right now I'm still using it,

01:41:20   and I suspect I'll be using it for a while.

01:41:23   So yeah, so right now I'm fine.

01:41:26   - Yeah, so I guess my way out is

01:41:27   I just have to get better at ignoring.

01:41:31   I don't know if I can ever ignore bug reports, though.

01:41:33   I can probably ignore questions, feature requests, stuff

01:41:39   like that.

01:41:39   Although that'll be sad, because people will-- I don't know.

01:41:43   It'll be sad.

01:41:44   But bug reports, how can I ignore them?

01:41:48   I can let them just pile up.

01:41:50   This bug, I just feel like I have to fix it.

01:41:53   Especially because it still works, though.

01:41:57   It's still working software.

01:41:59   It's a shame to let working software become unworking just

01:42:01   because of one minor thing. I don't know, I will probably just continue to limp along

01:42:06   with the stuff. Like, I keep hoping that people will lose interest entirely, but they don't.

01:42:10   People still sign up for the mailing list, and like, you know, I don't understand. I'm

01:42:17   conflicted.

01:42:19   Thanks a lot to our sponsors this week. Oscar, Backblaze, and Igloo, and we will see you

01:42:24   next week.

01:42:25   [MUSIC]

01:42:35   Oh it was accidental.

01:42:37   Accidental.

01:42:38   John didn't do any research.

01:42:40   Margo and Casey wouldn't let him.

01:42:43   Cause it was accidental.

01:42:45   Accidental.

01:42:46   Oh it was accidental.

01:42:47   Accidental.

01:42:48   And you can find the show notes at ATP.FM.

01:42:53   And if you're into Twitter, you can follow them at

01:42:59   C-A-S-E-Y-L-I-S-S, so that's Casey Liss, M-A-R-C-O-A-R-M,

01:43:07   Auntie Marco Arment, S-I-R-A-C, USA, Syracuse.

01:43:14   It's accidental.

01:43:16   It's accidental.

01:43:17   They didn't mean to.

01:43:20   Accidental.

01:43:21   Accidental.

01:43:22   Tech podcast so long.

01:43:27   So John, you got a PS4.

01:43:30   - Yeah, what did I get?

01:43:31   Last Week Sometime?

01:43:32   I knew I was going to get one eventually,

01:43:34   and I kept telling myself,

01:43:36   I will get one when there's a game that I wanna play,

01:43:38   and of course I would love for that game

01:43:39   to be Last Guardian,

01:43:40   but you know, I figured,

01:43:41   surely there'll be some other game

01:43:42   that I wanna play before that.

01:43:44   When The Last of Us Remastered came out,

01:43:46   I thought that might be the game,

01:43:47   but I had just very recently played

01:43:49   the non-remastered one, the PS3,

01:43:51   so that didn't make me buy a PS4.

01:43:53   And I don't know what made me buy one now.

01:43:54   I think it's kind of my tradition

01:43:56   pre-Christmas present to myself that I give myself before Christmas so I don't have to wait for Christmas so I can play with it in the vacation before Christmas.

01:44:04   That's a long title, but that has become a tradition in my family that I buy myself something that I wanted and give it to myself before Christmas morning so I can play with it while I'm on vacation.

01:44:15   And so the PS4 fit the bill for that because I was going to get one anyway.

01:44:20   But I didn't really know what kind of games I was going to get for it, and so I just got a mix of

01:44:25   Download a lot of downloadable tiles because I didn't want to bother getting discs shipped to me or whatever

01:44:29   And and I still think that they load faster off the hard drive

01:44:33   I don't if that's not true. Please don't tell me because I like to keep my illusions, but

01:44:36   Uh, yeah, I you know, so I downloaded a bunch of stuff

01:44:40   And what am I playing? I'm not playing anything all that exciting. I got destiny. My son is already addicted to that

01:44:46   Destiny is exactly what I thought it would be. It's fine

01:44:49   The controller just destroys my hands playing Destiny, the analog sticks are still in the

01:44:54   wrong spot, you gotta use all four triggers at the same time, it is an ergonomic nightmare

01:44:58   for me.

01:44:59   I really need to limit my time playing the game, which is a shame because I find it fun.

01:45:02   I think Destiny is pretty well done.

01:45:03   I don't know why I got such terrible reviews, I guess people have higher expectations, but

01:45:07   I consider it more of a long-term investment and my son is really enjoying it, so when

01:45:11   I saw reviews like 6.5 out of 10 for Destiny, maybe it was buggier on launch, maybe just

01:45:16   people have higher expectations, but it fully satisfies everything that I thought it would

01:45:20   be.

01:45:21   It's not really my type of game, but anyway.

01:45:24   But what mostly is annoying about the PS4 is, and I knew this going in, is that it is

01:45:31   not going to be a drop-in replacement for my PS3 because Sony concentrated so heavily

01:45:36   on the game features that they're seemingly like obstinately opposed to doing media center

01:45:44   type stuff, like they don't sell a Bluetooth like remote for it, not you know like a remote

01:45:50   remote that looks like a TV remote.

01:45:53   So you have to use the game, if you want to use it as your own Blu-ray player, like my

01:45:58   PS3 has always been my Blu-ray player, if you want to use your PS4 as your Blu-ray player,

01:46:02   you have to use the controller and that is ridiculous.

01:46:04   I'm not going to have the controller sitting there on the end table so I can control, it's

01:46:07   just, I just won't do that.

01:46:09   There are third-party remotes that you can buy but all of them had temporal views and

01:46:13   a lot of them use an IR interface connected to the USB thing and it's like, "Sony, can

01:46:17   you just make a remote? Like, charge some stupid ridiculous amount for it. I'll buy

01:46:21   it. I just want a remote."

01:46:22   They used to, didn't they? For the PS3?

01:46:24   Yeah, the PS3 has a Bluetooth remote that works with the PS3. I'm pretty sure it doesn't

01:46:28   work with the PS4. If it does work with the PS4, someone in the chat room, tell me and

01:46:32   I will...

01:46:33   I control my PS3 with the Logitech Harmony thing because that has a Bluetooth interface

01:46:37   and that can do it and it works great.

01:46:39   Yeah, if I can find if anyone knows they want to send feedback to show a Bluetooth remote that works with the ps4 natively without

01:46:45   Any weird drivers and that works well, that's fine

01:46:48   And as someone in the chair, I'm just pointing out my very next point

01:46:50   No, DLNA support for you know streaming video off all the various houses devices in my house that can do that

01:46:56   And so, you know forget about like having a Plex app or anything like that

01:47:01   Just the basic media center type stuff. It can play blu-rays

01:47:05   You can play blu-ray movies on it, and I bet it's a pretty okay blu-ray player although when I was researching this

01:47:10   I saw a lot of people complaining with the very first version of the ps4 software

01:47:13   But the blu-ray player wasn't even as good as the ps3 one so I still have my ps3 attached

01:47:18   I still use it as my blu-ray player

01:47:20   I don't really use it for DLNA that much as my TV does it now natively so I don't want to turn them on the

01:47:24   ps3 if I don't have to but

01:47:26   Depending on where video comes from and what format it's in sometimes

01:47:31   I have to use PS3 media server. Sometimes I have to use the PS3 to stream for someplace else. Sometimes I can stream for my TV.

01:47:37   But I get a lot of things attached to my TV now.

01:47:41   Like if I can't get rid of my PS3 when I get rid of my PS4 and I can't get rid of my Wii

01:47:46   when I get my Wii U because the Wii still plays GameCube games as GameCube connectors. Like I

01:47:49   got five game consoles to take into my TV plus Apple TV, you know, plus TiVo plus I'm running at inputs here.

01:47:57   So, as I really hope that the media center type capabilities of the PS4 get better, but

01:48:04   right now it's disappointing to me that I can't make a clean upgrade.

01:48:07   It's also disappointing that the shape of the PS4, if you put a PS3 on top of the PS4

01:48:12   it doesn't look right to me, it looks like the front of the PS4 is all slanty and it

01:48:17   doesn't make a pleasing shape.

01:48:18   And of course you can't put the PS4 on top of the PS3 because it's curved like a George

01:48:21   Foreman grill so it'll skitter off.

01:48:24   And the PS4 doesn't have feet on the bottom, it has these three little rubber curve things

01:48:29   in a kind of a tripod that elevate the PS4 barely off the surface, but because the air

01:48:34   and the air intakes are not on the bottom.

01:48:37   So you could have the thing flush, but if you put it on top of another piece of AV equipment,

01:48:40   it will be blocking the holes more or less on the thing that it's on top of.

01:48:43   So I had to buy some clear rubber feet to elevate it to let air get to the devices underneath

01:48:46   it.

01:48:47   Oh, and I'm out of ethernet ports by the TV, so I had to buy a new switch, and it's just,

01:48:53   You know, at least I'm not out of plugs in the power strip yet, but I'm getting close.

01:48:56   Do you have a thing with missing feet?

01:48:59   I was just about to say that, get out of my head.

01:49:01   What, missing feet?

01:49:02   What do you mean?

01:49:03   Fast text icon, dude.

01:49:04   Oh, yeah.

01:49:05   All right, fine.

01:49:06   Yeah, so anyway, the controller is an improvement over the PS3 one, but the button layout is

01:49:11   still wrong.

01:49:12   The sticks are still in the wrong spot.

01:49:14   The triggers are better, but not that much better.

01:49:18   And those controllers are expensive, like 50 bucks each.

01:49:20   Oh, and the touchpad thing that they added is not a good touchpad, but it does make text

01:49:25   input slightly less painful because you can use the touchpad to move the little cursor

01:49:29   around onto the key things.

01:49:31   Would you ever consider stacking the PS4 with a non-Sony system to make it stack better

01:49:38   with your step?

01:49:39   Or does it have to be stacked with the PS3?

01:49:40   No, I would stack it with anything that I could stack with, but you've seen my setup

01:49:44   there's not a lot of room in that little shelf there.

01:49:45   There's only two possible places it can go, under the PS3 or on top of my receiver.

01:49:49   under the ps3 it looked weird and on top of my receivers where it is now, but

01:49:53   I get some feet to elevate it up second question

01:49:56   Would you consider daisy chaining two receivers to get like seven more HDMI inputs? No, I don't daisy chain them

01:50:03   You can just get a switching box

01:50:04   So the switching box are terrible is why I got that I got this this receiver because I was trying to find a balance of

01:50:09   I would have got the Sony receiver that had 10 HDMI inputs

01:50:12   but all there's just this huge threat of horror stories about it blanking out and having all sorts of problems so like I

01:50:19   I should link to that thread, it's gone off for like 40 pages of people complaining to Sony and them trying to fix it.

01:50:23   Anyway, I'm glad I didn't get that one.

01:50:25   So I got this one that had all the features that I wanted and had six HDMI ports, but one of them is on the front.

01:50:30   Ah, my TV has what, four or three? Like I still have options.

01:50:34   Like I try to connect the consoles directly to the TV to reduce input lag.

01:50:37   So I have, I still have enough options for the devices I have. I'm not out of ports.

01:50:41   Like I'm close to being out of ports on the receiver,

01:50:44   But I can connect both of the console both of the console the current gen consoles well the ps4 and the Wii U

01:50:50   Directly to the TV and the Wii is to connect directly TV for input lag reasons, so I'm not really out of forts, but

01:50:56   Next generation of consoles are gonna have to make some hard decisions about what to do because I won't be getting into TV by then

01:51:03   If I can help it. Yeah, but that's probably gonna be how many years away though. It's probably a while off right? Yeah

01:51:07   I know I was I was pleasantly surprised by the general speediness and UI of like that

01:51:13   I mean, I think the ps3 UI is I mean, it's not good, but it's it's understandable and the ps4 UI is a

01:51:19   Mild evolution of that. It looks a little bit more spammy and in my face, but it's fast. It works got on my Wi-Fi nicely

01:51:28   Could use the LAN port like I didn't have any weird problems with anything. It pretty much just worked download speeds were reasonable

01:51:36   You know downloading stuff from the store work fine

01:51:38   I guess like it is much better at this stage in its life than the ps3 was at this stage is like I can tell

01:51:43   you that

01:51:45   So I still endorse it over the Xbox one as a game system and not just because I have latent Microsoft tape but also because it

01:51:53   And I and for the people the doubters in the chat room I still believe last guardian will ship I still believe can't stop me

01:52:01   [BLANK_AUDIO]