Working with collections seems to be one of the most common tasks for a programmer. As a result, every modern language tries to make this as easy and clean as possible. Fast enumeration and blocks are great examples of how language support can make collection operations cleaner.
To start right off with something to stir up your curiosity (and make you read the rest of the post), let me show you what I did in less than 5 days just for fun. It’s not a real app, only a prototype of a hypothetical one. The video might interest you no matter whether you’re our potential client or an app designer yourself.
We often find ourselves in a situation where we have to wait for multiple asynchronous blocks to finish before we can proceed. One such case is even described in Apple’s Concurrency Programming Guide. It can be easily done using dispatch groups functions. But things may get complicated when the code inside each of your blocks makes other asynchronous calls. And it’s the completion of the latter ones that you want to be notified of.
Laying the necessary groundwork took us exactly one year. Well, was the event a success? It’s kind of hard to answer that. Tweets, Facebook comments, and photos indicate that people loved the event. We believe that no matter how well-organized and fun an event was, there is always room for improvement. We can’t help it. It’s just the way we are.