Jeff Biggus is the founder of HyperJeff, Inc., producing Unix, Mac, iPhone and iPad apps, and custom in-house software for companies, specializing in scientific software. He has been an independent programming consultant for more than 15 years. Jeff cut his teeth on programming back in the early 1980's on the Apple ][+. He started the HyperJeff Network back in 1994, a site serving the Mac OS X community since the early Rhapsody days.
This session will go over how blocks / closures work in Objective-C and get you ready to use them in your code right away. Blocks can look ugly at first sight, but the goal of this talk is to see thru the syntax to the design patterns which are opened up by this beautiful new addition to C. From Cocoa API-level use to custom-fit blocks, you will learn why anyone would want to use them and how much better your programs will be as a result. In addition to use examples, you'll gain a solid understanding of what's going on behind the scenes with a brief deep-dive into what makes blocks tick and how best to approaching thinking about them. Once you start using them, it'll rock your Cocoa coding.
The goal of the talk would be impress on people that using the accelerate framework is worth the effort. I try to introduce the (pure C) framework in such a way that it takes away the initial shock and confusion that most people feel when confronted with it and give them clear ways to think about why and how to use it. When done right, one's code is not only faster and takes up less battery life, but is more elegant, debuggable, future-proofed and allows for features an individual developer wouldn't want to implement themselves. I will include several demos of using the framework, presenting the code with and without using it for contrast, along with benchmarks. I'll try to make the examples eclectic: imaging, audio, scientific, general data stuff. I also have some custom crib sheets that help decoding the (vast) function lists available. There's also some new stuff in iOS 5 as well. There are also a lot of nitty gritty details that I have worked out that I can save others time with. Example code is kept simple but realistic.
Details coming soon!
An introduction to OpenCL on the Mac, why it may be worth your while, what the benifits are, and how much work will it take to become productive. What kinds of tasks benefit from OpenCL? How does one go about thinking about massively parallel computing? What must we think about when trying to utilize both GPUs and CPUs? We will walk thru creating a basic OpenCL project in Xcode and compare results of various tasks to using other techniques, such as GCD and Accelerate. Only experience in C is required.
Details coming soon!
The Accelerate framework has been waiting for you to discover it ever since you've been programming on iOS / Macs. Come find out how it will make your apps faster, do tricks you didn't know you could make them do, make your code cleaner and more maintainable, and make you a more awesome coder.
Clean, easy to use, reference playgrounds for all the kids that show up! Applicable to almost any kind of app you write. Or be lame and don't show up, see if I care. No! Don't be lame, be awesome! Earn your coding kung fu belt.
Let's explore directly programming the GPU using Metal and Swift. Enjoy giant speed gains in your existing code, and dream up whole new classes of apps.
It's not obvious how to even start thinking about this stuff. What kinds of problems can be attacked? What is the learning curve? What are the trade offs? We'll get things cleared up and start exploring with real code.
Swift-Metal playgrounds will be available to get your feet wet and start experimenting. You'll go home with a starting point for your own projects.