324: Design Despair - podcast episode cover

324: Design Despair

Jul 31, 202529 minEp. 324
--:--
--:--
Download Metacast podcast app
Listen to this episode in Metacast mobile app
Don't just listen to podcasts. Learn from them with transcripts, summaries, and chapters for every episode. Skim, search, and bookmark insights. Learn more

Summary

This episode delves into the challenges of adopting Apple's new iOS design system, "Liquid Glass," as independent app developer Marco struggles with its stability and controversial aesthetic. While fellow developer David shares his positive experience and strategies, they discuss the dilemma of keeping an app modern versus alienating users, exploring options like delaying updates or focusing on other exciting iOS features that align with developer motivation.

Episode description

Fighting through the motivational challenges and choosing a direction when the system design isn't an easy, universal win.

This episode of Under the Radar is sponsored by:
  • Sentry: Mobile crash reporting and app monitoring. Get 6 months of the Team plan free with code radar.
Links and Show Notes: Support Under the Radar with a Relay Membership

Transcript

The New Design System Struggle

Welcome to Under the Radar, a show about independent iOS app development. I'm Marco Arment. And I'm David Smith. Under the Radar is usually not longer than 30 minutes, so let's get started. Here we are halfway through the summer. I spent most of the first half of the summer working on...

API feature work, and I'm spending most of the second half of the summer working on design work. Some bleed through here and there, but that's the basic split of how I'm doing things. As I've been spending the last two weeks or a week and a half...

really diving into the design of Liquid Glass and the whole new design system, I'm having some troubles. The biggest trouble is making me reconsider, do I even want to adopt... liquid glass and that's a big question it's a huge question i'm pretty sure you and i feel pretty differently on that like i don't i i get the sense that you have not had a lot of doubts in that area none and even my past self like i've been saying all summer

I've been telling everyone on the podcast like, hey, you should put this on your main phone because you have to learn the new design system so that you can use it because it's pretty different. And if you don't adopt it, your app's going to feel old. And yet... I'm having a lot of trouble adopting it, like a lot of trouble. Not in the sense that I can't do it. More in the sense that, first of all, there is one major area of difficulty that...

Things keep shifting and changing, and it's really... It does not have the stability and maturity that you would expect from Beta 4, which is where we currently are. And so there's still a lot... you know rough and changing and maybe missing in certain areas a lot of bugs a lot of weird animation problems a lot of stuff that like if i tried this and this was like the release version i would be like well i just can't

use this but because it's still beta it's like well this is still shifting around maybe but maybe by the time it ships i'll be able to use things like you know the the new collapsing tab bar mini player kind of thing which i'm trying to use and and keep running into weird little problems with it

It's like, okay, I would like that, but if it's going to be really rough, I can't ship it. And so I don't want to build my entire app around a navigation paradigm that is too rough for me to ship. That's part of my challenge, just kind of giving me these doubts about the new design. A bigger part of the challenge is a lot of times when I do something that adopts the new design, whether it's glass or some other part of the design. And that's an important distinction.

When we say liquid glass to refer to the overall design, that's not the whole design language. Liquid glass is basically a material that is used in certain parts of the design. There are lots of other... parts of the new design language that don't involve glass or translucency at all and you know a lot of just changes of shapes of things you know layouts of things colors and tints of things like a lot of you know just kind of different

visual language around the whole system, even without the transparency. But anyway, part of my problem here is, again, the roughness of and that I feel like I'm building on quicksand. A bigger part of my problem is that as I'm adopting a lot of the new visual language, I hate the results. And that is really hard to push through. Like, if I change a screen in Overcaster, I change a control, and the first thing I do is I put it on my phone and I use it.

Like, you know, I don't do a lot of this design in the simulator, you know, only for like basic immediate layout. And then as soon as I can get it on my phone, I get it on my phone and I try to use it. And if it's something that I think is going to be like, you know, potentially a big deal, I'll just build it.

And I'll put it on my phone and I'll just use it for a few days before I move on with it. I'll move on to other stuff in the meantime. So things like I've been playing with the design of the mini player. on the navigational screens when something is playing a little mini player at the bottom that is that is part of the overcast design that looks the oldest and most out of place

when you see iOS 26 and you see the old app running on iOS 26, like, Oh, that looks old. And it's in large part due to those big, mostly opaque gray bars on top and bottom of overcast. And so like, that's,

First thing I wanted to change is that looked the oldest. And the new design system has very clear opinions on things like making all the corners rounded and concentric and pulling them away from the edges and all these other things. So as I've been playing with different designs for the mini player... Every single one of them. When I actually go to use it over the following day, I just hate it. And part of it is I hate the look, and part of it is it works worse.

