S Link
Migrating to Swift for iOS Developers
5-day class for iOS developers: Migrate your own Obj-C app to Swift, and explore new iOS 8 features. First class led by Homebrew pro developer Max Howell.
Swift Around the Web
Tuples as Args
Did you know that in Swift, you can pass a tuple with function arguments as the only argument to that function? I didn't either. Thanks @psionides and @ant_bello for pointing this out.
Functions = Closures
A Closure is a function without a name. @swiftwala shows the same code as a function (with a name) and as a closure.
Coding
Games
The newest issue of @objcio is out, and it's about Games!
- Designing Elegant Mobile Games by Mike Lazer-Walker
- Metal by Max Christ and Warren Moore
- Scene Kit by David Rönnqvist
- Multipeer Connectivity in Games by JP Simard
- Virtual Soundscapes: The Art of Sound Design by Janie Clayton
Core Location in iOS 8
The Core Location API has been shaken up in iOS 8. This is an in-depth look into the new features of Core Location, including User Permissions, Indoor Positional Tracking, and CLVisit - period of time a user has spent in a single location, including both a coordinate and start / end timestamps.
Apple News
Xcode 6.1.1 GM seed
XCode 6.1.1 GM seed is out! And it's the release we've all been waiting for since Swift came out : "Many common causes of SourceKit crashes have been fixed, namely corrupted module caches and out of date derived data." While, I haven't tried it out personally just yet, it seems to be working!
Introduction to the Swift REPL
Great tips and tricks on how to play with Swift from the command line, including a list of useful shortcuts at the very end.
Design
What’s our Vector, Victor?
The asset problem is a real one - we now need designers to give us 3x, 2x, and 1x assets. Did you know that apparently XCode does support Vector-base images. This tutorial walks you through how to use vector-based images instead of the hard-coded size-based ones.
Design Details: Square Order for iOS
"Tighter motion and animation, fewer view changes, colorful animation and a warm aesthetic make Square Order one of the most accessible and beautiful apps I’ve ever used." Note that it takes a while for all the videos in this design details analysis to load (I've been on a slower internet connection both times I've viewed this), but the videos make this post, so the wait is worth it!
Other Cool Stuff
KrauseFx/frameit
Adds gorgeous device frames around your screenshots. Also check out @KrauseFx's other cool (and equally useful) tools - deliver and snapshot.
In Case You Missed It
XCode Tip: Color Palette
When dealing with custom colors in my apps, I always just make a UIColor Category (aka Extension in Swift), because I’ve found that to be a lot easier than having to punch in the color values in Interface Builder for everything. However, recently I learned that there is a very easy way to make a custom Color Palette that can be used in Interface Builder and shared across a team and even projects!
HealthKit: Let’s Talk About Units
With WatchKit coming out this month (yay!), we as developers have the opportunity to to be the first ones to develop for this new device that is almost guaranteed to be a success. So while we wait for the WatchKit debut, I wanted to write a bit about HealthKit for those interested in making health-related apps for the upcoming Apple Watch.
HealthKit: Asking For Identifying Information
This is Part II of my HealthKit series - asking the user for their personal identifying information, including Date of Birth, Blood Type, and Biological Sex. My final HealthKit post will be coming out shortly this week. Enjoy!
Tutorials
Arduino Tutorial: Integrating Bluetooth LE and iOS with Swift
"Creating machines that interact with the physical world is an incredibly satisfying thing. Controlling them via Bluetooth with your iOS device is just plain awesome!" Couldn't agree more! This tutorial is full of goodies and it's in Swift!
Videos
Swift, Functional Programming, and Does It Matter Tech Talk Video
I was lucky to have attended @alexisgallagher's talk about Functional Programming & Swift a few months ago when Swift first came out, and was very impressed. This is a very similar talk, but now with more Swift experience and context, and this time it's recorded with a great discussion afterward. Enjoy!
Functional Voodoo
Currying
"Turning a function that takes multiple arguments into a series of functions that each take one argument is called currying."
WATCH
Preparing for the Apple Watch: a Prototype Heartbeat App
Instead of waiting for WatchKit to come out, @benmorrow created the WATCH simulator, and has been working on prototype apps for the WATCH, including this Prototype Heartbeat App.
How to draw a clock face using CoreGraphics and CoreText
Have you thought of making an actual watch app for the WATCH? While we're still waiting for WatchKit to come out, we might as well practice our clock face drawing skills! Make sure to also check out the second part of this tutorial - Animating with CABasicAnimation
Swift Code
jpsim/PeerKit · GitHub
An open-source Swift framework for building event-driven, zero-config Multipeer Connectivity apps
Swift Thoughts
I haven't found SourceKit crashes to be that bad (they were tolerable) until this week - when my code would no longer autocomplete no matter what I did! Yes, cleaning Derived Data did not help.
After the frustration became too much, I spent the time attempting to Debug (which is pretty much impossible). When removing the test target solved the problem, adding it back and re-importing the newest versions of Quick and Nimble did the trick.
I am beyond thrilled that Apple is actually taking this massive tool problem for those working in Swift seriously, with the SourceKit issue the priority for the next release of XCode!