This Week's Sponsor:

Incogni

Put an End to Spam, Scams, and Robocalls on Your iPhone


Interview with YummyCocoa Developer Tim Davies

I promised more stuff coming to the #macfestival and here we are.

I had a nice chat with Tim Davies, lead developer of YummyCocoa.

Enjoy! ;)

- Hi there! Can you please introduce yourself to MacStories readers?

Hi, I’m Tim Davies, also know without vowels as tmdvs. I’ve been in development since people would first take me seriously. I spent my early days working on web applications, however I’m now lead developer at a small software house called YummyCocoa.

- Can you please tell us which apps you developed in your carreer?

Before working at YummyCocoa, most of my development was freelance. This meant I got to work on many applications. One of my first apps, or rather suite of applications was for a small content management system, Potassium, I also worked on the web app and I’m sure if you dig around you can still find it. The Applications were for built for content authoring and publishing. One of the first web based publishing platforms to have desktop software.

For something more well known, Twiba, is an iPhone twitter client for the iPhone which I have been developing at YummyCocoa, and hope to be released before the end of the year. But hey, we all know about apples app store approval process.

- How did your interest in applications development get started?

My interest came from learning web markup. At an early age I learnt HTML from a teacher at my secondary school. He swore that in 10 years time, development would be the place to be, so I used HTML as a gateway into development, using it to understand logical structures within code. However my real interest in development took a hole when I came across PHP.

At the time I came to the scene web apps were the thing, but for me complex web apps worked better as native desktop applications, and being an apple fan boy through and through, it was a natural progression to sit down and learn Objective-C, and start writing applications for the Mac.

- Let’s talk about Mac OS. Has it changed the way your code / design?

Mac OS has changed the way I think about user interaction with my applications. There was a dark time where we have all used Windows, and I’m not going to shoot down Microsoft. However when you see the user controls in applications such as Apple’s iLife suite, iPhotos collection view where you can hover over the “event” and scan through images, is something that has caused me to think outside the box. I’ve tried to avoid saying it thus far, but nothing fits better.

Working with Mac OS and the great community of designers and developers that use it too, have inspired me to “Think Different”.

- Was it hard to learn Cocoa and Cocoa Touch? Some tips for people who want to get started in Cocoa?

Learning a language for me is more about learning the layout of the syntax or rather the way the code looks, the patterns or layout of code. Cocoa, itself not being a language but being the Mac OS API is written in Objective C, and Objective C was one of the more difficult syntaxes to understand. Apple have thrown square brackets in all over the place.

But if I haven’t put you off wanting to develop then somewhere we all look to when learning is www.cocoadevcentral.com. This site really was my first port of call for the cocoa API. You should also check out the apple developers mailing lists (it’s a searchable forum type thing) where just about any question about Objective C and cocoa have been asked and answered.

- Tiger, Leopard and Snow Leopard. How has Mac development changed in these 3 OS?

When Apple release a new OS most often when checking the release notes, apple has opened up another 10,000 or so API’s. What this means is, with each new OS apple gives us, they’re giving more power and control to the developer.

One of the biggest changes was Leopard to Snow Leopard. Us developers now have 64bit to play with and better CPU threading. Applications are getting smaller and faster yet pack even more densely with features.

- What are the differences to consider when developing and designing an app for Mac and iPhone?

One of the most important differences is Human Interaction/Input. The iPhone has no mouse, so having buttons in your application that are to small for someone with large fingers to tap on simply won’t do. Writing mac software that takes advantage of the new gestures for touchpads is all well and good, but what if a user doesnt have a mac with a trackpad? Whenever developing you always need to be aware that not everyone has the same Mac as you.

iPhone compared to Mac wise. One of the biggest differences in display space available to you and heavy amounts of processing. A really complicated function in you’ve written may run fine on your mac, and in the iphone simulator, but the iPhones CPU is much smaller and too keep speed up you need to keep the heavy processing down. Break the larger functions up, run some background thread to keep the main thread responsive so the user can still use the application.

- How many times do you usually sketch a UI mockup? Is it possible to “get it right” at the first time?

I start everything with a brain storm, and then sketches. Sketching is the fastest way for me to capture and idea before I loose it to another.

Getting it right first time shouldn’t ever be possible. I like to think of it this way; if you think you can get the worlds best UI figured out on your first attempt. Just thing how amazing it could be by your third.

- What’s the most difficult part of programming an iPhone app?

Heavy processing. Poor little iPhone can’t cope. Something that takes a second on your 3G[s] might take 2 on the 3G and upto 5 on the original iphone. So when writing your apps it’s extremely important to remember the iPhone is not a portable laptop. Its a phone!!

- Can you please tell us which are your favourite apps / webapps?

Currently one of my most favourite apps, is an iPhone app from DS Media Labs and the IconFactory. RampChamp has to be the most beautiful and addictive iPhone game since the original tap tap revenge. Another awesome app, this one for the mac/web, is TinyGrab. TinyGrab is similar to grabup but the concept works much better here, I hear theres rumours of a tinygrab iphone app too.

- Can you share with us some plans you have for the future? Maybe…Twiba?

Twiba has been the centre of my life recently and it really has been a success for me already. People have responded to Twiba and YummyCocoa so well in such a short period of time that its something I will be pushing forward and working hard on over the foreseeable future.

I knew this was what I should be doing when Apple called me up for a chat about Twiba, and we’d only just put our announcement online. I think I have something special at YummyCocoa and hope my future plans are with them.

Then again I’m not against being wisked off to work in house in San Francisco.

- Thanks for chatting with us!

It’s been a pleasure. Good luck with the festival, so far it has been fantastic!

Access Extra Content and Perks

Founded in 2015, Club MacStories has delivered exclusive content every week for nearly a decade.

What started with weekly and monthly email newsletters has blossomed into a family of memberships designed every MacStories fan.

Learn more here and from our Club FAQs.

Club MacStories: Weekly and monthly newsletters via email and the web that are brimming with apps, tips, automation workflows, longform writing, early access to the MacStories Unwind podcast, periodic giveaways, and more;

Club MacStories+: Everything that Club MacStories offers, plus an active Discord community, advanced search and custom RSS features for exploring the Club’s entire back catalog, bonus columns, and dozens of app discounts;

Club Premier: All of the above and AppStories+, an extended version of our flagship podcast that’s delivered early, ad-free, and in high-bitrate audio.