And so then I try to like, well, how much do I go into hacking making this work better? Like... If the touch targets got smaller, okay, I can do some hacks to make a larger touch area that intercepts touches. Then what do you do with the content behind it? And what if that's interfering? There's so many little gotchas. And what I end up with is...

I spent a lot of time making something that ultimately does look more in place with 26, but I kind of hate it. And what gives me a lot of pause here...

Dilemma: App Modernity Versus User Reaction

is this tension I feel between, on one hand, what I've been saying all summer, you're going to look old if you don't do this. And I don't want my app to look old. And I think that will hurt. my app's business over time if it does look old. On the other hand, I think this is going to be a really controversial new design among users. It already is, and I think it's going to keep

that level of controversy up. And if I go all in on it, my app will look just like a lot of the system controls and system apps, which is a good thing in lots of ways. But it's kind of a liability if a lot of people hate the new design. Then what do I do? Then I'm stuck. Then I look as controversial as all the system apps.

So that could be good in the sense that it could be the upside of the controversy, which is like the people who are going to love it are going to love my app maybe. But then the people who are going to hate the new design. might then hate my app. And then I have a problem with all of them, with all the existing users in that camp. So I'm really having a hard time trying to evaluate even just whether to adopt the new system.

how far to adopt it, how much to change about my app to fit the new design language and the new structures of things like tab bars and stuff. I'm really having a hard time with that.

And the biggest problem is that every time I use it, when I hate something, I'm like, well, if I hate this, I bet a lot of my users are going to hate this too. And I've never been in a place where Apple has gone... really strong in a design direction and i've decided i don't know if i want to follow it or not like i've never been there you know one option is i can just use that plist flag that just keeps the old design

For a year or whatever, maybe. That's an idea. I don't think it's a great idea, but it's an idea. I could do that. I don't think I'd be very happy doing that, but I could do that. I think my users wouldn't be very happy with me either. It would just look like the app is just unupdated and old. So that's one option. Another option is I dive full in and fully continue to adopt the new system.

I ride the wave of controversy that I think is very likely to come this fall, which could be exciting and destructive. A third option is I update the app to not look old. But kind of my own way. Which is tempting. But that, I think, is a risk in a lot of ways. And frankly, I don't think I have time. I don't think there's enough time left in the summer for me to do a good job of that. So I don't really know.

what to do. I'm kind of in a pit of despair right now about design in Overcast this fall because I really am not happy with any of the options I have ahead of me right now. So help me out, Dave. How should I be thinking about this?

Contrasting Experiences With Liquid Glass

Oh boy. It is a very funny situation insofar as like, you know, a bit of behind the curtain. Like we often, you know, you and I will come to the show with a list of sort of like topic ideas or things we're interested in talking about. And my like... My idea for today is about how I have now finished my first pass through complete redesigns of Pedometer++ and Widgetsmith.

And it went really well. Here's some strategies that I learned about this and how excited and happy I am about liquid glass, which sounds like is essentially the... opposite of the experience that you are currently having the rather than being in the like the pit of despair i'm on the mountaintop of like you know victory you're high on the api yeah exactly

But I totally can also understand what you're saying. Like there's so many – it is a really like twisted and complicated year to work through. And I think what you're saying is true. Like there's so many dimensions to that. It isn't just, oh, the APIs are broken. Because, like, if the APIs were – if it was just that, like –

That happens every year. They get better and better. You work around it. You have strategies. Like I have things that I do. Like there's some APIs, some parts of my app that like, you know, I did my redesign that are like, hmm, this is like if the API eventually works, I have a little note to myself to go and fix it. to use the fancier, shinier version, but it have the less shiny version in there now and it'll work fine if it doesn't get better. There are ways to work around API instability.

It's a little complicated because the design keeps changing in terms of visually things are adjusting in terms of like the – One that gets overly talked about, but it's like the obvious one, is like the opacity of the glass and how opaque it is and how much that informs different designs and things. And it's like it's hard because if every beta changes, it's hard to know if a design is going to work.

We know the general opacity. And so, like, the uncertainness of that is tricky if you're going down a path and you need to know, like, does it work? Though on that, like, there's also, like, I have other strategies for that where there's a few places in my app where I've been...

And I was – I'm not – whatever the degree of opacity of the glass is, I find it isn't enough in any of the betas, like whatever, like beta 3 where we had the most frosted glass or whatever. And so like there's places where I'm tinting the glass and putting – increasing the um the opacity or decreasing the opacity of it so that it's you know

