I spent all of last week in San Francisco for Apple's 25th Worldwide Developers Conference, and, like many others, I was absolutely floored by what I saw. In two ways, I think this was the most important WWDC I've ever experienced.
First, and perhaps most importantly, are signs of Apple opening up. This manifested itself in myriad ways, ranging from the speed at which Apple posted WWDC session videos, to the relaxation of the NDA around topics discussed in the keynote, to some of the new features added to iOS 8.
Second is the incredible number of new goodies Apple had for us developers at WWDC. It's always amusing to me to see 'WWDC was disappointing because no iPhone' articles published by what are otherwise respectable news outlets, especially when their reporters should be able to *do a little fact checking* to determine that Apple hasn't announced an iPhone at WWDC since 2010. A new iPhone would be lovely, but, honestly, I feel like the iPhone 6 (or whatever) is not nearly as important to the iOS platform as the new extensions API, Swift, the Touch ID API, and third party keyboards. Interestingly, most of these can be considered as examples of Apple 'opening up.'
I expect that iOS 8 will enable not just new features for apps, but entire new categories of apps that we have yet to dream up. There are the extensions APIs, which have been written about extensively, but also a ton of other areas, like Touch ID. The Touch ID API is going to make all sorts of new payment scenarios stupidly easy and secure, especially when you combine it with devices like iBeacons. For example, you walk into Starbucks, and the Starbucks app icon pops up on your lock screen. You tap it, and the app asks if you want your usual Grande 2% Vanilla Latte. You tap Yes, press your finger to the Touch ID sensor, and your drink order is automatically rung up.
And then, of course, there's Swift. Swift isn't perfect today, but for 1.0 product, it seems to be incredibly well thought out, documented, and feature rich. Swift is the future for writing apps for iOS and OS X, and I cannot imagine any scenario where Objective-C is still the dominant language for developing Cocoa apps in ten years, or even, quite likely, 3-5. Yeah, I know, you've been writing Obj-C for a while now, change is scary, etc. etc. But I highly recommend getting on the Swift train ASAP. Given the level of enthusiasm I saw for the language amongst everyone (including Apple employees) this past week, I expect Swift uptake to be incredibly, uh, swift.
Aaron
What We're Reading
- Fixing Homebrew for Yosemite
- Apple Managers Didn't Know How Spotify Worked, Engineers Used Pandora Over iTunes Radio
- Secrets of dispatch_once
Weekly Roundup
UIView-Blur
Add a dynamic blur effect to any UIView in two lines of code. GPL licensed. |
DJProgressHUD
BlurImageProcessor
BlurImageProcessor offers a very easy and practical way to generate blurred images in real time. MIT licensed. |
CCDebugHelper
ZFDragableModalTransition
Custom animation transition for presenting modal view controllers. MIT licensed. |
MPSkewed
An iOS collection view subclass to present a list of skewed images and parallax of the images during the scroll! Inspired by http://capptivate.co/2014/01/18/timbre-2/ History I wanted to make something like this since I saw this: http://capptivate.co/2014/01/18/timbre-2/ While I was waiting to have the time to make it TWRSkewedCollectionView came out. I forked it and decided to contribute. I was going to add the parallax effect when I realized that there were some decision that I didn't like so I preferred to use that as a base but I need to edit a lot of stuff that probably the original owner do not want to change. For example: I want a collection view that works like any other collectionView, where the user needs to provide a data source instead of loading a simple list of URL for the images. Just to have it as exensible as the original CollectionView, and have more reusable code. I don't like NIBs, and this project shouldn't be a collectionview but just a cell (+ layout for the parallax) Even for the way how the original is structured is difficult to add the parallax effect or edit the behaviors, and it becomes too much confusing. Instead of use a custom collection view+cell+layout here you just have to use the cell (and the layout if you want the parallax). I tried to made something that preserve all the other behaviors and settings in the collectionView. At the end I guess there is no code shared between the two, TWRSkewedCollectionView is just simple to use but not as reusable and customizable as I wanted. BSD licensed. |
GTAppMenuController
This is a simple project inspired by Paper application of Facebook. MIT licensed. |
NSDictionary-ImageMetadata
Curious
iOS inspector for curious people. Inspect the hierarchy of apps and objects' available methods! Useful for debugging, and knowing how something works. GPL licensed. |
DLForcedGraphView
iOS and OS X implementation of forced graph using SpriteKit. See demo here:https://raw.githubusercontent.com/garnett/DLForcedGraphView/master/img/demo.gif MIT licensed. |
KPCClipShadowsScrollView
AFViewShaker
AFViewShaker is a simple utility for performing UIView shake animations. MIT licensed. |
AHKNavigationController
A It's described in detail in the blog post: http://holko.pl/ios/2014/04/06/interactive-pop-gesture/ MIT licensed. |
CZWeatherKit
CZWeatherKit is a simple, extensible weather library for iOS and OS X that allows for easy downloading of weather data from various weather services. BSD licensed. |
AHKSlider
A MIT licensed. |
MPParallaxCollection
a collection view layout + cell that can do something percent driven ( parallax for image + custom) A collection view layout and a cell subclass usefull to made parallax of an image during the scrolling. But even thanks to the delegate useful to make cool percent driven effect, in the example I used my MPTextReveal to show you how to use. BSD licensed. |
CHTransitionAnimationController
BorderButton
MMPopLabel
A popping label with optional buttons, useful for tutorial-like tips. MIT licensed. |
VPRubberMenu
Subclass of UICollectionViewFlowLayout and UICollectionViewCell with 'rubbery' effect. Inspired by Nike's 'Making' app. MIT licensed. |