Play

Hosts: Chad Etzel, John Sextro and Darryl H. Thomas
Audio Engineer and Post-Producer: Darryl H. Thomas
Released Friday, March 27, 2015

Tweet Shoutouts

The Discussion

Swift

  • Data
    • value types
      • enums
        • can have initializers, can be extended and can conform to protocols
        • Swift enums do NOT get default integer values
      • structs
        • auto-gen’ed memberwise initializers (not so in classes)
        • No ref counting, since value type
    • reference types
      • classes
        • very similar to structs (but ref type)
        • inheritance
        • Ref count for memory management
    • Swift Diff: dot syntax allows us to directly set sub-properties without intermediate assignment (reduces instance creation and malloc)
    • Rookie Question: What is the key deciding factor between creating a struct vs. class or class vs. struc?

Open Source Project of the Week

FastttCamera from IFTTT
wrapper around AVFoundation that allows you to build your own powerful custom camera app without all the headaches of using AVFoundation directly. Used to build “Do Camera”.

  • trending on GitHub this month
  • 700 stars
  • 2 contributors

Picks

Darryl

John

Chad

Alternative show title suggestions

  • Value is the value it is
  • “Mmm”
  • Sort of
  • Ok then
  • Compass points
  • Confusing
  • Raw value
  • Out of words
  • Not enough words
  • One gripe
  • There’s so many
  • alt click
  • model layel
  • Dynamism
  • Dynomite
Play

Hosts: Chad Etzel, John Sextro and Darryl H. Thomas
Audio Engineer and Post-Producer: Darryl H. Thomas
Released Friday, March 20, 2015

Tweet Shoutouts