more legible and i'm doing that because i know what's going to be behind it it's never going to quite work no matter how frosted or unfrosted it is and like that's a strategy that i've been using and if it becomes super frosted at the system level later like i can roll that back it's straightforward But the really complicated one, I think, is the, like, you don't like it. And, like, that's a really challenging thing to deal with because it's...

It's kind of happening to us whether we like it or not. But it's really hard. I know that feeling well, especially as an indie developer. This isn't just your job. This is... This is your app. There's a larger part of you that is reflected back in the work that you've done on Overcast. That's the way that I feel about Pedometer Plus Plus and Widgetsmith. I feel deeply...

about that app and the way that it looks. And I, I mean, it's fortunate, you know, in terms of for my emotional state that I think now when I look, you know, I look at the redesigns and I love them and I look at the old app when I'm doing like... you know, testing on iOS 18. And I'm like, who made this terrible app? It's so ugly. I hate it. And like that, it works really well for me as a motivation and encouragement to keep moving forward. And, you know, it's been helpful over this time.

But if you're not there and like you are – and it's completely understandable. Liquid glass feels very much like one of these things that has a strong – Like it isn't like this kind of medium centrist design language where it kind of works for most people. And some people may like it more than others, but it's pretty. broadly inoffensive um like in some ways liquid glass feels kind of offensive like it's kind of in that way like it's it's strong and forward and has a

You know, has a view on how things are going to look, the way they're going to interact. And that's really tricky if that isn't something that's really sort of sticking with you. And I think...

regardless of how that kind of comes out, like that feeling is going to be really complicated and maybe it'll change. Like maybe over time, your feelings about liquid glass will... change and develop like i've definitely i think i started liking it there was a period where i didn't really like it and then now i really like it again um like and so maybe that's just where you are and it'll kind of come back up as you as you go but if you don't like

Strategic Options and Market Observation

There's no great answer there beyond just kind of going your own way. And it's like that is always a possibility here in the sense of it looks old against.

ios 26 but not insofar as like so i'm just thinking of like overcast has two big competitors spotify and uh apple podcasts i would imagine and like apple podcast is going to go hard into ios 26 we can see their implementation of it already like it's one of the apps that apple has updated oh yeah i've looked at it a lot like it is it is very strongly down that road whereas i have a strong suspicion spotify is going to do absolutely none of this

Like it is going to like the end. So you can choose in some ways which of those you're going to go for. Like you would be a be the spot, be a Spotify. And just kind of stay away from it, at least for a little bit, I think is the other thing that's also fairly reasonable. Because I think the reality is...

the controversial part of what you're talking about, we're like, is there going to be a big backlash? Is it going to be negative against apps that have adopted it? Is it going to hurt you in a way that is difficult? Like in some ways, the nice thing is you, if you just. Don't submit day one. Even if you've done a lot of the work, you just hold back for a week or two. You could see. You can find out. Is this –

is this big and negative? You can be ready to be, rather than day one app, be like a day 10 app. Or a month two app, maybe. Yeah, or whatever. Once it gets to 26.1 is when a lot of the bugs get sorted out. Like I think that's a perfectly reasonable, valid approach because at that point you will know if it's going to be –

problematic, you know what the final APIs are going to be. You know what the final look is going to be. You're going to know what the best version of liquid glass in this first phase is going to be. And that information would, I think, be very helpful. And I think there's some –

I think completely putting it off and not touching it until then I think would be unwise. But I think it is perfectly reasonable if you're not feeling it, if it's not a design that as you go more into, you feel more and more positive about. Just doing enough to understand it, doing enough to a new beta comes out, you can try it. New APIs get adjusted, you can try them. Like having that work there, I think is wise. I think broadly, I don't love the idea of apps.

avoiding liquid glass and trying to go their own way like it kind of works if you have if you need to because you're like i think spotify does it because they have their own internal brand, and also because from an engineering perspective, that is a lot easier. Their app is not fully native, and that's not their goal. But for an app like your mind, I think my life has gotten a lot easier since I leaned fully into liquid glass because a lot of my redesign work involved just deleting.

tons and tons of custom code that I had written to work around weird stuff or to do designs and stuff. I use all system button styles now. Not a single custom button style. And it looks great. And it means that I don't have all these other things I need to manage and deal with the accessibility of those. There's all these things that I'm just getting for free now. And it has made my development much better. And that works well for me in a way that like...

Spotify is reinventing every control and has to maintain all of those themselves. And if there's compatibility issues with new versions of iOS, they have to deal with that. And so I wouldn't recommend taking on that, but it's like my instinct for you is it's like... Keep working on it. Keep trying it. But be perfectly reasonable to hold back.

