Designing for iOS

Matt Gemmell: "iPhone developers are familiar with having to provide artwork at both regular and Retina (doubled) pixel dimensions for their apps. With rumours of a Retina Display-equipped iPad being just around the corner, it’s wise to consider moving to fully scaleable vector artwork for as much of your app’s images (such as toolbar icons) as possible."

Nice article for all iOS Developers. I'd imagine designers are already doing this, it makes sense. Vectors are a great starting point because you can usually scale them from large to small without much change. Yes, usually. I know designers with a pixel perfect eye that won't settle for less than perfect, but at least a vector can get you most of the way there before switching to pixel pushing.

The other thing to not in Matt's article is his use of a great utility from the fine folks at Panic; ShrinkIt. That tool is something every self respecting iOS developer and designer should have in their toolbox.

Objective-C REST and JSON

Cross posted from Rob Fahrni's Weblog. Bringing in the Harvest

The first REST based code I wrote for the Mac and iOS was my P8 Library for ping.fm. That code is all NSRequest based and I learned a lot while doing it. Since that time I've done a couple more projects that consumed REST Services and XML or JASON. To that end I thought I'd record some of the libraries I've run across. Some I've used, others are a curiosity.

REST Libraries

ASIHTTP - I've used this library a couple of times and I'm using it on a new project. I like it, but the developer that lovingly created it is giving up on it because people gave him too much crap. That's a real shame, not only that he's done with it, but that people would harass him so much he gave up on a very handy piece of code. LRResty - A simple REST/HTTP client. Apparently this library was inspired by a Ruby implementation. I'm fairly certain this is the library I'll be moving to this in the future. RestKit - This library not only deals with retrieving data, it will also map it into Core Data. Pretty cool, and if you have need to cache data locally it would be worth looking at.

JSON

SBJson - A very nice JSON parser. It's simple to use and includes handy categories for NSString and NSDictionary. It's very simple to create a parser and operate on the results, just like you would an NSDictionary.

SBJsonParser* jsonParser = [[SBJsonParser new] autorelease];

id jsonObject = [jsonParser objectWithString:jsonString];

JSONKit - This is a parser I only recently discovered, and it's known to be fast and efficient. It's also super easy to use because of, you guessed it, categories. There's a real nice one added to NSString.

NSDictionary* response = [[request responseString] objectFromJSONString];

See how easy that is to use? You simply invoke objectFromJSONString to get a fully parsed result jammed into an NSDictionary.

Apps I wish I developed- Magic Window

Have you ever dowload an app for either the iPhone or iPad and you use it for a while and there is just something about it that strikes you.  As an iOS developer i'm always looking at apps to whats new or fun or how others are taking advantage of the amazing things you can do with the iOS SDK.  

Every now and then something just strikes me in a "Bravo" type of moment. Largely not because it sells huge, or wins awards, but it seems to fit my style of development and what I would do if posed with a similar design or implementation challenge. I thought it would be good to share the apps I think are really well done... and why. 

So I want to start with Magic Window for the iPad. 

Magic Window, by virtue of its name and intent needed to have nothing less than spactacular design.  If you're going to create something that you want me to have on, all the time, the imagry needs to be beautiful and the UI needs to be intuitive when you want it, and dissapear when you dont. 

Starting with the main feature, the window, Magic Window employs absoultly stunning time-lapse photography of amazing vistas from cities, beaches, and islands. So the photography is top-shelf. 

Next the custom menu's have a subdued feel that is well themed with a passive/modern look. The animations which transition the UI on and off the screen are smooth. Customization options anticipate what the user might want to help get the feel for their desk during the day or bedside at night.  

In app purchases are not intrusive and there is even a media player so users can really, yet subtly preview the scenes they are considering purchasing. 

With an eye for appreciating how much time it takes to get your UI simple but effective and your visuals really beautiful, you get the feeling A LOT of work went in to Magic Window.  As a user it feels well worth the purchase price. 

Maybe it's the Sunset over the clouds in Santa Barbara, or the smooth UI or maybe its just knowing what it took to get this app right, but there is something here that makes me say BRAVO. 

 

Magic Window- an app I wish I would have developed.

(download)

 

Meeting Monday, September 12

Our next meeting will be held Monday, September 12, 6PM.

We'll meet at 1100 Broad Street, above the Verizon store on the corner of Higuera and Broad Street. You'll find the entrace on Broad.

Craig VanderZwaag, of Blue Hula Studios, will be presenting on the design challenges, and decisions, he faced while creating an upcoming product.

Please come ready to ask questions and share your iOS design and development challenges. We'd also love to hear any great solutions to tough, or typical, problems you face on a day to day basis. 

We're looking forward to it, and ready to share!

See you Monday.

<br /><small>View Larger Map</small>

NSSLO... making cool things

One of the reasons I started producing apps for the iOS platform was as a creative outlet. As I ventured down the road to learn how to make really cool things for really cool devices, I quickly learned that a. it's hard, and b. someone out there has probably struggled with the same issues, bugs and problems you have.  What I really like about the iOS community is that, on the whole, its a pretty friendly bunch, geeked up by the fuel of creativity and problem solving.  We all need mentors, we all need people to help solve problems with and we all someone to bounce ideas off, that speaks the same language you do.  

We all get better at what we do... together. 

In my mind that's what NSSLO is about.  Its an extension of the creative and professional development process that does nothing but make us better programmers, designers and producers. Its an attempt to help make the things we make... better.

To that end, if you're in or around the San Luis Obispo area, iOS professional, designer, student, whatever... please join us. We're planning on meeting once a month to talk about new things in Xcode, Objective-C, design, iOS, problem solving, beta testing... pretty much anything that has to do with making really cool things... for really cool devices. 

We're meeting again in September.  Time and location TBA, but shoot us a message and we'll keep you in the NSLoop!

Meeting two is a wrap

P248

We decided to grab a drink at Broad Street Tavern and talked about UI design and upcoming apps from our little group. It's nice sitting down with fellow developers, and friends, over a beer to discuss something you love doing.

We're hoping to attract more Cocoa Developers, as well as Designers and UX folks to the next meeting. To that end, if you have any ideas on spreading the word about NSSLO please drop us a line, we'd love to hear from you.

We'd like to set a consistent time to meet once a month. We're thinking first Tuesday of the month, but that's still up in the air.

Please, keep an eye on this space. We'll announce the final date and an itinerary for the next meeting soon.

Let's get this party started

Friday, June 24, 2011.

Today we met for the first time. Not just the first time for NSSLO, the first time period.

In attendance for our inaugural meeting were Rob Fahrni, Craig VanderZwaag, and Jeff Hokit. We talked iOS and Cocoa, surprising, I know!

 If you're interested in attending NSSLO meetups please contact Rob Fahrni, rob.fahrni@gmail.com, and we'll make sure to let you know when and where the meetings will take place.