S Link
iOS Apps with REST APIs: Building Web-Driven Apps in Swift Book
Need to build an iOS app around your teamโs API? With iOS Apps with REST APIs book skip the hundreds of pages that barely get into how to make a network call in iOS. Only the nitty gritty that you need to get real work done now: interfacing with your web services and displaying the results using Swift 2.0, Alamofire 3.1, Xcode 7, and iOS 9.
The Swift Algorithms Book (30% off)
Written for students and professionals, The Swift Algorithms Book blends modern code, illustrations and computer science to help you pass the interview or build your next app. Perfect for the classroom or the office, the book takes a fresh approach to explain concepts that power search engines, databases and social networks. Use code coupon code THEROBOT at checkout to receive a 30% discount!
Swift Around the Web
Matching with Swift's Optional Pattern
I've only used the traditional pattern matching for Optionals in Swift - looking for .Some
value or .None
. This seems like an easier-to-read approach, but I'm still not sure I'd be comfortable with the ambiguity.
Generic Protocols & Their Shortcomings
I've fought a lot while trying to use generics with protocols - it just never works the way I want it to work! Thanks @allonsykraken for explaining why and how this should work together, and when to use it. Keep POPing!
Coding
iOS Architecture Patterns
I've heard about VIPER, but haven't used it yet. I really like the idea of having a Router object. But obviously, having a super complex architecture like that right away is over-architecting. Great discussion on the different iOS architecture patterns and when to use them.
"Make everything as simple as possible, but not simplerโโโAlbert Einstein"
#138: Using CocoaPods in Xcode Playgrounds ๐ฉ๐ช
Just add a Playground file to your Xcode project with your favorite CocoaPods installed, and voilร , you can use CocoaPods in a Playground! Same trick should work with Carthage and Swift Package Manager. Would be awesome if more open source projects included a Playground in their sample projects for quick experimentation.
Apple News
The Swift Programming Language (ePub)
@clattner_llvm points out something that went unnoticed when Swift first became open source - The Swift Programming Language book (now in ePub format!) is now available under a Creative Commons Attribution License. You no longer need to open it in iBooks. Translations are welcome!
Design
No UI is the New UI
It's currently starting with messaging apps. Just text, and your next vacation is booked! Or your food is delivered! Or your restaurant reservation is made! But the future is a lot more exciting than that...
"In a world where computer can see, listen, talk, understand and reply to you, what is the purpose of a user interface? Why bother designing an app to manage your bank account when you could just talk to it directly? Beyond human-interface interaction, we are entering the world of Brain-Computer Interaction. In this world, digital-telepathy coupled with AI and other means of input could allow us to communicate directly with computer, without the need for a screen."
Of course, it's going to be a slow future... I've had multiple horrible experiences with apps trying to be smart recently only to leave me super upset and frustrated. AI just isn't there yet.
Making Learning Easier by Design
Good design is simple and obvious - that's how I felt looking at the end design while reading this article. Of course, it took lots of hard work to attempt to solve a super challenging problem for a learning app:
"Despite all the information available at our fingertips, and all the new technologies that emerge seemingly overnight, 97% of people wonโt spend any time actively seeking out new knowledge for their own development."
Other Cool Stuff
Amsterdam iBeacon Living Lab
A company in Amsterdam has paired up with the city to put up a public network of iBeacons around the city. Any developers can access these beacons for any application, kickstarting Amsterdam's IoT economy! Would love to see more cities do the same! Thanks @bmf for telling me about it :)
In Case You Missed It
try! Swift
I'm thrilled and honored to be organizing a Swift Conference in Tokyo, ๐ฏ๐ต this March! The best part is having people from all over the ๐ as speakers and attendees! So excited to meet everyone! Today is your last chance to get the Swift Bird Tickets. Hope to see you there! ๐ค๐๐
Videos
Automating Your Daily iOS Developer Tasks, with Felix Krause
Creator of the fastlane tools @KrauseFx talks about automating iOS tasks.
Swift Evolution
Swift 3 And Beyond
I loved actually seeing an example of how the Objective-C API will be mapped differently to Swift. Excited for this!
Swift Package Manager
Exclude folders - New feature in SPM
@kostiakoval added a new feature to SPM - the ability to exclude folders! Read this post for an example on why you might need to do this.
Swift Code
- SourceKitten - An adorable little framework and command line tool for interacting with SourceKit.
- KZLinkedConsole - Clickable links in your Xcode console, so you never wonder which class logged the message.
- Chatto - A lightweight framework to build chat applications, made in Swift
- Laurine - Localization code generator written in Swift. Sweet!
- ImageViewer - An image viewer ร la Twitter
- XAnimatedImage - XAnimatedImage is a performant animated GIF engine for iOS written in Swift based on FLAnimatedImage
Business
This Is How Paris Hilton Fooled the Entire United States of America
Fascinating read on Paris Hilton:
"Through the power of a fake baby voice, Paris Hilton launched a business empire, invented reality TV superstardom, and disrupted American culture years before Facebook or the Kardashians."
"At 34, Paris Hilton has accomplished more than most people do in a lifetime. In 2014, Women's Wear Daily reported Paris had sold over $2 billion worth of perfume. (Last month, she released her 19th fragrance, a limited edition of her second-best-selling fragrance, "Heiress.") And over the past 15 years, she has opened 50 "Paris Hilton" stores in over 40 countries; licensed her name and brand to 17 product lines; opened a resort, the Paris Hilton Beach Club at Azure in Manila, Philippines (construction is nearly completed on a second hotel in the Philippines); created Paris Hilton Junior, a clothing line for children, with Genesi Srl; launched a cosmetics line with Pearl World in China; performed three Foam & Diamonds summer DJ residencies at Amnesia, the Ibiza nightclub; and disrupted the rules of American celebrity years before Facebook, Uber, and a zillion other startups disrupted technology."
Marketing on the App Store, with Tim Oliver
Video from #Pragma Conference 2015: @TimOliverAU shares tips on how to make your app stand out above the crowd! Learn how to market your app on the App Store, including, but not limited to: app title, keywords, app icon, screenshots, descriptions, localizations, business model, social exposure, and app marketing outside the App Store.
Swift Source
Open source Swift: weekly brief
A much needed weekly summary of open source Swift. Some highlights:
- Swift now has almost 200 contributors and over 230 pull requests have been merged.
- Brian Gesiak, creator of Quick, asks who tests the tests? after noticing that the xctest framework isn't itself tested. Testing a testing framework sounds funny, but some important bugs have already been found. <- good place to contribute!
- Andrew Naylor ambitiously implements NSJSONSerialization. ๐
- There's an interesting discussion on the mailing lists to make classes and methods final by default.
- Programming is little more than a "nights and weekends" hobby for Chris Lattner. ๐
Thanks @jesse_squires for putting this together!
Swift Weak References
One of the coolest parts of having Swift be open source is that now we don't have to guess how something is implemented. We can actually look through it! That's exactly what @mikeash did in his latest Friday Q&A, finding a bug in the process!
Swift Thoughts
This week's exciting announcement - you can now run a Swift "Hello, World" program on Android! Ok, so that is all you can do at the moment, but it's a good start ๐ฃ!