S Link
Don't Get Frustrated Job Hunting - Get Hired
On Hired companies apply to interview you. Get 1:1 support for your job search plus upfront compensation details.
Swift Around the Web
What's new in Swift 3.1: learn what's changed and why.
Concrete constrained extensions, generics with nested types, prefix(while:)
and drop(while:)
- all with explanations and great go-to sample code. Great review of the new tools we now have in our Swift toolbox π£
Non-contiguous raw value enumerations
Wow! I had no idea you could mix & match enum values like this:
enum HTTPStatusCode: Int {
// 100 Informational
case continue = 100
case switchingProtocols
case processing
// 200 Success
case OK = 200
case created
case accepted
case nonAuthoritativeInformation
}
HTTPStatusCode.accepted.rawValue // 202
Not something that should be used every day, but it's definitely a handy Swifty feature to know for those times when it is actually useful!
Coding
Classes That Conform To Protocols
I love that this has one solution - one using protocols and one using structs. A clear demonstration of how interchangeable these can be. And in this case, the structs solution is a lot simpler and more readable. So again, think outside of just protocols. Can structs offer a simpler / more readable solution instead? As we mature in our Swift code, this is the type of critical thinking and experimentation we should employ.
Prototyping Views in Playgrounds
When Playgrounds first came out, I sat together with a designer and we prototyped an animation. It was honestly the best!! This is a great and updated tutorial on how to get your views to show up in Playgrounds, with constraints π€ I highly recommend working with a designer (and maybe even training them) to reduce the design-to-code cycle and of course have more fun together.
Design
Notifications and Alerts are Disruptive
With the new iOS 10.3 built-in rating pop-up feature, Apple is sanctioning the use of these annoying pop-ups required by business people that interrupt the user from doing what they were doing in the app. Definitely agree that maybe they could have come up with a better solution...
"Users donβt need to be interrupted from whatever theyβre doing to rate your app. They donβt care at all about your ratings; those are about you, and they care about themselves. You can use notifications to help them do what they want to do, but using notifications to get them to do what you want them to do is not OK."
One solution that comes to mind is similar to the Uber / Lyft apps. When you go to the App Store, maybe there's a pop-up to rate an app you recently downloaded...
Other Cool Stuff
Chatbot lawyer that overturned 170,000 parking tickets now helps fight homelessness
Finally! A useful chatbot π€ π₯
Videos
Operators and Strong Opinions
An absolutely beautiful talk I couldn't stop watching from @ericasadun that is about operators, but really about the Swift philosophy of readability, the human brain, and working with others. Must watch! In fact, I'm not including any other videos this week - watch this one!!
Swift Code
- IBAnalyzer - Find common xib and storyboard-related problems without running your app or writing unit tests.
- Twitter_Post - Custom Twitter Post View Controller
- equatable-code-generator - A Swift utility function that generates Equatable protocol code for any object.
- Guaka - The smartest and most beautiful (POSIX compliant) Command line framework for Swift π€
- Xniffer - A swift network profiler built on top URLSession.
- Superb - Pluggable HTTP authentication for Swift.
Swift Thoughts
This week, I need your help! The amazingly talented @yucovin designed a super cute new logo for try! Swift, but we're not sure what to name the new flying try! Swift bird. Help us out by submitting your name suggestion here! The name should be country-agnostic - the try! Swift bird will fly to India and NYC later this year! The winner gets a $50 Amazon Gift Card π