This Week's Sponsor:

Kolide

Ensure that if a device isn’t secure it can’t access your apps.  It’s Device Trust for Okta.


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!

Unlock More with Club MacStories

Founded in 2015, Club MacStories has delivered exclusive content every week for over six years.

In that time, members have enjoyed nearly 400 weekly and monthly newsletters packed with more of your favorite MacStories writing as well as Club-only podcasts, eBooks, discounts on apps, icons, and services. Join today, and you’ll get everything new that we publish every week, plus access to our entire archive of back issues and downloadable perks.

The Club expanded in 2021 with Club MacStories+ and Club Premier. Club MacStories+ members enjoy even more exclusive stories, a vibrant Discord community, a rotating roster of app discounts, and more. And, with Club Premier, you get everything we offer at every Club level plus an extended, ad-free version of our podcast AppStories that is delivered early each week in high-bitrate audio.

Choose the Club plan that’s right for you:

  • Club MacStories: Weekly and monthly newsletters via email and the web that are brimming with app collections, tips, automation workflows, longform writing, a Club-only podcast, periodic giveaways, and more;
  • Club MacStories+: Everything that Club MacStories offers, plus exclusive content like Federico’s Automation Academy and John’s Macintosh Desktop Experience, a powerful web app for searching and exploring over 6 years of content and creating custom RSS feeds of Club content, an active Discord community, and a rotating collection of discounts, and more;
  • Club Premier: Everything in from our other plans and AppStories+, an extended version of our flagship podcast that’s delivered early, ad-free, and in high-bitrate audio.