And make sure that before you actually go all in, before you actually hit go, that you're confident that the market state is going to be something that is conducive to this. Because like the double whammy would be you don't really like it. and your customers don't really like it, and then no one's happy, versus the version where your customers are like, hey, where's our redesign? We really love liquid glass. It's amazing. Why haven't you updated? And you could...

somewhat quickly thereafter provide that to them. It feels like a reasonable place where then at that stage, at least your customers are winning, even if you aren't in love with the app, but that's complicated regardless. We are brought to you this episode by Sentry. All right, founders, time to be honest. How much time is your team wasting on debugging?

If you're like most startups, it's way too much. Your team should be focused on shipping features, not chasing down bugs. That's where Sentry comes in. It's a real-time error monitoring and tracing platform, so you know exactly when something breaks, where it happened, and why. No more 1AM. Slack threads are digging through endless logs. Now here's the game changer. Sear.

Sentry's new AI debugging agent. It's like hiring an engineer who already knows your entire code base. Seer finds the true root cause 94% of the time and can even generate merge-ready pull requests plus optional tests. to prevent regressions. The bottom line is you ship faster, your team isn't drowning in bug alerts, and instead of grinding through logs, your developers are back to building the product.

This is an awesome platform for, you know, if you want to have insights into the issues that people are actually having out in the field, you can see, you can figure out things, trace them, whether your app's breaking, stalling, latency, etc. You can trace all that stuff with Sentry and it will find the problems. It's great.

The good news is new users get three months free of the team plan, which covers 150,000 errors. Just click the link in our show notes or go to Sentry.io and use the code RADAR. That's S-E-N-T-R-Y.

Practical Considerations for Delay and Compatibility

Yeah, I've been thinking about the two factors that you were just talking about. So number one... the delay option of just like like the kind of like the wait and see give it like some breathing room out in the market wait and see what customers actually think and how I start hearing about things before I decide to release this redesign. Um, that I think is, is probably what I'm going to do if, if for no other reason that like,

I don't think the betas are going to be firm enough until then for me to really judge it for myself. Honestly, I think this is coming in really hot. I think we're going to have animation bugs and glass frosting tweaks.

until late august i really don't think we're gonna have a lot of time with like the truly final design to make those kinds of calls before it's it's ship time i do think it is probably you know like the the rate of The ratio of how much negativity I will get for not adopting it on day one is probably lower than the risk of... If I do adopt it on day one and people hate it, how bad is that? So I'm thinking maybe like another few weeks to month.

after you know maybe this might be something that's better for me to release later in the fall like october you know maybe even november like you know give it some time see how the adoption curve is going which could help because the more i design this also like i've been going back and forth on on ios 18 compatibility uh and you know if i don't adopt the design much i can keep compatibility with 18 maybe even 17 pretty easily um because i'm just not using the new stuff if i do use the new stuff

I'm getting into restructuring. I'm getting into like different, you know, a whole bunch of custom Swift UI modifiers. Like, well, if available iOS 18, I hate like... The way SwiftUI does compatibility is terrible. It's so clunky. It is. So I don't love that angle, and it's slowing me down to try to maintain it. So there's all these considerations, and if I just wait until...

Even if I say October or November, if I wait until then, a lot of these considerations become either moot or I will have a lot more information to inform them. So I think that's a good idea. And maybe I'll do that. This is not an official announcement. Maybe I'll do that. We'll see how the rest of August goes. But also, the other half of what you were saying about how the big company apps like Spotify, I would be surprised.

If most big company apps adopted literally any of this, I think they're all going to keep having their own kind of their own design language in most of their app, their own kind of custom everything controls. because they want their apps to look the same across all the platforms. They want to know that their Android version and their iPhone version and their web version all look the same. I think there's going to be a stark difference between apps using stock controls and...

apps doing custom stuff. A more stark difference than we've had in a while. And I'm not sure that being on the Apple side of that is a guaranteed win with everybody. In the past, if you used only stock controls, you looked old or you looked basic or you looked cheap. And apps with custom controls looked more polished, more high-end, more reliable, more reputable.

Will that happen this time in the sense that we'll using all the stock stuff? I mean, I'm sure it'll be, you know, for the people who like it, I'm sure it'll be cool for a little bit. But then, you know, once the novelty wears off after a few months or whatever. Will using all the stock stuff make your app look boring and not stand out enough? I'm actually questioning, like, is it valuable for my app to match Apple's styles very closely? Or is that actually a liability?

Prioritizing Developer Motivation

