Tweet Shoutouts
@iOhYesPodcast One thing I forgot to mention: taxes. Self-employment tax is shocker. As I rule I just stash 50% of every check for the gov't— Sommer Panage (@Sommer) October 7, 2015
Stumble Into Aerial Work - Inspiring episode of @iOhYesPodcast with @Sommer and with actionable tips too! https://t.co/4LWUdf0vhj— You can call me Joe (@mokagio) October 7, 2015
@dh_thomas @iOhYesPodcast glad you enjoyed my post on map and for loops ????— You can call me Joe (@mokagio) October 7, 2015
@iOhYesPodcast @sommer !!! Ok, let's work on rollercoasters together in our next career segments. I've wanted to code coaster CAD software— Chad Etzel (@jazzychad) October 9, 2015
@iOhYesPodcast LOVED the episode this week about @sommer leaving #iosdev to follow her passion. Such a unique take on a interesting topic.— Andy Obusek (@obusek) October 12, 2015
Discussion - Tips for Increasing Productivity in Xcode
About Ashton
Developer at Odecee
Enterprise application development based in Melbourne and Sydney
How long have you been there?
What types of projects have you worked on?
Frequent? Melbourne Cocoaheads speaker
Devoted iOhYes listener and quite possibly the most prolific author of Tweet Shoutouts
Darryl and Ashton first met at WWDC’13
Social Links
@AshtonDev on Twitter
Ashton-W on GitHub
Blog: Ashton-W.net
Breakpoints
Beyond line-based breakpoints: categorical breakpoints
Types of Breakpoints
All Exception breakpoint
Stop on any and all Exceptions.
Objective-C Exception breakpoint
Stop on Objective-C Exceptions, eg: NSException.
Swift Error breakpoint
Stop on Swift Errors, e.g.: types conforming to ErrorType.
New in Xcode 7.1 beta 3.
Test Failure breakpoint
Stop when a Test fails. XCTest and compatible frameworks only.
Symbolic Breakpoints
Stop on a Symbol. A symbol is a selector or method name, or a function name.
Methods can be scoped to a class.
eg: pathsMatchingExtensions:
eg: [SKTLine drawHandlesInView]
eg: people::Person::name()
eg: _objc_msgForward
OpenGL/ES error breakpoints
Symbolic breakpoints
Particularly useful for breaking in private API
Also handy for performing debugger setup in UIApplicationMain
import UIKit
Load/init Reveal library (or chisel, or whatever)
Breakpoint actions
Play sound
Execute LLDB command
AppleScript or Shell Script
Log Message - %B %H @expr@
Conditions
Options: Continue
User breakpoints
Shared breakpoints - The only breakpoints feature Ashton doesn’t like
Ashton’s User Breakpoints
Ashton’s Cocoaheads talk on breakpoints
Ashton’s Blog Post on Xcode Breakpoints
Reveal
Scheming Defaults
Defaults domains
Apple’s NSUserDefaults Domains reference
NSUserDefaults
Configuring defaults in schemes
Ashton’s Cocoaheads talk on scheming defaults
Designable and Inspectable Views in Interface Builder
We’ll cover this topic on another show
Ashton’s slides and sample code from /dev/world
Picks
Darryl
Automated Xcode version and build numbering via Git - Another pick from our friend @mokagio. Since we’re talking about Xcode productivity, I figured this one fit in well.
John
2 finger swipe on keyboard to move cursor
xCode Keyboard Shortcut
Ashton
GammaThingy - iOS app you have to build yourself - uses private APIs to implement changing display color temperature. no jailbreak required.
Flux
Alternative show title suggestions
Another Attack Vector
Feature toggle
Scheming Default
Pro Tips
You’re holding it wrong
Undocumented features