Swift Class/Member Access Levels
I learned about class/member access levels (open, public, internal, private, fileprivate) in Swift and the “final” keyword.
WebSockets vs XMPP
Learned the difference between WebSockets and XMPP, and the Jingle protocol
WebSockets are lower level pipes like Berkeley sockets. Server “push” is poorly supported in WebSockets.
XMPP gives us a structured XML based protocol that is centered around messaging application but can be used for other machine to machine communication.
A drawback is that XMPP is textual – that is it cannot handle binary data directly unless it is base64 encoded.
Debugging Layout Constraints
A whole bunch of useful tips debugging pesky constraint conflicts and other issues.