The Reality of Magnets
Marco:
I crashed my drone today.
Casey:
I didn't realize you still used your drone ever.
Marco:
This was the first time I used it in probably a year.
Casey:
Well, that'll teach you.
Marco:
Yeah.
Marco:
The first time I've ever had a crash also.
Casey:
Yeah, what'd you do?
Marco:
Yeah, I was... So our neighbors across the street are having an issue with some critters getting into their attic space and they wanted to... I offered to help them look around this area around their roof that's hard to see from the ground.
Marco:
And I said, hey, if you want, I have a flying camera.
Marco:
We can look at it.
Marco:
We can inspect it really nicely.
Marco:
And we can try to see... Because they were trying to figure out where they might be coming in from.
Marco:
If there's anything we can spot.
Marco:
So we waited for a time when it was not very crowded.
Marco:
Because I don't want to be a jerk.
Marco:
And flew it up there.
Marco:
And my skills have not atrophied too badly.
Marco:
With one minor exception that I crashed it.
Marco:
But so...
Casey:
Other than that, Mrs. Lincoln had the plan.
Marco:
Yes.
Marco:
Besides that, I was flying around this part of the roof that sticks up, and I was trying to get down low so I could see under the eave.
Marco:
So it requires flying low and close and then looking up from the drone.
Marco:
I gave a small haircut to a nearby plant, and that's fine.
Marco:
It survived that.
Marco:
And the whole time, it's beeping like crazy because I'm getting very close.
Marco:
It has the proximity sensors that have a radius of something like I think four to eight feet.
Marco:
It's pretty far that it senses.
Marco:
And so it's pretty hard to fly close to anything without it freaking out.
Marco:
But I try to look and peer under an eave, and I move it over a little bit, and it gets close to a different section of the roof that is sloped.
Marco:
I didn't crash into that roof segment because I knew it was there, but I got close enough to it that the drone said landing because it thought that I had gotten so close to a surface that I was intending to land it on that surface.
Marco:
Now, once it says landing, no matter how hard you push up on that stick, it will land.
Casey:
No, there's a way.
Casey:
I honestly don't remember off the top of my head.
Casey:
I think there's a way to cancel it.
Casey:
You have to like point both sticks to the upper or you go diagonally in on both sticks or maybe diagonally out on both sticks.
Casey:
I can't remember what it is, but I think there is a way to cancel it.
Casey:
But yes, I in the heat of the moment, I probably would have ended up landing the thing by accident as well.
Marco:
And I was only a couple of feet above this segment.
Marco:
I knew I was getting close to it.
Marco:
That was the point.
Marco:
I could see it in my line of sight from across the street.
Marco:
So, like, you know, I knew it was fine.
Marco:
But when it said landing and it proceeded to try to land on a very sloped section of the roof, it failed to correctly land and rolled down the roof and got snagged in the gutter.
Marco:
Oh, no.
Marco:
Now, it's the summertime.
Marco:
It's, you know, two story roof and there's not super easy access to it, but they had like a deck on one side.
Marco:
So I'm like, all right, let me see if I can crawl up there.
Marco:
They had a ladder and a deck.
Marco:
I'm like, all right.
Marco:
So I crawl up on the roof, but it's on the other side of the roof from where the ladder could access.
Marco:
So, all right.
Marco:
So I go, I like crawl across the roof.
Marco:
Did you have, did you have gloves on?
Marco:
I didn't have, I was wearing shorts and a short sleeve t-shirt.
Marco:
Great for crawling on hot roofs.
Marco:
Yeah.
Marco:
I'm covered in sunscreen and sweat because it's July and it's very hot and I've had a lot of sunscreen on.
Marco:
So I'm like greasy and hot.
John:
That's because you learned that Tiff likes that.
Marco:
Yeah.
Marco:
And I'm crawling around on this incredibly hot roof.
Marco:
Eventually, I get across the roof.
Marco:
I cut up my elbows and knees a little bit from all the tar shingles, but I couldn't get close enough to it because that face of the roof was super hot.
Marco:
And I touched her for a second.
Marco:
I'm like, you know what?
Marco:
I can't safely do that.
John:
And you were thinking, you know, if John was here, he would have told me to wear gloves before I wound up on that roof.
Yeah.
Marco:
yeah right so i like shimmy back over to the ladder get myself safely down and then proceed over the next like half hour with my neighbor to devise various schemes because one of its little arms was sticking out like out from the gutter from so you could see it from the bottom why didn't you just go get gloves and jeans once i went up there the first time i'm like you know what this might be a bad idea you
Marco:
just decided this is not for you.
Marco:
Roops are not for you.
Marco:
Well, yeah.
Marco:
I mean, it was kind of hazardous.
Marco:
Once I was off the roof, I'm like, you know what?
Marco:
That was a stupid idea.
Marco:
I shouldn't go back there.
Marco:
That was not safe.
Marco:
So we proceeded over the following half hour to like
Marco:
throw ropes at it trying to like lasso it to pull it down it's like trying to get a ball out of a tree by throwing other balls at it you know that one when you're a kid yeah and there's like that children's book where they just throw everything into the tree it all gets stuck so i'm finally like finally i successfully did manage to hook it while like hanging out a second story window like throwing it underhand like a lasso it was it was the most ridiculous scene you should have you should got like a drone so you could get a better view of it
John:
It would actually have been much easier with a second drone.
John:
Send up, yeah.
John:
Send up the second drone to get the first drone.
John:
As soon as just drones filling the gutters from edge edge.
John:
Drones all the way up.
Marco:
Yeah.
Marco:
And I'm happy to report that I did eventually snag it with the rope.
Marco:
It fell off of a two-story tall gutter.
Marco:
Oh, no.
Marco:
Hit a couple of tree branches on the way down and landed in the next neighbor's sandy garden.
Marco:
And it totally seems to have survived.
Marco:
It was able to fly afterwards.
Marco:
I didn't even lose a propeller.
Marco:
It seems like it's totally fine.
Casey:
That's very surprising.
John:
I mean, other than the feeling of betrayal it surely has now.
Casey:
Oh, yeah.
Casey:
All right.
Casey:
We have actually what I think might be a busier show than one would expect, given that we just recorded two days ago.
Casey:
So we should probably go ahead and get started.
Casey:
So let's do some follow up from two days ago, starting with Anthony Lee, who said, no, I really hope the new tab Safari options stay on like the ATP FM folks.
Casey:
I love the new single bar Safari UI.
John:
I just want to put this in here because this is one of a handful of people saying they really like the old Safari UI.
John:
So for several shows, we've been saying we have seen literally zero people say they liked it.
John:
Finally, they've come out.
John:
Not a lot of them, but people do exist who like the compact Safari UI, which you can still get, by the way, through a preference.
John:
And we'll have more on that in a bit.
Marco:
Although I still have not heard from people who love the iPhone version.
John:
I think there might have been one.
John:
This was specifically talking about the Mac.
John:
I think there might have been one person who liked the iPhone one.
John:
But anyway, there's, put it this way, it's like the law of big numbers.
John:
Like there's so many iPhone users, and I know not everyone uses the beta or whatever.
John:
Inevitably, there will always be somebody who likes pretty much any UI.
John:
You know, we kept making extreme statements about it because we literally had heard from zero people.
John:
I just wanted to say that that is now not the case.
John:
But
John:
But yeah, just because there are some people that like it doesn't mean it's good and you should keep it.
John:
You're really trying to make the most people happy that you can with your UI.
John:
Make it usable by the largest number of people.
Marco:
It's worth considering if you're going to either defend their decisions so far or if you're going to propose new alternatives.
Marco:
you can have a goal of like, hey, I want to enable this new cool feature.
Marco:
Say, you know, like the new one enables the swipe gesture to switch between tabs and everything.
Marco:
Or like, there's usually some kind of benefit to some kind of new UI.
Marco:
But is that worth it at the expense of the common actions done by millions or possibly billions of people around the world every single day in one of the most commonly used and most critical apps on the phone?
Marco:
If you're going to have major changes to Safari, especially on the iPhone, you have to be really sure that they're going to work for everybody.
Marco:
You have to be super conservative with that because it's such a core app that's so important.
Marco:
It's like the settings app.
Marco:
You have to be really careful with that because so many people use it all the time.
Marco:
And alternatives are kind of difficult to make and to use.
Marco:
So...
Marco:
They have to be as conservative as possible with the UI of Safari.
Marco:
That is not a place to do radical experimentation, especially if the main thing that experimentation enables is a power user gesture.
Marco:
That's not a good balance of those needs.
Casey:
Dan Blondell writes, the weird Safari decisions on iOS at least make more sense in the context of AR.
Casey:
Floating controls, swiping between tabs like cards, etc.
Casey:
I assume that AR interfaces will be so new to users that Apple will want to do whatever they can in advance to tee up the existing UIs so some elements are familiar.
Casey:
Now, I didn't think about this, but this is a very smart take.
Casey:
I dig this.
John:
Is it though?
John:
Ouch!
John:
Here's the thing.
John:
The kernel of truth, the part of this that I think is a real thing is Apple for sure has in the past handful of years really made a concerted effort to try to strengthen the family resemblance of its software experiences.
John:
It doesn't mean they're going to make everything look exactly the same, but
John:
There were various times in the past where iOS and macOS, even though they both had kind of like an Apple flavor, they might as well have been designed by entirely different teams.
John:
Obviously, macOS 10 existed for years before iOS did, and then iOS had to kind of be its own thing.
John:
It's a very different context for the two things.
John:
But there was a time when they started to come back more towards each other.
John:
And having things look like they are part of the same family
John:
is desirable um some of it is in terms of recognition like oh i've seen this control before and when i see it i think it will behave kind of like this and so the appearance and my expectations for the functionality are paired together it's less to learn you know this all makes good sense
John:
But there is a limit to that where now you're making things the same when you know for a fact that the use context is different.
John:
One is touch and one is mouse and trackpad.
John:
One is a gigantic screen.
John:
One is a tiny phone.
John:
Like there are so many differences about the usage context, right?
John:
So the idea that Apple would make a UI on the Mac to try to sort of lay the groundwork for familiarity of look and feel of controls for AR...
John:
Like, I'm sure whatever the AR experience is, we'll probably try to have some kind of family resemblance, but you would never want to make decisions on the Mac in an effort to get people ready for a UI that doesn't exist yet, that is incredibly different than the Mac, because AR is about as different from, probably even more different from the Mac than the Mac is from the iPhone.
John:
You really need to make a UI that lets people use the thing that the UI is on, and
John:
Maybe like as a fifth order concern, you want a family resemblance for a familiarity of controls or whatever, right?
John:
But I have to think that there is almost nothing in the new Safari UI that has anything to do with any effort to try to make people familiar with an upcoming AR interface.
John:
And if there is, that's a bad idea.
John:
Just make Safari have a good UI.
John:
Maybe like, again, third order concern, make it look like it's part of the family with the existing products.
John:
And, you know, AR is going to have to do what it has to do.
John:
And I feel like what AR has to do is it has to fit into the existing family resemblance while being a good UI for AR, which is very different from the other things.
John:
So I really hope there's no reasoning whatsoever.
John:
like i mean a lot of people said they thought these safari tabs look like touch targets or whatever like that's bad because they're not right if apple wants to make touch base max that makes a lot more sense but they don't have touch base max so don't make it look like it's touch base so yeah it reminds me of iphone where i can touch things but of course you can't touch these and it's like well then what's the point um so i i hope this is not true
Marco:
Yeah, I mean, I think if anything, if there is any relation between an assumed AR interface library that they are presumably developing, if all those rumors are true, and this, I think it's not necessarily that they're designing this to prepare us for AR.
Marco:
It's probably more like the designers think a certain aesthetic and style is cool right now, and they're using it in both places maybe.
Marco:
But they're not doing it for usability reasons.
Marco:
They're doing it because that's their current style.
Marco:
A long time ago, John Gruber gave this conference talk.
Marco:
UI design kind of has fashion phases.
Marco:
It goes through fashions, basically.
Marco:
It isn't just like we discovered this is the scientific ideal of the usability of a button, and this is how all buttons will look forever.
Marco:
It's more like this style is in fashion right now, this style is out of fashion, and the actual usability of those things is pretty far down the priority list in practice these days, which that's still an argument.
Marco:
I don't necessarily think we have a good balance of that, but UI design is very current fashion-based.
Marco:
It has its own fashions, and things go in and out that are separate from usability or certain devices' needs.
Marco:
If this is like how their AR and development interfaces look, that's probably why, not because they want to prepare us ahead of time.
Marco:
Like it's probably just right now Apple thinks this look is cool and their UI designers wanted to do it and they did it.
Marco:
Like that's, that is, that is the most likely explanation for this, not some kind of grand plan about AR.
Marco:
Do you think the people working on the Safari UI are disclosed on the AR UI at all?
Marco:
Probably not.
Marco:
I mean, maybe some of the very highest level UI design leads might be, just because they might be tasked with making that UI as well.
Marco:
And maybe they might set direction.
Marco:
But I don't even know if the shared disclosure would even go that low in the organization, even to the UI people.
Marco:
I don't know.
John:
I mean, if you think about it, though, this design, the design for the Mac thing is so focused on a need that...
John:
is fairly mac specific which is conservation of vertical space right i don't know what aspect ratio the ar glasses will be or whatever but like it's so it's so uh like condensing that ui and getting it up out of the way is such a you know thing to do on desktop computers if you want to say vertical space who knows what the constraints will be in ar will vertical space be the constraint will there be any chrome at all where there be such a thing as a window let alone a toolbar right and
John:
And if the AR Safari comes out and has a bunch of rounded rectangles, people are going to say, see, it's just like Safari 15.
John:
As Steve Jobs said, rounded rectangles are everywhere, okay?
John:
Just because the AR interface has rounded rectangles does not mean it's like the Safari UI.
John:
How are you going to interact with them in AR?
John:
Are you going to have a mouse?
John:
Are you going to have a trackpad?
John:
Maybe, probably not.
John:
How are you interacting with Safari 15 on the Mac?
John:
Do you touch the Mac?
John:
No, you don't, because it's not a touch interface.
John:
I know they look kind of like touch targets, but at this point, with the aesthetic being so simple, you will always see aspects of one interface somewhere else.
John:
But honestly, making a good interface to anything is really hard.
John:
And if you are saddled with trying to, like it's like a strategy tech, saddled with doing literally anything other than trying to make the best UI possible for the functionality in the app that you're working on, like, oh, you can make an app, but not only do you have to make it good, but also make sure it looks like this and it looks like that and incorporates this element and does this trendy thing.
John:
That's just making, you know, it's just making more work for yourself and making it harder and probably making your UI worse.
Casey:
All right, so maybe it wasn't such a great idea after all.
Casey:
I still thought it was clever, but never mind.
Casey:
Guy English wrote with regard to Mac Safari's tab close UI.
Casey:
Guy says aiming at an icon shouldn't destroy the object it represents.
Casey:
That's a pretty good summary.
John:
What he's getting at is that in the Safari tabs on the Mac, the way the little tabs look is little rounded rectangles as you see the fav icon for the website and then some text that they try to jam in there, right?
John:
And so how do you close a tab?
John:
In the previous versions of Safari, there was sort of a dedicated blank space to the left of the fav icon that you would use to close a tab.
John:
And there's nothing there looking at it because Apple doesn't want visual clutter.
John:
But as soon as your mouse enters the tab in Safari, you know, in current version of macOS, the little X appears.
John:
And then you click on the X and the tab closes, right?
John:
But in the new version, the Monterey version, the little tabby things don't have any room for that X to appear.
John:
So when your mouse enters the little tabby thing, the fav icon is replaced by the X.
John:
So if you were to just see the little fav icon and go reach up to it, which is a thing and try to drag it somewhere, which is a thing a moderately experienced Mac user might do, because for a long, long time in macOS, when you saw in the sort of title bar-ish area of the window, an icon and then some text next to it, which kind of represented the title of the thing, that icon is very often a proxy icon that you can drag.
John:
to represent the thing, whether it's the document or whatever, or even in previous versions of Safari and other web browsers, if you grab the fav icon and drag it to the desktop, it'll save a web location to that website.
John:
It'll save the URL.
John:
This is something to expect, just based on experience of...
John:
This is a common UI idiom.
John:
It's not really formalized in the human interface guidelines, except maybe the proxy icons are.
John:
But for literal decades, this is the way things work.
John:
If you do that on Monterey Safari and go try to grab that fav icon, you can't grab it because as soon as your mouse enters the tab, that fav icon becomes a close button.
John:
And if you don't notice that and just go grab and click, you will close the tab that you were just trying to do something with.
John:
Now, there's a way to get it back.
John:
You can do a key combo.
John:
I think undo might even work.
John:
I forget if it was command shift T or maybe that's Chrome.
John:
Anyway, there's a way to get the tab back.
John:
So it's hopefully non-destructive unless you're in the middle of filling out a form or writing a giant post in the CMS, which you should never, ever do.
John:
But everybody knows this.
John:
but yeah, that's what guy is getting at.
John:
He filed, he filed, the reason he mentioned this is he filed a bug on this back when the original version of Monterey Safari came out and today making the fav icon essentially turn into the closed box.
John:
Probably not what users expect.
John:
And Apple closed the bug as part of this sort of redesign.
John:
Like, Oh no, all those like guys, uh, guess is like, they just kind of lumped together all the complaints about the Monterey Safari thing.
John:
And I said, yeah, no, we changed our mind.
John:
We're going back to like a more traditional one.
John:
I was discussed in the previous episode.
John:
Um,
John:
But he just refiled it and said, yeah, but my specific complaint was not the tabs are all combined with the toolbar and blah, blah, blah.
John:
My specific complaint was I go for the icon.
John:
It becomes a closed box.
John:
And they did that, of course, to save horizontal space, which was super important to do when everything was on one line.
John:
And every time you clicked on the tab, it expanded into the address bar.
John:
But now that the tabs are on their own line again, I feel like they have the breathing room to give the closed box more space.
John:
Honestly.
John:
Like, you know, we know from hearing from various sources that more changes are coming to all the versions of Safari.
John:
They're not done fixing it.
John:
Right.
John:
So it's not fair to take judgments now.
John:
But I look at the way they've reverted.
John:
It's like at this point, just go back to the previous one, because there's nothing in nothing in the newly reverted one that has any benefits.
John:
over the old one it's just weirder and worse so just you know if you're gonna have two ui modes have one be the new one that anthony likes and two other people and one be and one be the existing safari ui that works fine we'll see we'll see what they do in future betas
Casey:
So we were talking about having preferences in order to enable or disable new Safari user interfaces.
Casey:
And one of us, probably John, said, you know, I can't think of any other apps that have multiple complete user interfaces.
Casey:
And a friend of the show, Daniel Joukot, reminded us that Mail is an Apple app that has two completely different UIs.
Casey:
And also Outlook on the Mac, if you have to use that, I'm so sorry, John.
Casey:
And NetNewsWire also fall into similar categories.
John:
Yeah, the reason I thought of NetNewsbar and Outlook, and the reason it's interesting that there's three of them is that it's exactly the same choice in all of them, right?
John:
So when we're talking about what alternate interface is there in mail, people might not know if you just use Apple Mail in sort of its default configuration, but it's basically like,
John:
a three column view where the left is the top level and then and then you click on something in the left and then the column to the right of it is a drill down to that level and then the column to the right of that is a drill down into an individual message so it's like mailbox list of messages in that mailbox and then the message you have selected
John:
like column view, like column view in the finder.
John:
It goes from general to specific, left to right.
John:
I don't know if it's actually reversed in right to left languages.
John:
But anyway, that is the default interface to Apple Mail.
John:
But it has another interface where it does mailboxes on the left,
John:
the currently selected mailbox on the top part of the remaining right portion and then the message on the bottom part of the remaining right portion that's me right and those two views left to right columns and column and then two things on top of each other column row row i don't know what you want to call them there some people prefer one some people prefer the other and all three of these apps
John:
Apple Mail, NetNewsWire, and Microsoft Outlook support both of those interfaces and have for years, for years and years and years.
John:
And it seems like, although NetNewsWire recently didn't support the other one, but I think NetNewsWire is going to bring back the other one.
John:
And it's kind of like the scroll direction where I think in the beginning they were like, oh, everyone will just switch over to three column view because everybody likes it better.
John:
And a bunch of people were like, no, I don't like the three column view.
John:
I like column row row.
John:
And there was just no way to get enough people to agree that one of them is better than the other.
John:
So all three of these applications, which do similar things and, you know, sort of have the same kind of hierarchy of thing, list of things in the thing and then the thing, right?
John:
Just continue to ship with these, quote unquote, two different UIs.
John:
Now, they're not really that different.
John:
It's not any different than saying, oh, the Finder has five different UIs because you can do list view, column view, icon view, you know.
John:
If you think of it that way, it's not like they have two entirely different UIs, but it is roughly analogous to the small UI that Safari has, which is the part that's not the web page in every web browser window, which is the tabs, the address bar, the toolbar.
John:
If you can totally change that, as you can in Monterey Safari right now, that's kind of the equivalent of just saying, how do you want that thing to look?
John:
I want it to look like this, you know, three columns or a column in two rows, right?
John:
uh i'm hoping and expecting that the safari like i don't see a need for the safari one to support these two because as previously established it's not as if it's like close to 50 50 in terms of preference for the new ui it's just anthony and three other people and then literally everyone else in the world hates it
John:
So I don't expect, I don't think like that Apple's like, well, we need to preserve this UI from the betas of Monterey for the people who did like it.
John:
It just kind of seems like a hangover or like a, you know, letting down gently the people who are proponents of that UI within Apple to even keep it in the, you know, keep it in the app as an option.
John:
I really hope by the time they ship, they pick one UI and then it is not the new one.
Marco:
We are sponsored this week by Memberful who lets you monetize your passion with memberships.
Marco:
Memberful lets you, the content creator, sell memberships to your audience.
Marco:
It's used by the biggest creators on the web.
Marco:
And this helps you build sustainable recurring revenue from your audience.
Marco:
I would never use a platform that would...
Marco:
Take control of the relationship between me and my audience or me and my customers for me.
Marco:
I want to own that relationship as much as possible.
Marco:
And Memberful lets you do that.
Marco:
They let you retain control over all of that.
Marco:
And Memberful seamlessly integrates with the tools you already use.
Marco:
And they have a world-class support team ready to help you get going, simplify your memberships, grow your revenue, whatever you need.
Marco:
They are passionate about your success, and you will always have access to a real human at Memberful.
Marco:
You can get started today for free with no credit card required.
Marco:
Memberful.com slash ATP today to get started.
Marco:
Once again, go to Memberful.com slash ATP today.
Marco:
You can get started.
Marco:
Again, no credit card required.
Marco:
It's a real trial and you get to keep so much control of Memberful.
Marco:
That's the way to do it.
Marco:
So memberful.com slash ATP to monetize your passion with membership.
Marco:
Thank you so much to memberful for sponsoring our show.
Casey:
Ben Goldmer writes dark rooms, flag and reject workflow is way faster for me than anything photos does.
Casey:
And we will provide a link to the information, the website about the app.
Casey:
And then apparently somebody wrote a medium post about why this is better.
Um,
John:
Yeah, this is the first of a lot of feedback items, really talking about an area of Apple Photos that I haven't explored, mostly because Photos serves my needs more or less.
John:
But two things.
John:
One, it's possible to make a Mac app that reads and understands Apple's photo library.
John:
I'm assuming this is an official API because there are a lot of apps that do this.
John:
So Darkroom is one of those apps.
John:
I'm not sure if Flag and Reject is its flagship feature, but apparently it does it really well.
John:
So if you want to have an app that does better than photos and sort of going through your pictures and deciding which ones you like and which ones you don't, check out Darkroom.
John:
Check out the blog post to describe the workflow.
John:
That's not its only feature.
Marco:
It's like a massively featured app.
Marco:
I haven't actually used it before, but it has a lot more than that.
John:
Yeah.
John:
Yeah.
John:
And then the second thing is most of these apps, like the way Apple does extensions to other apps is you have to ship your extension inside another app.
John:
So you can do what I do with my silly reload button, which is you ship an app that does nothing and its only function is to contain the app extension.
John:
Like that's where the extensions live.
John:
They live inside my app as an app extension.
John:
Yeah.
John:
And then Safari, through the magic of Apple's extension mechanism, can see all the little extensions that live inside other apps and say, oh, within Safari, you can use these extensions to put a toolbar button up or whatever.
John:
Apple Photos does the same thing.
John:
So you can download either a little container application or a giant full-fledged application, and they may also have buried inside them, in addition to their application, an extension for Photos.
John:
And one of the types of extensions that Photos supports is what they call an edit extension.
John:
In addition to things like Mimeo for like a book printing extension or whatever, but an edit extension is what it sounds like.
John:
If you see a photo inside the Apple Photos app, you can use an edit extension to say, I want to edit this photo, but I don't want to edit it with Apple's Photos app.
John:
I want to edit it with the extension from this app.
John:
And you won't leave Apple Photos.
John:
That extension will show its UI inside Apple Photos, right?
John:
It's kind of like OpenDoc, but not really.
John:
So you can use more powerful editing tools within Apple Photos without launching the other standalone app without using the standalone app, just getting access to their editing tools.
John:
So both of those things I haven't really investigated alternate apps that are alternatives to photos that read the same photo library or edit extensions.
John:
And Darkroom is the first of those that was suggested to us.
John:
so would you like to talk about the second then sure um kyle mcmahon had another suggestion this one is called raw power um which yeah okay i can see what you're doing there sounds like a powder i would be taking yeah uh but yeah kyle says since you guys are into icloud photo library as a library sync layer but less as less into it as a photo editor you should look into a mac and ios app called raw power i only looked at the mac version of this by the way but apparently it's an ios as well
John:
The developer is Nick Bahad, who worked at Apple and the Apple photo apps group, including back in the days of Aperture.
John:
The app positions itself of being particularly good for raw photos, but it absolutely works with JPEGs files as well.
John:
The app has a standalone mode, but in my mind, the real magic is a mode where it can essentially be a third party front end for your photos library, iCloud syncing it all.
John:
The developer, being an Apple alum, is calling into the same system image editing framework as Photos.app does, and you may prefer the app's interface or results and the fact that it exposes more of Apple's raw engine controls than Photos does.
John:
And we'll put a link to a video introduction from the developer.
John:
Kyle continues, big caveat.
John:
Before you go all in on editing extensions for Photos.app, understand the implications of when your saved non-destructive edits are from an extension, not Apple.
John:
Because photos.app can't... I keep reading photos.app because that's what the person wrote, but I hate that.
John:
Because Apple Photos cannot depend on the extension always being installed, extension editors have to render out a full-quality copy of your photo.
John:
If you uninstall the extension, your only options for adjusting the edit are to start over.
John:
So that's important to remember.
John:
It's not like it destroys your original, but because photos can't just expect that extension to always be there...
John:
If you do a bunch of edits, it has to, like, sort of save out your edited version and say, okay, you did a bunch of edits with this editing extension, and alongside the original, here is your edited version.
John:
If you uninstall that extension and say, oh, I changed my mind, I want to brighten it up a little bit, because you don't have the extension anymore, you can't bring up that picture again and adjust the brightness slider because you literally don't even have that extension anymore.
John:
And so it always burns in your edited version.
John:
Again, it doesn't overwrite your original, but it's not as flexible as using...
John:
photos where you never will sort of burn in a copy that is visible to you you'll always have access to the original you can always go back and readjust but anyway i took a look at this raw power thing it is both a standalone app and it is an editing extension as far as i can tell the editing extension looks like it has pretty much all the controls of the standalone app for the one specific task of editing but if you use a standalone app it seems like i don't know if you can use it as a replacement for photos or
John:
But it basically looks like photos.
John:
I was amazed.
John:
I launched it, and it says, hey, do you want me to point myself at a folder full of photos or at your library?
John:
I said, here you go.
John:
Point at my library.
John:
And it said, okay, I found 140,000 photos.
John:
It's like, wow, you did find 140,000 photos.
John:
And there they all are.
John:
And you can scroll through them.
John:
Again, it's not duplicating.
John:
It's just reading my photo library.
John:
So I paid for it.
John:
It's like 50 bucks.
John:
I paid for it, you know, one time $50 fee.
John:
That's it?
John:
Yeah, the Darkroom one I think is a subscription thing, but I think it's pretty cheap.
John:
I bought it.
John:
It's a $50 app and it has way more editing controls than photos.
John:
Now, I don't use Lightroom.
John:
I'm sure it has.
John:
I'm sure it's better than this or whatever.
John:
Who knows?
John:
But because this is a developer who worked on the Apple Photos apps, I'm assuming they are very familiar with Apple's formats and it really does expose stuff like you can adjust the depth on the portrait mode pictures and stuff like that.
John:
It has, you know,
John:
All the things that I talked about not having in photos like the lens correction distortion and much better controls for finding areas that are clipping and stuff like that.
John:
That's all in this.
John:
I was pretty impressed by it.
John:
I'm not sure how much I'll use it, but I like I like being able to have.
John:
uh another go-to app where i don't have to sort of change what i'm doing i don't have to suddenly use lightroom or something i'm still just dedicated to my one photos library but if i want to do an edit that photos can't handle rather than like exporting it into photoshop and then re-importing it or by the way within photos you can you can say edit in and then select an application and select like acorn or photoshop that's different than editing extensions right but anyway i don't have to commit to a new library format or anything like that but i
John:
there's more i have more options for how i want to do edits than just the tools that are in photos and i say again looking at the raw power thing it made me kind of appreciate the apple photo controls because they are so dumbed down and simplified that 99 of the time what i want to do is there but for that other one percent especially for raws which i do have a bunch of it's nice to be able to have a slightly fancier app that doesn't require me to like buy in on lightroom or whatever
Marco:
I like, too, how I've never tried these apps that integrate with PhotoLibrary, but I like that, theoretically, you could use both.
Marco:
Because if they're using the Apple Photos or iCloud PhotoLibrary as their data store and sync layer,
Marco:
You don't have to just choose one app that you do everything in.
Marco:
You can try different ones.
Marco:
You can have different apps for different tasks or for different needs.
Marco:
You can switch between them at will.
Marco:
And that's a really cool thing to me that I love the editing controls in Lightroom.
Marco:
I just was never really able to achieve the kind of success and integration I wanted with Lightroom as the storage and sync layer.
Marco:
I want to keep using Apple Photos as my storage and sync platform.
Marco:
It's already there.
Marco:
It gets all my photos automatically.
Marco:
It gets everything from my phone automatically.
Marco:
I'm already paying for it.
Marco:
Everything's already synced and backed up and everything.
Marco:
So that's great.
Marco:
I don't want to join someone else's cloud and use someone else's platform or have my fancy camera photos separate from all my phone photos for no reason.
Marco:
I don't want that.
Marco:
So this kind of, I guess, API for other apps to be able to work against the Apple Photos library
Marco:
that's really cool.
Marco:
And the fact that there are a couple of good apps for it, I actually might check these out.
John:
Yeah, the apps are aware of each other.
John:
Like I was running Raw Power at the same time as I was running photos and I was like editing the same picture and I forget which app it was, but one of them threw up a dialogue and said, just so you know, you're kind of in the middle of editing the same picture in another app.
John:
So do you want to like discard the changes that are in progress over there?
John:
Do you like, it knows, it does like contract resolution.
John:
You can't literally edit the same photo at the same time and just like cross your fingers.
John:
So I did that.
John:
it seems like it's aware of what things both things are doing but if you wanted to for example use one run them both at the same time but use one app for like your reject like if you want to use darkroom to like sort through and reject them quickly because it's got a good interface to that and then just delete them when you're done when you flip back over to the photos you'll see those things poof out of existence just maybe don't try to edit the same photo at the same time in multiple apps because you know i raw power i think this was the app that threw up the dialogue is smart enough to know you're doing that and warn you but i can imagine other ones maybe not being so and you'll just be like last update wins and you might be sad
Casey:
So quick update before we move out of photos.
Casey:
I have, according to photos on my Mac, 73,609 photos, 4,899 videos, and I still have 20,000 left to upload as of Friday night, the 16th.
Casey:
Alarmingly, the bar, you know, the little progress bar looks like it's barely moved despite hypothetically tens of thousands of photos having been uploaded.
Casey:
So I'm not sure what to make of that.
Casey:
Again, I don't know.
Casey:
Sitting here today, I would probably change my tune in a week or two, but sitting here today, I don't know if I can recommend this to someone who has a media library of my size that wants to just dive right in.
Casey:
This is very slow, very clunky.
Casey:
I edited the...
Casey:
Dates of my videos that were from the year 3 million, and that's great on photos on my Mac, but that hasn't yet synced to any of my other devices, which is super delightful.
Casey:
So yeah, I guess this is good, maybe one day, but I'm still waiting for that day to arrive.
John:
yeah keep waiting uh you'll get uploaded eventually uh someone said in the chat room that raw power was 40 bucks not 50 so i went to the app store page to confirm that but of course i can't see the price can i i'll just go look i'll just go look at my purchases and it will show me the transaction nope yeah and dark room seems to be something like 25 bucks a year or 50 for forever so that's not bad either
John:
yeah um the other thing about uh raw power is that it has it has some even though it's reading the photo library it has some kind of metadata of its own because the first thing i tried to do when i went into it was uh filter it's you know it showed me my 140 000 photos in thumbnail view i'm like wow that was fast and then i wanted to filter them to just show the raws which is a thing you can do in an app that's not apple photos really easily
John:
um because there was a little filter thing and i clicked it and lo and behold it had controls it what it had in there was control i'm not sure if you're familiar with it but there are things you can put in a user interface like they're called standard controls where there are check boxes and there are pop-up menus and there are buttons and all sorts of things you can use to let you do things with an app uh apple just thinks either a blank gray wall or a text field that you can type things in and pray is the way to go
John:
But anyway, this had controls, and one of them said, show me only photos of pop-up menu, and in the pop-up menu was JPEG, RAW, JPEG plus RAW, and boy, it was really easy for me to check those checkboxes and flick RAW from the pop-up menu.
John:
Anyway, I'm just angry because Photos has so much space for UI, and they just deleted it all from iPhoto in favor of a super smart text field that I really don't like.
John:
um so uh when i went to do that filter i saw a little word that said indexing another thing the photos doesn't understand hey look at that tell me something right in the ui when i'm trying to do it instead of just graying it out and me saying why can't i filter why can't i select the file type oh because it's indexing and it indexed and it didn't index very long it was like maybe 15 minutes it indexed and when it was done i could say just show me the raws and boop 140 000 thumbnails got compressed down to only a few thousand
John:
with little tiny UI over the thumbnails showing a little R for RAW, a little R plus J for RAW plus JPEG, a little icon for ones that were edited.
John:
It's amazing.
John:
Like, I can understand why this person maybe left Apple.
John:
It's like, look, you can make a good photo editor if you are willing to put UI on the screen.
John:
And guess what?
John:
Raw Power has a UI for editing photos.
John:
Imagine.
Casey:
All right.
Casey:
And finally, Aaron Brager writes, with possibly the best news I have heard all week long.
Casey:
Ladies and gentlemen, boys and girls, the proxy icon can be re-enabled in macOS Monterey Beta 3.
Casey:
Woo!
Casey:
This is extremely, extremely good news.
Casey:
So what are we talking about?
Casey:
On most document-based Mac apps, anything really worth its salt, there is a little icon up next to the title of the app that you can grab.
Casey:
And when you do that, you're grabbing a representation, a proxy, of the file you're working on.
Casey:
So like in Word or in TextEdit or whatever.
John:
Finder Windows.
Casey:
In Finder Windows, you can grab that little icon and move it around your file system and it will move the original file, which is super cool.
Casey:
And it's something that blew my mind when I think it was Marco told me about this years and years and years ago before I even knew John.
Casey:
So that's why I know it wasn't John.
John:
But don't try it in Safari and Monterey because you'll just end up closing the tab.
Casey:
Why do you have to bring us down, John?
Casey:
I was so excited.
Casey:
Why do you have to be like that?
John:
It's synergy.
John:
This connects all this.
John:
This all connects up to the previous one.
Casey:
Anyway, go on.
Casey:
So the point being, you can go into accessibility, display, and there's a checkbox, show window title icons, and it will bring the proxy icons back.
Casey:
Because otherwise, in Monterey, you have to hover for unconsciously, I can't say that word, for way too long in order to get that proxy icon to show up.
Marco:
Yeah.
Marco:
And in Big Sur as well.
Marco:
One of the most common things that I use this for is if you are in a terminal window and you want to refer to a folder or file, you can drag its icon or its proxy icon from that area of the title bar into a terminal window and it will insert it as a properly escaped shell argument.
Marco:
So it's very, very handy.
Marco:
One of the most common things I do is if I have a Finder window that I want to operate on in the terminal, I will open up a terminal window and then type cd space and then drag the proxy icon there to get a terminal that's right in that folder.
Marco:
I know there are other ways to do that, but that's how I do it.
Marco:
But yeah, it's very, very common thing for me to do that.
Marco:
So very happy to see this.
Marco:
This is one of those, you know, Big Sur design regressions that I have been complaining about a lot.
Marco:
And so to have an option to fix this in Monterey is going to make me upgrade to Monterey much sooner, I think, than I otherwise would have.
John:
The interesting thing about this is that in Big Sur, there was a sort of undocumented PLS thing that you could set to reduce the delay on the animation for the hover.
John:
So it's almost like someone inside Apple at some point, I don't know if that's been there since day one on Big Sur either way, understood that it was annoying to have to wait for that hover animation and said, well, we'll just have a PLS key.
John:
So if you really don't like it, you can set the animation time to zero and then it'll just be instant, right?
Yeah.
John:
that's it reminds me of another kind of like band-aid on a bad design it's bad design to hide that icon because look is the icon useful then show it what advantage do you get not showing it ah less visual clutter we don't want visual clutter and say okay i understand not wanting visual clutter but you if you pursue that to it's to an absurd degree you end up hurting functionality you end up hiding too much ui tons of people casey was excited to learn about the proxy icon icon but
John:
If it's not even visible on the screen, even fewer people are going to discover it.
John:
And that's a shame.
John:
And honestly, is the visual clutter really killing your UI?
John:
Like, what are you even aiming for?
John:
Do people just bask in the minimalist aesthetic?
John:
I didn't think that one icon is going to hurt anything.
John:
So I'm glad that in a follow-up to that, they don't say, we just made the animation shorter or we made it instant by default.
John:
How about you just show it all the time?
John:
that's great and it does it in i'm not sure which apps it doesn't i try like it does it in preview uh it does it in the finder uh the the non-browser style finder windows always showed it but now the browser style ones show it as well uh and then where you enable this it's not a plist hacker and it's not on by default but you have to go to accessibility system preferences accessibility display and under display there is an option to show window title icons uh
John:
I mean, arguably it is accessibility, as in, hey, more people will be able to use this because now people will see it.
John:
And, you know, it's not super obvious that you can do something with that icon, but seeing the icon is a really important first step in thinking about what maybe you can do with it.
John:
I know this is an obscure feature, but it's been in macOS for decades, right?
John:
It is a power user feature, but you only really need to show somebody this feature once, and it pretty much works everywhere you expect to see that, again, with the exception of Safari tabs, because when you see an icon nexus in text and a title-ish thing on macOS, you can usually grab it and do something with it.
John:
Again, just grabbing, you get the URL in Safari, because what else are you going to do with it, right?
John:
But if it's a file, if it represents a file, like a document window or a folder...
John:
You get the thing.
John:
Well established you are.
John:
This is, by the way, predates Mac OS 10.
John:
Like this is a classic Mac OS thing, I think.
John:
Oh, I didn't know that.
John:
But it's like, it's a powerful feature.
John:
It's a useful feature.
John:
It's one of the advantages of using Mac OS.
John:
It's a thing that you can do on Mac OS in a natural way that tries to be consistent from app to app.
John:
And then, you know, apps that change or subvert it for no big gain, like the Safari one of like, well, we have to jam everything into one bar because vertical space is important.
John:
And one of the other things we're going to sacrifice on the altar of that is the proxy icons, which is a shame.
John:
Or hiding them to save visual clutter, which is kind of like just sweeping that feature under the covers, making it so people won't even know it exists.
John:
I'm not sure that's... Is that an accessibility feature or are you just fixing your UI?
Marco:
Yeah, because the reason why this is better this way is because of what we were talking about last week about stability of the UI.
Marco:
Every time you have something where you have like, okay, on hover, these things are going to change.
Marco:
Something's going to move.
Marco:
Something's going to appear.
Marco:
Something's going to disappear.
Marco:
It's confusing.
Marco:
It's jarring.
Marco:
It's unstable.
Marco:
And it makes things harder and more annoying to use.
Marco:
what you want is for the controls that you use most often to be shown exactly when you need them, which is like, it could be any time.
Marco:
So you might as well show them all the time unless there's some really good reason not to.
Marco:
And in this case, like, I mean, obviously whoever, whoever is in charge of this design, um, obviously is not giving in to the concept that it's better this other way.
Marco:
Um,
Marco:
Instead, they have yielded or been forced to yield.
Marco:
Okay, well, we can make an accessibility argument that all of this excess animation of stuff moving around, kind of in the same vein as the reduce motion option.
Marco:
Maybe that can be, you know, maybe that's, that's, you know, a bad thing for some people.
Marco:
So maybe we can make this not have this motion of this hover state.
John:
This is like the tiniest amount of motion to reduce.
John:
It's like literal 16 point movement.
Marco:
Right, but I'm guessing this is shoved into accessibility because of the internal politics of pushing back on this part of the design.
Marco:
Clearly, the people who are in charge are so minimalist right now that this kind of thing cannot just be the new way things work.
Marco:
So I think the accessibility option is the thing that the people on our side of the argument were able to get through.
Marco:
Obviously, I'm sure there's all sorts of pressures and politics inside about this because whatever we complain about, people inside Apple are also complaining about it.
Marco:
But it's just a question of who wins the argument and who has control over it at the end of the day.
Marco:
So this option shouldn't exist.
Marco:
they should just fix the design so it's always this way because there seems to be very little upside for it to be the way it is in Big Sur now, just having these things hidden and they zoom over when you hover over this one spot in the window that you wouldn't even think to hover over normally.
Marco:
It's so clumsy.
John:
It's kind of the same reason they did the change to the Safari closed boxes, because when this this UI came at the same time as they introduced the UI in the Finder and other windows where the title bar does not have its own row for itself.
John:
Right.
John:
One of the reasons proxy icons worked.
John:
And by the way, the chat room has confirmed that it wasn't classic Mac OS.
John:
At least one person has anyway.
John:
um is that the title bar in classic mac os and in mac os 10 for most windows for most of its life goes from edge to edge on the window that's a lot of horizontal space uh and you might look at that and say well what a waste of space where you you get an entire row the all that vertical space and the only thing you're going to put in there is the title the reason it's good to have all that vertical space is first of all sometimes windows aren't that wide they might be narrow and second
John:
for document windows a very common case the title of the document is there and document titles can be long 255 characters or whatever the limit is uh so you'd want to see the full title of the document not truncated because that's an important thing for you to know especially if you have similarly named documents if you're a programmer you may find yourself with similarly named documents although these days they're all wedged into an xcode tab or a sidebar that you can't expand wide enough
John:
But anyway, even with that, when you've got the whole width of a window and that window is pretty wide or even just page size, you can use a 255 character file name and still probably have room for a little icon for a little 16 by 16 icon.
John:
And so that's where it lived, right?
John:
Big Sur introduced in the Finder a UI where, okay, we're not going to give the title bar its own row.
John:
Instead, we're going to, see if this sounds familiar, take the title bar and combine it with the toolbar.
John:
And now all of a sudden, horizontal space is at a premium because we've got the configurable toolbar with all the buttons that you can configure in there, plus the title, plus the proxy icon, plus maybe a search field.
John:
There's lots of stuff all in one row now.
John:
And suddenly the title doesn't have all the space that it can stretch out.
John:
And just like in a document in the finder, it's kind of important to see what folder is it that I'm looking at here, the full name of that folder.
John:
So to save space, they said, well, what's non-essential in here?
John:
I guess we can hide the proxy icon.
John:
Well, but that's a useful feature.
John:
So we still want it to be there.
John:
OK, we'll make it appear on hover.
John:
That's how this came about.
John:
That's how you, you know, it makes some sense.
John:
right but then it sort of snowballs into oh and by the way proxy icons are gone everywhere we're not going to put them in the title bar preview windows like just hide them everywhere because once we've done this hide show little animation thing let's just make that the new standard across the entire user interface all because they decided we got to save some vertical space in this toolbar so we're going to combine the title bar plus the toolbar right and they've been doing that in a lot of apps combine the title bar and toolbar
John:
make the content go from the top to the bottom.
John:
In some apps, it works.
John:
In some UI, it's an improvement.
John:
But in this particular case, they were, you know, the compromise, the cost of using this UI was an awkward hover state for a feature that, you know, I guess enough power users use that they have seen complaints about it.
John:
I don't think in this case the solution is to go back to title bar on top all the time.
John:
And by the way, in the Finder, it doesn't do that in the non-browser Finder windows.
John:
I hate talking about the Finder.
John:
No one knows what I'm talking about.
John:
But anyway, the Finder windows that don't have sidebars have dedicated title bars.
John:
But the ones that do have sidebars have the combined ones.
John:
When you do the show window title icons, it shows them everywhere, which is as it should be.
John:
But I do understand why they hit it in the first place.
John:
It's just that they sort of took that ball and ran with it.
John:
And they should have said, OK, we'll hide them as an option in this one mode of finder window.
John:
But across the whole rest of the US, we'll leave it as is.
John:
Hopefully that's where they end up eventually.
Marco:
We are sponsored this week by Burrow.
Marco:
Burrow sets a new standard in furniture with easy to move modular designs, timeless American mid-century and contemporary Scandinavian styles, and premium durable materials like responsibly forested hardwood, top grain Italian leather, and reinforced metal hardware.
Marco:
Thank you so much.
Marco:
And they make it easy to buy from them.
Marco:
There's no weird warehouse stores and high-pressure showrooms.
Marco:
Look, what year is this?
Marco:
They replaced all that with a modern, easy-to-use website.
Marco:
Of course, right?
Marco:
That's what you actually want.
Marco:
And it lets you create and customize your own furniture right from your home.
Marco:
It is shipped to you for free.
Marco:
Every order, no matter how small or large, has free shipping.
Marco:
That can save you over $100 from most of these places when it comes to something like a couch.
Marco:
And it's backed by world-class service.
Marco:
Sometimes you need a little help.
Marco:
Everyone does sometimes.
Marco:
The Burrow team is always available to lend a hand from custom orders to delivery scheduling or rescheduling.
Marco:
They're there for you.
Marco:
So thank you so much to Burrow.
Marco:
You can get $75 off your first order at Burrow by going to burrow.com slash ATP.
Marco:
That's B-U-R-R-O-W, burrow.com slash ATP for $75 off.
Marco:
burrow.com slash ATP.
Marco:
Thank you to Burrow for sponsoring our show.
Casey:
I would like a quick, can I challenge you, gentlemen, a quick update.
Casey:
How are the latest betas on iPhone specifically?
Casey:
Because in a couple of weeks, I will have all travel or interesting related things done for the summer.
Casey:
And so I was thinking about maybe committing my carry phone to a beta, be that either the public or the developer beta.
Casey:
So quickly, gentlemen, probably Marco specifically, how are they these days?
Marco:
you know there are certain seasons where you can really feel like you have a beta you know seasons where like you'll feel your phone heating up in your pocket in the middle of the day for no reason like what's going on and you pick it up and it's like at the apple boot screen like okay like there there are some years like that where i wouldn't really recommend it um
Marco:
This year, so far, it has been totally fine.
Marco:
Again, it's only a couple of weeks.
Marco:
It's only one person's experience.
Marco:
But I've also heard from a lot of other people that, like, anecdotally, it sounds like this is a pretty good year for the phone.
Marco:
At this time, I would not necessarily recommend the watch beta.
Marco:
As with all watch betas, you can never downgrade.
Marco:
Upgrading to a beta on the watch is usually not a good idea unless you're developing a watch app.
Marco:
One of the weird problems I've found with it is that I often don't get notifications.
Marco:
And when I do get notifications, they oftentimes will only stay at the first part of the slide up where it shows you what the notification is from but doesn't show you its content yet.
Marco:
Oh, nice.
Marco:
It gets stuck on that.
Marco:
the bigger more pressing problem is that the watch beta seems to be unreliable at updating the sleep screen now you might think who cares well the sleep screen is what shows the time and i have caught it multiple times in the last few days displaying the wrong time off by like 15 minutes until i do a wrist raise and then it refreshes and updates the time
Marco:
Oh, cool.
Marco:
So that's a bit of a problem on the watch beta right now.
Marco:
So I wouldn't recommend the watch beta, but the phone... Oh, I haven't... I don't think I've even used the iPad beta, so I can't speak to that at all.
Marco:
But the phone beta...
Marco:
has been pretty good um there is a little bit of oddity and a little bit of annoyance to the new focus feature so you know as a quick reminder the do not disturb feature and the automatic do not disturb scheduling and everything has has now been rolled into a much larger much more featured feature uh that includes all these different modes besides just do not disturb that you can set you can now set like
Marco:
Sleep and work and focus and all the different modes that you can create your own.
Marco:
You can delete the ones they have and add different ones.
Marco:
And each of those has its own settings for when it's automatically engaged, what kind of apps or contacts can break through the focus mode and everything.
Marco:
Notifications.
Marco:
Now, like the first time you get a notification from an app, it will now ask you, like, is this time sensitive or not?
Marco:
And it's time sensitive ones will break through.
Marco:
And they'll be displayed with a label that says time sensitive, like as part of the notification UI.
Marco:
I have found this system so far to be a little overwrought and a little bit burdensome.
Marco:
I don't know necessarily if it's just me getting used to it still, but it has been a friction point for me using iOS 15 so far.
Marco:
Now, I don't think they're going to change any of that because this is like a headlining feature of iOS 15.
Marco:
And I think the concept of having...
Marco:
a lot of control over do not disturb and and being able to create these additional modes i think it's a good concept i even said i said as much during our wbc episode like i i noticed they were you know when they were talking about this i said oh that's great because do not disturb has been so great for me but in practice what this does is add additional levels and complexities to do not disturb so that it is no longer a simple feature it is now a complicated feature
Marco:
and and seeing the time sensitive uh labels on every notification from like calendar reminders and stuff like that it's a little much so that i'm not super hot on but the rest of ios 15 seems fine to me i haven't had any like apps that don't work on it right or anything like that so everything seems okay
Casey:
Yeah, I can speak to the iPad and it's been pretty solid for me.
Casey:
I mean, I can't think of any specific things that have been a real bugbear.
Casey:
So it's been fine on the iPad, but I've been very reluctant to put it on my phone and I won't be putting it on my phone until travel is complete.
Casey:
But that time is coming sooner rather than later.
Casey:
And so I was curious how bad it was and sounds like not bad.
Casey:
So sometime in the last week or two, I forget exactly what it was, Apple, just out of the blue, released an accessory.
Casey:
And for the first time in a fair bit of time, other than AirTags, I suppose, it's an accessory that I'm really interested in.
Casey:
I haven't gotten my hands on it yet, and I don't think anyone has, but Apple's released a MagSafe battery case.
Casey:
And...
Casey:
i know that apple has had battery cases on and off for years now and i've seen them many times i've held them in my hands a handful of times but i've never never really cared for them it didn't seem like it was something i really wanted and part of that was because early on in my iphone life i would buy bespoke battery packs that would be you know cases that would wrap around your phone and would plug in via the lightning connector
Casey:
and it would charge your phone as required.
Casey:
And for a while, I really liked that, particularly around WWDC time.
Casey:
But after I replaced my fourth bespoke battery pack or something like that, it occurred to me, this is wasteful and silly, and there must be a better way to do this.
Casey:
And...
Casey:
But Apple's older battery packs, I think, were the same story.
Casey:
You know, they were fit specifically for particular phones.
Casey:
And so, again, I find it to be kind of wasteful.
Casey:
And I've just used, you know, a battery bank, as some people call it, you know, just an external battery pack that you connect via cable.
Casey:
But that's clunky in its own way.
Casey:
You have a cable hanging out.
Casey:
Let me tell you, it is super cool to look like me in general, but I look incredibly cool when I have a cable going from my back pocket to my front pocket so I can charge my phone from the power bank that's in the back while the phone is in the front.
Casey:
I just look so hot.
Casey:
It's the nerd version of a wallet chain.
Marco:
I was about to say, what if you make a lightning cable that looks like a wallet chain?
Casey:
Yeah, and I'll get really baggy late 90s style jeans.
Casey:
It'll be great.
Marco:
That's it.
Marco:
Put it on backwards.
Marco:
Listen to crisscross.
Marco:
This will be great.
Casey:
So anyway, so the point is Apple's released a MagSafe battery case.
John:
You keep saying battery case, but it's not a battery case.
Casey:
Well, that's what it says in the damn show notes, Joe.
Casey:
John, who wrote that?
John:
It's a MagSafe battery pack, thank you very much.
John:
Right, that's not the whole point.
John:
You just made the point, emphatically, that it's not a case.
John:
It doesn't encase anything.
John:
It doesn't wrap around anything.
John:
It is, in fact, a rectangular solid that sucks onto the back of your phone through the magic of magnets.
Casey:
Indeed.
Casey:
Magnets, how do they work?
John:
Not actually magnets.
John:
Not actually sucking.
Casey:
In any case.
John:
Well, it's kind of sucking.
Casey:
Oh, my gosh.
Casey:
Focus, gentlemen.
Casey:
Focus.
Casey:
Oh, no.
Casey:
We just talked about that.
Casey:
All right.
Casey:
Concentrate, gentlemen.
Casey:
Concentrate.
John:
It's the sandwich closing for us again, right?
John:
Yes.
John:
Exactly.
Casey:
Oh, my gosh.
Casey:
So the point being, it's this battery pack, John.
Casey:
Really?
Casey:
I would just call it a battery.
Casey:
Oh, my God.
Casey:
It's a MagSafe battery.
John:
I mean, it's like a backpack.
John:
It goes.
John:
It's like a battery backpack.
Casey:
It is called MagSafe battery pack.
Casey:
I'm going to call it the MagSafe battery pack.
Marco:
I mean, if you put it on the desk, it's more of a platform.
Marco:
Oh, my God.
Casey:
Occasionally.
John:
That's right.
John:
It's a charger, too.
John:
Anyway, go ahead.
John:
Right.
Marco:
It's a MagSafe battery platform pack.
Casey:
Oh, my God.
Casey:
I quit.
Casey:
You're both fired, and I quit.
Casey:
Anyway, this thing looks cool.
Casey:
I think I probably will get one of these.
Casey:
Yes, it is only white, which even to me I think is a little bit of a dubious choice.
Casey:
No, that's your color.
John:
No, it's not.
John:
After all this, you're going to skip over describing the thing?
John:
I'm going to do it then.
John:
Here, stand back.
John:
Oh, my God.
John:
It is it is a rounded rectangle.
John:
Hey, Steve was right.
John:
It's a rounded rectangle that looks like it's like a centimeter thick or something.
John:
I don't know how thick it is.
John:
But anyway, it's like a rounder white rectangle.
John:
It's on one side of it.
John:
It's got the little MagSafe ring and little line.
John:
Right.
John:
So this this will match up with a little circle and line that are embedded in the back of your phone that has MagSafe.
John:
Right.
John:
And on the other side, it's just a flat, rounded rectangle.
John:
And it's got a place where you can plug it in to charge the battery itself.
John:
If you plug it in and lay it sort of with the MagSafe part of it facing up on your desk, you can use it as a MagSafe charger because here it is laying flat on your desk and you just put your phone on top of it and bloop, you know, it charges your phone or presumably, you know, whatever, any other MagSafe thing you put on there.
John:
I don't think you can charge AirPods on it.
John:
That would be an interesting experiment.
Marco:
That's actually, I've done a lot of thinking and researching about this.
Marco:
And that's my biggest unknown for this is, can it charge an AirPods Qi case?
Marco:
A regular MagSafe cable, like the regular ones Apple sells with the wires attached to the MagSafe puck.
Marco:
Those totally can and do charge anything Qi as far as I know.
Marco:
They are standard Qi chargers just with magnets on them.
Marco:
And so you can, and we do in our household all the time, put your AirPods case on them and it will charge.
John:
That's the only thing I use mine for.
Yeah.
Marco:
Yeah, but so it is fine for that.
Marco:
My theory on this, though, I don't think it will work that way.
Marco:
Casey mentioned doesn't seem like anybody has these yet.
Marco:
It doesn't even seem like they've done press reviews yet.
Marco:
My guess is this might not function as a generic Qi charger because I don't think it has any buttons to turn it on.
Marco:
So while it might function as a Qi charger when it is plugged into a cable, I don't know if it's going to be able to function as that when you're out and about, which kind of ruins the point.
John:
Oh, yeah.
John:
I wasn't totally expecting it to do that when it wasn't plugged in.
John:
I'm saying, like, can this double as a charger on your desk?
John:
Well, we'll find out when we get them.
John:
But the point is that it does have that mode.
John:
And then the other mode, obviously, is when you stick it to the back of your phone.
John:
And in that case, it behaves kind of like the Apple's battery cases have always behaved.
John:
Just pretend it's, you know, not pretend it's permanently attached to your phone.
John:
You know, you can use it when your phone starts to run out of battery.
John:
It'll, you know, drain from the battery pack.
John:
You can also do the reverse charging where I'll get let me get this right.
John:
What do people consider the reverse charging?
John:
Where you plug in your phone.
Marco:
Yeah, if you have it attached to the back of your phone and you plug a lightning cable into your phone, your phone will charge the battery pack from the current it's getting from the lightning port.
John:
Right.
John:
And I think no other third-party battery pack things can do that.
John:
Is that correct?
Marco:
Yes.
Marco:
Only Apple's, yes.
Marco:
This is the first instance of reverse charging we're seeing from the iPhone.
John:
Yeah.
John:
So the charging specs are when the battery itself is plugged into the wall...
John:
The battery pack itself will charge your phone at 15 watts, which is the MagSafe fastest charging thing.
John:
So if you plug in the battery pack, whether it's laying on your desk or wherever it is, and stick it on your phone, you get 15 watts.
John:
But when it's just the battery pack, free-floating stuck to the back of your phone, the battery pack only charges your phone at 5 watts.
John:
And people have been sad about that, but I kind of feel like as long as it can keep up with the phone, it's not like because it's a battery pack, it's not like you're waiting around.
John:
for it to charge i guess maybe if you're like i just want to go on this little manta ray on the back of my phone wait 30 minutes and i'm 100 charge right that's not going to happen it's only five watts but i think i would rather have it sort of slowly charging my phone with the idea the whole point is that i'm gonna use my phone with this thing on the back of it because it's not connected to anything else but you know different strokes right so anyway it's much slower when it's not plugged in itself um
John:
there is no power adapter or cable included in the box uh again people now look at that and depending on your point of view you say i glance at the price and i say for that price it quote unquote should come with a power adapter and cable on it because it seems you know like cheap that they're not including that and it doesn't seem like they're passing the savings on to me and who even knows right but on the other hand
John:
The reason Apple would give for this, and I think it is somewhat legit, is that if we give these things to everybody, a bunch of people will already have the cables and adapters that they need.
John:
And these will just go to waste and end up in a drawer somewhere and end up getting thrown in the garbage.
John:
Right.
Casey:
I don't know about that because the big fancy, what is it?
Casey:
Is it 15, 20, 20 watt charger, the USB-C charger?
Casey:
Not a lot of people have that.
John:
I know, but the general philosophy is if we include these accessories to every single one of our products, I feel like what they're trying to do is...
John:
not just sort of give you by default all this stuff because you will inevitably end up with an excess of stuff because even though you say well for every one product don't i need one wire and one adapter and the answer is no because people always have some kind of sharing because not all of your devices are plugged in at once usually unless you're like traveling a lot and you really need them so they're all plugged in and get charged real fast
John:
so i get what they're doing i feel like it is a reduction in waste that's not just an excuse that's a real reason the problem is because apple's products are have such high margins when they take these things out like even though there's like nothing to compare it to they just look at the price and they say i feel like that price should include this stuff and it's not like with this battery pack that apple has ever had this product existing before and we can compare the price before and after or whatever
John:
So it's just that feeling that we have of like, well, these things are – Apple's products are expensive.
John:
They should come with that stuff, right?
John:
Or maybe Apple – Apple doesn't actually need to do this.
John:
But if Apple did do something like it, say, oh, instead of $99 – by the way, it's $99.
John:
Instead of $99, it's $95, and that $4 is your savings or some kind of thing where they adjust the price to psychologically make people think like, there's your savings for not including the crap.
John:
But of course, Apple would never do that because that's just –
John:
is a value game that they don't do with their pricing right so some people are going to be mad that it doesn't come with the stuff but particularly with this thing i'm kind of on board with the idea of i'd prefer this stuff to be a la carte right so i can buy it's the same reason i buy a camera body with no lens oh that should come with a kit lens obviously with the camera it's not a great analogy because you save money by not buying it with the kit lens but
John:
doing it doing it a la carte i mean especially with things like adapters and cables and stuff lets people get only the stuff they need and yes it probably also makes money for more people it's kind of like the half size paper towel sheets if people don't know that story yeah i'm sure this guy uh deserves all the billion dollars he's got but uh paper towel rolls of paper towels in the u.s uh someone came up with the idea that instead of having paper towel sheets be whatever size they were which is kind of squarish and you'd tear off a square at a time right
John:
uh this person's brilliant idea was let's make them like rectangular take the existing square and cut it in half and so now there's preparations twice as often in the role and that might sound like the dumbest idea you've ever heard it's like great you're genius you you made you made it so i can tear off half sheets like i'm is this what you get paid for how many years did you come up to think of this thing it turns out letting people have half sheets
John:
Makes people happier because they feel like they're not wasting as much, but it's like, oh, I just need a half sheet for this one little job.
John:
And also makes people use more paper towels, which is great for the paper towel companies because the roll runs out faster and they can sell more paper towels.
John:
It is the ultimate win-win of just like self-owned consumer philosophy.
John:
Like the customers think they're being frugal, but in reality, they're using more paper towels than they were before.
John:
see also plastic recycling well that's a slightly different thing but but anyway yeah this is kind of the opposite of that and that i think apple is trying to do a good thing but their entire pricing philosophy just makes it feel like damage to the customer it just makes you feel bad that you're getting less stuff for quote-unquote the same price because you look at the price and it is an expensive price we'll compare it to competitors in a second and you're like
John:
99 and it doesn't even come not just the charging brick doesn't even come with the cable it's just like i get it out of the box i'm like what the hell am i supposed to do with this i can i can't do nothing with it i can use the charge that came with me from ship from the factory and then i can do nothing but again people would say well you can't do nothing because this product is useless without a phone do you have a phone well great i bet you have a cable to charge it
Marco:
Right, and then the phone can now reverse charge it.
Marco:
To me, I think for this product, I wouldn't expect this product to come with a cable or a charger.
Marco:
What's interesting, for the same $100, you can get a HomePod Mini that does come with a cable and charger.
Marco:
And it's kind of funny if you think about what components are necessary to make a HomePod Mini versus to make a MagSafe battery pack.
Marco:
The profit margin has got to be so much higher on the MagSafe battery pack.
Marco:
than on the HomePod Mini.
Marco:
But, you know, the prices are not set based on, you know, what's a fair markup on our costs?
Marco:
No, it's all psychological.
Marco:
It's what can we get away with?
Marco:
And they can get away with this because it's an accessory.
Marco:
And accessories are always very overpriced.
Marco:
And we buy them anyway for reasons.
Marco:
Although this, honestly, you know, I'm sure we'll get to this in a second.
Marco:
But this, I think this is going to have an even smaller appeal than the previous smart battery cases have.
John:
Well, I mean, we'll see.
John:
So this is not the first product that's in the market.
John:
There have been third-party ones that have been out since these phones came out.
John:
Apple is late to the market here.
John:
One example is the $50 Anker thing, which basically looks the same as the Apple one.
John:
It's a rectangle you stick on the back of your phone with MagSafe.
John:
It costs half the price.
John:
It has a larger capacity battery.
John:
It doesn't do reverse charging.
John:
um and of course uh you can't because apple is mean with their apis third party ones can't show the battery level in the like the system ui like the apple one can which is kind of annoying they should just make an api for that um so what do you get for your double the price and less battery power oh yeah it's a little bit slimmer it's a little bit lighter it looks aptly i guess if you want white that's the only color you can get so you're happy then um
John:
But it's basically the same story as any Apple versus third-party accessory.
John:
Apple's accessories, like look at their leather cases or literally any accessory for any of their products, they're pretty nice and they always cost more than competitors' products do.
John:
And they have higher margins and Apple doesn't have to pay itself whatever the MFI program requires all those other people to pay to work.
John:
So, you know, what else is new?
John:
One question you may be asking about the MagSafe battery pack is like, well, when I had a battery case, it was around the whole phone, right?
John:
But this battery pack, it just sticks on with a magnet, and I'm supposed to just hold these two bars of soap, I guess?
John:
Like, and just, like, if I shift my hands, does one shoot off?
John:
Or, like, if I shake my phone, does the battery pack go flying off?
John:
Like, it's... They're not actually...
John:
connected with anything other than magnetic force and like the the friction that's that's uh what is it doing the friction is helping so that only the sandwich closing force is uh is an issue i suppose you can't to keep it from sliding sideways it's got like a soft rubber on the back of it so the best thing we have here since people don't have this yet is matt panzerino posted a video of him trying shaking his phone with the anchor magsafe battery pack on it
John:
And it looks like it sticks on pretty well.
John:
Again, we've established in past shows that you can, with the magnetic car mounts, you can put some powerful magnets in the thing you're sticking on, and that will really make the connection pretty strong.
John:
So I'm hoping and assuming that Apple's is at least as sticky as this Anker one
John:
So hopefully this won't be much of a problem.
John:
Like all these things and like the magnetic wallet attachment, if you have super tight jeans and you try to jam this thing in your jeans pocket and the battery pack gets caught on the lip of the thing and you keep pressing your phone, yeah, you're going to pop off the battery pack.
John:
But don't do that.
John:
Maybe get jeans with bigger pockets, which I know is not easy, especially in women's jeans.
John:
The world is not fair.
John:
And in terms of capacity, there's a trade-off between capacity, weight, size, all that other stuff.
John:
But this Apple's product, this is Quinn Nelson doing some estimates based just on the specs of what it's going to do.
John:
His estimate, assuming a 70% efficiency for charging, which, as he says, is generous.
John:
I think most sort of MagSafe charging type things are maybe more closer to 50% efficiency.
John:
Yeah, Qi is not great.
John:
if you're wondering where that other 30 to 50 percent of energy is going heat and which is not great for your battery anyway or your pocket it's like if you're gonna have this in your pocket like there's a reason why we don't do a lot of chi charging of things in our pockets while they're in there like it's just just heating up our pants the whole time that's why five watts is better than 15 watts because at least you're spreading the heat out over a more period of time anyway um maybe it will charge an iphone 12 mini from zero to 91 percent
John:
maybe it will charge an iphone 12 or 12 pro to 72 and a 12 pro max to 55 these are just estimates again based on the milliamp hour ratings of the battery um so yeah it's better than nothing but as always you do have to choose how much extra weight in bulk do you want versus how much battery power do you want i don't think there's any massive difference in the uh energy density of the lithium ion batteries that apple is using versus what anchor is using
John:
So there you go.
John:
It's a battery pack.
John:
Like Casey said, I think it's great that, in theory, no promises, you'll be able to use the same battery pack with your phone next year and maybe the year after, maybe the year after, right up until Apple, you know, invalidates this by making a new MagSafe design or something, which is way better than having to buy a new one of these cases every single year.
John:
And it looks pretty neat, and it's a very Apple-y product, and I think the people who want something like this will be happy with it, but they'll probably also be happy with the $50 Anker version.
John:
So...
Casey:
Indeed.
Casey:
Now, this looks really good.
Casey:
I'm too cheap to have bought one yet, but I probably will at some point.
Casey:
But I'm very interested in this.
Casey:
I think the other reason I haven't bought one is because when am I ever going anywhere for the most part?
Marco:
Yeah, the reason I haven't bought one is I'm thinking like, all right, between now and when the next phones come out, am I actually going anywhere?
John:
Oh, speaking of Marco, though, that was a question I had.
John:
I haven't really seen answered.
John:
I suppose I just could have looked at the measurements.
John:
So this works on any phone that has MagSafe, which I guess means that it has to be small enough to fit on Marco's little baby phone?
Marco:
Yeah, if you look at the Apple product page, it shows it on all four iPhone 12 models.
Marco:
And like every other MagSafe accessory Apple sells, it is exactly the full width of the 12 mini.
Marco:
And it rests like right below the camera bump.
Marco:
So I'm guessing it is sized specifically to be compatible with the mini and like the height is limited by like how far, how close can we get to the camera blob without it being visible in the shots that you take with the camera.
John:
Yeah, that's interesting because, like, they could make a bigger battery, especially on the Macs, right?
John:
You could have a bigger battery pack of the same thickness or a thinner battery pack of the same size.
John:
Like, there's lots of different tradeoffs you can make in terms of how it feels in your hand, how much of the phone sticks out past the battery pack.
John:
Obviously, this is, you know, if it's size for the Mini, they just made one for all the phones.
John:
And that's just Apple being Apple and, you know, why make three different products when you can just make one and just size the smallest one.
John:
But I can see some people maybe being disappointed, especially on the middle size.
John:
Like, if it was sized for the middle one, maybe it would be okay on the Max because the Max has such a big battery built in.
John:
But, yeah, I mean, maybe this will be another excuse that Apple will use in two years to get rid of the Mini.
Marco:
Yeah, I mean, because if you look at the design of MagSafe in general, everything MagSafe is limited by the size of the Mini.
Marco:
Even, like, the main circle radius that is, like, the main MagSafe circle, that's limited by the size of the Mini, too.
Marco:
And so if the Mini wasn't there, which, again, I like the Mini, so I hope they don't do this, although I think they will.
Marco:
If the Mini gets eliminated, they could theoretically then make a future, like, you know, MagSafe Plus or something that MagSafe Macs.
John:
uh that is a little bit bigger and therefore would be stronger would be able to deliver more current like there's actually some good reasons why they might want to do that um but i i love my mini i hope they don't and i hope some third parties come up with one as i just found the picture i'm looking at it on the max on the max it looks kind of lost there like i imagine this is a third party opportunity if a third party wants to make a max size battery pack it could be a lot bigger
John:
right there's a lot of room especially vertically uh on the max to make a bigger battery pack doesn't look so bad in the middle like the regular 12 and 12 pro but i feel like so remember when apple came out with the battery pack that looked like just a regular case but then it has a rectangular plateau in the middle of it that's what these remind me of and you know
John:
It depends on what you want the thing to feel like in your hands.
John:
Some battery cases have historically been more like the Apple, the iPhone 3GS, like we're just like a lump from edge to edge.
John:
And if you like that hand feel, you want a battery pack to feel like that.
John:
But Apple's is more like you feel the edge of the phone and then on the back of the phone is a lump, right?
John:
i guess it depends on what you like in terms of hand feel but also i think it influences the sliding of the phone into a pocket you know a tight pocket in your pants or whatever if it's a smoother transition between the edges is less likely the thing will catch which is even an issue when it wasn't magnetically attached and it was just a lump right versus the 3gs shape would sort of smile smoothly slide in so i'm actually really curious to see
John:
People will start reviewing these when they get actual things.
John:
You know they're going to do the pocket slide-in test for sure and the shake test like Panzer did with the Anker.
John:
I think probably one of you should buy this just so we can talk about it on the show more.
John:
Not it.
Casey:
Oh, it's like that.
Marco:
You know it's going to be me then.
Marco:
Casey's never going to buy it.
Marco:
It's sized for your phone, Marco.
Marco:
I know.
Marco:
My phone needs it the most.
John:
Exactly.
John:
I was going to say, you should just put it on there all the time.
Marco:
What I like about the MagSafe being used for this way is that, you know, unlike a battery case, like typically a battery case, once you put it on, you're like, well, I'm just going to carry it around like this for either indefinitely forever until the edges start peeling off or like for this entire trip, I'll just leave this on.
Marco:
Whereas the MagSafe, you can so easily pop it on and off without having to like take a whole case off the phone.
Marco:
You could theoretically just leave it off the phone, but have it like in your bag ready to go for if you need it.
Marco:
And then if later in the day you need it, just pop it on for a while and then you can pop it off when you're done super easily, like way more easily than a case.
John:
Yeah, it's super versatile.
John:
And the fact that it's a charger, like, you know, it is designed so that it will look reasonable on your desk as a charger.
John:
It's like it will lay flat.
John:
Like if you look at it, you might be wondering which is the top and which is the bottom.
John:
Like, is this a charger that's on my desk or is it a battery pack?
John:
It's both.
John:
It's nice.
John:
And the other thing about it is like with all of the case ones, because they were cases and because MagSafe didn't exist,
John:
uh i suppose they could have done this before but anyway like like casey said they generally plugged into the lightning port which meant they inevitably made your phone taller than it was because you need some part of it to kind of tuck around under your phone and plug into the lightning port and then it would have to have its own lightning port offset from that that you would plug into this has none of those problems it doesn't make your phone any taller it just sticks on the back it does have its own port in the battery itself but it doesn't sort of change the dimensions of your phone vertically or horizontally which is nice
Marco:
yeah i can definitely see myself picking one of these up before my next trip whenever that happens like it might be like you know next spring or something maybe i'll have the iphone 13 mini at that point and i'll have another small battery to to top off but but like i i'm not going to jump on this right this second because i just don't have a need for it but uh
Marco:
certainly if i needed a battery pack for my current iphone i'd get this one no question because like the way it can double the charger and everything that's really nice i you know i even thought like i could just keep it on my desk most of the time because i have a lightning cable here for development i could just like have that be my charger on my desk who knows right there's lots of reasons why i might want one but um we'll see down the road like whenever it actually whenever i actually need that then i'll buy it
Casey:
July 27th through 29th, you jerks.
Casey:
You got one?
Casey:
Nice.
Casey:
So I will let you know.
Casey:
Please do.
Casey:
Was it white?
Casey:
Yes, it's white.
Casey:
It happened to be white.
Casey:
It did happen to be white.
Casey:
I honestly would have chosen black over white if I had the choice.
Casey:
I had no other choice.
Marco:
It had to be white.
Casey:
It had to be white.
Casey:
I had no choice.
Casey:
It happens.
Marco:
We are sponsored this week by Linode.
Marco:
to their ease of use and their setup.
Marco:
It's clear why developers like me have been trusting Linode for projects big and small since 2003.
Marco:
I think I've even been there for most of that time.
Marco:
I think I've been there for about 10 years and I just love Linode.
Marco:
I host all my servers there.
Marco:
All of Overcast backend is hosted there.
Marco:
This website for this podcast is hosted there because we have a bunch of custom software running on that.
Marco:
It's fantastic.
Marco:
You can deploy your entire application stack with Linode's one-click app marketplace, or you can build it all from scratch and manage everything yourself with supported centralized tools like Terraform.
Marco:
Linode offers the best price-to-performance ratio for all computing instances, including GPU compute, as well as block storage, Kubernetes support, and their upcoming bare metal release.
Marco:
Again, I can attest to this.
Marco:
I've been with Linode for so long, and I look around.
Marco:
I want to make sure I'm getting the best value.
Marco:
Linode has been the best value since I've been there for like
Marco:
a decade they're always the best value as technology gets better and they're able to offer more for less they do it's fantastic linode makes cloud computing fast simple and affordable allowing you to focus on your projects not your infrastructure go to linode.com slash atp
Marco:
Create a free account with your Google or GitHub account or just your email address, and you'll get $100 in credit.
Marco:
Once again, linode.com slash ATP for that $100 in credit.
Marco:
Thank you so much to Linode for just being an awesome web host that I host all my servers on and for sponsoring our show.
Marco:
I wanted to, as we were talking about this, I thought this might be a good excuse for a kind of like state of MagSafe topic.
Marco:
We're almost a year into iPhone MagSafe.
Marco:
We're not going to be talking about the old MacBook charging thing.
Marco:
This is just about iPhone MagSafe.
John:
The old MacBook charging thing, which may become the new MacBook charger.
Marco:
Right, yeah.
Marco:
Possibly very soon.
Marco:
But anyway, so I wanted to just kind of review, like, how is MagSafe doing?
Marco:
So are we using it?
Marco:
What's it good at?
Marco:
What's it not so good at a year in?
Marco:
So I'll start.
Marco:
I...
Marco:
I use it for all of my bedside charging, and I even have those incredibly expensive flip-open little MagSafe wallet things that charge the phone and the watch for when we go upstate to our family's place up there.
Marco:
It's been pretty good.
Marco:
I've been pretty happy with it.
Marco:
Oh, and I also have it in my car.
Marco:
I believe I've mentioned that on the show.
Marco:
I converted over my ProClip USA car mount from the old Lightning one to the new MagSafe one.
Marco:
And so I'm using MagSafe pretty much all the time my phone is being charged, except when it's at my desk and I plug it in for Xcode development.
Marco:
But otherwise, Xcode debugging is the only reason I'm plugging it into Lightning.
Marco:
Everything else now for my phone is MagSafe.
Marco:
and i have found it to be pretty good i did mention when i mentioned the car um magnate charging that heat and charging speed in the car are not great and it is able to keep up with the phone like running waves and gps with the sun shining on it but it is not able to charge it very quickly if it's not super high to begin with and occasionally the the screen has to dim to
Casey:
because it's so hot i can't even show the screen in full brightness but that's i haven't had that happen since then i i really am glad that i have a car that's nice and has car play so i don't have to worry about these sorts of things anyway throwing that out there marco
Marco:
Another day.
Marco:
So in the car, I found it to be incredibly convenient.
Marco:
So it is worth those shortcomings of charging speed as a like bedside every night charging thing.
Marco:
I think I mentioned before how I use double sided suction tape on the bottom of Apple's MagSafe puck as my bedside charger.
Marco:
Which is interesting.
Marco:
I think today, I think Elevation Lab just announced kind of like a stick-on MagSafe holder.
Marco:
Well, I basically have been doing this for a year.
Marco:
I just bought that micro-esuction tape and stuck it on the bottom of Apple's thing and stuck it on my nightstand.
Marco:
And it's held for a year.
Marco:
A few inches away from that, I have an Apple Watch charger that's held the same way.
Marco:
And every night, I stick the Apple Watch charger on its thing, and I slide the iPhone onto its thing, and it's fine.
Marco:
That being said, the ways in which this, I think, could use improvement, besides the heat and charging speed on the car being a bit of an issue, for me, it's still a little hard to align the phone onto the MagSafe puck, to really line it up so it snaps into place.
Marco:
It takes a little bit more wiggling around, as I'm reaching over, trying to put it on the nightstand, I'm trying to go to sleep, and I'm a little tired, I've got to move it around before it snaps on.
John:
i think could use some improvement i don't know if it's reasonably possible to do that much better like you just be the reality of magnets like it might not be reasonably practical or possible to improve that very much but i've got a i've got a solution for you that doesn't require apple to redesign things uh you what you just need is a frame like a four corner frame the size of your mini because then you would just be like you know what i mean like getting a rectangle into like a shape sort or size type hole like you just get it into the rectangular frame and you don't care about the magnet being aligned because once you get it into the frame you know it's aligned
John:
Right.
John:
The problem with the MagSafe thing is there's no borders.
John:
It's just like, oh, you have a surface and you have a circle and I have a circle and you just have to line them up.
John:
And you never know when you went past it or gone too far.
John:
You just kind of have to wiggle it around.
John:
That's interesting.
John:
Even in your sleepy set.
John:
It would be less elegant and it would be less nice looking, but I can imagine.
John:
Oh, it would be hideous looking.
John:
I would never do it.
John:
There are third-party chargers out there that probably do give you essentially like a soap dish for your phone.
John:
Obviously, the limitation is now you have to size it to your phone, and when you get a different-sized phone, you've got to have a different-sized soap dish.
John:
But that is one sort of mechanical solution to this.
John:
You can even make it like a soap dish with slanted sides.
John:
You can just kind of like shove your phone over, and it would just kind of slip into it because it's got some curved sides to it.
John:
You're the one pulling out the microsuction tape, so if you want to have an arts and crafts project, you can start making a little...
Marco:
A little corral for your phone.
Marco:
Yeah, the difference is that when I'm done with the suction tape, you don't see anything except the charging puck.
Marco:
Oh, yeah.
Marco:
Yeah, so that I think could use some improvement.
Marco:
And the other thing which also applies to the battery backpack thing, right now Apple has multiple different devices
Marco:
charging standards going on we we have you know we you have first of all usbc versus lightning so you have devices like ipads that can only charge via usbc unless they're certain models in which case they only charge via lightning then you have phones that we've had chi for a while great and you can use a magsafe charger to charge any chi compatible iphone even the ones before they just you you know gotta like you know play with alignment a bit and it'll be limited to either five or seven watts i don't know which one they went with on that but
Marco:
But we have AirPods, we have Apple Watches, we have iPads.
Marco:
The MagSafe charger seems like it was an opportunity to maybe start unifying some of these things, and they didn't take that opportunity.
Marco:
Especially, I think, where it's especially egregious is the Apple Watch.
Marco:
I wish MagSafe could charge Apple Watches as well.
Marco:
And I don't necessarily know that I would replace every Apple Watch charger with a larger MagSafe puck, but it would be nice if you happen to only have one of those things with you, or if you happen to only have one of those things free at the current moment.
Marco:
It would be nice to be able to charge an Apple Watch on a MagSafe puck.
Marco:
So besides that weirdness.
John:
Before you move on from the Apple Watch, I think I've been thinking about this.
John:
I was thinking exactly the same thing just the other day, looking at watch chargers and stuff like that, that it's so annoying that you have to have the separate watch charger.
John:
But I think given the current design of the Apple Watch, which I assume is not arbitrary with like the domed bottom sensor that presses into your skin to do all the measurements, like I think it's important for that to be domed.
John:
With a dome like that, I don't think it's feasible or maybe advisable to have a perfectly flat surface charging the domed watch.
John:
You know what I mean?
John:
Because I don't think you could get close enough to contact the parts that you need to contact.
John:
Because the farther you are away, the farther you separate the two coils from each other or whatever from charging, the worse it is in terms of efficiency.
John:
And at a certain point, it just doesn't work.
John:
And especially with a dome-type thing where it can wiggle around, I kind of think that the little dome-y indent part of the watch charging is essential.
John:
Now, I get what you're saying about the charging standard.
John:
But if you really want it to be standardized, you know they have to be flat for the phones because it's not like they're going to put little domes on the back of the phones.
John:
And so you're going to have to have the flat chargers for the phones.
John:
Yeah, I guess I can make the camera bump into the charging bump or something.
Marco:
Could they theoretically have a little domed cutout in the middle of the MagSafe charger?
John:
Yeah, maybe.
John:
But I feel like once you have that cutout, that moves the coils in the center farther away from the phone, which doesn't have a dome that's sticking out.
John:
Are there coils in the center, or do they form a big circle around the perimeter?
John:
I think they kind of go all the way around, like crop circle things.
John:
Anyway, I...
John:
What I'm saying is this is all based on the assumption that the dome on the watch is not arbitrary.
John:
And I believe my guess, if I had to put money, I would say it's not arbitrary, that it actually is kind of important to have that dome there because it has to press into your skin for all those sensors to work well.
John:
And if you made the bottom of the watch flat, it would be worse or maybe not work at all.
John:
um so i kind of see where they might have some kind of limitation but everything else you said is totally true like it's just just kind of an accident of history of like when these devices came out and somewhat the watch too like they weren't all released at the same time they weren't all conceived at the same time and so now here we are with all these different standards less of an excuse for the ipads which probably should all be usbc by now but you know tim cook likes to sell those same designs for years and years so we'll eventually get there
John:
But it is the watch is the worst one.
John:
I think mostly because like at least Apple's watch.
John:
Does anyone third party sell watch chargers?
Marco:
I don't even know.
Marco:
I don't.
Marco:
So there are a few battery packs that have like an Apple watch thing off to the side and
Marco:
And they look like it's Apple's part just shoved in there.
Marco:
I haven't seen anything that looks noticeably different, like with a different finish or different color or anything like that.
Marco:
So it seems like there is an MFI program for that, but it seems like it's not used very much.
Marco:
see also magsafe right that's and that's even that's you know a bigger problem with magsafe too is like there i don't know if the mfi program is actually going i know they announced one i don't know i don't know if there's actually like like magsafe stuff being developed under the mfi program but i haven't seen any it i don't think any of it's actually out yet um and this seems like a huge third-party opportunity that's just not being used
John:
The worst part about the watch charger is the attached cable.
John:
I feel like if Apple started selling just a little watch, little thingy, like if they had sort of a little, you know, constructor set of charging things, and this was kind of like, well, you have the cable, and then you have the thing you attach it to, and you could attach it to the flat puck, or you could attach it to the watch puck.
John:
But, you know, Apple's penchant for attaching the cable permanently to, like, I was just looking at a picture of a keyboard the other day, and we were thinking about, do you realize that Apple permanently attaches the keyboard to its wired keyboard?
John:
Does it?
John:
Am I misremembering?
John:
Is the wired Apple flat aluminum keyboard have the cable permanently attached to one?
John:
I think it does, right?
Casey:
Yep, it absolutely does.
John:
Anyway, it's such a limitation because, you know, travel, like you were saying, any kind of thing where you're like, let me just get my charging stuff, to always have that absolute one-off unitasker and, you know...
John:
good eats parlance watch charger that is inseparable attached to its cable which is either way too long or way too short depending on the context you want to use it versus having a somewhat unified charging infrastructure that you could all label as mag safe where you had like pucks or landing dones or dishes and then you had bricks and then you had cables all sold separately apple should love it
Casey:
Yeah, so for me, I do use Qi charging.
Casey:
The only time I plug in my phone for the most part is occasionally CarPlay.
Casey:
That's this thing, Marco, where your phone appears on your car's infotainment system.
Casey:
It's really nice.
Casey:
You should check it out sometime.
Casey:
So I plug it in for CarPlay occasionally because now I have that dongle-y thing that I use for short trips.
Casey:
I only usually plug it in for longer trips.
Casey:
I'll plug it in for CarPlay, plug it in for development.
Casey:
And that's usually it.
Casey:
On my bedside table, I have Qi charging.
Casey:
I do not have MagSafe.
Casey:
So this MagSafe battery pack that I ordered 5-10 minutes ago will be my first true-to-form MagSafe device.
Casey:
And I'm looking forward to trying it.
Casey:
But that'll be it.
Casey:
But I'm all in on Qi.
Casey:
I definitely use Qi all over the place.
Casey:
I just don't have any MagSafe yet.
John:
Yeah, I'm not the wireless charging hasn't really connected with me.
John:
Like I did buy the MagSafe puck when I got my MagSafe phone, but it just never was never a thing that I wanted to do.
John:
I didn't want to suction it down when it wasn't suctioned down.
John:
It felt too slippy.
John:
It just doesn't didn't fit into the way I have things on my bedside.
John:
So I've got the puck there on my bedside, and like I said, I just put my AirPods on it.
John:
Like, that's all I do.
John:
And even the AirPods, I still feel a little bit of, like, it's not really empathy for the machine, but it's empathy for thermodynamics, whatever the hell.
John:
Like, I don't like the idea of it being less efficient and also potentially producing heat that could shorten the life of any of my batteries.
John:
Now, it's probably fine.
John:
It doesn't actually get that warm.
John:
But every time I pick my AirPods off the little charging puck and the case feels warm or I take out the AirPods and they feel warm from being inside, I'm like, that's not great.
John:
They don't feel hot.
John:
It's just, I don't know.
John:
I don't really care about the AirPods because the battery is so small and they charge so fast.
John:
But everything else, I just plug my stuff in still, which I also don't like because we have so many lightning devices in this house.
John:
and so many kids oh two so many um and i look at the little lightning connectors and you see the little brown marks from like scorching or whatever that is like that one pin that shorts out from charging oh yeah i don't know if it's it's shorting or it's corroding but like it just go after the show go look at all the lightning uh cables in your house and look at the little tiny connectors and see do they all look uniformly shiny gold with no discoloration or do one or two of them have little dark brown smudges on them
John:
uh and when i plug in i always try to pick like the good of the 17 cables that are there pick the good one with the least of the scorch marks because i don't want that sort of infecting my beautiful phones and even on my nightstand my kids charge their crap on my nightstand too because my cables are always nice and always available and don't have scorch marks anyway i still prefer wired mostly just because it charges faster it charges more efficiently
John:
You know, all those reasons.
John:
And I don't mind plugging it in.
John:
And speaking of things that I can do in the night without, you know, fidgeting around, I'm surprisingly good at getting a USB-C or lightning connector into the appropriate little place on...
John:
phones and ipads in complete darkness you know it's i think most people are pretty good at it by the way if you ever struggle with that and you're like oh it's so hard i feel like i'm scraping up the bottom of my phone i can't find the little thing the trick is uh because you're human and your mind body connection is used to dealing with objects in space take your take you have the cable in one hand let's say your right hand take your left hand
John:
feel for the little hole with like your finger or thumb along the bottom of the device like feel for where the hole is with your thumb and then just take your right hand don't think about it just take your right hand and stick it into the the thing that your left hand just felt if you overthink it you're just gonna miss again but just just trust me when i tell you if you have good what is it proprioception or whatever and most people do uh feel for the little hole and then just stick it in where you felt the hole
John:
You don't have to do any sort of weird, like, oh, I'll move my thumb out of the way at the last second.
John:
I swear to you, just feel for the hole and stick it in the hole.
John:
It'll work great.
John:
Oh, my gosh.
Casey:
I can't handle this.
John:
I know.
John:
Anyway, I do that, and I can do it in complete darkness, so I haven't had a need for wireless charging.
John:
So I'm not sure when I'll come around on the wireless thing.
John:
At this point...
John:
I would be kind of upset if they, you know, the rumors of the, you know, wireless charging only iPhone.
John:
I'd get over it.
John:
It would be fine.
John:
But just my whole setup is predicated on kind of a stack of devices like iPad, iPhone, you know, the my AirPods, all this stuff kind of stacked up with all these cables snaking up and they just all plug into the bottom of the devices.
John:
um you can't really stack them with wireless unless you sort of do a sandwich layering where you do like device charger device or actually charger device charger device charger device i don't want that stack um so i'll be sad when the when the wires if and when the wires go away someday but for now i'm pretty dedicated to wires
Marco:
I like having wired as an option.
Marco:
If I need to fast charge for some reason, it's great for that.
Marco:
Obviously, I mentioned Xcode development where you want as much speed as you can get and as much reliability as you can get.
Marco:
It's great for that.
Marco:
I especially love, like you mentioned, the kid case.
Marco:
Kid devices are treated a little more roughly than many adults treat their devices.
Marco:
A problem that we have had in our household, I mentioned on the show before about my kid's iPad mini,
Marco:
And the iPad mini charge port seems to have a flaw.
Marco:
I've heard from multiple people that the current generation iPad mini, and even the one before it, I think, it just has a bad logic board design flaw where the...
Marco:
the lightning connector apparently just like torques itself off the board in even regular use over time.
Marco:
Certainly with kid use, that's going to be accelerated.
Marco:
And that has been the case for us.
Marco:
We've already had to do an AppleCare replacement during the lifetime of the current iPad mini.
Marco:
And in that kind of context, I would love an iPad mini case that plugged into the lightning port and just had a big Qi coil on the back of it.
Marco:
And then I could just turn it into a wirelessly charged iPad.
Marco:
Now, you know, that's not going to fix the case where he's using it as it's sitting there at 2% and all of a sudden, oh, crap, I have to charge.
Marco:
And, you know, he wants to keep using it during charging.
Marco:
That's not going to be great for that.
Marco:
But...
Marco:
Just to have less wear and tear on the port, that would be great.
Marco:
And that's where, like, I love in my current, you know, all wireless charging or mostly wireless charging lifestyle, it's great never to have to, like, pick pocket lint out of the lightning port to get it to charge right or never to have to worry about, like, am I wearing down those pins up?
Marco:
uh never having that that one pin that's like you know the one that always gets slowly charred and and blackened over time as crap builds up on it like it's great to not have to worry about that or and to save so much wear and tear on the port so if you're in a context where that's important like kid devices
Marco:
i would just love to see more options like that so for me like bring on magsafe for ipad mini especially that would be amazing or for any ipad frankly like that would that would be a pretty strong factor in me buying whatever's next for my kid i feel like wired charging especially as the device size goes up it's just so much more convenient because you don't need a big flat surface to sort of mate with your thing like especially we have like one of those sort of
John:
folder filing cabinet kind of charging things where you can put a bunch of iPads vertically.
John:
Yeah.
John:
And that wouldn't work with wireless unless you had these big giant fins because there's just these little fins where you put them in the slots and then connect them with the wires.
John:
And that's what you mentioned about the cable.
John:
Aside from kids like
John:
using their devices with the cable attached and destroying the cables, A, because there's bad strain relief because kids are monsters, but B, also like just pulling on the thing and torquing it in the design floor and a little scorching and everything like that.
John:
And you mentioned pulling lint out of the things.
John:
I have to say that for my personal devices...
John:
haven't used lightning since it existed in many many devices none of those little scorch pins have ever caused any problems like i've literally never had a cable that stopped working i've never needed to pick lint out of any of my lightning ports ever and none of them have ever failed to work or broke over time now granted i'm very gentle with my devices so it doesn't say these things don't happen all but i'm just saying that my
John:
paranoia about the scorch marks and displeasure with all the stuff happening practically speaking it hasn't actually caused a problem in my very careful usage but i do know many other people who do have that problem and this is probably i think we mentioned this in past shows probably why apple is even interested in a connectorless iphone is just to eliminate all the people coming into the apple store saying my thing doesn't charge anymore and then having them to go in there with little dental tools and pull out the little lint like that's
John:
It's not a design flaw, but it is a weakness of having any kind of plug.
John:
And the phones are thin.
John:
You can't really fit a giant, beefy plug on there because they're small phones, right?
John:
So something has to give at some point.
John:
And I think all wireless is probably inevitable, and I'll understand it when it happens.
John:
But for now, I'm still going with the wires.
Marco:
Oh, they better fix Xcode.
Marco:
Anyway, thank you to our sponsors this week, Linode, Memberful, and Burrow.
Marco:
And thanks to our members who support us directly.
Marco:
You can join us at atp.fm slash join.
Marco:
And we will talk to you next week.
Marco:
Now the show is over.
Marco:
They didn't even mean to begin.
Marco:
Cause it was accidental.
Marco:
Oh, it was accidental.
Marco:
John didn't do any research.
Marco:
Marco and Casey wouldn't let him.
Marco:
Cause it was accidental.
Marco:
Oh, 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 So that's Casey Liss, M-A-R-C-O-A-R-M-E-N-T-M-A-R-C-O-R-M-E-N-T-M-A-R-C-O-R-M-E-N-T-M-A-R-C-O-R-M-E-N-T-M-A-R-C-O-R-M-E-N-T-M-A-R-C-O-R-M-E-N-T-M-A-R-C-O-R-M-E-N-T-M-A-R-C-O-R-M-E-N-T-M-A-R-C-O-R-M-E-N-T-M-A-R-
Casey:
So Casey, I know that you're working on an app.
Marco:
And I know that you've had some motivational challenges after working on the Apple Watch component.
Casey:
Yeah.
Marco:
You are not alone.
Marco:
Everybody who has ever developed an Apple Watch app has generally run screaming from the process.
Marco:
And it is extremely demoralizing, extremely frustrating, and just a massive slog that just crushes your soul and makes you never want to be a software developer again.
Marco:
But I'm also here to tell you that because watchOS is such an incredibly hostile and limited environment for apps to run in, most people don't expect perfection on the Apple Watch.
Marco:
And also, you can't achieve it anyway.
Casey:
That's true.
Marco:
You do what you can to give an okay watch experience for most people most of the time.
Marco:
That's going to be the best you can achieve.
Marco:
And so you have to just decide at some point, like, all right, this, I've reached a plateau.
Marco:
At this point, I'm just banging my head against the wall.
Marco:
I'm not getting significantly better or the platform won't let me get significantly better past this point.
Marco:
I will just consider this acceptable and move on.
Marco:
It is not you being a bad developer.
Marco:
It is not the world of software development telling you that you shouldn't even bother doing it anymore because lots of other things do that.
Marco:
If you want that kind of feeling, try doing web development.
Marco:
But in this case, the Apple Watch is a terrible software development platform.
Marco:
It is made to be as punitive and awful to iOS developers as possible.
Marco:
It will represent a massive part of your negative reviews, by far the most crash logs, and there's not a goddamn thing you can do about that.
Marco:
And so you just have to kind of set it aside and just accept, like, this is going to be a source of problems for me and my customers, but I'll do the best I can.
Marco:
In a way, it's very zen-like.
Casey:
Right.
Casey:
So I feel like I need my support group.
Casey:
And for the listeners particularly, I think I should back up a smidge and at least obliquely talk about what I'm building.
Casey:
So months and months and months ago, I noticed Erin doing some arithmetic with regard to something on her phone and her watch.
Casey:
And I can't get too specific, but it was about health things.
Casey:
And I started doing this and I was like, what are you doing?
Casey:
And she explained.
Casey:
I was like, well, why?
Casey:
I can fix this.
Casey:
I have the technology.
Casey:
I can do this.
Casey:
And so the core of this app, which I'm tentatively calling Goaltender, the core of Goaltender is to do a little bit of arithmetic and give you a status report.
Casey:
And that's really all it is.
Casey:
And on the surface...
Casey:
That's like a week or two worth of work.
Casey:
I'm on like month eight or something like that.
Casey:
And part of it is because I've just been deeply unmotivated because of all things COVID.
Casey:
But now that, you know, our family, the adults are vaccinated and the kids are vaccinated.
Casey:
slowly starting to reenter society i'm starting to feel better about work or i was starting to feel better about work in general and i'm starting to get actually get some real work done and i am incredibly lucky and incredibly privileged that i can like coast on this for months and not have been fired and not have you know put myself in dire financial straits like i i
Casey:
I recognize that if I had an actual job, I would have been fired long ago and it would have been a real honest goodness problem.
Casey:
So anyway, so I've been working on this all way too long and I already feel guilty about that.
Casey:
Right.
Casey:
And so I've heard my imposter syndrome is already like, you know, peeking around the corner saying, Hey man, Hey, remember me?
Casey:
Hey, what you been doing the last eight months?
Casey:
Oh, nothing?
Casey:
Geez, maybe it's because you suck.
Casey:
Maybe that's why.
Casey:
Harsh.
Casey:
So that's, you know, in the back of my mind already.
Casey:
And the app, again, being at least slightly oblique, the app needs at least a month worth of health data to do the arithmetic it needs to do.
Casey:
I wrote pretty much all of it, I thought.
Casey:
And then I was noticing that the data was wrong on the Watch app.
Casey:
So I'm not talking about complications or anything.
Casey:
I'm just talking about the Watch app, which is super-duper simple and was working actually reasonably quickly because I was just reusing SwiftUI views that I was using in the iOS app in the Watch, which is great.
Casey:
Like, that's when SwiftUI is good.
Casey:
And it took a little, you know, tweaking here and there.
Casey:
But by and large, it was...
Casey:
relatively multi-platforms.
Casey:
That was great.
Casey:
But then I realized I was dropping data.
Casey:
I didn't know why.
Casey:
And then come to find out the watch only has 10 days of health data.
Casey:
For the first 10 days of the month, it works great.
Casey:
And after that, it's a mess.
Yeah.
Casey:
So now I'm in a situation where I only have all the data I need on my phone.
Casey:
In order to get the data to the watch, it needs to come from the phone, which means what am I now relying on 100% for the watch, Marco?
Marco:
watch connectivity oh yeah baby and it is a nightmare it is a nightmare a thousand percent supported i cannot overstate how much of a nightmare it is there are not enough curse words in the english language challenge accepted to properly classify how it is to work with watch connectivity
Casey:
So now my entire app, even the watch app.
Casey:
So I'm going to get to why I keep specifying between the differences.
Casey:
But I'm having major issues with my complications.
Casey:
My complications are complicated.
Casey:
And that's a big, big, big problem.
Casey:
But even the watch app, which is almost entirely under my control.
Casey:
Like, yes, the API is weird.
Casey:
Yes, you know, SwiftUI is weird in its own right.
Casey:
But by and large, I don't have a lot of excuses on the watch app.
Casey:
That is entirely under my control with modern watch development.
Casey:
It was not that easy, well, easy, quote-unquote easy, when Marco started doing watch development.
Casey:
But for me, I don't have too much to complain about, at least on the surface, with regard to just straight-up watch development.
Casey:
But once you sprinkle in watch connectivity, it's a nightmare.
Casey:
So why is it a nightmare?
Casey:
Well, first of all,
Casey:
You can't really test on the simulator because some of the things are implemented in the simulator, both the iOS and watch simulator.
Casey:
Some of them just plain aren't.
Casey:
And that's not a joke.
Casey:
Like you can, I'm not going to find this for the show notes, but you can look in the documentation and legitimately in the documentation, it says, well, just don't try this thing in the simulator because we didn't, didn't frigging bother.
Casey:
Just don't.
Marco:
And there's all sorts of weirdness with the watch simulator and watch connectivity framework in particular.
Marco:
I think what it's trying to do is insert little arbitrary delays in any watch connectivity communication between your simulated phone and simulated watch app to try to simulate watch communication in real life being sometimes delayed.
Marco:
But the result of that is that oftentimes watch connectivity communication in the simulator just never gets delivered.
Marco:
Which actually, I guess, is a fair simulation of what happens in real life.
Marco:
But it makes it nearly impossible to do substantial development in the simulator for any apps that communicate between the watch and phone apps.
Casey:
Bingo.
Casey:
Okay, so now I've backed myself into like a corner within a corner.
Casey:
So first of all, even though HealthKit APIs do exist on the watch...
Casey:
It'll only work for the first 10 days of the month.
Casey:
So that's a non-starter.
Casey:
So I already need watch connectivity.
Casey:
It's not optional.
Casey:
I need watch connectivity in order to get the data I need onto the watch.
Casey:
And then beyond that, I'm doing all of this stuff with HealthKit data.
Casey:
And that is, of all the APIs that Apple has...
Casey:
Of all the ones I've worked with, and I've at least glanced off the outer atmosphere of most API, like most of the higher level APIs, like I haven't done any of that crazy stuff with like matrix math that you're doing, Marco, but I'm talking about the high level APIs.
Casey:
I've glanced off the outer atmosphere of most of them and a lot of them.
Casey:
have legitimately good test harnesses or things you can do.
Casey:
Location services is a great example.
Casey:
You can put in, I believe it's a GPX log.
Casey:
It doesn't matter if I get the details wrong, but you can basically put in a log and tell the simulator, go ahead and use this to simulate a car driving, which is the sort of thing you want.
Casey:
Well, with HealthKit, it's like...
Casey:
Good luck.
Casey:
Like, if you really want, you can put the simulator onto your legitimate iCloud account, your actual iCloud account, and it will sync up all the health data and then just hope for the best, which is not really a great option.
Casey:
And then there are people that have done like open source things to extract and then import health data, but I couldn't get any of them to work.
Casey:
And the one I found that looked most promising used CocoaPods.
Casey:
And with respect to anyone who likes or uses or wrote CocoaPods, CocoaPods.
Casey:
I hate it.
Casey:
In any case, I'm backed into one corner because I'm relying on health data that doesn't exist.
Casey:
Now then on top of that, I'm relying on watch connectivity, which means I pretty much have to debug on device.
Casey:
Between these two things, I have to debug on device.
Casey:
I cannot reasonably describe how impossible—and I use that word constantly as a hyperbole.
Casey:
I use that word not literally all the time.
Casey:
It is not literally impossible, but it is nearly impossible—
Casey:
to get a watch app to debug successfully more than once in Xcode.
Casey:
I have tried everything.
Casey:
I have tried rebooting everything.
Casey:
I've tried turning things off, turning things on.
Casey:
I've tried hooking up with a USB-A cable.
Casey:
I've tried hooking up with a USB-C cable.
Casey:
Nothing.
Casey:
works nothing works not a thing and so at now i've put myself in the situation the goaltender is at its core two swift ui views that's all it is that's literally all it is it's two views of course there's a bunch of superfluous stuff around the outside it's two views
Casey:
That's all it is.
Casey:
And I've been working on this way too long, in part because I guess I'm a shitty developer, but in part because it's just all of this is infuriating.
Casey:
And I realized that Apple does incredible work in so many ways.
Casey:
And some of Apple's best work targeted at developers is when they're living in the same world we are, when they are, as we like to say, dogfooding.
Casey:
Apple very clearly does not dog food watch development like we do.
Casey:
And I've spoken to some birdies within Apple who have confirmed that they have fancy little cases with fancy physical harnesses where they have fancy physical f***ing connections to their watches.
Casey:
So they don't have to worry about all the things we do.
Casey:
In the defense of Apple, it is kind of a miracle that you can debug-ish a watch.
Casey:
That's the other thing.
Casey:
Can you?
Casey:
Well, yeah.
Casey:
So anytime I've successfully gotten a debugging session insofar as I'm seeing log messages arrive in Xcode, as soon as I interrupt execution and attempt to step to the next line... Oh, I forgot it.
Marco:
It's over.
Casey:
It's done.
Casey:
It's all over.
Marco:
Nothing happens.
Marco:
You can't use breakpoints on the watch.
Marco:
Forget it.
Casey:
Nope, nope, nope, nope, nope, nope, nope.
Casey:
So, I looked at Erin just a day or two ago.
Casey:
It might have been two days ago, right before we recorded, actually.
Casey:
And she looked at me and was, you know, one of those things where your spouse just looks and knows something's not right.
Casey:
And she looked at me and she's like, are you okay?
Casey:
And I was like, yeah.
Casey:
I was thinking about goaltender.
Casey:
And you know what it made me realize?
Casey:
I really don't like that part of my job.
Casey:
And I said that kind of be funny, but I got thinking about it.
Casey:
And sitting here today, right now, in the depths of despair, I really legitimately am not enjoying this portion of my job.
Casey:
I love the portion of my job where I talk to you too, even when you drive me nuts, which does happen.
Casey:
But I really don't like that portion of my job right now.
Casey:
And so...
Casey:
There is probably an argument that I should just abandon this whole darn app in the first place.
Casey:
But now I've got some cost fallacy knocking on the other door behind me.
Casey:
You know, there was the imposter syndrome coming in door number one.
Casey:
Then there's some cost fallacy coming in door number two.
Casey:
And I really want this app to exist in the world.
Casey:
Whether or not another human being buys it, I'm lucky enough that I don't really need to worry about that.
Casey:
But I think it could be useful to some people.
Casey:
But at the rate I'm going, I feel like it's an insurmountable thing that I will never be able to get over.
Casey:
And it makes me feel like, as much as I'm kind of being silly and goofy, it makes me feel like a piece of garbage.
Casey:
It makes me feel like I legitimately don't belong doing the job I'm doing.
Casey:
Because this doesn't seem like a terribly difficult thing to write.
Casey:
It is literally, at its core, two SwiftUI views.
Casey:
why is it this challenging?
Casey:
Oh, and then I keep putting off and didn't bring up.
Casey:
Then you've got to try to figure out complications on the watch.
Casey:
Oh, no.
Casey:
Because this thing, it's kind of sort of two graphs, right?
Casey:
It's not literally graphs.
Casey:
You could call it a graph, I guess.
Casey:
It's basically two graphs, or gauges is a better way of putting it, I guess.
Casey:
Two gauges.
Casey:
And if I were a consumer...
Casey:
I would say, wow, this app is two gauges.
Casey:
Wouldn't it be sweet if I could put those gauges onto my watch face, which in and of itself is a completely reasonable request.
Casey:
And so that's the other tough thing about iOS development these days is that you start with an app that is two gauges.
Casey:
I'm not saying this over and over again to sell myself short.
Casey:
Like, I do think there's value in this app.
Casey:
But if I'm really honest with myself, it's two gauges.
Casey:
And yet, then the next thing you know, well, you need a watch app because you might want to see your gauges on your watch.
Casey:
Well, then you need complications because you might want to see the gauges on your watch face.
Casey:
And of course, I started going down the road of and then kept getting distracted by the watch.
Casey:
What else are you going to need?
Casey:
Widgets.
Casey:
Because what if you want to see your gauges on your home screen?
Casey:
And so this little app that has started as two gauges is now spidering into all these different technologies.
Casey:
And on the one side, even if I never release this, I am really glad that I'm experiencing in more depth watch development, watch connectivity, and complications and widgets.
Casey:
I am happy to be experiencing it more and more.
Casey:
But I feel like almost every step of this process has made me increasingly miserable.
Casey:
And if I was a smarter man, I would just walk away from the whole damn thing and try something new.
Casey:
So in summary, I would love for Apple to either dog food the stuff that they make us do, or B, whatever physical thing that they undoubtedly have that they can use to do the development that they do,
Casey:
At this point, I would pay them $11 billion for one of them so I can have one too.
Casey:
Because, oh my gosh, it genuinely has made me hate my job.
Casey:
And that's, as much as I kind of joke about it, that's not a good place to be.
Marco:
No, and there's multiple angles to this.
Marco:
I'll try to tackle some of them in the time we have.
Marco:
So first of all, totally agreed.
Marco:
If they sold a wired development Apple Watch, I would pay $1,000 easily.
Marco:
And I'd buy a new one every year just because it would be a little bit faster.
Marco:
So listeners, if you've ever tried to debug an app or even just build and deploy and test an app on an Apple Watch, for me to do that with Overcast, it is I think about a three-minute long process every time I want to change anything.
Marco:
Suppose I want to run something on the watch, which, spoiler alert, audio is not well simulated in the simulator.
Casey:
Oh, go figure.
Marco:
The way audio behaves, things like audio interruption handling, audio output handling, output routing, background handling of audio, almost none of that is correctly implemented in the simulator.
Marco:
So I have to do a lot of on-device testing.
Marco:
Sure.
Marco:
Sure enough, I'm going through the same crap of like, all right, change something, build and run, try to figure out, like recently I had a problem of trying to figure out why audio interruption handling was not working correctly on my standalone watch playback.
Marco:
When audio interrupts other audio on iOS and the other audio has its volume reduced, so you hear like the alert and then the volume goes back up, that's called ducking in audio terms.
Marco:
And so I have, for years, I've had a utility app called Duck,
Marco:
that just has a picture of a duck, and it has different buttons in the app for different time intervals.
Marco:
And when you click one of those time intervals, it plays that amount of time randomly picked from Tighten Up by Archie Bell and Drells.
Marco:
And it's a way I test interruption handling in Overcast.
Marco:
Because you need a different app to interrupt the sound to test the interruption handling in Overcast.
Marco:
So I went through the trouble of making a watch version of Duck during...
Marco:
this last few weeks getting a little duck size icon for the watch version as well um and oh my goodness and swift ui made this very easy by the way thank god for swift ui because i'm telling you casey in the days of watch kit oh my god it was so much worse oh
Casey:
I don't have it.
Casey:
Oh, no, I know.
Casey:
And that's the thing.
Casey:
That's the other thing.
Casey:
Like, I know that I am living the comparatively easy life compared to what you and like underscore went through.
Casey:
And actually, and that's the other thing, like how underscore has a single hair on top of his head, much less is actually legitimately successful at this.
Casey:
I have no idea.
Casey:
He must have.
Marco:
He's a Zen master.
Casey:
Seriously, I don't get it.
Marco:
He must be the most patient and persistent person I know to develop as much Apple Watch software as he does.
Casey:
Well, that's his disposition to begin with, and I am quite obviously the opposite of that, but still...
John:
Part of it is also experience where if you do, you know, this is your first watch app and, you know, this is Marco's fifth version of the same watch app.
John:
But listening to you talk about your woes, Casey, and like, oh, there's only two Swift UI views.
John:
I'm like, I'm thinking like it's.
John:
And presumably, if you forgot about all the data and just put hard-coded fixture data in, you would have no problem making a complication, a widget, a watch app, because it's not like the part you're tripping over is, oh, I can't get my SwiftUI view to render correctly.
John:
It's all about data forms.
John:
flow right and right in the case of data flow and both in your case and in marco's case it's like well in your case it's because you this is not your data it's from the health apis and so you're at the mercy of the health apis and then you're at the mercy of the the stupid watch connectivity upi apis like if you could just get the data to where it needs to be it's not like you're struggling over the rendering of it and correct you know if you do if you did something like
John:
you know little experimental watch faces where the only input is the time there's no data flow and it's easy and probably relaxing and fun to do and then in marco's case he's dealing with system apis because he's trying to play audio and he doesn't control the entire audio stack from top to bottom there's other audio things that can go on so he's got a handle when he's interrupted and when he's resuming and then he's got his own data flow which is probably better than dealing with health kit because at least he controls those apis um
John:
But as evidenced by the seven versions of the watch app he's made, eventually he's just like, look, Apple, you are no longer involved in the data flow.
John:
I'm going to get it from the server myself because all the other ways I tried have been terrible.
John:
Oh, yeah.
John:
Both of your things are terrible for reasons that are kind of predictable given the strengths and weaknesses of the watch.
John:
And it just seems like if you had a simpler use case, your own data or just the time or something simpler or like the ones that do in the WWDC demo where it's like,
John:
they they gloss over the part of where the data comes from and they just like look how great this is watch development is really easy like you just do this you can put this you can use swift ui and put your views up and you do a timeline for the complication and it's just like assume that the data is already in available in these variables in your views it's like but that's the hard part like how does that data get there where does it come from does it have the correct values how do i make a fake set of it when it's complicated data you know all all that other stuff and
John:
That fabled debugging thing would be great for you to figure out why the hell your data isn't getting there because you could finally debug, but in the end, your data isn't getting there.
John:
And the debugger would just sort of reveal the brokenness of the APIs versus you just wondering why it's broken.
John:
But what you really want is for...
John:
to have a way to get the data like say for instance in your case casey that there wasn't the 10-day limit you would not be suffering this much right like you do the complication you do the widget you do the thing it would be like oh the data is just there it's on the watch i just you know render the views and so i feel i feel your pain but it's not because like i don't i think you're just right like marco is you're just running into the worst of the sharp corners of the ui and it's there's no amount of skill that's going to get you over other people's broken apis
Casey:
Yeah.
Casey:
And that's the funny thing is for the first 10 days, it just so happened that I finished like the first cut of complications and, and the watch app at on like the second day of maybe it was July, maybe it was June, whatever it was, it was like the second or third day of the month.
Casey:
And then after the 10th day, I realized my complications aren't updating, or something was wrong.
Casey:
And then I started digging realized, Oh, my God,
Casey:
The reason why is because the data is not there.
Casey:
So to your point, John, at the time, it seemed like something had gone awry.
Casey:
But everything else up until that point was working great.
Casey:
And then it was only upon that limit being discovered that I realized, oh, no, now everything is different.
Casey:
And now I've got to use watch connectivity.
Casey:
I was already lightly using it for a couple things.
Casey:
But I've got to really go all in on watch connectivity.
Casey:
And now I've got to pass all sorts of data back and forth in system math.
Marco:
so there are a few a few tips i can give you here so number one for debugging i already told you but i'll tell the listeners too if you use a usbc to lightning cable for some reason that tends to work better like the one that goes to the phone that you know not even the one that goes to the watch is obviously because we can't have those the usbc to lightning cable for some reason is more reliable and faster for me to debug i don't know why it's not usb3 i don't i don't know what the reason is
Marco:
but that that is a thing for me as for the actual debugging process i i too can rarely get a debug session to work on the watch typically what happens is i hit build and run in xcode it takes about 90 seconds maybe where it's trying to install to watch like first it has to compile the app which is now you know because it's swift ui it takes forever and it
Marco:
So eventually gets there, composed the whole rest of the app to the whole phone app and everything tries to install to watch.
Marco:
Sometimes that step succeeds.
Marco:
Sometimes it doesn't.
Marco:
Sometimes it just errors out with some like, you know, nonsense error that doesn't mean anything.
Marco:
Sometimes it says it installed to watch and then sometimes it says running and it never runs.
Marco:
And occasionally, I will get it to actually run in the debugger through Xcode on the watch.
Marco:
Maybe one out of three or four runs, it will actually get that far.
Casey:
Oh, man, I would kill for that often.
Casey:
Oh, my goodness.
Casey:
I would kill for it to be that often.
Marco:
And that takes a good two, three minutes.
Marco:
So often, it will take so long that I'll start doing something else on the computer, and I'll look down at my watch 10, 15 minutes later and see, oh, it's running!
Marco:
Oh my god!
Marco:
And then I'll jump back to Xcode and take over the session.
Marco:
But it's so slow to get to that point and get there so rarely.
Marco:
Oh, and I've had the same experience with you.
Marco:
If you try to actually set a breakpoint and try to either debug it by even just reading what a variable value is or trying the PO to print an object or whatever or try to do a step or step in or step out, forget it.
Marco:
That breaks the session almost every time.
Marco:
So don't even bother with that.
Marco:
The best you can do is see live log messages.
Marco:
Yeah.
Marco:
That being said, you can also use a custom logging framework or make your own like I did.
Casey:
That's what I'm in the process of today, actually.
Marco:
But go ahead.
Marco:
Yeah.
Marco:
So what I do is I have my own custom log framework.
Marco:
And I use it in the iOS app, too, that I log my own events to.
Marco:
And then...
Marco:
i have in only my i have a code that checks for is user id equals one then show a button in in my watch setting screen that submits my log to my servers and then i have a page on my server in my admin page that i can go look at my own damn watch log no no hold on though
Casey:
I think it's important that we really pull on this thread for a minute.
Casey:
And I'm not trying to be funny.
Casey:
It is better and faster for you to write custom code to package up log files and send them across the internet to a server under your control that is easier and more reliable than using the development environment that you are developing the app for this device with.
Marco:
By far.
Yeah.
Casey:
not even close and that's literally today like you saw in a slack channel we're all part of i was looking at okay how can i start you know collecting log information writing it to a file and then like my next step was going to be like uploading it somewhere doing something with it but my first step was like let me collect all these logs and then i'll figure out how to put it somewhere but i am writing my own logging system and i'm yes i'm sure listeners there's some logging system that i should be using that is like open source or whatever there's a million it doesn't matter i wrote my own too
Casey:
But one way or another, I am writing my own logging system because it seems like that is the most reliable way for me to be able to tell what's going on.
Casey:
For a brief window of time, when it came to complications, I was firing off.
Casey:
There's an app that I really like called Pushover, which I think I've mentioned in the past.
Casey:
And what it basically does is allow you to send pushes by email or by an API call.
Casey:
And I use it for some things like, for example, if I'm doing some long-running operation on my computer, I have a shell script where I can just say, you know, call the shell script with a message and it will send a push notification to my phone slash watch saying, okay, that thing is done.
Casey:
So I was briefly, when I was debugging complications, using pushover to start sending myself push notifications.
Casey:
Oh, such and such complication just got updated.
Casey:
Such and such other complication just got updated, et cetera, et cetera.
Casey:
I quickly got sick of that because it was happening a lot.
Casey:
But my point is, that was the most reliable thing I could think of at the time in order to get myself better visibility into what's going on on the watch.
Casey:
Now, I do think, and I haven't looked into this, I think there's some certificate or something you can put in that will get you the ability to use console.app on your computer to start reading logs coming off the watch.
Casey:
But I'm so skeptical.
Marco:
Oh, yeah, you can.
Marco:
It doesn't work.
Marco:
okay there you go i'm so skeptical that it works that i didn't even really bother looking it works about as well as debugging like you can get it to work occasionally but it's not yes stupid i've done that too don't worry that doesn't work either no so here here's how here's how you do watch development first of all you know whatever coping mechanism you need to do afterwards do whatever you need to do but
Marco:
So first of all, yeah, write your own logs to your own thing and somehow get that onto a server for debugging purposes so that you can, or bounce, you know, somehow get that to you for logging.
Marco:
And you're going to be doing printf debugging.
Marco:
You know, this is like, we're not going to have interactive debuggers going on here.
Marco:
You're going to be doing printf style debugging with log files.
Marco:
So once you have the log file feedback loop working, here's how to increase the speed of the deployment cycle.
Marco:
Never build and run on the watch.
Marco:
If you build and run the phone app onto your phone, you will see, if you go to the honeycomb screen on your watch...
Marco:
When you hit build and run, the second it launches on the phone, you can see the spinner start on the pie slice progress bar.
Marco:
You can see that starting on your watch icon.
Marco:
As soon as you deploy to the phone, the phone pushes the update to the watch, and that happens way faster and more reliably than building and running directly onto the watch from Xcode.
Marco:
So you have a fast feedback loop with logs.
Marco:
That's your fast feedback loop for code changes.
Marco:
Just build and run on the phone and watch the watch update and you'll see it's fast.
Marco:
And that's it.
Marco:
And it sucks that, like, I wish we had better development tools.
Marco:
I wish the tools we had actually worked.
Marco:
And I wish the people at Apple used them the way we have to or gave us an option not to.
Marco:
That being said, watchOS continues to feel like it has a staff of, like, one intern total that has, you know, permission to work on it part time.
Marco:
Brutal.
Marco:
So, like...
Marco:
Well, look how much changes in watchOS every year.
Marco:
It's not a lot.
Marco:
It doesn't seem like they have a lot of resources over there allocated to the watchOS development cycle.
Marco:
And so maybe we don't want the watchOS team to have their jobs be made harder.
But...
Marco:
But ultimately, it does suck that the job that we are trying to do making apps for this platform is made so much harder by the lack of reliable and good development tools and workflows.
Marco:
But that's the reality of it.
Marco:
There's not much you can do about it.
Marco:
So the other thing I would suggest regarding your data transfer issue.
Marco:
Now, this is a little sensitive because health data is sensitive.
Yeah.
John:
I was just thinking, I don't know what you're going to say, but I was just thinking earlier that if you could just get that healthcare data and like shove it up on a server somewhere and then pull it over the internet back to the phone.
John:
But I was like, Bob, that's healthcare data.
John:
You can't really do that.
John:
So I hope that's not what you're going to suggest.
Marco:
Yeah.
Marco:
Well, but what you might be able to do is use CloudKit.
Casey:
It's funny you bring this up because I had this exact same thought.
Casey:
The problem I have with that, though, is that I don't know for absolute certainty that your watch has internet connectivity, right?
Casey:
Or maybe I do and I don't realize it.
Marco:
Oh, that's its own whole ball of worms.
Casey:
So that's the thing is if I, if I rely on the internet to transfer data, then I think I'm creating a different set of problems for at least for myself slash a potentially large subset of my maybe customers, if I ever get this thing out the door in that, you know, not everyone will always have a reliable internet connection and this data could change as, as often as, you know, every 10, 20 minutes.
Casey:
And so I,
Casey:
It seems like that may not be the best answer, but at the rate I'm going, it's the answer I'm going to have to choose to take because I can't get any other freaking thing to work.
Marco:
You could also end up doing both.
Marco:
One thing you could do is have the phone package up the last X days of data as blobs of data.
Marco:
Have the phone try to send it to the watch with a blob ID on each one.
Marco:
And then also add those to CloudKit and have the watch attempt to sync with CloudKit and just try to get the same IDs.
Marco:
And if it already has an ID from one of the other sources, it'll ignore it.
Marco:
I mean, this is terrible.
Marco:
You shouldn't need to do any of this garbage.
Marco:
But people who have...
Marco:
remotely functional watch apps do crap like this this is what we have to do like this it's full of bad hacks redundancy weird ways to try to just brute force stuff through because it's it's such a punishing and unreliable environment otherwise that's what you got to do
Casey:
Yeah, it's funny you bring that up.
Casey:
So I wrote a front end, which I actually am kind of proud of, even though I'm sure it's technically incorrect.
Casey:
But I wrote a front end to watch connectivity that basically anything you want to send, it will send in all three of the different ways you can send it, because that's the only way I can reliably assure, well, semi-insure it will be there.
Casey:
So like, well, I forget what it is off the top of my head because I haven't looked at this code in a couple of weeks, but it's like,
Casey:
There's immediate messages, which you can even have replies to, but that only works when both the Watch app and the iOS app are running simultaneously.
Casey:
I think I have that right.
Casey:
I might have that slightly wrong.
Marco:
No, it's not quite.
Marco:
The Watch app is able to wake up the phone app, but not vice versa.
Casey:
That's right, that's right, that's right.
Casey:
Yep, yep, yep, yep, yep.
Marco:
So you can have immediate messages, you can have, what is it, user info updates, and then there's some other... Yeah, the application context, which is like... Another thing I can recommend, any message you get from one of those, like the application context, save that in a file.
Marco:
That way, next time your application launches, if you can't get a new one, use that.
Marco:
Second thing I can recommend...
Marco:
put a date object or a sequence number.
Casey:
I did, yep, yep, yep.
Marco:
I did, I did.
Marco:
Yeah, either a data or a sequence number in each one of those dictionaries, because the system will occasionally deliver them to you out of order or deliver you stale data.
Marco:
So you have to be able to reject stale data as it comes in.
Marco:
You're basically a real implementing TCP.
Marco:
I feel like it's so bad.
Marco:
It's so terrible.
Casey:
So, yeah, I mean, I'm going to be going away somewhat soon, and I'm going to be stepping away from all this for a few days.
Casey:
And I suspect when I come back, I'm either going to abandon this whole damn project or maybe hopefully have a renewed vigor in order to get through all these problems.
Casey:
But it's funny because a lot of times, it's happened a lot to me in the last year or two.
Casey:
It kind of went away for a long time, but it's starting to come back.
Casey:
I'll have friends that are not technical who will say to me,
Casey:
hey, man, I really want to make this app that does this.
Casey:
How long do you think it would take?
Casey:
And admittedly, there's a lot of other problems with Goaltender.
Casey:
Like I started it at a time when I had no motivation.
Casey:
I wasn't doing a good job of getting work done, et cetera, et cetera.
Marco:
But like all those caveats aside, you could use Goaltender to motivate you to finish Goaltender.
Casey:
Yeah.
Casey:
That's true.
Casey:
Except that's not exactly the kind of goals it's tending.
Marco:
But nevertheless... You write the app, you can make it 10 different goals.
Casey:
Also true.
Casey:
Well, that's also true.
Casey:
But I look at Goaltender, which is... I don't remember exactly when I started it.
Casey:
I'm too lazy to look up the Git commit history, but it's been months and months.
Casey:
And it's an app that's two views.
Casey:
And then I'll have people come to me and be like, hey, I want to automate this incredibly complicated process that involves lots of real-world physical objects.
Casey:
That can be done in a couple of months, right?
Casey:
And I'm like...
Casey:
Dude, that's a million bucks in two years for 10 people.
Casey:
And they'll look at me like, what?
Casey:
And it's like, yes, you don't even know.
Casey:
This is why software is expensive, partly because not a damn one of us knows what we're doing, but partly because it is that complicated.
Casey:
Yeah.
Casey:
It's a lot easier to mess up.
Casey:
It's a lot easier to reset than, say, civil engineering when something goes wrong.
Casey:
But it is incredibly complicated.
Casey:
And if there's anything we do as a profession is we insist on making things more complicated with each passing year.
Casey:
So I'm sorry for venting.
Casey:
I appreciate you letting me vent.
Casey:
But it is just soul-sucking.
Casey:
And it is at the point that I'm really strongly thinking that maybe I should just abandon this whole idea and just try something new.
Marco:
Well, I mean, on that front, too, you can see both ways of this.
Marco:
Obviously, as you mentioned earlier, because you're not super dependent on the income from this app, you can't abandon it.
Marco:
You have that freedom.
Marco:
You're a person.
Marco:
You're an adult.
Marco:
You can make your own decisions like this.
Marco:
You can just say, you know what?
Marco:
This is not working.
Marco:
This is not worth it.
Marco:
I can abandon it.
Marco:
You can also not abandon it, but not release it.
Marco:
You can just use it for yourself.
Marco:
I'm not going to release Duck.
Marco:
I use it.
Marco:
It serves a purpose.
Marco:
It's not the only app I have like that.
Marco:
I have my Coffee Ratio app.
Marco:
I have Town Painter, my app about tracking my walks on the map of Fire Island.
Marco:
I actually just rebooted that as a running map for me this summer.
Marco:
I'm not going to release that because it's an app that really needs a watch version to be useful to the public.
Marco:
And I wrote it when I was not wearing an Apple Watch.
Marco:
And so I wrote it to like start a workout and be a walking workout from your phone, like entirely on your phone.
Marco:
There is no watch app for this workout tracking map.
Marco:
Like it screams for a watch app.
Marco:
And I'm not going to make one because it's not it's not worth me taking that time right now.
Marco:
And I'm not motivated to and I hate the watch.
Marco:
for software development.
Marco:
So I'm not going to do that.
Marco:
So I'm just not going to release this app.
Marco:
It's not worth releasing.
Marco:
The other thing is, you can release it and not have some of these features and just say, you know what?
Marco:
Here's what it is.
Marco:
If it's useful to you, great.
Marco:
If it's not, oh well.
Marco:
Not every app has to... You're putting a lot of pressure on yourself to say, alright, well...
Marco:
obviously this needs a watch app well does it it might not um obviously this needs to be a widget does it need to be a widget maybe i mean that might be nice but is that required or it has to be non-existent or dead like it's like this you know this is a you know two extremes here
Marco:
There's a lot of middle ground that you could pick, and the world won't end, and it might not appeal to everyone.
Marco:
Some people might write to you saying, why doesn't it have this feature?
Marco:
Or I'm going to withhold my stars or my purchase until you add this feature.
Marco:
And that's fine.
Marco:
You don't have to add it.
Marco:
You don't have to please all those people.
Marco:
You can have an app that's really good for your need, and it might not ever be useful to anybody else, but you can still release it and just see, and maybe somebody will find it useful.
Marco:
But you don't have to put all that pressure on yourself that it has to have every single little tiny thing.
Marco:
But moreover, you don't have to work on something that you don't want to work on.
Marco:
If you want this app to exist badly enough for your own purposes, for your own satisfaction, get it to where you want to get it and release it.
Marco:
Or don't.
Marco:
And just use it for yourself forever like I do with my little garbage apps.
Marco:
But yours is better than that.
Marco:
Your app is way nicer than Duck, by the way.
Marco:
Thanks.
Marco:
But it's also way nicer than Town Painter.
Casey:
Yeah, I think, you know, hearing you talk about it and thinking about it, I think if I were to go middle ground, which at first when I started thinking about it, I was like, no, I don't want that.
Casey:
But the more I'm talking to myself and listening to you, the more I think, well, maybe there's something to be said for this.
Casey:
I think the middle of the ground is no watch anything.
Casey:
So I think, you know, the iOS app is done for the meaty things, like IAP I haven't touched and a couple other things I haven't touched.
Casey:
Yeah.
Casey:
The main meat of the iOS app is done.
Casey:
And I think I can get widgets done pretty quickly.
Casey:
And I think that's manageable because I'm not relying on all these things that are making me miserable.
Casey:
And so I think that the halfway solution to this...
Casey:
is to release it as an iOS-only app, no watch support of any sort.
Casey:
Then I think the next step would be, see if I can get the watch app, so the watch version of the iOS app working.
Casey:
If I can get that working, then maybe I'll go and try to bite off complications again.
Casey:
But there is the middle of the road here.
Casey:
Right now, I'm just so miserable about it that I need to step away and reevaluate, but...
Casey:
If you, the listener, have ever used a watch app that worked for more than five minutes, you should have paid $11 million for that app because that is the pain that the developer or developers have been through in order to make that app work.
Marco:
Yeah.
Marco:
And this is why I don't offer a complication for Overcast that serves any kind of useful function.
Marco:
The only complications I have are either the icon that you tap it and it launches the app because that works every time.
Marco:
Or I have a complication called overcast date that works only for the solar face and I think one or two others that you can replace the date on those faces, like the day and date, like, you know, wed 12.
Marco:
You can replace that with my complication that does the exact same thing but launches overcast also for faces that have very few complication slots and you want one that launches overcast.
Marco:
That's it.
Marco:
And I currently, on my own personal watch, I have my own complication called Overcast Solar that replicates the path of the solar, like the shape of the solar face, but with a line art style.
Marco:
So I can use it on my infograph modular face in the big center slot.
Marco:
And I'm thinking maybe launching that at some point, but it's all can of worms, so that requires location to be able to show your sunset times.
Marco:
So I'm probably never going to actually do that.
Marco:
But like...
Marco:
My complications are that simple and useless because making something useful is nearly impossible as a complication that works reliably.
Marco:
Currently, I use no third-party complications on my watch except for the little overcast throwaway ones because even things like weather and even like Carrot Weather.
Marco:
Carrot Weather is the best Apple Watch app I've ever seen.
Marco:
And it is, as far as I can tell, it is like the best watch app that somebody could make as a weather app.
Marco:
Carrot Weather does everything it can do to be a reliable, consistent, full-featured watch app with complications.
Marco:
And even it, occasionally, I've caught it showing stale data.
Marco:
And I'm not blaming the developer.
Marco:
He did everything he could possibly do.
Marco:
Complications are buggy.
Marco:
And only Apple's complications seem to be exempt from certain system bugs and system thresholds of refresh intervals and stuff like that.
Marco:
Only Apple's complications work reliably.
Marco:
No one else's do.
Marco:
Even my simple one, my overcast date...
Marco:
That literally generates a timeline into the future as far as Apple requests because all I'm doing is showing the day and date.
Marco:
So it takes no memory.
Marco:
It takes no CPU time.
Marco:
It runs into no limits.
Marco:
Even that is buggy sometimes.
Marco:
Even that will refuse to update.
Marco:
Which is really a great, it's a hilarious thing when you wake up in the morning and it says it's Wednesday and it's actually Thursday.
Marco:
That's a lot of fun.
Marco:
And so if even that, if even watchOS won't even let me get that reliably showing, nothing else stands a chance.
Marco:
And so complications on the watch that are not made by Apple are always going to be inherently buggy and limited.
Marco:
And there's always going to be a risk that they're going to be showing out-of-date data and you won't realize it.
Marco:
Yeah.
Casey:
and complications are really really made or the api is really centered around the idea of you being able to predict at least a little while into the future like it does support say weather or something like that where you're a stock ticker for example where you you cannot know what the future will bring but it's very clear that apple really
Casey:
wants you to try to predict in the future as far as possible because they the watch legitimately is constrained and they constrain third parties on the watch extremely aggressively so i i do to some degree understand where apple's coming from but i am again painting myself into like
Casey:
the corner of a corner of a corner of a corner, because now I'm relying on watch connectivity for data that's in health kit that, that I can't predict into the future.
Casey:
And I only have 10 days of it, you know, on the watch.
Casey:
It's just, it's a mess.
Casey:
So I need to wrap it up, but it, it's been, it's been very challenging and I would really, really love for this to get better in the future.
Marco:
I think what you should do, besides obviously take a break and regroup and decide how and if you want to proceed with this, one thing that might be a fun palate cleanser here to kind of get you back into thinking you're a software developer again...
Marco:
is if you have any other ideas for some really stupid simple little throwaway thing that was goaltender for god's sakes but yes i hear you i hear you work on something work on some other app that is simpler like just any any other idea you've been working on or thinking about anything like a single screen app but just not one that involves these tar pits of despair like the like watch and
Marco:
If you can avoid something that's a simple, fun Swift UI thing using your prescription Swift or Combine or whatever with a single iPhone view, that's going to be great.
Marco:
It's a fun little developer palette cleanser.
Marco:
Something like that can really kickstart motivation.
Marco:
Whenever I'm in a pit of despair with whatever I'm working on,
Marco:
Having a little distraction that I work on for like two or three days usually really kicks me into high gear again and is like a nice break.
Marco:
And I find it helps a lot with motivation and self-esteem and psyche and everything else.
Casey:
Yeah, I'll probably do exactly that.