While loading a custom UIView from a xib

Instead of this:

NSArray *bundle = [[NSBundle mainBundle] loadNibNamed:@”CategoryView” owner:self options:nil];

CategoryView *categoryView = (CategoryView *)[bundle objectAtIndex:0];

for (id object in bundle) {
if ([object isKindOfClass:[CategoryView class]])
categoryView = (CategoryView *)object;

}  

Isn’t this nicer and shorter? 

CategoryView *categoryView = (CategoryView *)[[[NSBundle mainBundle] loadNibNamed:@”CategoryView” owner:self options:nil] objectAtIndex:0];

SESpringBoard is now paginated!

I just added some paging support to my new iOS control. Now if you have more than 12 items in your stack, it is gonna get paged beautifully and will have a page control in the bottom of the screen.

You can grab SESpringBoard from GitHub and use it in your projects freely. Be sure to fork it if you have some ideas for any additional functionality :)

Decided to learn Objective-C and iOS?

So you are learning Objective-C and all about the iOS framework to create iPhone apps. Keep in mind that you are investing in a closed platform and it might not be as valuable as today in 2-3 years time.

Investing in HTML5 and being able to create multi-device apps faster than writing ObjC, will be much more important in the future. 

In the end, everything is about user experience and about the ability to use APIs to reach private functions of the devices. 

Learn iOS and ObjC, but know that the moment HTML5 has the ability to provide the UX native apps have, it will be over.