Podcasting 2.0

← Podcasting 2.018 Sept · 1 h 32 min

Episode 271: Foot Terminal

Episode 271: Foot Terminal18 Sept1 h 32 min

Podcasting 2.0 Episode 271 - "Foot Terminal"

Adam & Dave have their SCBA's on and go deep into index refactoring and ad loads!

<b>ShowNotes</b>

-------------------------------------------------------------------------------------------------------------------------------------

00 - 🔥 STEP TWO OF THE SCARY STUFF &mdash; THE ENDPOINTS FLIP TO THE IDENTITY LAYER

<b>Last week the table went in. This week the API started using it &mdash; one endpoint at a time, four days running.</b>

<b>Sat 12 Sep:</b> "#api I'm running a script to sync up podcasts.id and newsfeeds.id so that when a new feed is born they are in sync. During the cutover to podcasts.id as the canonical form, there were <b>about 11k feeds that drifted away from being in sync</b> with their podcast because of a gap in the auto_increment values. This isn't strictly necessary, it just will make human review a little less cumbersome."

<b>Mon night 14 Sep:</b> "#api Making some final refinements to the new api endpoints before deploying. These will be the first ones using the new podcast identity layer. 😰"

<b>Tue 15 Sep &mdash; the first flip:</b> "#api The <b>podcasts/byfeedurl</b> endpoint is deployed with the first changes to the new podcast identity layer. <b>We will do these one at a time, watching for problems.</b> You will see nothing different in the response shape under normal circumstances. The response 'feed' object's <b>`id` property now means the podcast ID</b>. The <b>`feedId` property now means the underlying feeds table row</b> that podcast is treating as canonical."

@dave &mdash; byfeedurl flips (15 Sep)

"It's not ideal to have the podcast id be represented as feeds.id in the new responses, but <b>anything else would have broken existing apps</b>. And, the meaning is still faithful to what it was before. That was always meant to be the ID of the podcasts. We just didn't have a way to logically express that."

<b>Same day:</b> "#api The new <b>podcasts/byfeedid</b> endpoint is deployed. That's all for today. Will watch the logs until tomorrow." &middot; "#api First run of the <b>itunes ID 404 reconciler</b> under the new podcast identity regime. 🤞"