One of the things I’ve been most impressed with at Facebook: GraphQL. It’s going to change the way APIs are done.
I’m proud to announce the open sourcing of ComponentKit, the UI library that powers Facebook’s News Feed on iOS. Developing it has been a lot of fun.
If you’re not using FBSnapshotTestCase for testing iOS views, you should be.
If you’re using it with a continuous integration system, you should use Ash Furrow’s Second Curtain. It’s a cool tool that automatically uploads failures to S3 so you can download them on your local machine instead of tediously re-running the test. Amazing!
I started using Atom but couldn’t find a decent syntax highlighting theme. Here’s my attempt to replicate Xcode’s default theme.
For the past year or so I’ve been leading a project to migrate away from Core Data for Facebook’s News Feed—read about it here!
We’ve been doing a lot of work making News Feed faster at Facebook—listen to me talk about it at @Scale 2014.
Sum types are something you learn about, then miss in every language that doesn’t have them. I really wish there was an elegant, idiomatic implementation of them in C++.
Dot notation in Objective-C was a mistake. If there were one language choice I could undo, that would be it.
See me talk about building Facebook for iOS. I worked on this talk with Alan Cannistraro and had a lot of fun delivering it here at the NYC Facebook Mobile Developer Conference.
“asm.js does not support applying the multiplication operator to integer operands”
“a bitwise OR [with 0] coercion annotates a parameter as having type int”
I have no words.
The feature I miss most in Xcode.
In my previous post I noted that NSURLConnectionDownloadDelegate would provide a slick way to download files to the filesystem in iOS 5—but it doesn’t work unless you’re using it in a Newsstand app.
If you’re an old hand at Cocoa, you may remember the NSURLDownload class. It did essentially the same thing: filesystem downloads from a URL. But it’s never been available on iOS.
Enter AEURLDownload. It’s a dead simple class to asynchronously download a URL to the local filesystem. It uses NSURLConnection behind the scenes and saves to a temporary file which is properly created with mkstemp, so it’s safe even for use in non-sandboxed apps. When the file finishes downloading, your completion block is called so you can move the file where you want it. If you’re looking for NSURLDownload for iOS, AEURLDownload is what you want.
It doesn’t have progress callbacks yet, but stay tuned; they’re coming soon.