Aug 22, 2008, 02:29 PM
I am working with a remote developer on a new iPhone app and although I have an iPhone, I am NOT a developer and I donít have the development (XCODE?) license/software on my device. I have no problem buying what I need, but I wanted to check with the experts to help me understand what I need to do to view the project during development.
Any advice would be appreciated.
Aug 22, 2008, 07:42 PM
I am working with a remote developer ... but I wanted to check with the experts to help me understand what I need to do to view the project during development.
I may not qualify as an expert, but I do know that I don't know what you're trying to ask.
When you say you want to "view the project during development," what exactly do you want to view? I can think of 4 things you could look at:
You could look at the code itself.
You could look at the UI.
You could look at the current version of the application running on the iPhone Simulator
You could look at the current version of the application running on an iPhone/iPod touch device
For the first one, you would need a computer with a text editor such that you can read the files. You don't need Xcode to do this, though if you have a Mac then you probably have Xcode on the system disks.
For the second and third options, you need to register to be an iPhone developer, but you don't need to pay the $99 annual fee. Registering gets you the iPhone-specific APIs and widgets, Interface Builder, Xcode, and the iPhone Simulator application. You would also need the developer to send you the project code.
To look at the UI, you would double-click the various ".xib" files in the package; your developer partner can point you to the ones to look at. Double-clicking on these files opens Interface Builder, the same tool that is used to build the application visual interface, assuming the UI is built with Interface Builder. This would allow you to manage the "look & feel" of the application, and correct any of these problems early. If the UI is NOT built using Interface Builder but is crafted quote by hand unquote or programmatically, then this aspect does not help but the next option is sufficient.
To run it in the simulator, you'd just have to open the project and hit the "Build and Go" button. The application would be built and the simulator would be launched with your application running.
For the last one, you need a device (duh) AND you'd need to send the device ID to your developer and have them build an Ad-hoc distribution for you to install on your device.
If it were my money on the line, I do ALL OF THESE depending on the state of development, in time-increasing order. I'd start with the code to make sure they're doing something with my money. I don't have to be a programmer to tell if the files are getting bigger or not. If UI development occurs with Interface Builder, then I'd use that to make sure it looks like what I want. Once it progressed far enough for a running prototype, I'd switch to running it in the simulator. Then once that was good OR a real device is necessary to do something the simulator can't, then I'd run it on a device. This is effectively the order I use when I build my own apps, and I'd expect something similar from others.
If they don't want to share with you until the very end, that would be a BIG RED FLAG and I'd probably take my business elsewhere.
Aug 22, 2008, 07:59 PM
First to the OP:
They can add your device to their ad hoc distribution profile and send you both the profile and the app signed with it. You can use these to load the app into iTunes and then on to your iPhone. That's probably the best way for you to get an idea of what's happening with the app. If your developer can't explain to you how to do this, I'd get a new developer. Beyond that there's always screen sharing in Leopard that can let you see the app running in the simulator where you could interact with it.
Second in general:
As a non-developer looking at the code would be a pointless exercise and using lines of code as a metric for how much work is getting done is completely meaningless (it's like using pencil length to determine how good or useful a writer is). Also any developer that has done more than one consulting gig will never let you have access to the source until you have paid for it, possession of the source is the only guarantee of payment. If you're paying by the hour then you have a right to every piece of code up to the last bill you paid. If you have another arrangement then you need to work that out with the dev.
Hope that helps.
Aug 23, 2008, 05:24 PM
Thank you for your insight. This particular develop happens to be a remotely located friend. So related concerns don't apply. I think this information will help us out greatly though.
Thank you again.