48: Reinventing the Wheel

Published: Jan. 11, 2015, 9:11 p.m.

The couch is back from holidays, so they take the opportunity to talk about things that they worked on over the short break, and what they like to do during downtime to keep themselves sharp.\n\nHaving received some feedback about extensions from the previous episode, Jelly details how Target Membership can help developers build extensions into their apps while supporting iOS7. He explains how this works, and why it might not be such a great idea.\n\nJake then touches on his recent experiences with Android\u2019s \u201csupport libraries\u201d, which allow developers to support new APIs on older systems. This leads to discussing methods of supporting older versions of iOS, which doesn\u2019t have this ability, and Jelly explains how he prefers feature detection over system version detection.\n\nJake also follows up on his argument about Today extensions, citing Drafts reinstatement as partial proof that he is correct. Jelly can\u2019t handle someone else being right, so he asks Jake to explain Pcalc\u2019s reinstatement, which Jake can\u2019t do. He does believe, however, that recent rejections aren\u2019t completely unsurprising, as Apple\u2019s behaviour on this matter appear, to him at least, to follow some form of pattern.\n\nMoving along very quickly, Jelly asks the other two what development they did over their breaks. Ben details a side project he did as part of a Christmas gift for his wife, Jake explains how he learned a little about functional, and then Jelly explains that rather than working on GIFwrapped, he did some \u201ccomfort\u201d coding in PHP.\n\nThis leads them to discuss the low-reward jobs, like refactoring, that they sometimes do during downtime. Ben notes that Jake\u2019s code is usually pretty good, and is commented, which takes them off down a path of discussing comments in code: when it\u2019s good, when it\u2019s bad and what the past practice for commenting your code might be.\n\nGetting back on track, Jelly talks about his approach to implementing low level things as a method of learning how they work. He explains how he goes about it, detailing his experience backwards-engineering NSScanner in PHP.\n\nAs usual, Jake then spins the topic off onto Swift, explaining the inability to call UIAppearance\u2019s appearanceWhenContainedIn: method in Swift. This leads to talking about Swift\u2019s viability as a future-proof language, which in turn leads to discussing Swift as a server-side language.