Oh, boy. I mean it's – I think what you're saying is absolutely reasonable. Like it's the hard separation between is the novelty – when I like look at my redesigns of like Petombra++, like I – really love the redesign of Panamera Plus. I think the app looks amazing. How much of that is liquid glass and it's the design language or is it just, it's a new design and it's new and like people love new.

um in some ways and it's like is it a good design is there a better design is there other parts of this that are going to be and i think it's i'm so reminded in a weird way of like i feel like conversations we had before the launch of the vision pro like And the challenge – this is just like a challenge in life of obviously like we don't know the future. Like all we can do is guess and speculate.

And in retrospect, it would have been great to know that the platform wouldn't have really taken off in terms of the Vision Pro. And it was a lot of time and effort that didn't ultimately – I mean it amounts to personal development. Like I learned some new skills, but it wasn't –

massively impactful from a platform perspective. It's like, I wish I knew the answer to how this is going to go. I wish I knew the future. That would be so helpful in making a better and better informed decisions about something like this but we just don't and like we just all we have I guess at some level is we can just guess and find like the path that feels

And maybe it's weird to say, but sometimes I feel like my development strategy is to do whatever is going to make me feel motivated. Because ultimately, my apps are at their best when I'm motivated to work on them and to do good work.

on them like and whatever form that takes is almost certainly going to be the thing that is going to have the longest term benefit to the app because time and time again what has happened is if I try and work on something that I don't care about or I don't like or isn't something I use myself, it will be mediocre work that I keep procrastinating on.

sort of not doing that's my last week and like that's that that that feeling like at its core that's the thing that i makes me most nervous about the path you're on right now where like i think doing An unenthusiastic liquid glass design is much more likely to be problematic than not doing one at all. Like in that way, like either love it or don't.

do it or wait to do it maybe is the right way to say it like I like for me I it works for this particular situation it works really well that I've been really enjoying this and it's been very exciting and motivating and I've been Some of the more productive parts of my year have been the last few, I guess the last month and a half, whatever it is, since WBDC. It's been super productive and engaging because I've been enjoying it.

That motivation is what I think has allowed me to push through the challenges and the difficulties and the things that have been challenging in that. You can't manufacture that though. Like that motivation and excitement is something that is sort of there. It isn't to some degree. And so like, I think that's where.

I think if you're not feeling it and you're not excited about it, I think it's worth continuing to make sure you fully understand, do enough of the work to make sure that you understand it, to make sure that it's a choice that you're making from an informed. basis but if through that process of understanding and really getting to know it like you've given it the proper genuine try and it's not there like at that point i think it's perfectly reasonable to say hey you know like let's

Embracing Broader iOS 26 Opportunities

let's hold back on this a little bit. Like Apple made your life a lot easier this year than a lot of them where you can, you know, set the P list flag that the UI won't change, but you could still use the new APIs. other features in iOS 26 that you want to use, you could start using those right away. Like there may be more things. Cause the thing that's funny too, that's hard to lose track of is how iOS 26 is more than just liquid glass.

There are other features and other capabilities and other things coming. And so if this particular side of it is not really being exciting now, but there are other features, if there's other... iOS 26 APIs that are exciting, follow that excitement. And I think you're going to be much better served in a lot of ways. And I think ultimately that's what best serves your customers.

Yeah, I think you're right. Some of the other API stuff has been exciting, and that's what I have been working on. That's what I worked on for the first third or half of the summer. But this is... I guess I'm in a bad place right now because I'm not getting that motivation from the new design language. That's helpful. Thank you. I still don't know what I'm going to do yet, but this gives me a lot more...

Kind of, you know, a lot more tools to evaluate what's going on as I keep working through this and figure out what to do next. And I think I appreciate that, too. I think there's an honesty in understanding. questioning, making these questions? Because the answers aren't obvious. It is perfectly reasonable to be like, I don't really know if this is worth doing. That's a very important question because...

It's the reality. And so just pretending that everything's fine because that's the status quo is not particularly helpful. So I think it's perfectly reasonable to try this. And I would say, yeah, just –

Try it enough to make sure that you understand it when the new betas come out. Keep trying it. Like don't – I wouldn't just give up on it and not do it. But if there's some other thing that would be super motivating and encouraging and you would like really get you going and – motivated and productive, like follow that energy, follow that motivation and that.

I think we'd see you in September in a much better place with a much more compelling app because the app you love that you make is going to be much more – it just comes through, I think, in the way that – the final results that we make. Thank you. That's very helpful. Thank you for listening, everybody, to this episode of Developer Therapy. Good luck out there, and we'll talk to you in two weeks. Bye.

This transcript was generated by Metacast using AI and may contain inaccuracies. Learn more about transcripts.
For the best experience, listen in Metacast app for iOS or Android