RSS

Category Archives: Blog

Book: Learning Core Data for iOS – Rough Cut Released!

Hello Again!

It’s been a long time since I’ve posted anything, as you know I’ve been busy writing you a book! Recently a rough cut of the first chapters of Learning Core Data for iOS was released to Safari Books Online. This service provides early access to a rough draft of the book as it is written. As I write more chapters, they will be added to Safari Books Online. Note however that they are first drafts, so, there may be minor issues that need fixing before the final book is released. I’ve just started Chapter 9, so I’m over halfway there.

payday loans lenders online

If you purchase the book through the rough cuts program you save ~25% on the cost of the book, as opposed to waiting for the final version to be released. In addition, you also have a chance to provide feedback on the book in case you pick up something I missed!

Here is what the cover looks like:

So, what’s in the book?

The book will show you from start to finish how to build a Core Data application called Grocery Dude. It was originally going to be called Grocery Pal, however that name was taken before I got a chance to upload the app to the App Store. The App Store app is as at Chapter 7 so far.  As I complete chapters I submit an update to the App Store.

The book includes ALL the code required to build Grocery Dude, along with detail instructions on HOW and WHY you implement things in a certain way. If you like the tutorials on this website then you should really like the book as it has had a lot more focus and care in being written.

The book covers topics such as:

  • Data Model design, versioning, automatic migrations and manual migrations with progress indication
  • Populating Table Views, Views and Picker Views using Core Data, including a chapter on performance optimization
  • Implementing data backup and restore using Dropbox
  • Integrating with Web Services or iCloud – including support for changing and disabling iCloud profiles
  • Preloading data via XML, a pre-populated persistent store and the most elegant deep copy solution you’ve seen

I do hope you’ll get some use out of the book.

Happy Reading!!

Cheers

Tim

 
9 Comments

Posted by on January 25, 2013 in Blog

 

Teamwork Released!

You might have noticed the tutorials slow down recently. Well, that’s because I’ve been working hard to expand the Staff Manager app into Teamwork which is now available on the App Store!

Over the coming months I’ll be working on a new iOS6 Core Data book which includes much better iCloud support, Dropbox integration, Database Backup/Restore etc. I’ll keep you posted!

Cheers All,

Tim

P.S. In the mean time while my attention is diverted on the book (and Teamwork enhancements) please be aware my e-mail response time will be very slow.

 
2 Comments

Posted by on August 18, 2012 in Blog

 

GameKit Networked Box2D Physics


This isn’t a tutorial, it’s more of a record of what I’ve discovered when attempting to network Box2D using Apple’s GameKit networking.

Basically I took my game template tutorial and mashed in the networking tutorial to see what would
happen. The ultimate goal was to be able to add network multiplayer to iSoccer.  I was pretty close to success however the physics sync jitters more than I think is acceptable for a production iOS App.  It may be good enough for your purposes however so I suggest trying it out anyway. Perhaps you can suggest a better way, I’m really keen for one!

Download the Networked Box2D Xcode ‘Testing’ project from here.  If you’ve used my other testing projects please ensure you click Product , Clean in Xcode to remove any conflicts.

Network Game Ground Rules

After reading this article I can surmise that I should:

  1. Use UDP
  2. Send as little data between devices as possible
  3. Implement client side prediction (i.e. run the physics simulation separately on each device and only sync forces that change the simulation on each device)
  4. Send over the game state every now and again as a true-up

How’d that go?

Not great, although GameKit uses UDP so hooray for at least one thing.

Based on the rest of the ground rules I determined it would be a good idea to start the game on each device in the same state.  That is, the same physics starting point.  That begs the question – how do we sync two Box2D states on separate devices?  The answer direct from the creator of Box2D is you can’t.  Sad face. Part of the reason is that you can’t guarantee each device will produce the exact same simulation as the CPU and runtimes may differ.  There is no network support for Box2D.

Now what?

Maybe Client / Server?

Next step was to say well fine we will have one device do all the work and just send position info to the other device.  You can see the results for yourself in the downloaded project.  Close but no cigar as they say.

I’m still looking for a solution to this problem so if you have any tips send me an email!

-Tim


 
5 Comments

Posted by on December 12, 2011 in Blog

 

iSoccer for iPad Released!

Hi All,

It’s been a while since I’ve posted anything as I’ve been working on getting iSoccer on the App Store.

iSoccer for iPad is similar to air hockey. Kick the ball with your finger and use another to protect your goal or perhaps wait upfield ready to strike!

Until Dec 15th it’s half price at 99c however you can pick it up for FREE if you use one of the limited promo codes I’ve posted here

Expect the tutorials to start flowing again now that’s done =)

Check out the gameplay:

Cheers,

Tim


 
Leave a comment

Posted by on November 9, 2011 in Blog

 

Is this thing on?

Hello there, my blog site is here!  There’s no point visiting this site yet as there’s nothing worth reading and you have no idea who I am!

Head over to the About Me section if you want to learn who I am.  Its early days yet however I’m here to teach anyone who’s reading what I learn from my self-taught IT learning.  Maybe some of it is selfishly placed as a personal documentation I can refer to later when I forget what I’ve learned ;-)

Stay tuned for some blogging related to coding iOS (iPhone/iPad), some MS SQL and maybe even ASP.NET (vb).  I’m going to target coding tutorials at beginners and enthusiast level.  I don’t pretend to be any good, you can make your own decision on that front.

Thanks for stopping by

-Tim


 
1 Comment

Posted by on June 23, 2011 in Blog