Marco Arment
👤 PersonAppearances Over Time
Podcast Appearances
We are brought to you this episode by Squarespace, the all-in-one website platform for entrepreneurs to stand out and succeed online. Whether you're just starting out or managing a growing brand, Squarespace makes it easy to create a beautiful website, engage with your audience, and sell anything, from your products to your content to even your time, all in one place and all on your terms.
We are brought to you this episode by Squarespace, the all-in-one website platform for entrepreneurs to stand out and succeed online. Whether you're just starting out or managing a growing brand, Squarespace makes it easy to create a beautiful website, engage with your audience, and sell anything, from your products to your content to even your time, all in one place and all on your terms.
And Squarespace now offers design intelligence, combining two decades of industry-leading design expertise with cutting-edge AI to unlock your strongest creative potential. Design intelligence empowers anyone to build a beautiful, more personalized website tailored to your unique needs so you can craft a bespoke digital identity to use across your entire online presence.
And Squarespace now offers design intelligence, combining two decades of industry-leading design expertise with cutting-edge AI to unlock your strongest creative potential. Design intelligence empowers anyone to build a beautiful, more personalized website tailored to your unique needs so you can craft a bespoke digital identity to use across your entire online presence.
And no matter what your business is, Squarespace can probably support it. Physical goods, digital goods, newsletters, podcasts, electronic goods and services. If you're a trainer, if you are a consultant, if you're a coach, all of that plus so much more can be supported by Squarespace, honestly, very, very easily. Squarespace payments is also amazing and better than ever.
And no matter what your business is, Squarespace can probably support it. Physical goods, digital goods, newsletters, podcasts, electronic goods and services. If you're a trainer, if you are a consultant, if you're a coach, all of that plus so much more can be supported by Squarespace, honestly, very, very easily. Squarespace payments is also amazing and better than ever.
Onboarding is fast and simple. You can get started very quickly and start receiving your payments. And customers have more ways to pay than ever online. with methods like Klarma, ACX Direct Debit, Apple Pay, Afterpay, Clearpay, and so much more. You can see for yourself how Squarespace works for you by going to squarespace.com and starting a free trial.
Onboarding is fast and simple. You can get started very quickly and start receiving your payments. And customers have more ways to pay than ever online. with methods like Klarma, ACX Direct Debit, Apple Pay, Afterpay, Clearpay, and so much more. You can see for yourself how Squarespace works for you by going to squarespace.com and starting a free trial.
You can build your site totally in trial mode. See how well it works for you. When you're ready to launch, go to squarespace.com slash ATP for 10% off your first purchase of a website or domain. Once again, squarespace.com. Start that free trial. Build your site in trial mode. See how it works for you. I bet you're going to love it. I've used it. My friends have used it. My wife uses it.
You can build your site totally in trial mode. See how well it works for you. When you're ready to launch, go to squarespace.com slash ATP for 10% off your first purchase of a website or domain. Once again, squarespace.com. Start that free trial. Build your site in trial mode. See how it works for you. I bet you're going to love it. I've used it. My friends have used it. My wife uses it.
I recommend it very strongly. Go to squarespace.com. Start that free trial. Build your site today. Go to squarespace.com slash ATP when you're ready to purchase to save 10% off your first purchase of a website or domain. Thank you so much to Squarespace for being awesome and for sponsoring our show.
I recommend it very strongly. Go to squarespace.com. Start that free trial. Build your site today. Go to squarespace.com slash ATP when you're ready to purchase to save 10% off your first purchase of a website or domain. Thank you so much to Squarespace for being awesome and for sponsoring our show.
So for whatever it's worth, native dev should be faster. Now, the most common trick that Apple's frameworks use, and I presume other platform frameworks probably do similar things, it shouldn't matter really how many items are in a scrolling list for the list performance. The trick they usually do is, suppose on screen you can fit 10 cells.
So for whatever it's worth, native dev should be faster. Now, the most common trick that Apple's frameworks use, and I presume other platform frameworks probably do similar things, it shouldn't matter really how many items are in a scrolling list for the list performance. The trick they usually do is, suppose on screen you can fit 10 cells.
Well, as you scroll through a list of 100,000 items, it only keeps like 12 cells alive in memory. It just recycles their content. And so it has like, you know, the 10 cells that fit in the screen and it has like one above and one below. So as you partially scroll, that's already loaded. And then as you scroll the list, all it's doing is swapping in the content of those same 12 cells.
Well, as you scroll through a list of 100,000 items, it only keeps like 12 cells alive in memory. It just recycles their content. And so it has like, you know, the 10 cells that fit in the screen and it has like one above and one below. So as you partially scroll, that's already loaded. And then as you scroll the list, all it's doing is swapping in the content of those same 12 cells.
So it isn't like allocating everything. It isn't rendering the entire list. It's just rendering the part that you are looking at. So theoretically, it should be fairly linear. Like the performance of the list should be about the same no matter how many items it has. Now, there are a few things that can break that assumption.
So it isn't like allocating everything. It isn't rendering the entire list. It's just rendering the part that you are looking at. So theoretically, it should be fairly linear. Like the performance of the list should be about the same no matter how many items it has. Now, there are a few things that can break that assumption.
and require the frameworks to load all the items or to render all the cells. That can be things like if they are variable heights and you want an accurate scroll indicator of where you are in the list position, then the framework has to render every cell to know, well, how tall are all the cells? So I know how tall is the total view, so I know where to put the scroll indicator.
and require the frameworks to load all the items or to render all the cells. That can be things like if they are variable heights and you want an accurate scroll indicator of where you are in the list position, then the framework has to render every cell to know, well, how tall are all the cells? So I know how tall is the total view, so I know where to put the scroll indicator.