Marco.org

I’m : a programmer, writer, podcaster, geek, and coffee enthusiast.

Ten years of Overcast: A new foundation

Today, on the tenth anniversary of Overcast 1.0, I’m happy to launch a complete rewrite and redesign of most of the iOS app, built to carry Overcast into the next decade — and hopefully beyond.

Like podcasts better than blog posts? Listen to ATP #596 for more!

What’s new

What’s not

What’s gone

Streaming. Most big podcasts now use dynamic ad insertion, which causes bugs and problems for streaming playback.1 Downloading episodes completely before they begin playback is much more reliable.

Tapping a non-downloaded episode will now open the playback screen, download it, then start playback. It works similarly to the way streaming did before, but playback begins after the download completes, not after a portion of it is buffered.

On today’s fast networks, this usually only takes a few extra seconds.

And in the near future, I’ll be adding smarter options and more control over selective downloading of episodes to further improve the experience for people who don’t automatically download every episode.

What’s next

And, of course, more features, including some of your most-requested features over the last decade.

Getting this rewrite out the door was a monumental task. Thank you for your patience as I work through this list!

Why?

Most of Overcast’s core code was 10 years old, which made it cumbersome or impossible to easily move with the times, adopt new iOS functionality, or add new features, especially as one person.

That’s why there haven’t been many new features or changes in years.

You saw it, and I saw it. I wasn’t able to serve my customers as well as I wanted.

For Overcast to have a future, it needed a modern foundation for its second decade. I’ve spent the past 18 months rebuilding most of the app with Swift, SwiftUI, Blackbird, and modern Swift concurrency.

Now, development is rapidly accelerating. I’m more responsive, iterating more quickly, and ultimately making the app much better.

Thank you all so much for the first decade of Overcast.

Here’s to the next one.


  1. Dynamic ad insertion (DAI) splices ads into each download, and no two downloads are guaranteed to have the same number or duration of ads. So, for example, if the first half of an episode downloads, then the download fails, and it downloads the second half with another request, the combined audio may jump forward or back at the halfway mark, losing or repeating content. ↩︎