Skip to content
103: Don’t Hate Us, Nolan episode artwork

EPISODE · Mar 2, 2016 · 54 MIN

103: Don’t Hate Us, Nolan

from iOhYes · host Darryl Thomas & John Sextro

Discussion Pushing info to clients Long Polling Client sends request to server, waits for response or timeouts (Loop) Can send and receive information, but not full-duplex iOS Implementation NSURLConnection sendSynchronousRequest Common uses Fallback from Websockets and SSE when streams are unreliable or impractical HTTP Streams Can only push information to your client If you need to send info back to server use standard rest approach Transported over simple HTTP Built in support for re-connection and event-id iOS Implementation Server Sent Events (SSE) NSURLSession, NSInputStream, NSSteamEvent Setup the connection Implement code to handleEvents from the input stream Common uses Stock ticker streaming “Status” feed updating Push Notifications Websockets Designed to overcome many of the pitfalls/shortcomings described in RFC 6202 Standardized by IETF (Internet Engineering Task Force) in 2011 Can send and receive information (full-duplex pipe) Protocol based on TCP Uses HTTP only for initial handshake, while leveraging existing HTTP infrastructure iOS Implementation CFStreamCreatePairWithSocketToHost takes url, read and write stream Cast read and write stream to NSInputStream and NSOutputStream, respectively Set delegate for input and output streams Schedule both in a run loop (Can do without but will block the execution of other code) Open connection Write code to handleEvents from the input stream Implement message sending via the output stream Server considerations Not as easy to get started with as a generic web server Buy one, borrow one or build one Common uses Chat Player vs. Player games Real time interactions Popular Abstractions/Frameworks TRVSEventSource from Travis Jeffery SignalR from Microsoft At-a-glance Comparison Websockets SSE Long Polling Client Performance Best Best Worst Server Performance Best Worst Worst Complexity Highest Lowest Mid When to Use 2-way messaging Push to Client Just getting started Picks Darryl Proportional Spacing with Auto Layout John Google Cloud Vision API Detects types of images, landmarks, recognizes text, does image sentiment analysis and can even detect “inappropriate content” Agile and Beyond 2016 May 5-6 in Ypsilanti, MI Alternative show title suggestions Uncanny valley The cooker's always on Canonical Framing Technique

Episode metadata supplied by the publisher feed · Published Mar 2, 2016

Embed this episode

Ready to play

103: Don’t Hate Us, Nolan

0:00 54:05

No transcript for this episode yet

We transcribe on demand. Request one and we'll notify you when it's ready — usually under 10 minutes.

No similar episodes found.

No similar podcasts found.

Frequently Asked Questions

How long is this episode of iOhYes?

This episode is 54 minutes long.

When was this iOhYes episode published?

This episode was published on March 2, 2016.

Can I download this iOhYes episode?

Yes. Use the download control on the episode player to save the publisher-provided media file.
URL copied to clipboard!