Wednesday, February 10, 2010

Audio Recording

Quick post on audio recording in iPhone apps on App Tech:

Tuesday, February 2, 2010

So Close! and the Global Game Jam 2010

I don't know whether you're aware of this but last weekend saw the Global Game Jam 2010, an event organized by the International Game Developer Association promoting the development of and experimentation with the concepts of games.

The Jam itself is an event held at a single weekend all around the world. People who love developing games gather for a 48 hours hackathon, creating a full-blown game from scratch. To give you an impression of what such an event is capable of: last weekend, more than 4000 people were registered as participating in the event creating a mind-boggling 900+ games in only 48 hours. Impressive, isn't it? For a full list of games developed in Munich, have a look at our event's page.

For me, it was the first time I participated in GGJ - and I had hell of a good time. We met up Friday at 5pm for an initial brainstorming session which eventually led to a couple of game concepts which were pursued over the next two days. The team working on our game "So Close!" featured two Graphics Artists (Thorsten Folkers and Willi Kunth) along with our Game Design lead (Daniel Helbig of remote control productions), the Sound Masterbrain (Daniel Pharos of Knight's of Soundtrack) and myself starring as Coder of the Day. Once the initial game design was fixed, we started developing an initial prototype using cocos2d which quickly proved that our concept was indeed feasible. After a lot of initial headaches trying to get Chipmunk (a physics / collision detections engine) to work, the platforming aspect of the game fell into place and revealed a very rewarding gameplay. We spent pretty much all of Saturday evening polishing the gameplay and added some last minute mechanics on Sunday. Unfortunately, time was too short to implement Online Highscore posting using cocoslive by Sunday 5pm (the official deadline) but is scheduled for inclusion. Since we really believe in this game's concept, we're even going to release the game on the AppStore later this month!

For all you coders out there, you can grab the source code on the official GGJ website. For anybody else, you can find video footage of the game on YouTube.

GGJ has been a fun experience which I can only highly recommend to anyone who enjoys developing games or would like to have a closer look at what game development is like.

Monday, January 25, 2010

Direct iTunes Links

Today it's time for creating proper direct iTunes links for pointing to additional content from within your App. Check out my latest post on http://apptech.next-munich.com for the details.

Tuesday, January 19, 2010

Invalid SSL certificates

Just posted a small piece on ignoring invalid SSL certificates within an iPhone App. Be sure to head over to http://apptech.next-munich.com to read the article.

Monday, January 4, 2010

symbolicatecrash

For the first post in 2010, I have decided to write a small piece on Apple's symbolicatecrash tool. Head over to http://apptech.next-munich.com to read about my findings.

Tuesday, December 29, 2009

Grails Gotcha #1

Whenever you work in Grails and wonder why something like this is not working:



Check the types of objects you're trying to compare. Most likely, one of the following gotchas is keeping you busy.

1. Trying to check for containment of Strings. In case you're using Groovy's support for embedding variables in a string (using "foo $bar" notation), the resulting object is of type GString not String.

2. Trying to check for containment of byte-code-modified objects. Especially when working in Hibernate-environments, objects might not really be what you think they are. They are probably of a type like "MyClass__javaassited_36" where the objects in your list are of type "MyClass".

You might be able to change your statement to use the convenient "any { it -> // code }" method included in the Groovy JDK (Object class).

Hope it saves you from some of the headaches it's been giving me!

Remote Desktop on Mac

Did you know that Mac OS X comes with a fully integrated VNC server and client for quick and easy remote desktop access? I came across the need to use remote desktop connection with my iMac at home once I was away for the holiday season. It was pretty easy to set things up on Mac OS X so here's a quick run down of what you have to do in order to get full remote desktop access to your home Mac:
  1. Optional: Install the fantastic DynDNS client, enter your credentials and domain information. Your Mac can now be accessed using the domain registered at DynDNS even in case you only have a dynamic IP address.
  2. In case you're behind a router, make sure you enable port forwarding to your Mac on port 5900, the default VNC port.
  3. Open your Mac's system settings and open the Sharing settings.
  4. Enable Screen sharing and specify which user should be allowed to login remotely.
  5. You're now ready to go! Get another Mac and open the Finder. Choose "Connect with server" from the "Go to" menu and enter "vnc://".
  6. In case things are working properly, the login form will be displayed. The user credentials are the same that you use when working with your Mac directly (ie. without a remote connection).
Obviously, you should make sure that no user accounts with empty passwords are allowed to login remotely. Enjoy!