Better Late Than Wrong
Casey:
Busy day?
Casey:
I've said on probably this show, and definitely on Analog, that I always thought it was horseshit that you never replied to any emails ever.
Casey:
Then I started recording podcasts with you, and I realized, oh my god, that's why Marco never replies to anything, because this email, it's nonstop.
Casey:
Mm-hmm.
Casey:
Well, then I decided, you know what would be a smart idea?
Casey:
Let's release an app where it can send you email if the user has feedback.
Casey:
There's a brilliant plan.
Casey:
Oh, my God.
Casey:
I am inundated.
Casey:
I am absolutely inundated, which I am complaining, but I'm not really complaining because that's a good sign.
Marco:
Yeah, like you're inundated for a good reason, but it still doesn't make the problem any easier to deal with.
Marco:
Exactly.
Casey:
so much worse it's so much worse now do you want to hear my ideas for new features casey or have you heard a few of them already we should save that for the show but oh my god what did you bring on your graycation uh computer wise you didn't bring your iMac did you uh no because i mean i was just there for a few days i just brought the 13 inch macbook pro from last year and no external display of any sort i thought about that like and when i go for the whole summer i am probably going to bring my iMac pro again
Casey:
With your snazzy carrying case?
Marco:
Yeah, I might as well use it.
Marco:
Why not?
Marco:
Right now it's holding my mediocre LG 5K in my basement, which also fits it because it's the same size.
Marco:
But yeah, so I just brought the laptop and just worked on that.
Marco:
I'm able to work on just the laptop for short spans, like a weekend trip.
Marco:
I just don't find it very comfortable to do that for a long time.
Marco:
And so if it's like a whole summer, it's not enough, both in screen space and in performance.
Marco:
there were so many times during just like the last couple days when I was like you know just building overcast and I was actually slamming into performance bottlenecks quite frequently which I this is the first time I've really done that with the 13 inch but like I was sitting there just like waiting for builds waiting for builds and I'm like damn I really miss six of my 10 cores right now so imagine if by your own design your portable machine is the 12 inch MacBook adorable and
Marco:
I was going to ask you about that because you said you were getting work done like when you were traveling with families.
Marco:
And that's your only laptop, right?
Casey:
Well, that in the MacBook Air that's been underwater six times.
Casey:
So no matter how you slice it, it's not a good sign.
Casey:
But yeah, I would say probably between a third and a half of vignette was written on my adorable.
Casey:
Like more than you would think and more than probably was necessary.
Casey:
But here we are.
Marco:
I mean, you know, that's sometimes like the times that you actually have time and the ability to focus are times when you're traveling or something.
Marco:
And so that's all you got.
Marco:
Like I wrote most of Instapaper on the train on the way to work.
Casey:
On that god awful air?
Marco:
No, not.
Marco:
Some of it was on the god awful air.
Marco:
Most of it was before that on my white plastic MacBook.
Casey:
Oh, I forgot that you had one of those as well.
Casey:
That was my first Mac, the Polybook, as I love to call it, which drives Stephen insane.
Marco:
Those were fantastic.
Marco:
I know they had problems with the palm rest yellowing, and mine did too, and that's fine.
Marco:
But with that one exception, which was honestly not that big of a problem, those were amazing machines.
Marco:
The amount of...
Marco:
performance and value and ubiquity and versatility those crammed into such a at the time small and affordable package it was unparalleled like it was such those were such amazing values
Casey:
No, I loved mine until the battery exploded.
Casey:
Not in the kaboom sense, but in the... The swelling.
Casey:
It got thicker than it should have.
Casey:
Yes, swell.
Casey:
That's what I'm looking for.
Casey:
Thank you.
Casey:
But I think I got a... Not a top case.
Casey:
I think I got a whole case replacement well out of warranty because it had cracked in a few spots, as the Polybooks love to do.
Casey:
And then I got a battery replacement well out of warranty because it had swelled.
Casey:
And last I heard, that Polybook is sitting in Stephen Hackett's collection.
Yeah.
Casey:
the exact one that you had like you he has yours yeah i sent it to him that's pretty cool steven's house is like a farm upstate for old hardware it is it really is oh that's so true anyway but how are you gentlemen things are good it's a it's a busy week let's go to the show yeah all right all right let's start with some follow-up uh let's talk about undo redo as quote interactive version control would you like to tell me about that john
John:
And this was what we're talking about.
John:
We're talking about kids learning version control in school or whatever.
John:
And I mentioned my habit of using undo and redo repeatedly to sort of rewind and fast forward dangerously in text files.
John:
And apparently this is such a common phenomenon that someone drew a comic strip about it.
John:
We'll put a link in the show notes.
John:
The comic strip only loses points for saying control Z and control Y instead of command because obviously it was written by PC users and not Mac users.
John:
But that's fine.
John:
Anyway, it's a funny comic and it's a funny thing that people do.
John:
And now I feel less alone in the world.
John:
I am glad for that.
Casey:
Now, this was a good comic and it did make me laugh.
Casey:
All right, Marco, tell me about your quest for quote-unquote preview for video.
Marco:
Yeah, so I talked last week.
Marco:
I kind of put out a request to the listeners like, hey, can anybody know of anything that's basically kind of like preview for video of being able to open a video file without making a project or an event or any project management file features like the way Final Cut and LumaFusion and stuff like that, the way they do that.
Marco:
Just open a video, perform basic edits like
Marco:
you know straightening rotation you know audio fixes stuff like that basic video edits and then just save it to a file without making any projects um so we got a number of responses uh on the mac side matthew schaffer recommended something called video loop and that's loop l-o-u-p-e that kind of loop like the looking tool uh so video loop it's 25 on the mac app store or direct and
Marco:
And I bought that and I'm using that and it's pretty good.
Marco:
There's also a few other options.
Marco:
Donovan Buchanan on iOS recommended Luma FX.
Marco:
So I mentioned Luma Fusion a minute ago because that is kind of like a final cut for iPad basically and it's actually very good if that's what you're looking for.
Marco:
And LumaFX is kind of like their light version.
Marco:
It's $3, and that is basically editing videos without projects.
Marco:
The only thing I hesitate on that one is that it's kind of old and hasn't been updated for the new iPads yet.
Marco:
It doesn't seem like it's maintained nearly as much as LumaFusion is, which is very, very good.
Marco:
So I'm not sure I would recommend LumaFX.
Marco:
And then also, if you have lower needs, if your needs are only about straightening videos, like if you have a Horizon that's a little bit crooked, you want to straighten it, if that's your only need, Jan Oslund recommended Perfect Horizon, which is an app for Mac and iOS, and it's only $4.
Marco:
Also on the Mac, a number of people recommended Telestream Switch+.
Marco:
But that is $200, and it's aimed much more at pro types of uses, and also doesn't appear to actually do the kind of edits that I want.
Marco:
It appears to be a pro tool for reviewing footage and stuff like that, and exporting different formats, but I'm not honestly sure why so many people recommended it, because it actually doesn't do what I want.
Marco:
So anyway, my pick out of all these on the Mac is definitely Video Loop.
Marco:
Pretty much exactly what I was looking for.
Marco:
We were sponsored this week by Apollo, a third-party app for Reddit.
Marco:
Go to ApolloApp.io slash ATP to see for yourself this awesome app.
Marco:
Now, you know, similar to how we in the know like to use third-party Twitter apps because they're better.
Marco:
Things like TweetBot, Twitterific, they're better than the official stuff.
Marco:
That's what Apollo is for Reddit, basically.
Marco:
Apollo is a third-party app for Reddit.
Marco:
It's an indie app.
Marco:
The developer cares a lot.
Marco:
They're a former Apple employee who worked for years to create a Reddit app that felt perfectly at home on iOS.
Marco:
This is not some kind of cross-platform thing, no material design mismatch with iOS, anything like that.
Marco:
This is a pure iOS app, takes full advantage of the platform, and is super fast, smooth, updated all the time.
Marco:
It's full of powerful features, too.
Marco:
Things like the jump bar, we're quickly jumping between subreddits.
Marco:
They have customizable gestures, color-coded comments, and so much more.
Marco:
And you don't have to take my word for it, because Mac Rumors, Daring Fireball, Mac Stories, and iMore, and so many more have all praised Apollo.
Marco:
And John Gruber, our friend, even said, you're nuts if you don't try it.
Marco:
And I got to say, I concur.
Marco:
It's really, really good.
Marco:
So Apollo is a free download.
Marco:
And then there's a pro version for a few bucks if you wanted to get a custom home screen icon or a bunch of other cool features.
Marco:
So our listeners can also get a free ATP-themed home screen icon by going to the About section, shaking the device,
Marco:
and entering ATP into the secret dialogue.
Marco:
It's actually a nice little Easter egg just for all of you out there.
Marco:
That's pretty awesome.
Marco:
So once again, go to the About section, shake your phone, and enter ATP in the secret dialogue that comes up.
Marco:
So check it out today at apolloapp.io slash ATP.
Marco:
Once again, that's apolloapp.io slash ATP.
Marco:
It is a fantastic app.
Marco:
Definitely go check out Apollo.
Marco:
If you use Reddit at all, or if you think you might want to use Reddit, go do it in Apollo.
Marco:
It's so much better than everything else out there.
Marco:
Gotta say, I love Apollo.
Marco:
I've heard wonderful things about it from everybody who's ever used it.
Marco:
So check it out today, apolloapp.io slash ATP.
Marco:
Thank you so much to Apollo for sponsoring our show.
Casey:
So... Big week?
Casey:
Big week.
Casey:
So remember, like, I don't know, a month or two ago when Marco and John said, hey, you know, you should really ship that app before WWDC.
Casey:
And then like a week or two ago, Mark Gurman and crew came out with a post that said, hey, guess what's included in iOS 13?
Casey:
You can update images for each other using iMessage and blah, blah, blah.
Casey:
And then Marco and John said...
Casey:
Dude, you've really got to ship that app before WWDC.
Casey:
Well, guess what has quietly been in the App Store since Sunday and is loudly, I don't know, been in the App Store since today, which is to say today was when I tried to do my big full press embargo.
Casey:
or at Full Press Press, if you will.
Casey:
Vignette, which is the name of my contact picture updating app, is out.
Casey:
It's in the App Store.
Casey:
It has been bought at least once.
Casey:
Of course, Apple hasn't told me how many times it's been bought yet because it's still today.
Casey:
But so far, so good.
Casey:
So I'm pretty darn pleased.
Casey:
I am still, like, twitching both out of excitement and stress.
Casey:
I still have been boinging off the walls all day and monitoring Twitter and email and everything else.
Casey:
But...
Casey:
By and large, knocking furiously on glass, because that's the kind of desk I have, this has gone better than I would have expected.
Casey:
And the coverage has been better than I would have ever dreamed.
Casey:
And so I'm in pretty darn good shape, and I'm kind of on cloud nine right now.
Casey:
And I'm very tired and very exhausted and just kind of want to...
Marco:
I can imagine.
Marco:
I mean, first things first, big congratulations.
Marco:
Thank you.
John:
You hit your deadline, unlike so many other developers.
John:
Yeah, and with quite a lot to spare, actually, too.
John:
You should credit your long experience in the jobby job world with understanding how deadlines work.
John:
And even though this was an internal deadline, as we call them in the biz, you were both the internal and the external, and you made it happen.
John:
You got it done.
John:
Thank you.
John:
In time for WWC.
Casey:
Yeah, I'm really excited.
Casey:
There were some things that I shipped that I wish could have been better or different or what have you, but I was able to get Vignette to the point that I felt like it was good enough and it was not embarrassing by any means.
Casey:
And so I shipped and it actually appeared in the store
Casey:
It was either Saturday evening or Sunday.
Casey:
Actually, I forget exactly when it was.
Casey:
It's been such a freaking blur for the last month.
Casey:
But anyways, it appeared sometime over the weekend.
Casey:
And obviously, there's no way to hide that.
Casey:
If you had done the appropriately performed search, you could have found it.
Casey:
But I didn't really publicize it at all until 11 o'clock this morning, Wednesday morning, at which point I had known that Federico and team at Mac Stories were going to write something.
Casey:
Ian and team at Cult of Mac were going to write something.
Casey:
And that was the only real coverage I was aware of that I knew was pending.
Casey:
But it actually got covered in a couple other places, which is really, really, really exciting.
Casey:
And I'm really glad that I shipped.
Casey:
I'm glad I shipped with a week and a half to spare, which really doesn't seem like a lot.
Casey:
But I tell you what, a week and a half ago, I wasn't so sure I was going to make it by WWDC at all.
Casey:
And all kidding aside, easily a month ago, I didn't think I was going to make it by DubDub.
Casey:
I had hoped to, and it
Casey:
kind of planned to, but it wasn't that big a deal at that point.
Casey:
I didn't think it was that big a deal if I didn't.
Casey:
And so I am extremely thankful to the both of you, amongst others, but especially to the both of you for pushing me to ship, for making the app better in many, many, many ways, particularly you, Marco, as we discussed last week, spending basically an entire morning wordsmithing the entire app.
Casey:
But no, this was a lot of work, particularly in the last month.
Casey:
more than it probably seems like it should be since the app seems so simple on the surface.
Casey:
But it is out.
Casey:
I've shipped, as some people in a Slack that the three of us are in, have said, you know, hey, even, not that they were being mean in any way, shape, or form, but they're saying, you know, even let's say it was a festering turd, you still shipped, and that's something, you know?
Casey:
And they were not trying to say it was a festering turd.
Casey:
They were just saying, hey, no matter what, you shipped.
Casey:
And that's a lot more than some developers can say, and I'm trying not to lose sight.
Casey:
Well,
Casey:
I say that as I'm upset or something, but I'm trying to remind myself that even as I'm getting a bug report or a crash report or something like that, you know what?
Casey:
It's out there, and I've seen more good feedback than bad, and that's about all I can hope for.
John:
I want to remind the audience, this is not the first app you've shipped.
John:
I mean, every app is a struggle to get shipped for sure, but you shipped an app on the App Store before, so you still got it.
Yeah.
John:
Yeah, still got it.
Marco:
We got some interesting feedback from somebody who wished to remain anonymous.
Marco:
I don't have it in front of me, so forgive me if I'm misparaphrasing this, but it was somebody who is an app developer but has no public persona.
Marco:
They keep a low profile intentionally and they were saying how it's actually hard to release, especially your first high profile app, when you are a high profile person
Marco:
but you're not necessarily yet a high-profile app developer.
Marco:
And so saying how that's actually much more intimidating because your audience will expect more from you because you're a public person.
Marco:
Whereas if you're keeping a low profile in private, you can release a bunch of crap and nobody knows about it.
Marco:
And eventually you'll get better and...
Marco:
By the time anybody might know who you are, you're better at it.
Marco:
But you didn't have that luxury.
Marco:
You took some risks here that I think some people might not consider or appreciate fully.
Marco:
Putting your name on something like this and putting it out there is always a risk when you have an existing audience.
Marco:
You have much more scrutiny on you than the average person.
Marco:
I'm sure you haven't lost track of that, but I wanted to call it out as like...
Marco:
That's a pretty cool thing to do.
Marco:
It's a bold move, and it's really putting yourself out there in a way that takes a bit more risk than most people would.
Casey:
I appreciate that.
Casey:
And yeah, and that's why I was so scared of releasing this for so long.
Casey:
And I mean, I'm still to some degree scared, and it's already out there.
Casey:
But nevertheless, you know, Fast Text was basically garbage.
Casey:
Like, I knew that when I released it, but at the time in which I released Fast Text, nobody knew who I was.
Casey:
I mean, it may be that John literally did not know who I was.
Casey:
I forget what the timeline was, but that might have been before I met John.
Casey:
That's how long ago Fast Text was.
Casey:
So
Casey:
So releasing hot garbage was fine because I wasn't even on the radar, much less a blip on the radar.
Casey:
But now, you know, with that sting of Fast Tech still somewhat there, you know, now it's a whole new ballgame.
Casey:
And if I had released something that wasn't at least pretty good, I think I would have heard about it.
Casey:
And that's why it was so petrified to ship.
Casey:
Yeah.
Casey:
I think, again, that the encouragement from you guys – encouragement slash demand from you guys – and the Bloomberg report, I think, really got me to just push past that fear and just ship.
Casey:
Yeah.
Casey:
I did sleep okay last night, but I was losing my junk all day today from the moment I woke up until the moment I put up the blog post.
Casey:
And as I'm watching the tweets come by, there was a wave of just congratulations, which was awesome.
Casey:
And that wave lasted several hours.
Casey:
And then there was right around my dinner time, there was a wave of,
Casey:
oh I've got a crash or oh this app sucks or oh why five dollars and this and that and I was really starting to feel down on myself but then I thankfully got another wave of like congratulations and compliments and so on and so I'm feeling good again but uh but yeah it's been it's been a roller coaster I mean I am I am
Casey:
extremely lucky to be able to as an independent person release an app to the app store and have anyone notice it much less get coverage from mac stories from cult of mac i actually got written up on tech crunch which i didn't expect in a million years like that was a total surprise to me and and that was extremely flattering and the write-up was good you know i was really expecting one of these write-ups to be like well you know the app is kind of amateur hour but it
Casey:
does what it says on the tin, so I guess that's good, right?
Casey:
But I didn't really see any of that.
Casey:
Everyone seemed to be fairly complimentary, and that makes me feel real good because this is the first real thing I've done soup to nuts since Fast Text.
Casey:
When I was at my jobby job...
Casey:
I was still working on an app that was released to the store, but it was an app that had been around for, I don't know, literally six or seven years or something like that.
Casey:
So there was a lot of cruft there.
Casey:
There was a lot of garbage in it.
Casey:
And some of that was by design, some of it wasn't.
Casey:
I had a team of QA people to make sure that if I shipped something, it wasn't garbage.
Casey:
And there were...
Casey:
One of the things that developers know, and I think this is true of other kinds of jobs as well, but particularly with developers, it's easy if you ship as a developer to be like, oh, well, you know, that bug leaked out, but that's QA's fault.
Casey:
That's not my fault.
Casey:
And when QA is you and the developer is you and the designer is sort of you, you have no one to blame, but guess what?
Casey:
You.
Casey:
And so I was...
Casey:
I was super scared and I'm really glad that it's been reasonably well received.
Casey:
And it's not without flaws and bugs and problems.
Casey:
I'm not trying to say the thing is perfect, but it's been received better than I ever could have imagined.
Casey:
And I am so unbelievably thankful for that.
Casey:
I'm so unbelievably thankful for the audience that I have that has at least looked at the app.
Casey:
I've had several people write in and say, hey, you know what?
Casey:
This isn't for me, but I still threw you a fiver just because I like you.
Casey:
Like, how freaking complimentary is that?
Casey:
Seriously.
Casey:
Like, that's super awesome.
Casey:
And I really appreciate that.
Casey:
And so it was a burden.
Casey:
I don't know if burden is what I'm looking for.
Casey:
But it comes and it carries with it a lot of weight when someone with an audience, as you were saying, Marco, when someone with an audience releases something,
Casey:
And doubly so when it's something that's in my wheelhouse, right?
Casey:
Like if I release a crappy car video, well, whatever.
Casey:
You know, he's just a nerdy developer.
Casey:
Of course, he releases a crappy car video.
Casey:
But if I release a crappy iOS app, like that's a problem because that's allegedly what I did for a living and what I now again do for a living.
Casey:
And so it was so stressful and so scary.
Casey:
And it still is stressful and scary, but it so far has gone better than I ever could have imagined.
Casey:
And I am so unbelievably thankful for it.
John:
can we talk about some of the things that we didn't get to talk about when the app was secret i guess there's only two that spring to mind one is the name of the app and the other is the icon okay where would you like to start uh well how'd you pick the name uh i believe if memory serves well it started life as gravitar fetcher because the the genesis of this was oh god i'm glad i didn't know that you haven't heard analog yet
Marco:
Yeah, by the way, anybody who wants to hear a lot more about this should also listen to this week's episode of Analog, which we'll link to in the show notes, where you and Mike go into great detail about some of these things, some of the feelings associated with them, etc.
Marco:
And we are going to cover some of the same ground here, but I wanted to also refer people to that.
Casey:
Yeah, the idea with Analog was I knew full well that we would be recording this very show, you know, the evening of release.
Casey:
But the idea from that episode of Analog, which is episode 157, is that I was trying and we were trying to kind of cover what does it feel like on the precipice of release, you know, the day before release.
Casey:
And so we recorded that yesterday as I sit here now.
Casey:
And so you'll hear a lot of the feelings of like, what do I expect and what am I looking forward to?
Casey:
And here we can cover whatever nerdy stuff you want and some of the same stuff as well.
Casey:
To go back to what you were saying, though, John, the name... So I started with Gravatar Fetcher because it was just like an internal, quote-unquote, code name for what does this thing do.
Casey:
And this all started with me thinking, you know...
Casey:
I bet a lot of my contacts have Gravitars.
Casey:
And sidebar, if you're not familiar, Gravatar is a service that I believe is owned by the WordPress people now, but it was independent years ago.
Casey:
And it's supposed to be a globally, I don't know if unique is the right word, but a globally recognizable avatar.
Casey:
So it's associated with your email.
Casey:
And so...
Casey:
Once you verify that you are so on at so on.com, then you can upload your avatar and then services all across the web can use that avatar easily.
Casey:
There's no cost.
Casey:
The API is super straightforward.
Casey:
It's really easy.
Casey:
And so this whole app started as just a proof of concept.
Casey:
Can I replace a lot of these contact images in my phone with stuff from Gravatar?
Casey:
And it turned out I could.
Casey:
And then once...
Casey:
Once Gravatar Fetcher extended beyond just Gravatar, then I needed to start worrying about, okay, what's the name?
Casey:
And so if memory serves, I'd looked at the macOS dictionary, really Thesaurus, and started with, I think, Portrait or something like that, or maybe Avatar, but I think I started with Portrait and was trying to figure out...
Casey:
Okay, what's a more unique and interesting name or word than portrait for something that is basically a portrait?
Casey:
And what I ended up with was vignette.
Casey:
And Mike had given me a lot of grief about this, justifiably so, because it is a little weird to spell since it's a, as far as I know, it's a French word that's been sucked into English.
Casey:
I know there's a term for that.
Casey:
I don't remember what it is.
Casey:
um theft yes but i liked the uh i i liked the name i liked that it was kind of cutesy and clever and kind of indicated what the app does even though it's not directly what the app does because a vignette is like a style of photograph um but i i like the name i i think it's a pretty good name uh john i i am happy to hear your complaints about the name at this time
John:
I'm just like, how many other apps are there that are called Vignette?
John:
I don't, I know they probably won't be exactly called Vignette, but I'm amazed that that name was, the App Store still enforces name uniqueness, doesn't it?
John:
Sort of.
Casey:
Well, so Vignette with no other words around it was taken, but Vignette, you know, hyphen update contact photos was not.
John:
There you go.
Casey:
So, yeah.
John:
So there are some other apps called Vignette something, something, something.
Marco:
And most of them...
Marco:
But in practice, tons of apps still keyword spam their titles and it doesn't seem to be actually enforced at all.
Marco:
Like for instance, one of my competitors is no longer called CastBox.
Marco:
It is now called Podcast Player CastBox.
John:
There's a line between keyword spamming
John:
uh your title and just adding description so i would say podcast player cast box is not artful but it's not keyword spamming they just wanted to get podcast and player in there fine another example would be twitterific for twitter so the word twitter is in the title
John:
it's not elegant but it's not the same as just putting a bunch of keywords strewn at the end of your thing or making some nonsensical sense i feel like you're allowed to have like one or two other words so what is vignette again it's vignette update context picks if i'm not mistaken and you're not using this i saw that you did that you're not using the subtitle field right
Casey:
No, I am.
Casey:
I'm pretty sure.
Casey:
God, what does it say in there?
Casey:
It's such a blur.
Casey:
I'll have to look it up.
Casey:
But yeah, I believe I am.
Casey:
It says something or other.
Casey:
I forget exactly.
Casey:
Something like get rid of your gray circles or something like that.
Casey:
I'll dig it up.
John:
All right.
John:
And the icon.
John:
I guess the icon ties obviously into the color scheme of the app, but you can take them both at the same time.
Casey:
Yeah, so the color scheme was, this is actually, I'm hopeful that, Marco, you did catch this on Analog because I thought it was funny.
Casey:
Hopefully you did too.
Casey:
But anyways, the color scheme thought was, okay, I'm going to do blue because blue is my favorite color because I'm boring and I really like blue and there's a lot of different shades of blue you can use.
Casey:
And so I'm going to do blue.
Casey:
And then I thought for a half second about it.
Casey:
Nope, the entire app store is blue.
Casey:
So that's not going to work.
Casey:
So then I thought, okay, well, where am I going to go from here?
Casey:
I don't really have any particular preferences.
Casey:
So I don't know.
Casey:
My alma mater is Virginia Tech.
Casey:
Their colors, like it or not, are maroon and orange.
Casey:
Ooh, orange is nice.
Casey:
It's lovely, but it's loud, and it's remarkable.
Casey:
No one else uses orange, right?
Casey:
And nobody else – oh, crap.
Casey:
Whoops.
Casey:
So that was going to be, and this entire conversation I had in my head in the span of like five minutes, but I was about to start using orange, and then it occurred to me, oh, nope, nope, nope, nope.
Casey:
That's not going to work at all, is it?
Casey:
So, and then that left me with, well, if you have Chicago maroon and burnt orange, well, that leaves you with Chicago maroon.
Casey:
And I think I did tweak it slightly from the official Virginia Tech color, you know, hex code or whatever, but...
Casey:
And ultimately, it boils down to, it was something that has some amount of meaning to me.
Casey:
It's a color that I don't recall having seen many other places.
Casey:
I don't personally see it as purple, although I can totally understand if you do.
Casey:
And it's not too in-your-face, but it's not just straight-up vanilla UI kit, black and white and blue either.
Casey:
So I'm happy with it.
Casey:
I mean, we'll see if I'm happy with it in a week, a month, a year.
Casey:
But I thought it was unique and interesting enough while not being in-your-face enough to cause problems.
Casey:
Yeah, I actually like it.
Casey:
And the icon?
Casey:
And that's all I told him.
Casey:
And he came up with this icon, which I loved.
Casey:
Like, I was expecting to do, like, what we did to the Icon Factory and going back and forth 300 times with Steve about, you know, no, tweak this a little bit.
Casey:
No, no, no, no, no, no, no.
Casey:
Shimmy it to the left a little bit.
Casey:
No, the heck.
Marco:
You wanted that.
Marco:
I was available.
Marco:
Yeah, I was going to say, we?
Marco:
I don't know about we.
Marco:
What John did to the Icon Factory.
Casey:
That's true.
Casey:
That's true.
Casey:
Mark and I were pretty easy.
John:
So looking at this icon, though, like, I'm wondering, you know...
Casey:
how depending on your age you may look at this icon and have no idea what a rolodex is and see it as a weird laptop right that's one option i also saw somebody say and i don't have the tweet in front of me but something along the lines of and i think they were joking because it wasn't said like in anger from what i could tell but they said something like i cannot unsee this as somebody in bed pulling the covers up or something like that which now that i'm looking at it again i could totally understand that's
John:
big headboard and a short bed yeah i think laptop is probably the primary thing but i mean i read it i never you know i didn't it always read as rolodex to me but i'm super old right but now that i look at it real closely i'm like are kids gonna think that's a laptop and if they do fine like i mean the important thing in it is the head and shoulders like the silhouette right that's reminds you it's the thing that you do for you know pictures of people and everything else doesn't really matter that much but yeah
Casey:
Yeah, I like it.
Casey:
I think it works.
Casey:
I take your point about for younger people, it probably doesn't make any sense.
Casey:
But no, I'm happy with the name for now.
Casey:
I'm happy with the colors, the icon.
Casey:
I'm really happy with the whole app.
Casey:
Not to say there's not problems.
Casey:
There are plenty of problems.
Casey:
And if you'd like, we can start talking about some of the things I've seen.
Casey:
But so far, overall, the launch has been incredible.
Casey:
And I am so incredibly, incredibly lucky to have this show to talk about the app.
Casey:
To have this audience to download the app, whether or not you pay for it, just to download it is tremendous and is a real honor to have a listener spend their time looking at it, much less to throw five bucks or whatever the equivalent in your local currency is.
Casey:
That's extremely kind.
Casey:
Now I get to wait for one or more days.
Casey:
I don't know, Marco, you tell me to figure out how much, if any, money I've made.
Casey:
It's funny because if I go to the sales... Well, you say that, but if I go to the sales and trends thing in App Store Connect... Now, again, the app was quietly live since Saturday or Sunday.
Casey:
Sales and trends says you don't have any sales yet, which is mildly alarming.
Casey:
However, if I go to App Analytics, it says that I've earned something like $50.
Casey:
So $72, but that was...
Casey:
prior to the big launch today.
Casey:
In fact, that's only through, I don't know, like the first day or two.
Casey:
So I'm hopeful that some way, somehow I will be able to see some feedback soon.
Casey:
But, you know, like I said, I couldn't believe I got, well, I shouldn't say that.
Casey:
I was hoping that Federico and team would pick up on this, but, you know, I didn't like actively ask them.
Casey:
I did the thing that you should never do, which I never asked for any coverage.
Casey:
But I didn't expect them to do anything.
Casey:
I didn't expect Holt and Mac.
Casey:
And then I certainly didn't expect 9to5 or TechCrunch or anyone else.
Casey:
So that was a tremendous, tremendous gift.
Marco:
No, but you know, you were very thankful and analog to all the people who helped you or all your friends and everything.
Marco:
Gratitude.
Marco:
Am I right, Marco?
Marco:
I know, right?
Marco:
You're being very humble, and that's nice, and that's because you're a nice person.
Marco:
But really, no, and I mean this honestly.
Marco:
You've said a lot how you're just lucky to have access to these people and no one else has access, and you're trying to avoid privilege types of arguments, I'm sure.
Marco:
But the reality is
Marco:
You've been working and building these relationships for years, and it wasn't out of self-interest of like, someday they're going to do a favor for me.
Marco:
You're just a friendly guy.
Marco:
You are friends with everybody, and you actually talk to people and listen to people, and you actually write down their birthdays in your contact records and everything.
Marco:
You care.
Marco:
You're a friendly guy.
Marco:
You keep up relationships.
Marco:
And you have been friendly and have kept up relationships since long before you had anything that any of these people could do for you.
Marco:
So you've earned that.
Marco:
Like don't feel bad about that.
Marco:
Don't downplay that.
Marco:
You know, don't don't brush off all of what you've worked for with all these relationships as like, well, you know, I'm just lucky.
Marco:
Like, no, it is.
Marco:
I mean, you know, you've been lucky in some ways, but like you also have maintained and built tons of relations over time just to be friendly.
Marco:
And that's nothing to disregard or to downplay.
Marco:
There's nothing wrong with being friendly to people.
Marco:
And sometimes it pays off in ways that you might not have thought when you first started being friendly.
Marco:
But that's not why you were being friendly.
Casey:
Yeah, I totally hear you.
Casey:
And that's very kind of you to say.
Casey:
And I agree.
Casey:
And it's funny too because... You're way more friendly than me and John.
Casey:
I don't know about that.
Casey:
But I also got really lucky because a lot of these people that I was genuinely friendly with have gone on to be...
Casey:
kind of important people in our industry.
Casey:
And a great example of this is, I think, Marco, you and I met Matthew Panzarino at about the same time at WWDC in 2011.
Casey:
And it just so happened that I got to hang with him a little bit.
Casey:
And at that point, he was with, oh, crap, The Next Web.
Casey:
And not to say he wasn't doing a good job at The Next Web or that he wasn't, I don't think I knew he was a rising star, but in retrospect, I think it was clear he was a rising star.
Casey:
But now he's editor-in-chief of TechCrunch of all places.
Casey:
And it wasn't Matthew that wrote the
Casey:
the article on Vignette.
Casey:
But nevertheless, that was a really good gamble.
Casey:
I don't mean to make it sound like I didn't want to be friendly with Matthew, but it turned out it was a good and lucky gamble that I wanted and chose to be friendly with Matthew and that we've kept up over all these years because it turns out he's really important.
Casey:
And when I met this guy, John Syracuse, in line at the keynote, I knew who he was and I wanted to meet him and I wanted to be friendly with him.
Casey:
But who knew two or three years later we'd be on a podcast together?
Casey:
So
Casey:
I take your point, and I think you're right, and I like to think that I have put in the work in pretty much every measure, both the work in Xcode, the work with these relationships, the work with marketing.
Casey:
I like to think I put in the work, but nevertheless, I do want to recognize that I've been extremely lucky, and it's a little of both, right?
Casey:
And that's how life usually works.
John:
Being nice to people seems like a terrible idea, but sometimes it pays off.
Casey:
Who knew?
Casey:
Top tip.
Casey:
It turns out being nice ain't so terrible.
Casey:
But yeah, so I think it's worth at least briefly touching on what the reaction has been in a more specific way.
Casey:
Because I didn't know what to expect from the greater populace, to whatever definition that may mean, when this got into the hands of listeners and regular people and not my nerd friends.
Casey:
And I was hoping that there wouldn't be a whole lot of crashes because I knew and I know that I feel like there's some memory issue somewhere that I haven't quite licked yet.
Casey:
And that is something I've been improving but still working around for the last couple of weeks.
Casey:
So I knew that there were probably going to be some crashes here and there, and there were, and that was okay for the most part.
Casey:
But it was the thing that I didn't expect that I wish I had realized before I shipped that really came up and bit me.
Casey:
Well, maybe that's an exaggeration.
Casey:
But the thing that I didn't expect was how many people would want to integrate with Facebook in an easier way than I'm allowing it.
Casey:
So let me explain a little bit.
Casey:
When I had iOS 7 or 6, I don't even know what version it was, there was a window of time where iOS would allow you to do kind of what Vignette does with Facebook and with Twitter.
Casey:
And I allowed it to update my contact pictures and information and whatnot from Facebook and Twitter.
Casey:
And one of the things that that process did was it...
Casey:
through these weird facebook urls into any contact it could it could match and those urls were in the form of fb colon slash slash profile slash a bunch of numbers and that's your profile id for that particular user and that's what i wrote vignette against because i figured oh there's got to be a lot of people that have this sort of thing in their contact list and then i already have you know the globally unique id that's that's what facebook needs in order to pull an avatar so it's a win-win no problem right
Casey:
Well, I shipped, and then everyone said, why can't I put in a username like Casey Liss or Marco Armon, which I don't think you're on Facebook, but you take my point.
Casey:
Why can't I do that?
Casey:
Which is a completely reasonable question to which I had no very good answer.
Casey:
And that has been, I think, that has been the number one piece of feedback outside of, hey, this thing crashed, which has happened not very often, but often enough that I'm upset by it.
Casey:
But
Casey:
The number one piece of feedback, which I did not expect, was, hey, why can't I put in a Facebook username?
Casey:
And so I was working earlier tonight on figuring out a way around that.
Casey:
And unfortunately, but expectedly, I don't know if there's that much I can really do about it, since a lot of people, myself included, have their Facebook profiles pretty well on lockdown.
Casey:
So the only way you can get to it is if you're logged in with a Facebook auth token and so on and so forth.
Casey:
So over the next day, I plan to do the best I can to get...
Casey:
profile images for those who aren't totally locked down, but are only providing a username like Zuck or whatever.
Casey:
But it's something that a lot of people have been, not complaining isn't really the word I'm looking for, but asking about.
Casey:
A lot of people have been asking about.
Casey:
And that I did not expect.
Casey:
But as soon as I started seeing the first reports, it was that totally like, you know, facepalm, of course, I should have spent the time to fix that before I launched and I didn't.
Casey:
And I'm a little upset at myself about that.
Casey:
I think in part because it was just unexpected and I should have expected it.
Casey:
But if that's the most of my problems, it's still a pretty successful launch in my book.
Marco:
Yeah, I mean, it seems like if you're going to go for like, if this proves to be worth investing a lot more time into, I think obviously having an actual Facebook login integration would be a strong 0.1 or 0.5 feature to consider.
Marco:
Yeah.
Marco:
It's obviously a lot of work, it greatly expands the scope of what the app is doing, but it also would have pretty high value.
Marco:
So it's like, if the app proved to be worth a lot more effort, that's certainly worth strong consideration.
John:
So after your launch here, I'm wondering where your head's at in terms of like...
John:
what are you going to work on for the next release?
John:
Are you in a mode where you're like, well, the first thing I got to do is figure out what these 10 crashes are about and, you know, solve any memory issues or whatever.
John:
Or are you thinking, let me pick for like, we were just talking about pick from the pile of, of good ideas for features and see, you know, and start working on those, like, or just start working on the easy ones that are not as complicated as Facebook was this, you know, umpteen suggestions.
John:
Are you, are you in bug fix mode?
John:
Are you in ad features mode?
Casey:
Honestly, I totally understand the question, but at this point, I'm not even sure yet because I'm still like letting the wave just wash over.
John:
You're in go to WWDC mode?
Casey:
Yeah, to some degree.
Casey:
No, I do hope to get another build out before I go.
Casey:
I mean, there's no reason I shouldn't be able to, but yeah, to some degree, I feel like I have...
Casey:
closed this chapter to just use the most overused analogy in the world.
Casey:
But I feel like I need just a moment to breathe.
Casey:
And that can be maybe like a day.
Casey:
But after that, I really want to get this Facebook thing squared away.
Casey:
So rather than saying to people, well, you have to like put in this like
Casey:
weirdo url that no normal person can know and that's hard to discover and blah blah blah at least at that point i can say well sorry they have their facebook profile locked down but even though i could technically say that right now it's not the truth and i'm not the kind of person to lie like that so i really want to get that facebook fix out the door uh there was a couple of although backgrounding supposedly does not work which is really weird because i've tested that a fair bit so
Casey:
I don't know if it's that people are letting it sit in the background for 10 plus minutes, in which case iOS will kill the app, if I'm not mistaken.
Casey:
I don't know if it's something else entirely, but I've seen enough reports that backgrounding is broken that I need to take a look at that.
Casey:
So that's a bug fix.
John:
But you've got a quick fix for that one, right?
John:
Just don't let it go to sleep.
Casey:
Well, that is something that was discussed on a Slack that the three of us are in, which was a tip from Craig Hockenberry, which was a brilliant idea.
Casey:
So what Craig was saying was, hey, man, you can figure out if the device is on battery or not.
Casey:
And you can tell iOS not to turn the app or not to turn the screen off.
Casey:
There's an API for this.
Marco:
I do that with Overcast.
Casey:
yeah yeah exactly right and i've actually done that on like pet projects in the past and so i'm familiar with the api but it never clicked to me the combination of am i on battery or not and then if you're not go ahead and turn the sleep timer off you can also check for low power mode oh yeah that's another good point i didn't think about that either so that's another great idea that i that i want to uh that i want to do probably in addition to if not instead of a fix for backgrounding um
Marco:
I thought of a couple other things, too.
Marco:
Obviously, you should still use the background task API.
Marco:
Although I hear it's about to be revamped in iOS 13, so this might solve itself.
Marco:
But if you use it, you can monitor how much time you have left.
Marco:
even before it calls your callback of like, hey, we're about to kill you, so we'll wrap things up.
Marco:
But you can monitor how much time you have left, and one approach I've seen other apps do is you can post a local notification if you're running low on time.
Casey:
Yeah, I've thought about that.
Marco:
So you just pop a little thing for the user to say, hey, I need more time, please go back to the app, or something like that.
Marco:
And then I also thought it would also be an interesting feature idea for you.
Marco:
This is the kind of app that you run at once,
Marco:
you hit it, you update whatever you can, and then you, you know, put it in a folder and forget about it.
Marco:
Right.
Marco:
Sure.
Marco:
I think it might be a good idea to schedule a local notification when you run it, schedule one for like three months away.
Marco:
And just, just to say, just to suggest like, Hey, you want to check for updates?
Casey:
That's a really good idea.
Marco:
And you can even do – I haven't played with this yet, but iOS 12 introduced the provisional approval for notifications such that you're able to deliver quiet notifications, which means they just kind of appear in Notification Center and don't cause any alerts without asking for permission first.
Casey:
Oh, I did not know that.
Casey:
That is interesting.
Casey:
Because it's funny you bring that up, because one of the things I was about to say to you is, you know, I thought about doing the whole, hey, come back to the app, you're about to expire, dance.
Casey:
You know, obviously you would rephrase it.
Casey:
But, you know, hey, I really need you to wake me back up, otherwise I'm going to, you know, die.
Casey:
But anyway, I thought about doing that, but I didn't want to have to prompt for notification permission, because as far as I knew, you would have to.
Casey:
And I think you're not saying, Marco, any different about that.
Casey:
But...
Casey:
But that idea of doing it, you know, hey, three months from now, especially if I could do it without having to ask for notifications permission, that would be really great.
Casey:
Because I really, I hate onboarding.
Casey:
I hate onboarding so much.
Casey:
And I have two onboarding screens right now.
Casey:
And I feel like that's too, too many, but I didn't see any way around it.
Casey:
So I really don't want to have a third onboarding screen, which is, hey, can I have notification permissions too, just in case you background me, just because this takes a while?
Casey:
So
Casey:
If I can avoid it at all costs, I'd like to, but it may turn out that I'm not able to avoid it.
Casey:
We'll see.
Marco:
Yeah, well, and soon you're going to have a third slash fourth one, which is do you want to log into Facebook?
Casey:
Yeah, potentially.
Casey:
I really don't want to.
Casey:
And actually, probably the next biggest request that I've seen, which I only briefly looked into and did not come up with good news, was, hey, can I use LinkedIn?
Casey:
Which makes perfect sense because, of course, people want to use LinkedIn.
Casey:
That's where all their professional contacts are.
Casey:
You know, Facebook is where all the personal contacts are.
Casey:
LinkedIn is where all the professional contacts are.
Casey:
But so far, I've been able to get around Facebook login.
Casey:
And some of my marketing, a lot of my marketing, in fact, has been around the fact that you don't need to log in in order to use the app.
Casey:
But with LinkedIn, there is no way that I am aware of to get to a profile image without having been logged in.
Casey:
And so if I go down the LinkedIn route...
Casey:
then I will absolutely need login.
Casey:
And as I said to a couple of people who had asked about it previously, sitting here now, I'm kind of allergic to that.
Casey:
But based on the amount of feedback I've gotten about, oh, I would really love... Some people have even said, I would give you more money for login, which is not necessarily what I'm planning on doing.
Casey:
No, you should do that.
Casey:
But yeah, yeah.
Casey:
But just to say, this is how important login is to me.
Casey:
And that's surprising.
Casey:
But if that's what the people want, then that's what the people should get, right?
Marco:
Well, the whole value of this app is in...
Marco:
automatically finding pictures of people so you don't have to manually put them all in and for a lot of people how many that finds is going to depend significantly on whether it supports logins to certain services and so like like and you don't even you know i said that a second ago it would be an onboarding thing but it wouldn't have to be like one thing is one thing one way you could do it is don't even prompt people during the onboarding process wait for them to do their first search and then like in the footer
Marco:
below the first search results you can say like want to find more results connect your facebook or linkedin accounts and then prompt them that and then you just and just have it in the setting screen for for other access too sure so like you wouldn't have to make it an annoying thing during onboarding you could make it in like an after the search thing of like hey by the way you can also do this yeah that's a really good point actually i didn't thought of it that way yeah i like that
John:
I was joking in Slack today, but the more I think about it, the more I feel like it might work, although I don't necessarily recommend prioritizing this over the other things you're discussing, is the ultimate fallback for where can I find an image of this person is to do a Google image search for their full name and just pick the first result.
John:
obviously that only works for people who have their name next to a photo of themselves with a reasonable seo on the web sure and people lots of people have the same name and if your name is say david smith you're probably out of luck but you know it is an ultimate fault like you because when you've exhausted everything else they didn't want to sign for facebook they don't have any info about twitter or anything like that you know you've got nothing why why the hell not like it's just another web request i'm not sure what uh
John:
Google's API limits are these days, but you'll probably fall within a reasonable threshold of their free offering, assuming they still have one.
Casey:
Yeah, I would think so, and that is an interesting point.
Casey:
I am not confident the results would be good enough to justify it, but I totally take your point, and that is worth at least looking into.
Marco:
It works for everybody I know.
Marco:
You can even build a UI of, like, let people browse their contacts that don't have pictures, and
Marco:
And they can tap on it and like, and you could pop up like, you know, push a little control over and you can actually show the first 20 Google search results for like first, you know, like, and then let them, let them pick that avoids a whole bunch of problems and naturally throttles it to whatever.
Marco:
Cause like, you know, if a person has 10,000 contacts, like that's, that's going to blow their API limit immediately if it's automated.
Marco:
But if it's a one by one thing, not only do you solve the quality and correctness issue very, very well, but
Marco:
but it totally avoids or mostly avoids the API issues that you might hit.
John:
And by the way, underscore David Smith is on the third page of Google image search results for David Smith.
Casey:
That's surprising.
John:
Lots of David Smiths out there.
Casey:
Turns out, who knew?
Casey:
Anyway, but yeah, I mean, if you guys have other questions, I'm happy to continue to discuss, but I think we've covered most of it.
Casey:
But yeah, one more time for the people in the back, thank you to anyone who's even downloaded the app, much less used it and sent me a few bucks for it.
Casey:
My hope...
Casey:
To kind of go back to what I think it was John who was asking, what's the plan from here?
Casey:
Not having seen whether this is financially worthwhile or not, just to make myself feel better, I hope to get some of this low-hanging fruit.
Casey:
My plan for WWDC is to attack whatever engineer is willing and able to help me.
Casey:
look at my memory usage and see if I can get that slimmed down a bit.
Casey:
I've done a lot of work to try to get the memory usage to be as good as I can, but it's clear to me that I'm not doing something right or perhaps I'm doing something that has bitten me accidentally one way or the other.
Casey:
I need to work on getting memory usage down.
Casey:
So if you are an instruments expert, reach out.
Marco:
Wait, are you doing image, uh, thumbnailing or image processing or loading in parallel?
Uh,
Casey:
Yes, I am.
Casey:
But that's on the save side.
Casey:
It was originally done as part of the search.
Casey:
During the search, if I came up with an image, I would also resize it to be less than the magic 220-whatever kilobytes.
Casey:
But now I do that at save time.
Casey:
And yes, both searching and saving is done in parallel.
Marco:
You should probably serialize that onto like two queues or a queue with a limit of two operations at once.
Casey:
Why do you say that?
Marco:
The image processing can balloon RAM usage.
Marco:
And if you have this running on a concurrent queue, so you can do a whole bunch of them in parallel, the modern processors of a phone, they might schedule eight of those at once or 10 of those at once.
Marco:
And so you could be trying to decode 10 JPEGs at once, and that's going to blow your memory limit, no question.
Marco:
Whereas if you serialize that, then you can say only at most have two JPEGs being decoded at any one time, then you will dramatically reduce the high watermark of how much memory you could possibly use.
John:
By the way, for the non-developers listening, in case you're wondering, like, JPEGs are small.
John:
What the heck is Mark even talking about?
John:
You may not realize that if you want to do anything with that image, you have to take the compressed JPEG and uncompress it so you can get bitmap data that you can then manipulate and then recompress into JPEG.
John:
And that's where all your memory goes.
Casey:
Not only that, but on Gravatar, it supports friggin' huge profile images.
Casey:
In fact, for a while, there was a window of time, which I tweeted about this, which I won't be able to find the tweet quickly enough to get it in the show notes, but I tweeted about how Marco had actually had a friggin' huge image, and it caused me to discover an infinite loop that I had created for myself.
Casey:
uh because of it which you're welcome so thank you yeah exactly thank you marco but um but yeah like the gravatar images can be multiple megabytes if you ask for the bigger ones uh which is fine that's not a problem but it but it exacerbates my problem of memory usage and i was laughing earlier marco about what you were saying because just earlier today i was talking with a buddy of mine who's a really good ios developer and and they were saying
Casey:
you know, I see what you're doing with the concurrent cues, but you might want to think about doing this serially because X, Y, and Z and a lot of the same things you said.
Casey:
And so the moral of the story is I am sure that there are things I can do to tweak this.
Casey:
Another thing I want to dig into is I tried using auto release pools in a couple of places to try to see if I could kind of, you know, brute force my way into lower memory usage.
Casey:
And
Casey:
I didn't get good results from that, but I am not confident that I was using them the way they should be used.
Casey:
I understand the concept of an auto-release pool, but it's something that I haven't really had to worry about in the past.
Casey:
So I definitely think that there's improvements that can be made.
Casey:
And like I said, my hope is to spend some time in the labs at WWDC and perhaps ask an Apple person to either learn me how to use instruments or just do some science with me to figure out where this memory usage is.
Marco:
I'll tell you right now, it's got to be image decompression.
Marco:
That has bitten me so many times with podcast artwork.
Marco:
There have been so many overcast bugs or crashers that have resulted from trying to process an image that was way too big from somebody's feed artwork and it's like 5,000 by 5,000 or something like that and you've got to try to figure out how to process that in memory on the phone.
Marco:
I've gone through a lot of this and if you can't just ignore images that are that big, which by the way, you can check without loading them
Marco:
There's an API for that.
Marco:
I can give it to you if you want.
Marco:
Really?
Marco:
Yeah, it's some kind of image provider, core image.
Marco:
It's like a C API, so I don't know how the hell you call it from Swift, but I'm sure there's a way.
Marco:
I have a thing now where I check before I even load the image.
Marco:
I call this image provider API to see is it within certain very large limits.
Marco:
If it's above those limits, I won't even try to load it because I'll crash if I do.
Casey:
Interesting.
John:
I'm surprised Marco doesn't leverage the ultimate power that he has at his disposal, which is server-side software.
John:
You don't need to deal with those images in your app, Marco.
John:
You can just tell a service to fetch the image and resize it for you and feed you the tiny image that's the size you want.
John:
I have done that.
Marco:
In fact, I still do that for a lot of cases, but that has its own problems and especially costs.
John:
Yeah, servers aren't free.
John:
It's weird.
Casey:
Anyway, I'm thankful for it.
Casey:
The timing was both great and terrible because there's some other things that have been released today.
Casey:
We'll talk about Panic's thing here in a minute.
Casey:
And I just wanted to give a shout out to my buddy Jelly, who does the indispensable app GifWrapped.
Casey:
And he actually released version, I believe it's 2.0 today, which has a bunch of tremendous and awesome changes in that version.
Casey:
And I'm giving this thanks to
Casey:
in part because Jelly's a friend, in part because I really love GifWrapped.
Casey:
It's on my dock on my iPad, and it's on my first home screen on my iPhone.
Casey:
But also the UI on Vignette was, it was my work, but Jelly did a lot of heavy lifting to make that UI look real good.
Casey:
And so...
Casey:
So as a thank you to Jelly for all that work, I will put a link to Gift Wrapped in the show notes because if you ever use animated GIFs for anything in your life, you really want that app.
Casey:
And also Independence is really, really good as well.
Casey:
That's his podcast with Al Zhao and Curtis Herbert.
Casey:
And it's a really, really good show about trying to make it as an independent app developer.
Casey:
So I would definitely check that out as well.
Marco:
We are sponsored this week by Boosted.
Marco:
Go to BoostedBoards.com and use code ATP at checkout for $75 off.
Marco:
Instead of sitting in traffic and searching for parking or smelling some guy's sandwich next to you on the bus, imagine riding the streets.
Marco:
wind in your hair, the fresh air, all on your own boosted electric vehicle.
Marco:
Boosted makes these awesome boosted boards, these electric skateboards, and they just launched a new electric scooter.
Marco:
And these are high-grade things.
Marco:
These are vehicle-grade electric skateboards and scooters.
Marco:
This is the modern solution to your transportation woes.
Marco:
With a 22-mile range and a max speed of 24 miles an hour, Boosted is perfect for both running to the store and traveling across town.
Marco:
And this is designed not to be some cheap thing.
Marco:
This is designed to be a luxurious experience.
Marco:
It's so good that Boosted was one of Time Magazine's best inventions of 2018.
Marco:
So with five options to pick from, including their new scooter, the Boosted Rev, there's a personal electric vehicle that's tailor-made for you.
Marco:
I gotta say, when you feel the acceleration and the smoothness of an electric drivetrain, whether it's in something as big as a car or whether it's something as small as a scooter or a skateboard,
Marco:
It changes you.
Marco:
I'm telling you, it really feels great.
Marco:
And you got to check these out.
Marco:
So Boosted starts at $61 a month with financing.
Marco:
So there is no better time to change how you move than now.
Marco:
Right now, Boosted is offering our listeners $75 off the purchase of an electric vehicle when you use the code ATP at checkout.
Marco:
So go to BoostedBoards.com.
Marco:
and use code ATP at checkout to get $75 off your vehicle.
Marco:
That's BoostedBoards.com, promo code ATP at checkout for $75 off.
Marco:
Thank you so much to Boosted for sponsoring our show.
Casey:
So, Marco, you went on a patented graycation for the last few days.
Casey:
And if you don't know what that is, you should listen to the other wonderful podcast, Cortex, Unreal FM.
Casey:
But basically, you went by yourself, or I guess, you know, with hops, but you went to somewhere to work on Airplay 2 stuff.
Casey:
Tell me, you sound like you're in a good mood.
Casey:
So how's that going?
Marco:
Oh, it totally failed, actually.
Marco:
Lovely!
Casey:
Congratulations!
Marco:
Yeah, so I took a little vacation with just me and my dog and my laptop and two HomePods, which was quite heavy to bring in a suitcase, actually.
Marco:
HomePods weigh a ton, but anyway, I've been trying to get AirPlay 2 in Overcast for months, and there's a whole bunch of prerequisites to make it work.
Marco:
I had to make Voice Boost 2 work, which is still not quite done, but
Marco:
I had this opportunity to take this vacation for a couple days, so I thought, this is a great time to do this.
Marco:
I'll go.
Marco:
I'll get tons of work done all day because it'll just be me and the dog.
Marco:
So I'll have nothing else to do except work and take dog walks, of course.
Marco:
And so I went, and this is the first time I've ever done anything like this.
Marco:
I've wanted to do this for a while, ever since our friend CGP Grey has talked about doing this, as you mentioned on the Cortex podcast, where he will go on a vacation and just stay in a hotel in a different city and
Marco:
and get a ton of work done and just for like a few days it actually was really nice to be able to have that focused work time i had kind of two and a half full days of just like focused work time on airplay 2 i brought my home pods i connected them to the to the rental places wi-fi set them all up as you know as new like you have to
Marco:
whenever you change their Wi-Fi.
Marco:
Neat.
Marco:
AirPlay is not a great thing to make portable.
Marco:
But anyway, really wanted to get it done.
Marco:
And I coded like crazy on my 13-inch MacBook Pro.
Marco:
Right in the middle of this, the new ones were announced.
Marco:
We'll get to that in a few minutes.
Marco:
And I eventually finished up the player that probably has about three weeks of work in it that happened before this trip.
Marco:
Finally finished up the AirPlay 2 compatible player using the API that's named something along the lines of AV sample buffer synchronizer and sample buffer renderer.
Marco:
It's like there's only two ways to get AirPlay 2 support.
Marco:
You can use AV player or you can use those things.
Marco:
AV player does not support smart speed.
Marco:
And those things you can supply raw sample buffers and so you can do your own processing and everything.
Marco:
And so anyway, as far as I can tell,
Marco:
I think I'm the only person to ever try to use this API, which is not the first time I can say that.
Marco:
It reminds me a lot of doing watch audio stuff where sometimes it feels like I'm the only person doing this.
Marco:
Definitely the whole AB sample buffer, renderer, render synchronizer thing, I definitely feel like I'm the only person to ever have used this because...
Marco:
As I learned, it's really broken when actually running on a HomePod.
Marco:
There's a few things about it that work the way you expect.
Marco:
If you run it in the simulator, or if you run that API as your engine on an iOS device, everything seems to work fine.
Marco:
But then once you start sending audio to a HomePod, which starts invoking AirPlay 2 protocol, then weird stuff happens.
Marco:
And so I had like one and a half solid days of like great work.
Marco:
Everything's going great.
Marco:
This is awesome.
Marco:
And then I got to the point where I could run it on the HomePods and just slammed hard into walls everywhere I went.
Marco:
And basically then spent the next day like –
Marco:
hacking like trying to work around problems trying to work around you know various issues i was seeing i was just getting nowhere it was demoralizing it was frustrating it was just morale crushing and soul crushing and i felt like all this work was wasted and then i went to bed last night feeling like this thinking like well this whole trip like i really enjoyed like the dog and the beach part but the work part was a was a total failure and
Casey:
That is the worst feeling, especially when you go to sleep like that, because there are definitely times where I was fighting probably much more simple things with vignette, but nevertheless, I was fighting something with vignette, and I would fight with it on and off all day, and then I go to sleep, and it's still garbage, and I'm tossing and turning, thinking about how I've written hot garbage or wasted a day working on something that just doesn't click.
Casey:
And hopefully you're about to tell me that you had some sort of epiphany thereafter.
Casey:
But for me, I found that stepping away from it often makes a huge difference.
Casey:
So anything better since yesterday?
Marco:
So this morning I woke up and I was kind of going through breakfast and morning walk and coffee.
Marco:
And I'm like, all right, what the heck am I going to do about this?
Marco:
And I decided, you know, I don't live in a vacuum here.
Marco:
Other people make podcast apps.
Marco:
What have they done about it?
Marco:
And so I decided to go through, I'll periodically survey other podcast apps to see how they do something.
Marco:
Usually, if I'm making a new UI for something, for some new feature...
Marco:
Usually the way I'll do it is I'll go check other apps to see how they did a certain UI because I'm really paranoid about accidentally copying people.
Marco:
And so I will almost always want to check with other apps to just make sure that the way I'm going to do something is not like a total ripoff of somebody else.
Marco:
And so anyway, so I keep all the other podcasts I can think of on my phone, and I check with them periodically for stuff.
Marco:
So I started playing with them with AirPlay 2.
Marco:
I thought, what are they doing?
Marco:
Because the whole reason I want AirPlay 2 support, there's two things that AirPlay 2 brings.
Marco:
Number one, much faster responsiveness when you hit play, pause, or seek, when you change anything about the stream.
Marco:
AirPlay 1 has a fixed two-second latency for all that stuff.
Marco:
So anything you do, if you hit play on AirPlay 1, two seconds later it'll start playing on the speaker.
Marco:
And it's very frustrating.
Marco:
If you feel like you're moving through maple syrup, responsiveness is an important thing for overall happiness of using something and just usability of the thing.
Marco:
So I was never happy with that.
Marco:
AirPlay 2 came along and fixes that because it buffers totally differently.
Marco:
And also, it brought with it multi-room audio support.
Marco:
And so if you have multiple HomePods... And there's an increasing number of AirPlay 2-supporting hardware out there.
Marco:
There's way more AirPlay 2 devices now than there were six months ago.
Marco:
And I love using AirPlay 2 in my house for music.
Marco:
And for as long as I can remember...
Marco:
If your app only supported AirPlay 1, as Overcast does, you could send to one AirPlay 2 device.
Marco:
It would send it in AirPlay 1 mode, and you couldn't send to more than one at once.
Marco:
You couldn't do multi-room or multi-output audio.
Marco:
So anyway, that's why I wanted to do it at all.
Marco:
And I figured, too, this is the more modern API.
Marco:
My audio engine is based on very old core audio APIs.
Marco:
They're kind of unofficially deprecated, so I want to move to something more advanced.
Marco:
At least more current.
Marco:
So I looked at what other podcast apps are doing, figuring somehow they have to have solved this problem.
Marco:
Now, if you don't have a feature like SmartSpeed, a silent skipping feature, you can use AVPlayer, and so much is taken care of for you.
Marco:
Things like streaming are just kind of done automatically for you, and AirPlay 2 is done for you.
Marco:
So if you're using AVPlayer, you basically get AirPlay 2 for free,
Marco:
but you can't do smart speed.
Marco:
You can't do silent skipping.
Marco:
So I looked at a few apps that I know have solid engineering behind them.
Marco:
And I found a few, I found like I did some tests.
Marco:
I met, I measured the latency, you know, you could tap it.
Marco:
And I measured to see like, are they actually doing silent skipping or not?
Marco:
Which is easy.
Marco:
Set it to one X, hit play, start a stopwatch.
Marco:
If it ever, if the timer on the podcast player ever passes the stopwatch, you know, it's skipping silences.
Marco:
If it stays in lockstep with one-second increments to the stopwatch, you know it's not.
Marco:
And so I found one popular app that offers silent skipping, but I noticed when you used AirPlay 2 with it, it didn't really do it.
Marco:
It was doing that thing where it stays in lockstep.
Marco:
So it wasn't really – it was just kind of silently not doing silent skipping.
Marco:
But it had really responsive controls.
Marco:
You'd hit play, it would play immediately.
Marco:
You'd hit pause, it would pause immediately.
Marco:
Speed up and down, speed adjustments works just fine.
Marco:
It was clearly using AirPlay 2 perfectly, except it wasn't really doing silent skipping.
Marco:
So my theory with that player is that they were probably using AVPlayer for AirPlay 2 being active, and then when AirPlay 2 wasn't active, they were switching back to some other API that was able to do their silent skipping.
Marco:
And that's fine.
Marco:
That's an option.
Marco:
I'm not going to say that isn't an option, but I really don't want to do that option.
Marco:
I really take pride in the fact that all of my audio processing is enabled all the time.
Marco:
Whether the file is streaming or local, whether it's AirPlay or Bluetooth or speaker or none of those things, I want all the audio effects to apply real-time to any file, any input, all the time.
Marco:
So I don't want to do that option if I can help it.
Marco:
But that is an option to get AirPlay 2 with the nice responsiveness and everything.
Marco:
And then I looked at a couple other apps, and one I'll call it here is Castro, and I'm calling this out for a reason.
Marco:
It's a great app.
Marco:
I mean, you know, if you like the way they manage episodes, you should use Castro.
Marco:
Anyway, and I noticed Castro, when you hit the buttons, it would have the lag of AirPlay 1, where, you know, you're waiting about two seconds.
Marco:
You know, if you hit play, you wait two seconds, then it plays.
Yeah.
Marco:
But they were also, clearly, they had silence skipping working.
Marco:
I measured it, and it worked great.
Marco:
But they could also send to multiple rooms.
Marco:
And so this is why I had to bring two HomePods to be able to test this.
Marco:
But they could also send to multiple.
Marco:
So I'm like, how are they doing this?
Marco:
So I asked, because I'm friendly with the guys who make cash flows.
Marco:
So I just asked, I'm like, hey, if you're willing to share, what audio API are you using to get AirPlay 2?
Marco:
Because I notice it's different from some other apps, and you're able to do silence skipping.
Marco:
What are you doing?
Casey:
And let me interrupt you right there.
Casey:
Both the guys that do Castro, that write Castro, are impossibly, impossibly nice guys.
Casey:
And it makes me genuinely happy that you guys, the three of you, can all talk to each other.
Casey:
Because on the surface, you're competitors, but...
Casey:
nevertheless, because you're all nice people, that you are willing to talk to each other about these sorts of things.
Casey:
Because as a developer, your natural inclination is to hold all of these things secret and not share any of these things.
Casey:
And it makes me genuinely happy that you guys are willing and able to share all of this with each other.
Casey:
And I think that, to kind of repeat what you were saying about me earlier, I think that you, Marco, doing the right thing by
Casey:
putting links to castro amongst other things in the uh in in the little clips feature that you've done i shouldn't say little but in the clips feature that you did recently i think that that that breeds some of this mutual admiration and respect and and i don't know it just makes me really happy that that rather than being jerks to each other you guys are so nice and given that i know the three of you that is not at all surprising but nevertheless i just wanted to call out that castro is a great app and they are really genuinely nice guys that write it and uh and it just makes me happy
Marco:
And to be fair, we're not willing to share everything.
Marco:
There's stuff that we all keep secret from each other.
Marco:
There's trade secrets or things that we're especially proud of that are tricky.
Marco:
So we don't share everything, but we are very friendly.
Marco:
And we will ask each other technical stuff sometimes.
Marco:
And just be like, hey, how'd you solve this problem?
Marco:
Stuff like that.
Marco:
So anyway, the response from Castro was, we're not using AirPlay 2.
Marco:
What?
Marco:
Yeah, I was like, wait, but how are you sending to multiple rooms?
Marco:
And I verified that I found a couple other apps that worked the same way.
Marco:
It turns out, at some point between when AirPlay 2 launched and now, iOS was updated such that AirPlay 1 streams can now be sent to multiple AirPlay 2 devices at once.
Marco:
What?
Marco:
I don't know when this happened.
Marco:
Sometime between iOS 12 coming out and now...
Marco:
This has now been changed, which it doesn't fix my AirPlay 2 problem, but it does remove a huge reason why I had to do AirPlay 2 in the first place.
Marco:
And given that the API that I have to use if I want SmartSpeed to work properly, given that that API is really honestly not ready for production, to give you some idea of the problems I was having,
Marco:
A lot of times you would hit play and just nothing would happen.
Marco:
Silence would come out of the speaker.
Marco:
But you'd be reported, like the API would be reporting back to you, I'm playing, yep, I'm reaching this time, now I'm at this time, now I'm at this time, and nothing would be playing.
Marco:
And if you'd pause, or if you could pause it and play, and it wouldn't fix it.
Marco:
If you seeked to a different point, then it would fix it.
Marco:
Stuff like that.
Marco:
And also changing the speed, the playback speed.
Marco:
just wouldn't work sometimes like it would keep playing at the old speed whatever its buffer was and and you just like manually like flush the buffer pause wait a minute then send it more audio like it was it was weird i would have i was having problems where it was reporting the wrong time stamp like part of what airplay 2 does is it buffers way out ahead if it can that way like if your phone loses the stream to the wi-fi network for like a split second the audio doesn't skip so
Marco:
So AirPlay 1 would buffer for 2 seconds.
Marco:
AirPlay 2 could buffer for like 10 seconds or 30 seconds or a minute.
Marco:
The API is responsible for telling the app, even though I have fetched time range 1 minute to 1 minute 30 from you,
Marco:
I'm actually currently playing 101, 102, 103.
Marco:
Because otherwise, the only way you know as the app what it's playing is the last thing you sent it.
Marco:
But it probably hasn't gotten there yet.
Marco:
So that time reporting mechanic for these APIs is very important, especially in a podcast app where that matters a lot.
Marco:
So you can keep track of where they are in case they pause and want to resume later or whatever else.
Marco:
It matters a lot that you're getting accurate time back.
Marco:
And I was finding with this API, I wasn't.
Marco:
It would frequently report back to me the wrong time, or it would catch up, where it would report to me a 10-second progress all at once, as if I was playing at 10x speed and it all happens in the same second, which would throw off my speedometer and the progress bar and everything.
Marco:
So the API, the whole render synchronizer and sample buffer renderer API is clearly not solid enough for me to build anything shippable on.
Marco:
Believe me, I've tried.
Marco:
I've tried a lot.
Marco:
And I can't build something shippable on that API right now.
Marco:
So I'm hoping that changes in future updates, but I can't ship it now.
Marco:
But even though this was a totally wasted work trip in those ways...
Marco:
I actually learned this great thing this morning of basically I kind of don't have to support airplay two yet.
Marco:
And while the two second lag on controls really sucks, that doesn't suck enough to make it worth all the downsides and bugginess of,
Marco:
of this new API I would have to do or to make it worth the sacrifice of losing my effect if I have to swap in AV player and then have to maintain these two parallel player engines.
Marco:
That's a mess.
Marco:
Both of those options are worse than just leaving it the way it is now and just continuing to use AirPlay 1 until conditions change in some other way.
John:
Can you briefly explain why you don't use your audio engine to output to something other than the audio system and then just use AV player to play from your output?
John:
That is one option.
John:
Like, I mean, you'd lose time tracking and you'd have to report the time tracking back from your audio engine and ignore the time tracking from AV player, but it would just be using AV player as the transport for your post-process audio?
Marco:
Yeah, and that's basically what I do for the watch playback.
Marco:
For the watch, I transcode the files to bake in smart speed if you have it enabled, and I send them over to the watch, and I send my own time map over.
Marco:
So this second maps to this second in the actual file, that kind of thing.
Marco:
And then the watch kind of uses that time map along with the reported local time to show you an accurate timestamp and whatever else.
Marco:
So I'm kind of doing that already in that way.
Marco:
The main reason I don't do that for the main playback is, A, it's a good deal of processor overhead to be doing all the time, and B, it requires some degree of pre-processing the files, which wouldn't work in streaming, and it wouldn't work in... It would involve delays and everything.
Marco:
And anytime you pre-process files, as I've learned with the watch feature...
Marco:
You also run into possible limitations with iOS killing you for using too much CPU time in the background and stuff like that.
Marco:
So it's a very expensive way to do it that has some significant downsides, most notably, as I mentioned, streaming.
Marco:
And again, as I said earlier, I want everything about my audio engine to work on a stream the same way it works on local files, which is hard.
Marco:
But it's important to me that I don't want to say, I offer silent skipping sometimes.
Marco:
Either I offer it or I don't.
Marco:
And I want it to always be the same no matter how you're playing the audio that you're playing.
Casey:
It's tough.
Casey:
That's tough not.
Casey:
It's got to be just incredibly frustrating to feel like this is...
Casey:
the oh you're the only one that's hitting this api like what do you do about that like who do especially if you're not marco like and i don't mean that to be a jerk it's just you know if if you're a regular schmo like it's it's hard to get the attention of apple to help you know fix a problem like this and what are you going to do file a radar and just let it get lost in the ether like the only way you get this problem fixed is if you know somebody and how do you just know somebody inside apple it's
Casey:
It's got to be demoralizing.
Marco:
Even then, the way I got watch audio improved was I wrote a big blog post about it with very specific things of like, here's the six things I need to do this thing you want me to do.
Marco:
Apple wanted people to write podcasts for the Apple Watch.
Marco:
They were telling us this.
Marco:
I wrote this thing basically saying, look, you want me to make podcasts for the Apple Watch.
Marco:
I can't.
Marco:
Here's exactly why.
Marco:
And here's how these things could be fixed so that, so that I could do the thing you want me to do.
Marco:
Right.
Marco:
So in this case, like the way to, the way, and even then it took like a year, you know, cause it had to like wait for the next cycle and for people to actually have time to do these things and for them to be in the public APIs.
Marco:
So, you know, my chances here are like, I could write a blog post saying, Hey, if you want me to support airplay too, here's why I kind of can't right now.
Marco:
And here's how that could be made better.
Marco:
But yeah,
Marco:
I think this is even more specialized and like even fewer people need this than who needed the watch thing.
Marco:
And I think Apple just cares less about this.
Marco:
Like if podcast apps don't support very fast, responsive multi-room playback, that isn't that big of a problem for them.
Marco:
Like that's not a huge priority for them as far as I can tell.
Marco:
And so I could make this blog post, but yeah,
Marco:
it's it's going to be hard for that to get any real attention from anybody uh so this is i think this is one of those features where i'm just going to have to go without it for a while and again if if conditions change then i will reevaluate uh but right now i'm just abandoning this for now and just shelving this branch of the code just i'll come back to this some other time that's tough well so what's the plan then is is to continue the graycation or no
Marco:
Well, I mean, not for AirPlay 2.
Marco:
I intend to do future vacations for other things, but the AirPlay 2 thing is done for now.
Marco:
But certainly the concept of going somewhere alone or basically alone with work as the purpose of the trip—
Marco:
is a solid concept if you can do it.
Marco:
I mean, that involves quite a lot of, you know, privilege and opportunity and everything.
Marco:
Like, somebody has to keep my household running.
Marco:
The trip has to be paid for somehow.
Marco:
You know, so obviously, like, you know, this is something not everybody can do, and there are certainly costs to it, but it really was surprisingly productive in terms of, like,
Marco:
work done like work time done work time put in code written it just failed to do what i actually wanted it to do but uh but that's that wasn't the fault of the of the graycation that was the fault of you know i was going down a path that wasn't going to work but as a as a tool to get work done it was fantastic
Marco:
We are sponsored this week by Linode.
Marco:
You can get a server running in just seconds with your choice of Linux distro, resources, node location, and so much more.
Marco:
And node location is now expanded even further.
Marco:
They have a new data center in Toronto, Canada.
Marco:
So this allows you to comply with in-country data protection requirements and take advantage of all of Linode's technology and tools in the process.
Marco:
And wherever you put your Linode, whether it's in Toronto or one of their other 10 worldwide data centers around the globe, it is a fantastic web host.
Marco:
I've been with them for a little over eight years now, and I just am so happy there.
Marco:
This was long before they were a sponsor.
Marco:
And I can honestly say, this is a service that I use that I really love.
Marco:
Not only, you know, because I've used a lot of web hosts, a lot of web hosts, and I've run a lot of servers in my day.
Marco:
And I keep everything at Linode now because not only is it an incredibly good value,
Marco:
it's by far the best value i've seen in web hosting especially over the entire eight year span it has always been but also it's just a good web host like they have great support they have a great control panel great services and abilities and add-ons if you need them and everything it's just wonderful but i know ultimately for most of us it just comes down to price and linode is a great value their plans start at just five dollars a month that gets you a linode server with one gig of ram and these are all backed by enterprise grade ssds and xeon cpu so they are super fast
Marco:
Of course, they have plans above that if you have more needs for more RAM or storage or whatever else.
Marco:
They also offer dedicated CPU plans, high memory plans, all sorts of things to fit your needs.
Marco:
Check it out today at linode.com slash ATP, and you can get started with a $20 credit by using promo code ATP2019.
Marco:
That could be four months free on that $5 a month plan, so you have nothing to lose also with a seven-day money-back guarantee.
Marco:
Check it out today, linode.com slash ATP.
Marco:
by far my favorite web host.
Marco:
I have tons of servers there.
Marco:
I keep adding more because they just make it so easy, and it's such a great value.
Marco:
Once again, linode.com slash ATP, promo code ATP2019.
Marco:
Thank you so much to Linode for hosting all my stuff and sponsoring our show.
Casey:
Let's talk about some other big release, well, sort of, announcement from today.
Casey:
Let's have a play date, guys.
Casey:
This is so cool.
Casey:
This is so ridiculous, and I mean that in the best possible way.
Casey:
John, what is happening?
John:
This is Panic.
John:
Panic, Panic Software, Panic Incorporated, just Panic.
John:
They have been making Mac applications forever.
John:
They still make Mac applications.
John:
A few years ago, they helped make the game Firewatch, which is amazing and you should buy.
John:
Agree.
Casey:
That's actually one of the few video games I've played recently, and it is very, very good.
John:
It's short enough that Casey finished it.
Casey:
Exactly.
Casey:
Yes, I did.
Casey:
Yes, I did.
Casey:
And you're exactly right.
John:
They're working on another game called Untitled Goose Game.
John:
But they're just a bunch of cool people, and everything they do is really interesting and neat.
John:
And you never know what they're going to do.
John:
Before they announced they were making Firewatch, we just thought they made Mac and iOS software.
John:
So who knows what they're doing.
John:
Yeah.
John:
Cable gave an XOXO talk a couple years back about his sort of, I don't know what you want to call it, midlife crisis.
John:
He's not that old.
John:
Quarter life crisis or whatever you want to call it.
John:
Where he had started this company with his friend and they had sort of slowly bootstrapped themselves up selling really nice Mac software for years and years.
John:
And there's lots of stories about it.
John:
You can read on their website and elsewhere.
John:
And then one day he woke up and realized he was the employer for like 20 people and their livelihood depended on his continued business success.
John:
And he wasn't sure he was paralyzed by that fear and he wasn't sure like, what is he supposed to do with his life?
John:
You should, we should try to find a link to the XOXO talk, but like, is this it?
John:
Do you just keep making software and worrying about how you're going to make ends meet?
John:
And yeah,
John:
You know, I think at this point they were also trying to make iOS apps and those apps were nice, but they weren't selling well and they couldn't figure out how to make money in the app store.
John:
And it was just a big sort of crisis.
John:
And part of what came out of that crisis was, and there's an article about this in Edge magazine that you'd be able to read by the time this is out.
John:
was his realization of how unique their position was.
John:
They were not VC funded.
John:
They had no bosses.
John:
They didn't have any loans to pay back.
John:
They could do whatever they wanted.
John:
They had a company full of talented people making money on selling Mac software, but they could do other things too because they're a bunch of smart people.
John:
So part of that was helping make a game.
John:
and that became Firewatch.
John:
But Playdate is another example of that.
John:
If you look at Playdate, you would look at it and say, this is exactly the kind of thing that the people at Panic would love.
John:
And it fits because they made it.
John:
And why did they make it?
John:
Because it's the kind of thing that they would love.
John:
So what the hell did they make?
John:
Well, first of all, they're making and selling a hardware product, which is a hell of a leap.
John:
Like,
John:
you know we're talking about apps today marco's made a bunch of apps you make a bunch of apps but like your next app is not going to be like a hardware device that's quite a leap to go from part of the beauty of software you don't have to worry about all that stupid hardware stuff you just type things on a computer and uh you know and sell the the virtual bit so they're making a hardware device and what is the hardware device it's a tiny portable game system
John:
And it's not the same as if they said we're making a new personal computer platform like BOS with the Bbox or something.
John:
But it's pretty close because how often does a new gaming system come out?
John:
It happens once or twice every few decades.
John:
But for the most part, it's unheard of for even the biggest companies in the world to decide we're going to make a handheld gaming system.
John:
uh very few have ever decided to do that we could probably name all of them right now just from memory and there's probably some obscure ones we've never heard of but these are from gigantic companies panic again it's like 25 people uh and this particular product was made by a team of about five people plus a lot of engineering help from an outside uh company that makes hardware so they were smart enough to uh not try to do everything themselves
John:
So what's most interesting about this, other than the fact that a tiny company decided to make a handheld gaming console, what's interesting about it, I guess, is literally everything else about the device.
John:
It is tiny and adorable, and it looks like something Cable would buy on eBay that Nintendo made in the 70s, which is a thing that he likes to do.
John:
It has a black and white screen, not a grayscale screen, a black and white screen.
John:
Pixels are either black or they are not black, and that is the only thing that the screen does.
John:
It has no backlight.
John:
It is reflective.
John:
It's got a D-pad, an A and a B button.
John:
It looks a little bit like a tiny, tiny little Game Boy.
John:
uh made by teenage engineering that's the name of the company right the op1 people yeah yeah uh and it is made by them surprise it looks exactly like it's made by them and it is and sticking off the side of this uh device is a crank as in like a thing that you turn like on a jack-in-the-box you fold it out and you can turn the crank around and around no it does not charge the device the crank is not a charging mechanism it is part of the control mechanism for games uh
John:
uh and the name of the thing play date is based i assume on the idea on their sort of their software model you buy this device and you get with the device you get one season of games which is 12 games and every monday a new game appears on your device which means the device has to have some kind of wireless networking and it does it has wi-fi it has bluetooth um
John:
and so your month the monday is your play date and you get 12 of those games they come bundled as part of the price of this device the games are made by a collection of famous uh i'm gonna say indie game developers but like game developers who are known for making really good games that are interesting on like quirky quirky kind of games on either consoles or on ios uh and that's it and why would why would
John:
why would you do this why why would you make why wouldn't you just get those people to make a bunch of games or why wouldn't you why wouldn't those people just make games for uh you know the switch or one of the game boys or why don't they make ios games why is anyone doing any of this why would you make a game in black and white like is it it doesn't make for to a certain class of person this makes no sense to another class of person they will go to the website which is play.date yes.date is a top level
John:
extension these days play dot date and see the device and there's no more questions about why anyone would do this they would just say that's amazing i want that that'll be so much fun to have now it may be a bit of an expensive expensive bauble for something that may only ever have 12 games in its entire life uh or it may become a collector's item or it may become a smash hit uh that it turns into the hipster portable gaming device that it looks like it already is
John:
I don't know what's going to happen with this.
John:
Panic doesn't know what's going to happen with it.
John:
And honestly, as Panic says in the article, I don't think they care.
John:
I don't think they should care.
John:
Shipping this in any form whatsoever is already a victory.
John:
Like, if you read the article on Edge, they talk about how this came out of the idea of doing something for, like, the anniversary of the company.
John:
I was like, oh, we should make some cool thing, you know, like...
John:
a regular company like, Oh, we'll make like a plaque or something.
John:
And they were like, maybe we make like a commemorative clock.
John:
Like they were thinking about making some hardware thing just to like celebrate the fact that the company has been around for 20 years or 50 years or however long it is.
John:
I don't even want to think about the math.
John:
Um,
John:
And that turned into this.
John:
It's like, well, we can make a little thing.
John:
And they were looking at like screens you can put in the thing.
John:
And oh, look at the screen.
John:
The screen is neat.
John:
I wonder if you could play games on it.
John:
Like you could hide a game as like an Easter egg and like the little clock that you make.
John:
Like I'm speculating about what the thought process is here.
John:
That's what this came out of, just a bunch of people who are very talented and very smart, having fun ideas of fun things to do, and this is the result.
John:
So in the end, if literally nobody buys any of these things, which is not going to happen, people will buy them, the fact that they were able to make this thing happen
John:
It's like if you make the commemorative clock for your company's anniversary.
John:
You don't expect to sell them.
John:
In fact, you know you're just costing money.
John:
You just want to do it as a celebration.
John:
This product feels like a celebration.
John:
It feels like a celebration of panic.
John:
It also happens to be a product that they're going to sell and they hope to make money on and so on and so forth.
John:
And they hope to be a platform or whatever.
John:
But it feels like a celebration.
John:
To give just one other example, you may be looking at this thing and it's like, what is it?
John:
Is it like a Raspberry Pi in there and they just wrote some weird software for it?
John:
no it is not it is it is all custom hardware and they wrote their own os for it oh my god like why would you do that why is it not running linux why because it's a cool fun thing they wrote their own os for it it's ridiculous the company's ridiculous the people are insane this is an amazing thing that should not exist but does everybody should go to play.date and bask in the glory that is this device whether you're going to buy one or not
Marco:
I like your angle about how it's just a fun thing because that's the gist I got.
Marco:
Not only is Panic good at being fun because they're just that kind of company, but also when I discovered back when I had my brief fling with Raspberry Pis, I discovered there's this whole world out there of amazing hardware
Marco:
potential in like the hobbyist realm and it's all really cheap and really capable and often really small and like so like you know the whole raspberry pi angle the arduino world like there's this this amazing stuff out there and it gives you a degree of fun and and the the idea of you like you have this giant open field where you can do anything and
Marco:
that you aren't getting so much from the big companies and their products these days.
Marco:
So much of what you get from the world of big tech and big gaming is very advanced in a lot of ways, and you have tons of capabilities, but it's increasingly locked down, and it's increasingly corporate and less fun.
Marco:
And this...
Marco:
is the opposite of that.
Marco:
This, I mean, well, I mean, I don't know what their plans are for like locked downedness.
Marco:
I can guarantee you this thing will not be locked down.
John:
Yeah, probably not.
John:
Right.
John:
I say that based on no information except knowing the people.
Marco:
Yeah.
Marco:
Like I feel like this kind of thing is we, we built this because we wanted to, and it's just going to be a cool, fun thing.
Marco:
And if it works, you know, business wise, great, but,
Marco:
But it almost seems like they don't necessarily need it to.
Marco:
It seems like they're doing this more for the fun than anything else.
Marco:
And that is something – and it shows in the design.
Marco:
It shows in what they're doing, what they're not doing, what it is, what it isn't.
Marco:
And it just seems so much more fun than anything that you're going to see from any of the big companies anytime soon.
Yeah.
John:
And speaking of fun stuff, like there's lots of fun in the gaming space.
John:
Like some would say this is reactions like phone games and this is less stressful because the games are necessarily simple and the black and white angle.
John:
There's all sorts of hipstery stuff with this.
John:
Right.
John:
But just just thinking of the hardware, even among what we consider the most fun other game makers.
John:
the software is still really fun.
John:
Like, let's take Nintendo.
John:
Nintendo, which, you know, Cable of Panic loves, and so I'm sure everyone else would panic, and it's a great example of a fun company.
John:
In recent years, Nintendo's games continue to be amazingly fun.
John:
Like, they're still, they're just great.
John:
They're great games.
John:
Mario Kart is still fun.
John:
Zelda Breath of the Wild is amazing.
John:
You look at those games, and you'd be like, yep, Nintendo's still got it.
John:
They know where the fun is.
John:
But if you look at Nintendo's hardware, it has become a lot less fun.
John:
Yeah, the Joy-Cons come in a couple of interesting colors, but the Switch is a fairly straightforward hardware design that doesn't really have any particular fun quirks.
John:
The Pro Controller is a black controller that looks like everybody else's thing.
John:
You just go back a few generations.
John:
The Wii was pretty fun.
John:
It was this wacky remote thing, and it was white instead of black in its sort of default color.
John:
The GameCube controllers were very wacky and came in all sorts of bright colors.
John:
The whole GameCube console came in a bunch of bright colors.
John:
And then, you know, the Nintendo 64 was this ridiculous three-pronged thing.
John:
Hardware used to be more fun.
John:
People used to be willing to take more risks with gaming-related hardware.
John:
Sony was never fun.
John:
Fine.
John:
But, you know, Microsoft had the weird green alien Xbox theme with all the big...
John:
you know, blobs of stuff coming out of it.
John:
Like, if you look at this, it looks like something Nintendo would have made in the 80s, but Nintendo today is not making hardware that looks like this.
John:
So I'm glad that somebody is making gaming hardware where the hardware itself looks like fun.
John:
Before you even turn it on, before you even do anything with it, it looks like a fun thing.
John:
It looks like it can't be real.
John:
It looks like something you would make in like a...
John:
concept drawing or like a prop in a sci-fi movie or something but it's it's a real thing and I can't wait to touch one of these things I don't even like handheld games like I'm getting one of these obviously because I have to like it's the law I'm drawn to it but like I it's
John:
ergonomically speaking i'm not going to be able to spend a long time playing this because it's not you know it's a d-pad and two buttons and a flat little thing but the game should be short enough that i don't have to do that and honestly i just want to have it as a as an artifact as a as a triumph of like people
John:
Doing something for the sake of doing it that embodies all their values and not just making it a one off thing that they make for their anniversary and stick in a glass case in their headquarters, but actually going through the trouble, which, you know, as we've sort of been discussing this whole show's history, in particular today's show.
John:
going through the trouble to make a product and ship it granted hasn't shipped yet but still like they didn't just make it for themselves and it's so much more work to make a thing that everyone else can buy and use than to just make a one-off thing that's just for you
Casey:
This looks awesome.
Casey:
And I'm not even usually into this sort of thing.
Casey:
I mean, I do have a Switch and I do like it, but I don't play it that terribly often.
Casey:
But this looks awesome.
Casey:
And I know some of the people at Panic and they are all phenomenally good at what they do.
Casey:
Annoyingly so.
Casey:
They're so good at what they do that when they decide to do other things, they're good at that, too.
Casey:
Like, you know, building your own OS.
Casey:
What kind of monster builds your own OS?
Casey:
Why would you take that on?
Casey:
Well, because they're panic, and that's what panic does.
Casey:
So this looks super cool.
Casey:
I'm super amped to try this out at some point.
John:
Yeah, that was kind of Cable's point.
John:
I'm like, we're smart people.
John:
We can do things.
John:
Yeah.
John:
Like there's nothing like what what's stopping like this is the question like what's stopping us from from doing a ridiculous thing like if you have a regular job you know it's stopping you like you don't run the company you can't decide oh I work with a bunch of smart people we should you know try making our own car.
John:
I mean, Apple can do that, I suppose, but most people, most companies can't do that.
John:
But that important realization that panic had is like, there's no one telling us what we can or can't do as long as we are financially cautious and, you know, understand what our limits are and take things slow.
John:
We're all smart people and we can figure things out.
John:
And that's the exactly the same kind of can do attitude for like, you know, indie app developers.
John:
just expanded outside their comfort zone outside the realm of their ostensible expertise and it turns out uh you can get expertise in anything if you just try it and and plug away and by the way this took them about five years to make this so it's not like you can do it in a weekend but if you if you are dedicated and believe and are uh careful and have a bunch of smart people there's nothing you can't do
Casey:
All right, we are running a little low on time, so we may not make it to Ask ATP this week, and if not, I apologize.
Casey:
But we have one more thing we absolutely need to talk about, which is the new MacBook Pros.
Casey:
So, Marco, I presume you've already bought and returned three of these?
John:
Close.
Casey:
No, just one.
John:
Just kidding.
Casey:
Did you return it as well?
John:
You were just complaining about the CPU power of your 13-inch.
John:
Well, boy, have I got the new 13-inch for you.
Casey:
Wait, did you actually return one?
Marco:
I didn't buy it, don't worry.
Marco:
Not yet.
Marco:
Give me at least a few weeks before I waffle and eventually buy it.
Casey:
Yeah, right.
Casey:
I'll allow it because we don't have time to argue.
Casey:
But anyway, go ahead.
Marco:
Maybe a few days.
Marco:
Anyway, so... You know I'm going to get the 15-inch eventually, probably.
Marco:
Anyway, so there's new MacBook Pros.
Marco:
Only the Touch Bar models are updated.
Marco:
And it's a boring spec bump update for the most part.
Marco:
And...
Marco:
There's been a lot of mixed reactions, and a lot of people, understandably, expect me to be super mad because it's still using basically the same keyboard.
Marco:
Now, here's why I'm not that mad.
Marco:
I mean, part of it's because I was just at the beach, and I'm really happy, even though everything I did failed, and they released more butterfly keyboards.
Marco:
I probably should be more mad than I am, but the fact is when all this bad stuff happens at the beach, I'm still able to be happy.
Marco:
But here's the thing.
Marco:
They did a boring spec bump update.
Marco:
The 13-inch and 15-inch with Touch Bar models are faster.
Marco:
They have faster CPUs.
Marco:
That's a good thing.
Marco:
This kind of boring update is what we've been hoping to see from them after years of neglect in the 2014-2015 kind of era.
Marco:
And since 2016, when they released the Touch Bar models, they have kept up the pace of updates.
Marco:
They have done MacBook Pro spec bump updates every year since then for the Touch Bar models.
Marco:
The other one, like the MacBook Escape, has been a while, and the 12-inch is also kind of outdated now.
Marco:
But the Touch Bar models, which are like the high-end models, they have been updated every year with spec bumps since 2016.
John:
And not only that, they don't wait to update them if there's not a complete suite of updates.
John:
So if the only thing that they can update are GPUs, they update the GPUs.
Marco:
Right.
Marco:
Yeah, like this past winter where they updated the GPUs for the 2018 models mid-cycle.
Marco:
And now they're using those same GPUs for these new 2019 models because they're still the current models.
Marco:
So that means they had a good GPU update available halfway through the 2018 models lifecycle, and they didn't just wait for the 2019 CPUs to be ready and hold back those GPUs.
Marco:
They updated the GPUs as soon as they could,
Marco:
And now they updated the CPUs as soon as they could.
Marco:
And this is a pretty good pace.
Marco:
Like this is amazing.
Marco:
This is the kind of thing we want them to do more of.
Marco:
Don't hold back updates for major revisions.
Marco:
Like if a major revision isn't ready yet, just ship a boring spec bump update because that's way better than nothing.
Marco:
And that's exactly what they did.
Marco:
The more interesting part here is that they revised the keyboard slightly again, and they seem to think this is going to make it more reliable.
Marco:
This is the fourth minor revision of the butterfly keyboard, trying to improve the feel or the sound or dusting grass or make it more reliable.
Marco:
They keep trying to put band-aids on this keyboard, trying to fix its problems, and this is another one of those.
Marco:
They seem to think, based on their comments to the press, they seem to think that this is going to be a substantial fix for the failures of where you'd have either missed keys or double-pressed keys or whatever else.
Marco:
And we don't know if that's going to actually pan out that way.
Marco:
Time will tell, and we don't have that yet.
Marco:
So hopefully it does.
Marco:
Honestly, I don't have incredibly high hopes just because we've been burned so many times.
Marco:
Like every year we think they're going to fix those reliability problems, and every year so far they haven't.
Marco:
And so it certainly – anybody who's concerned about that, I think that concern is warranted.
Marco:
um they also although this time that they had this extra little bit where they have added these immediately to the keyboard repair program which means you no longer have to like preemptively buy apple care out of fear that your keyboard might die because they are saying right up front that these will be guaranteed from keyboard problems for four years after purchase
Marco:
as well as last year's models and all other butterfly keyboards are now part of this program as well.
Marco:
So all butterfly keyboards that have shipped to date, including the ones that are brand new, are covered for four years after purchase for keyboard problems.
Marco:
So that's a good thing.
Marco:
You can tell they're trying to reassure the customers as much as they can.
Marco:
So that's good.
Marco:
Whether they've actually solved the problem remains to be seen.
Marco:
And these are still keyboards that ultimately I hate for lots of other reasons.
Marco:
But, you know, they did revise this keyboard again in a way that might actually solve the problem.
Marco:
I hope it does.
Marco:
Now...
Marco:
Many of us, myself very much included, are disappointed to see yet another update come with the same goddamn keyboard that we've been hating for like three years now.
Marco:
It feels like they're just going to keep giving us the same damn keyboard until we just give up the fight and accept that we're never going to have a good keyboard again.
Marco:
But here's why I have more hope than that this time.
Marco:
There is this rumored 16-inch MacBook Pro on the horizon.
Marco:
And the rumors are very strong that it has a completely different keyboard.
Marco:
And everything I've heard about this keyboard is what I want.
Marco:
I've heard it has scissor switches, which are reliable.
Marco:
I've heard they have one millimeter of travel, which is, I think, about double what the butterfly keys have.
Marco:
I've heard it has inverted T arrows, wider margins between the keys, so it's less error-prone.
Marco:
Basically very similar specs to the desktop Magic keyboard that is widely liked.
Marco:
And I've heard that it has a physical escape key next to the touch bar.
Marco:
I would love to have an option without the touch bar, but that's the next best thing.
Marco:
So that rumored 16-inch sounds like a massive upgrade in reliability, ergonomics, accuracy, and the mass appeal of the keyboard.
Marco:
Because that's like the big thing these have lacked.
Marco:
Even if they've fixed the reliability problems, the butterfly keyboards don't have mass appeal.
Marco:
Some people love them.
Marco:
A lot of people hate them.
Marco:
So that's what is rumored for the 16-inch MacBook Pro.
Marco:
And the reason I still have hope, even after getting this update this week with just the same old keyboard, basically, I still have hope because we didn't get that 16-inch MacBook Pro.
Marco:
Now, yes, I am disappointed that we have yet another year of the butterfly keyboards, but since those aren't the new 16-inch model, that more likely just means that model's not ready yet.
Marco:
And that's fine.
Marco:
I'm impatient.
Marco:
I want it now.
Marco:
But...
Marco:
Better late than wrong.
Marco:
Because what would be way worse is if we did get the 16-inch this time and it still had the same butterfly keyboard.
Marco:
Because that would be a way stronger indicator that even when they've had the time and engineering to do a major hardware redesign, they didn't think they needed to put a better keyboard in there.
Marco:
That would strongly signify that we're stuck with the butterfly keyboard for the next three to five years or however long that generation lasts.
Marco:
But that's not what happened.
Marco:
We got a boring spec bump update to what we already had, and that is a much better alternative than if the all-new product, the 16-inch, had come out and it still had that damn keyboard that I hate.
Marco:
So this feels like a stopgap update to keep this lineup updated regularly, which is what we want, until the next generation is ready.
Marco:
And whether the next generation ends up being good or not is, you know, that's still an open question.
Marco:
But that is much better than an answered question that is answered in the way we don't want.
Marco:
So I still have hope.
Marco:
We just need to wait a little bit longer probably.
Marco:
And in the meantime, if you need a MacBook Pro now or if you want more performance or whatever else...
Marco:
This seems like a reasonable buy.
Marco:
They have made them faster.
Marco:
It's basically just CPU update, but they're good CPUs.
Marco:
The 15 inches now have up to eight cores in them, which is kind of amazing.
Marco:
What remains to be seen is whether thermals can hold up to that.
Marco:
I'm told that they can, but we have to wait and see how it plays out in practice.
Marco:
But it seems like, you know, a solid spec bump update after a series of nice and frequent spec bump updates to this lineup.
Marco:
So I do think and I get the strong feeling they are listening to us, but the answer is not ready yet.
Casey:
Yeah, I think that's fair.
Casey:
And I think it's like, what's the turn of phrase?
Casey:
Like a cold glass of water in hell or something like that, where, you know, at this point, it doesn't take a lot to get us excited that positive steps are being made.
Casey:
And this is more than one positive step.
Casey:
You know, it's a series of positive steps, as you were saying earlier, that it is being clear now, or it has been clear now, that they are trying to do spec updates pretty much annually, which...
Casey:
For me, I don't buy a new laptop annually.
Casey:
In fact, the MacBook Adorable that I have, even though it's something like two or three years old now, is the most modern MacBook Adorable they make, as far as I'm aware.
Casey:
I don't think it's been even spec bumps since then.
Casey:
But for the pro laptops, where you might get a new laptop every year, if this is literally your only computer and this is how you run your business, those are getting spec bumps, which are boring and uninteresting and
Casey:
And that's perfect.
Casey:
That's exactly what professionals want.
Casey:
So I'm way more excited than not, just like you were saying, Marco.
Casey:
And I'm hopeful that this fancy new 16 is going to be the answer to all our prayers.
Casey:
But I'm at least hearing some of our prayers answered, and that's a good sign.
John:
Yeah, unfortunately, I feel like Apple has lost all benefit of the doubt when it comes to the reliability of their various Band-Aid fixes because they keep trying to fix this keyboard and they keep failing.
John:
So I would say take a wait-and-see attitude with this.
John:
The semi-good thing about it is if you have the previous keyboard, the membrane keyboard, and it breaks, they will replace it with one of these.
John:
so on the off chance that this one actually does improve matters and you eat a cracker over your computer and the keyboard uh breaks you can it's not like you were the situation you're in before where it's like well all we can do is replace it with the exact same keyboard that just broke now at least you can get it replaced with a different keyboard unfortunately if you have i don't know how far back it goes i think basically anything before the membrane keyboard
Marco:
yeah so the only ones that can get it are the third gen ones which are the 2018 touch bar models and the MacBook Air yeah the membrane ones yeah so if you have a 2018 touch bar model or the new MacBook Air this can be fitted to your computer if it gets serviced if you have anything before that it can't
John:
Yeah.
John:
And the other like and so that's not great for those people with the older laptops because the other option is only just to get it replaced with something else.
John:
Also, the standing issue with the repair program is it's four years, which is better than one year, but not as good as, you know, like some people like to keep their laptops more than four years.
John:
So if you buy one of these and it's a three thousand dollar laptop and you're like, I'm going to use this for the next six years.
John:
Yeah, you're probably not unless you're paying for a new keyboard because.
John:
Four years is not the same as we'll replace it forever or we'll replace it.
John:
It's not great, right?
John:
And the idea that they put in the 2018 miles, which previously weren't part of the repair program, but they weren't out of warranty.
John:
So they just got that under the line where it's like, oh, we didn't let those things age out.
John:
Right before they all go out of warranty, we extend the program to them.
John:
And also the brand new ones are in the warranty program from day one, which can be taken two ways.
John:
One is like...
John:
Well, it's just Apple saying that they know they haven't fixed the problem because they're putting in their repair program.
John:
But on the other hand, a great signal when a 16-inch comes out with a totally new keyboard would be for them to also include the keyboard repair program.
John:
Why?
John:
Because they'd have confidence that it wouldn't be used.
John:
So it's both a security signal saying, don't worry about it.
John:
If you have a problem, you're covered.
John:
But it could also be taken as a signal of confidence for like, we believe so much in the reliability of this keyboard that if you have any problem for four years, it's like the powertrain warranty on your car, right?
John:
Like the car has some sort of warranty, but the powertrain is longer because they have such faith in the powertrain or whatever.
John:
Granted, it doesn't read that way because they're not coming from a position of strength, but I don't take it as a...
John:
As a signal that they don't believe in the keyboard.
John:
I don't believe in the keyboard.
John:
And I don't think anyone else should believe in the keyboard.
John:
But the warranty is not a signal one way or the other about Apple's belief in it.
John:
I'll actually kind of be surprised if they put that warranty on the new keyboard.
John:
I think they'll just go back to the old one.
John:
And in some ways, you can interpret that as a signal they believe in it.
John:
Anyway.
John:
It's a shame that we have to wait longer for the new one millimeter keyboard.
John:
But yeah, I'm with Marco.
John:
It's like, it's good that they're, they're doing things.
John:
It's good that we didn't get the bad answer that we don't want, which is you're just going to have to live with this keyboard forever.
John:
And Apple's laptops are forever dead.
John:
No matter how this resolves, I continue to think that this keyboard mess up is the worst thing Apple has ever done to their laptop line in the history of the company.
John:
I hope they agree.
John:
But,
John:
it doesn't you know again we all believe uh and hope that they are in the process of fixing it it's not fixed yet uh you know we're only in what early in year year four or entering your entering your four-ish of this keyboard so if it was going to be a mac pro level disaster we'd have much longer to go but then again laptops are apple's bread and butter in the mac line and the mac pro is not so it probably already is
John:
so much bigger than the Mac Pro situation because everybody has laptops and nobody had the Mac Pro.
John:
Yeah, so it's kind of disappointing, and this is not our WWDC prediction show, but I feel like this does strongly influence what we're all going to expect from WWDC, and the short answer is don't expect the 16-inch.
Marco:
Oh, yeah.
Marco:
I mean, I think this – it is possible that they would announce it at WWDC, but I think it's very unlikely now.
Marco:
I mean, I did think, like, technically the WWDC keynote is within the Apple Store 14-day return window.
Marco:
From the date these are announced.
Marco:
In reality, I think it's very unlikely we're going to hear about any new laptops then.
Marco:
I think doing this right before the keynote is clearly a deck clearing move that they are making room for
Marco:
whatever's going to be in the keynote, to not be tarnished by us saying, oh my god, you released new MacBook Pros with the same keyboard that we all have problems with?
Marco:
They didn't want to do that, obviously.
Marco:
So that's why this happened now.
Marco:
And so I think what we're going to get in the keynote is...
Marco:
either no hardware.
Marco:
This is not the production show.
Marco:
I know.
Marco:
Gruber had a nice article about how it's probably not no hardware because they would have probably said that by now.
Marco:
So I'm guessing we will see the Mac Pro teaser.
Marco:
I don't think we're going to see a Mac Pro release, but I do think we'll see a Mac Pro announcement and a teaser and maybe for sale later this year kind of thing.
Marco:
And then by having the laptops...
Marco:
have this update now two weeks ahead of time that will make us not complain about the lack of that 16 inch that we all want and the new keyboard that we all want like we won't be talking about that when we when they want us to be talking about the new APIs the new SDKs and possibly the new Mac Pro
John:
This, by the way, in the history of Apple keyboard band-aids, this is the first band-aid that they have explicitly said is meant to address reliability.
John:
Before, we all knew the membrane was meant to address reliability, but it's not what they said.
John:
So now it's like Apple being honest with us, saying what we all know to be true, they're making progress.
John:
They're like Apple's going to therapy.
John:
It's like, good.
John:
The first step is admitting your keyboard has a problem.
John:
Admitting it in public.
Marco:
to the press well and a lot of people are are disappointed in that they haven't you know said or done more but keep in mind like you gotta figure that you know be realistic this is a public company dealing with significant product flaws that are the subject of active litigation like they can't say a lot about that it's kind of amazing they've even said as much as they have
Marco:
And I think that's why most of the keyboard-related info on this release was provided to press on background during phone calls.
Marco:
So that means no direct quotes, and the Apple press release does not include anything about the keyboard.
Marco:
It's not even mentioned.
Marco:
Because they probably have to be very careful, because they are a public company dealing with things they're being sued over.
Marco:
And dealing with flaws in their current product line in a lot of cases.
Marco:
The change to this keyboard, even if it does fix the problem, which we won't know for a while probably, but even if it does fix the problem,
Marco:
It doesn't help anybody who bought the last ones or who buys the ones that are still for sale that don't have this keyboard, which includes all of their current models except for these new Touch Bar models.
Marco:
And only the MacBook Air out of the other models can even be updated to this keyboard during service.
Marco:
If you buy the 13-inch without Touch Bar, the Escape, or if you buy the 12-inch,
Marco:
you can't even get this keyboard in service afterwards.
Marco:
So those models are still being sold with a keyboard that they're basically not quite saying, but if you do the logic, they're basically directly saying like, oh yeah, those keyboards will break a lot.
Marco:
And they're being super careful about how they word this and they're trying to keep everyone focused on how great these MacBook Pros are, how fast they are and everything.
Marco:
But we all know the elephant in the room is like, these keyboards have big problems and
Marco:
This fix, not only might it not work, we don't really know yet, but it's also only on two of the models and being eligible for a third.
Marco:
But there's like two other models in the lineup that just have no luck with this, I guess.
John:
I feel like these new MacBook Pros are like the Mac Pro in one particular way, in that at a certain point, the Mac Pro entered this realm where if you saw someone buy it, you knew it was because basically they had to.
John:
Like, well, we need something now, and so I'd rather not buy this, but I'm going to.
John:
So I feel like, obviously among the general public, this is not the case, but among the Apple enthusiast, computer nerd people who are on this program and are listening to it,
John:
if you find yourself buying one of these new laptops you're either unreasonably optimistic about the uh the prospects for this keyboard or it's like i just i need a laptop right and i can't wait for whenever the heck this mystical 16 inch is going to come out or maybe i don't even want a 16 maybe i want a 13 inches like i can't wait around for this i need a laptop now and i have to buy one and you just you go with the best that's available and you deal with the four-year
John:
uh you know extended warranty on the keyboard and you deal with oh we didn't mention this that they've been doing this for a couple announcements about this for the past month or two about how they're trying to turn around the keyboard repairs faster because they are common uh and it's a pain to be without your computer for a week at a time so now it's like only a day or two and they're prioritizing those repairs so everyone is acknowledging this is not a great situation if you need a laptop what choice do you have you can have to get one these are the only ones they offer they all come with various levels of crappy keyboard and
John:
We give you an extended warranty, and if you have a problem, we'll try to turn around your repair fast, and we're all just waiting patiently for good laptops to come out of Apple for a change.
Marco:
All right, thanks to our sponsors this week, Linode, Boosted Boards, and Apollo.
Marco:
And we will see you next week.
John:
Now the show is over.
John:
They didn't even mean to begin.
Casey:
Because it was accidental.
John:
Oh, it was accidental.
Casey:
John didn't do any research.
Marco:
Marco and Casey wouldn't let him because it was accidental.
Marco:
It was accidental.
John:
And you can find the show notes at ATP.FM.
Marco:
And if you're into Twitter, you can follow them at C-A-S-E-Y-L-I-S-S.
Marco:
So that's Casey Liss, M-A-R-C-O-A-R-M-E-N-T, Marco Arment, S-I-R-A-C-U-S-A, Syracuse.
Marco:
It's accidental, they didn't mean it.
Casey:
Did you try DaVinci Resolve?
John:
That was recommended a lot too.
John:
For the preview for video?
John:
Yeah.
John:
no you didn't see that recommended am i forgetting what that davinci resolve i've heard of that before but i i don't know what it is i i assumed it was like a more advanced video editing tool world's only solution that combines professional 8k editing color correction blah blah yeah is it free i don't know i can't imagine oh i found i found what you need let's see i'll put this in the chat room this is the setup that you need
Marco:
what is going on here what is that control surface oh my forget about your microsoft sculpt keyboard check that out how can you edit video without that ask yourself that wow i love the i love the giant like lever with the handle on the left oh yeah like right by her left hand there that's that's when you want to take off exactly yeah it's a full throttle ahead
Marco:
Oh, wouldn't it be great if that would control your CPU speed?
Marco:
Oh, God.
Marco:
Like the old turbo buttons, but now you have this giant... The turbo lever.
John:
Yeah.
John:
Oh, man.
John:
Like a boat throttle.
John:
This has three track balls, each with three buttons above it for your three hands, like the Nintendo 64 controller.
Casey:
That's fantastic.
Casey:
This is what I need when I finally finish my Tesla video.
Casey:
I need all this.
Casey:
Lookit, there's even a Wacom all the way on the left.
Marco:
Next to the coffee cup.
Marco:
Right.
Marco:
It's hilarious because you can't even reach that.
Marco:
Why is that even there?
John:
oh look it's a mac pro yeah hiding in the corner oh yeah you thought it was a potted plant with no plant in it but it's not i didn't even see that can the mac pro even drive all those displays they're small they look small under thunderbolt 2 you need another mac pro to run that controller though yeah right