None :(

Send us your tweet shoutouts to @iohyespodcast

The Discussion

Swift

  • Syntax
    • variable / constant declaration / type inference
    • if/for loops
    • switch statements
    • optionals

Open Source Project of the Week

FXForms, from Nick Lockwood

Picks

John

Chad

Alternative show title suggestions

  • Convenience
  • Fun with words
  • Reading code
  • Raging at your stereos
  • Swift Switch Statements
  • Bear Claws
  • Polymorphism way of life
  • Super Xcode ninja warrior person
  • The Swiftisode
Play

Hosts: Darryl H. Thomas and John Sextro
Audio Engineer and Post-Producer: Darryl H. Thomas
Released Friday, March 13, 2015

Tweet Shoutouts

The Discussion

Apple Event Recap

  • Retail Update
    • New flagship store in West Lake, China
    • Apple is moving into China at a rapid pace
      • 6 new stores in as many weeks
      • 21 Greater China stores to date, 453 worldwide (16 countries)
      • Plans to have 40 Greater China stores by mid-2016
    • 120 million visitors last quarter
  • Apple TV
    • 25 million units sold to date
    • No apparent hardware refresh
    • Price drop from $99 to $69
    • HBO Now officially announced by HBO CEO and Ricardo Montalbon/John Boehner stunt-double Richard Plepler
      • Apple is an exclusive partner (no word on the agreement duration)
      • Available early April, timed with the 4/12 Game of Thrones season premiere
      • $14.99/month
  • iPhone
    • 700 million iPhones sold
    • 49% year-over-year sales growth, compared against 26% industry-wide
    • 99% customer sat score for iPhone 6 and 6 Plus
    • Apple Pay
      • 2500 card-issuing banks on board
      • Nearly 700k locations accepting Apple Pay across the U.S.
      • Expansion to vending machines (CocaCola Co.)
    • CarPlay
      • Every major auto manufacturer has committed to supporting CarPlay
      • >40 new models with support shipping this year
    • HomeKit
      • Lots of announcements at CES, nothing earth-shattering announced
    • Health
      • Over 900 apps for managing and tracking health/fitness
      • ResearchKit (introduced by Jeff Williams)
        • Seeks to solve several problems related to medical research
          • Small sample sizes
          • Subjective data
          • Infrequent data
          • One-way communication
        • 5 apps available currently, General availability release next month
        • Takes advantage of HealthKit info, 3rd-party bluetooth devices, GPS and direct user feedback
        • Privacy
          • Opt-in
          • User decides who to share data with
          • Apple does not see the data
        • Open source (unclear as to how they define that)
  • Mac
    • 10 years of outgrowing the industry
    • New MacBook (presented by Phil Schiller)
      • No huge surprises here. See recent ATP episodes for discussions about leaked details.
      • 12” Retina display, 2304×1440 pixels
      • Fanless design, Intel Core-M processor up to 1.3GHz
      • Terraced, contoured battery cells
      • Single USB-C port (and a headphone jack, but who’s counting?)
      • Weighs 2 lbs, 24% thinner than 11-inch MacBook Air (Does the Air brand make any sense now?)
      • Redesigned keyboard, Force Touch trackpad (with new Force Click gestures)
      • Available in Silver, Space Grey, Gold
    • MacBook Air gets faster processors, Thunderbolt 2, 2x faster flash on 13” model
    • 13” MBP gets Force Touch trackpad, faster processors, 2x faster flash and longer battery life
  • Apple Watch
    • Recap of what we learned in September
    • Kevin Lynch demos the watch in action
    • All-day battery life
      • Numbers based on 38MM model. 42MM model typically gets longer battery life
      • Up to 18 hours on a typical day
      • 3 hours talk time
      • 6.5 hours audio playback
      • 6.5 hours workout
      • 48 hours watch
      • 72 hours power reserve
      • Charges 80% in 1.5 hours, 100% in 2.5 hours
    • Pricing
      • Sport: 38MM $349, 42MM $399
      • Watch Collection: 38MM $549-$1049, 42MM $599-$1099
      • Watch Edition: Starts at $10,000, Limited availability
    • April 10 Pre-order and preview
    • Available April 24 in 9 countries

Are our development tools secure?

Picks

Darryl

John

Alternative show title suggestions

  • Spring Forward
  • 10k
  • Attack Vectors
  • Chills me to the bone
  • FUD Scenario
  • Stuxnet
  • Open Source
  • Game over
  • Not Sha1
  • Reasonably Secure
Play

Hosts: Chad Etzel and John Sextro
Audio Engineer and Post-Producer: John Sextro
Released Friday, March 6, 2015

Tweet Shoutouts

The Discussion

Sprite Kit using Swift

  • Sprite Kit Basics
    • Projects are organized into Scenes
    • The Scene Editor
      • Allows you to visually layout sprites and components of a scene.
    • SKView – like other views but contains a sprite kit scene
    • SKScene
    • SKSpriteNode
    • SKAction
    • Comes with a physics engine built right in….Niiiiice!
      • Physics World
        • Included in Scenes by default
        • Configurable
        • Gravity
        • Physics Bodies
        • Contact Delegate for collision detection
          • Implement SKPhysicsContactDelegate
    • Sprite Kit and Scene Kit
      • 3d vs 2d
    • Sprite Kit vs. Unity
      • Sprite Kit
        • Native
        • Free
      • Unity
        • Cross-platform
        • Superior visual scene designer
        • Built-in asset store
        • More powerful??? Than sprite kit / scene kit

Open Source Project of the Week

HLSpriteKit from Karl Voskuil
Includes gesture target, layout manager, custom SKNode subclasses, extended scene

Picks

Chad

John

Alternative show title suggestions

  • Kids These Days
  • 10 More Bullets
Play

Hosts: Chad Etzel, John Sextro and Darryl H. Thomas
Audio Engineer and Post-Producer: Darryl H. Thomas
Released Friday, February 27, 2015

Tweet Shoutouts

The Discussion

Generalization vs Specialization

  • Back to Work #209: Habitual Ritual
  • What causes some folks to collect hobbies/interests while others focus on and master one thing?
  • Opinion: Is It Better to Specialize or Generalize? – Nora Dunn (no, not the SNL Nora Dunn)
  • What type are we?
    • John
      • Restless. I like to learn a little bit about a lot of stuff.
      • I wish that I could learn a lot about a large number of things, but I don’t have the time nor the mental capacity.
      • I believe in the axiom that “Someone always knows more ‘Karate’” and that frustrates my efforts to go deep in any one area.
    • Chad
      • Cop-out. Somewhere in the middle.
    • Darryl
      • Generalist. I have always collected hobbies and dabbled in things superficially. This has transferred over to my professional life with two major (but complementary) career changes.
  • How does this serve us with regard to iOS development?
  • How has this hindered us?

Open-Source Project of the Week

  • DDAntennaLogger – Giovanni Lodi
    Giovanni asked what we thought of his simple remote logger. I was unfamiliar with both CocoaLumberjack and Antenna, so I’m passing the question along to our listeners. What do you folks think? Open up some issues/pull requests for Giovanni.

Picks

Chad

Darryl

  • Slender from MartianCraft is one of those rare tools that fits neatly between development and design. Slender will scan your Xcode or Web projects and provide information on how image assets are being used. Exposing retina issues, unused assets, wasted space, and designer mistakes.

John

Alternative show title suggestions

  • Not a hater
  • Collecting hobbies
  • Cop-out
  • OCD Thing
  • Systems on a hole
  • In Love with what they do
  • The way the winds are blowing
  • Saxophone
  • I really, really like bowling…a lot
  • Baby Carrots
  • Dark and Brooding
  • Competent and Confident
  • Grammar show
  • Going to the model moon
  • Question mark?
Play

Hosts: Chad Etzel, John Sextro and Darryl H. Thomas
Audio Engineer and Post-Producer: Darryl H. Thomas
Released Friday, February 20, 2015

Tweet Shoutouts

The Discussion

Open-Source Project of the Week

Picks

Chad

Darryl

Provides a really good summary of the changes in Swift 1.2 with a bonus section on how to implement CopyOnWrite collections using isUniquelyReferenced (as well as a plea to consider using ManagedBuffers instead).

John

  • InVision – turn your graphic mockups into a prototype.

Alternative show title suggestions

  • Violent agreement
  • Mmmm
  • Master stroke
  • Perilous
  • Dear Internet JS
  • Threading is hard
  • Panacea for Multithreading
  • Super Against It
  • Dogmatism
  • How Comprehensive
  • Maschetti Order
  • One other point
  • Log All the Things JS
  • No fighting here
  • Copy on assign
Play

Hosts: Chad Etzel, John Sextro and Darryl H. Thomas
Audio Engineer and Post-Producer: Darryl H. Thomas

Released Friday, February 6, 2015

Tweet Shoutouts

The Discussion

Continuous Delivery Challenges in Mobile Development

Open-Source Project of the Week

Spring (Written by Meng To, a self taught UI/UX developer living in San Francisco)
A library that can help you add animations to your app.

  • Written in Swift.
  • They have a demo app that lets you play with the animations.
  • Works with Storyboards as well.

Picks

Chad

Darryl

John

  • Battle of Brothers, The one year game dev duel. (from Ilea Cristian)
  • Herman Miller Living Office, great ideas for improving on the open-plan office space.

Alternative show title suggestions

  • No
  • Windows 3.1 Release
  • Anticipation
  • Discredit Tech Buzz
  • Boxed Software or Box Software
  • Gold Master
  • Maniacal Focus on Quality
  • Unit Test Hater
  • Bleeding Edge
  • Waiting is Terrible
  • Spoilers
Play

Hosts: John Sextro and Darryl H. Thomas
Audio Engineer and Post-Producer: Darryl H. Thomas

Released Friday, January 30, 2015

Tweet Shoutouts

The Discussion

SceneKit

For a discussion of Apple’s Metal Framework, see Episode 44

Here you go, Ilea, this one’s for you…

  • What is SceneKit?
    • Objective-C framework for building apps and games that use 3D graphics
    • High-performance rendering engine
    • High-level, descriptive API
    • Supports animation based on the Core Animation framework with defined animatable properties
    • Abstracts away the rendering algorithms used to display a scene, meaning you don’t need to worry about things like:
      • Object ordering
      • Culling
      • Shaders (though you can write your own if you like)
  • What is SceneKit not?
    • A game engine (you must provide your own logic)
    • An escape from linear algebra
    • Cross-platform (but who wants to support Android anyway?)
    • A fully-featured substitute for solutions like Unity3D
  • Why use SceneKit?
    • Very easy way to get your feet wet with 3D graphics
    • Suitable for simple games
    • Rapid implementation of visualization apps
  • Major features
    • Available on Mac OS X and iOS
    • Integrated inspection (model viewer, material editor, particle editor) and debugging in Xcode
    • COLLADA importing
    • Supports geometries, materials, lights and cameras
    • Animatable properties
    • LoD substitution (level-of-detail, allowing for variable geometry complexity)
    • Actions (allows for animation triggers, sound effects, etc)
    • Skinning and Deformations
    • Static/dynamic shadowing
    • Physics, including joints and inverse kinematics
    • Particles
    • Ray casting/hit testing
    • Custom OpenGL shader programs
    • JavaScriptCore bridging
    • SpriteKit overlays for performant 2D UI elements that don’t require an additional compositing pass
  • The basics (iOS-specific)
    • Assets are contained within a Scene Assets container in your Xcode project
    • Xcode performs optimizations at build-time (up-axis correction, vertex interleaving, PVRTC image format favoring, etc)
    • Scenes can be imported from COLLADA (in Xcode. The dae file is converted to a bplist [retaining the .dae extension] before it is put on the device) or un-archived from plists.
    • Scenes consist of a graph of nodes.
      • Root node: defines the world’s coordinate space
      • sub-Nodes: populate the world with visible content by attaching:
        • Cameras
        • Lights
        • Geometries
    • Scenes can be built-up (or modified after load) programmatically.
    • sub-Nodes from other scenes can be added to a scene, but a root node must not be added to another scene.
    • Important classes
      • SCNView – a view that displays SceneKit content
      • SCNScene – The container for all SceneKit content
      • SCNNode – The basic building block of a scene
      • SCNGeometry – A three-dimensional object that can be attached to a node. Also known as a mesh or model. SceneKit has several built-in primitives that can be used, or custom meshes can be imported or built from vertex data. Surface appearance is defined by materials attached to the geometry.
      • SCNMaterial – A reusable definition of surface appearance properties for an object
      • SCNLight – A light source that can be attached to a node, providing shading in the rendered scene
      • SCNCamera – A virtual camera that can be attached to a node, providing a point of view for rendering a scene.

Open-Source Project of the Week

  • iOS-8-SceneKit-Globe-Test – @schwa
    iOS 8 Scene Kit (swift!) project showing a spinning (earth) globe with diffuse, ambient, specular and normal materials. Also cloud layer. Yum.

Picks

John

Darryl 

Alternative show title suggestions

  • Shader writing
  • Lots of polygons
  • bones and joints
  • inverse kinematics
  • draw call, draw call, draw call
  • root node for the world
  • particle emitters
  • hold on to the root node
  • root node
  • the maths
  • skin is a reserved
  • not a geologist
  • camera bob
  • the one with the monkeys
Play

Hosts: John Sextro, Chad Etzel and Darryl H. Thomas
Special Guest: Nolan O’Brien
Audio Engineer and Post-Producer: Darryl H. Thomas

Released Friday, January 23, 2015

Tweet Shoutouts

The Discussion

Project Management Triangle

Project Management Triangle

  • Time Estimation and Deadlines for development projects/tasks
    • What are your techniques? Are they effective/accurate?
    • Estimating with a team vs. by yourself
    • If you’re doing UI work (w/ or w/o a designer) vs. non-UI work
    • How often do you reassess your estimation?
    • When do you admit that your estimation is wrong or you won’t make your deadline?
    • How to prioritize tasks when a deadline is looming and not everything will get done?

Open-Source Project of the Week

  • CocoaMarkdown – Markdown parsing and rendering in Objective-C

Picks

Nolan O’Brien

  • SimPholders 2.0
    • A rewrite of simpholders in Swift.  A tool for viewing your iOS Simulator folders, the apps installed and what was recently run.  Great tool now that Simulators are unreadable GUIDs.

Darryl 

  • NSHipster (Nate Cook) – JavaScriptCore
    A deep dive into using JSContext and related classes to evaluate JavaScript on iOS. Among the many use cases for JavaScriptCore is game scripting (although LUA is perhaps a more popular solution), which may come in handy for a future episode of iOhYes.

Chad

John

Alternative show title suggestions

  • Modus Operandi
  • Soto Brothers
  • Coding Soto Brothers
  • Fungibility
  • Wa-gile-fall
  • #vague tweets
  • Its “Super”
  • In and out triangle
  • Marty you’re not thinking 4th dimensionally
  • Gold master
  • Stamping CDs
  • Agreeing Snicker
  • I look up to you Chad
Play

Hosts: John Sextro, Chad Etzel and Darryl H. Thomas
Audio Engineer and Post-Producer: Darryl H. Thomas

Released Friday, January 16, 2015

Tweet Shoutouts

The Discussion

  • The Open-Office Trap published in the New Yorker, by Maria Konnikova
    • 1997 – The University of Calgary study (before, 4 weeks after and 6 months after)
      • Disruptive, stressful, cumbersome, dissatisfied, resentful
      • Productivity fell
    • 2005 Study
      • When workers couldn’t change the way that things looked, adjust the lighting and temperature, or choose how to conduct meetings, spirits plummeted.
    • johnsextro
      This article sounds like a bunch of crying from a pretentious primadonna http://t.co/x3jDzAerwC
    • Types of open floor plans
      • the blank slate – just tables and chairs
      • moveable walls – rolling or sliding walls/whiteboards used to create separation
      • Team Area / Pit / Bullpen – semi-private partitions, not easily reconfigured
  • John’s opinions
    • Cubicles, they suck
      • False sense of privacy
      • They don’t contain nor block noise
      • They get in the way and are a waste of space
    • Offices, slight better but still bad
      • They can contain and block noise
      • But they are a terribly inefficient use of space
      • Stifling to collaboration and fascist
  • Darryl’s opinions (read: facts)
    • Open floor plans, they suck
      • Amusing article (http://verynicewebsite.net/2015/01/be-yourself-as-long-as-its-your-best-self/)
      • Workers are left with no sense of personal space as a company grows
      • The universally proposed “solution” to noise is headphones, read: OTHER NOISE
      • People feel free to interrupt your workflow in person, as if IM and email wasn’t bad enough
      • Note: I think this actually works well for teams up to 10 quiet people (no phone calls, etc), beyond that, it’s untenable
      • My favored compromise solution: Bullpen cubes (cubes that can accommodate teams of 4-5 people)
    • Cubicles, I hated them until I no longer had them
      • I miss my partitions
      • Cubes actually do affect noise levels: they discourage yelling across the room and deflect and diffuse/absorb audio a bit (when built properly)
    • Shared offices, I love ‘em
      • Office with up to 3 occupants
      • Can get cramped, but with good office-mates, it’s pretty harmonious
      • Especially good if your office mate is always going to meetings (and you aren’t)

Open-Source Project of the Week

  • Sleipnir, BDD framework
    • Sleipnir is not dependent of NSObject
    • Sleipnir is not using XCTest

Picks

Darryl 

  • 30th Annual International Technology and Persons with Disabilities Conference (#csun15, San Diego, March 2-6, 2015)
    As the name implies, this is a conference related to technology and how we make it accessible to those with disabilities. I’ll be attending for the first time. Traditionally web-heavy, there are a few iOS-specific sessions this year in addition to several sessions that are universally useful regardless of platform.
    Early-bird registration ($455) ends February 3, 2015

Chad

John

  • Ninjevade – developed by a friend of mine, Matt Burton. He just recently released it to iTunes.

Alternative show title suggestions

  • Rail against the environment
  • Bullpen
  • 5by5
  • Code of Conduct
  • Rage coding
  • Do that thing
  • You and your damn physics
  • There was a ‘B’ somewhere
  • Those germs can move