Ask HN: About to code iOS8 iPhone app but havn't done any iOS dev yet

2 points by basdevries ↗ HN
I'm a front-end programmer and I mostly code in javascript. I'm doing a project right now in which none of my skills are needed and I offered to do the front-end of the app with the new Swift lang.

I've bought a new mac and an iOS dev account but I find the event handling pretty weird and I'm a little overwhelmed by all the features and specific way you need to set this up. In the project deadline I've included a timeframe for me to learn. What is the best way to do this? All help/tips are appreciated.

9 comments

[ 3.4 ms ] story [ 28.5 ms ] thread
I would code it using Obj-C. There is exponentially more community and example code on the internet. The frameworks are the same between both languages so you can reuse most of what you learn from ObjC when you decide to do a Swift app.

I would highly recommend buying a book. APress makes excellent iOS books, this is how I learned. The latest one is called 'Beginning iOS 7 Development Exploring the iOS SDK’

If you're mostly familiar with JavaScript, I wouldn't bother to learn Objective C now and continue to focus on Swift. You're probably struggling more with Xcode and Interface Builder then with the Swift language itself. If you want to stick to JavaScript for that particular project, you might want to consider Appcelerator Titanium: http://www.appcelerator.com/titanium/ which allows you to build iOS apps in JavaScript. It generates an Xcode project which compiles to native code; with the limitation being that you only have access to a subset of the vast cocoa and cocoa touch functionalities. Basically, if there's a particular functionality available in iOS which doesn't have a 'stub' in Ti, you're SOL (or need to find a 33rd party Ti module which might fill the gap).
I agree with this to a certain extent. However, my experience with appcelerator was that the paradigms behind doing this type of development were very different from writing js in the browser. Although this offers a familiar language, there may still be just as much of a learning curve to learning to write native ios apps. That potentially being the case: if you're not required to support any other platforms right now other than ios, then just focus on learning Obj-C/Swift.
Yes that's exactly my problem and I can't find good resources that focus on that aspect of iOS development. The actual syntax of Swift looks fine and really easy to develop, so I guess that won't be a big issue for me.
I recommend starting with something small, perhaps even a simple game to get your feet wet. The build environment and the first time through the app approval process can be a little daunting, so starting with something simple might help. You can always remove an approved app if you don't like it hurting your image.
I disagree completely about the swift thing. It may look a bit like Javascript on the very surface, but it's a whole different thing, if you know Javascript you know zero Swift ( except for syntactic sugar in the lambdas and declaring simple variables ).

Having said that, IMHO your best shot to get something done now would be Titanium or Phonegap.

Cheers.

Ps: Stay away from Swift until it's solid and there are more learning resources.

Thanks for giving me a heads up. I've indeed only looked trough the syntax and as far as I can tell it's pretty similar to javascript/python/coffeescript. I know all of these, so I thought Swift would be easy once I understand the rest of iOS dev. Could you elaborate a bit more on why it's a whole different thing?
I don't think telling him/her to stay away from swift is good advice. The swift language itself is not all you have to worry about. Getting familiar with Cocoa touch is also another task. You have about 2 months before ios 8 comes out. In my opinion thats enough time to learn swift and cocoa touch, and come up with a not too complex app.
I would recommend learning Objective-C. For your first app, you'll probably be doing a lot of Google and Stack-overflow searches and the vast majority of results and examples are in Objective-C.

I would also recommend picking up one of the Big Nerd Ranch iOS books [1] as I found them quite helpful. Good luck.

[1] http://www.bignerdranch.com/we-write/ios-programming.html