Sponsored Link
Kobiton: Test your Mobile App on Real Devices for Free
Welcome to Kobiton, a new mobile device cloud platform that gives you access to test on the devices you need, when you need them. Join the beta and start testing in minutes for free.
News
Chris Lattner departing Apple for Tesla
Well this was a bit of a shock! Chris Lattner is moving from Apple to Tesla, and what an amazing job he's moving to. I'd like to say congratulations to Chris in his new role and also to Ted Kremenek who takes over as Swift project lead.
Will this affect Swift? Well it's a big loss for sure, but the language will be absolutely fine. Chris will still be involved as a member of the core team and it's been a long time since it was his project. Ted is going to make a fantastic project lead and the rest of the team is full of amazing talent. While we may not have been expecting this, everything will be just fine. π€
tvOS Binaries can now be up to 4GB
Let's hope this is the start of tvOS getting a little more love this year.
Tools
simMagnifier
If you're looking for something a little more comprehensive than SimPholders then this might be just what you need. Not only do you get access to documents, user defaults and all your app's other files, but if you use Core Data you get to view, query and edit your data as well. Looks good.
Crazy Fast Builds Using distcc
Back before Xcode 4.3 parallel builds was a feature built directly into Xcode, but just because it's not as easy as checking a box anymore doesn't mean it's not possible. James Swift talks about setting up distcc and ccache to reduce your compilation times. Just a note that this is Objective-C (and friends) only, not Swift.
Formatter
If you work with lots of JSON (and who doesn't!) then this could come in handy. It's an app, Xcode Extension and Quick Look plugin for quickly pretty printing JSON.
Code
Generic allValues for enums
I remember when I first used enums in Swift being surprised that there was no way to easily get all the values out as an array, or even just being able to get at a count of enumerations. Still, it's easy to make a method to return all the values, but then that needs updating too. Wouldn't it be nice if there were a completely generic solution to this problem? That's what Tibor BΓΆdecs has done here with a generic implementation of allValues
.
Accessing Dictionaries with Key Paths
Ole Begemann with a really interesting article on implementing key path support for Swift dictionaries. As he mentions at the end of the post, you shouldn't need to actually use this very often (if at all) but the article and explanation are definitely worth a read.
Unsafe Swift: Using Pointers And Interacting With C
Ray Fix with a great article on Swift memory layout, using raw and typed pointers, and everything else unsafe in the language. π There's example playgrounds for you to experiment with and while it may not be something you'll use very often, it's worth being informed about this aspect of Swift.
Mustard
Mathew Sanders with a small tokeniser that will help you out if you need something more than components separated by whitespace. There's built in support for matching things like letters, digits and dates. Then, if you need, you can build a custom tokeniser to cope with more.
Design
Auto Layout for Sketch
Calling this Auto Layout is maybe a little misleading but this plugin for Sketch certainly gives you as much control as Springs and Struts from Xcode did, directly inside Sketch. I'd love to see Sketch natively move down this path a little, but until they do (if they do!) this is a great boost to how dynamic your designs can be in Sketch.
Business and Marketing
Missed Conversions
What a great post by Curtis Herbert. In App Purchase CTAs are so important and insights like this can really make a difference. Have you taken a moment to look at yours recently?
Videos
The Road to Cleaner Code with SwiftLint
JP Simard on what SwiftLint is, how to use it and why you should strive to improve the consistency of your code.
Sponsored Jobs
iOS Engineer @ Jiff in the heart of Silicon Valley
Interested in helping improving people's health and shaping the future of health care? Join Jiff.
And finally...
Minimum Viable Controller
Both of these pieces of advice still apply. Neither has been universally internalised 24 years later.
A little advice from 1993. π€
Comment
So this week saw the 10 year anniversary of the announcement of the first iPhone. π Yes, we didn't get an SDK until a year later, but it's still worth celebrating this event as something that has changed all of our lives. Whether you built a new chapter of your career on it or just dabbled, if you're still subscribed here it's had a big impact on you.
The (relatively) old stories about that keynote are making the rounds again, but they're great so it's worth giving them another read, but there's also a few new tidbits that have surfaced as well. For example, I'd never seen this click wheel prototype before and while it may look ridiculous now, just remember what mobile operating systems looked like at the time, and what Apple's only other hand held product UI was. It's not ridiculous that the first iPhone could have launched with something similar. What seems so obvious now, was almost certainly not as clear at the time.
I'm glad they didn't go with it though. π¬
Dave Verwer