Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: Becoming an iPhone app Dev.
16 points by Pabss on April 21, 2012 | hide | past | favorite | 21 comments
I'm studying CS, second year, and I really enjoy programming. I'm very interested in developing iPhone apps and if even possible gain some profit out if it. I know some general stuff from C++, not much though. My question is, where should I start? What should I know and where should I begin to study about iPhone apps? I'm really lost and would appreciate some some sort of direction. lol



I think the best place to start learning is going through the Stanford lectures notes at http://www.stanford.edu/class/cs193p/cgi-bin/drupal/download... and watching the videos at http://itunes.apple.com/itunes-u/ipad-iphone-application-dev.... The strategy should be to finish one lecture in a day or two without rushing to the next lecture. Finish up the assignments and if you get stuck somewhere, search, learn, repeat. This way you would have learned quite a bit on specific topic and would be comfortable on the next topic. By lecture 10 you would be itching to write your own app, but don't succumb to the temptation and keep on finishing up the lectures. May be after lecture 18 you can explore things on your own. HTH


http://itunes.apple.com/us/itunes-u/ipad-iphone-application-...

Your best bet is to find a complete course, and as a Stanford student who has taken the iOS programming course, I can tell you that I learnt a ton. Videos are good, but you won't get enough practice. The same goes for book, there are a lot of examples but the learning by example is very limited.

By taking a complete online course, you will have lectures, videos, examples, sample code, and most importantly, you will get homework's. As a CS major, the most effective way that I have found to learn to code is to practice by example, and the homework's assigned in university courses are designed to make you learn and apply the specific skills that you have learnt in past lectures.


I explored iPhone dev at about the same time as you. I also had a hard time finding good resources. There's so much to learn that it was intimidating sitting down and just reading about it.

What worked for me was porting simple programs I'd written (in Java) to the iPhone. Java is actually pretty similar to Objective C, and some of it was literally just cut and paste. I imagine C++ is very similar too. At first the programs weren't even visual- they were essentially just command-line programs. That way I could focus on learning the basics of the language before learning all the high-level libraries.

Once you get "hello world" working it shouldn't be too hard to build simple programs off of that. Porting an existing program might provide useful structure to your learning if that's your style. Good luck!


It would be easier to pickup ObjC while you are at C++ than to switch back from a web development background. Once ObjC is under your belt try to get some basic understanding of iOS development in general.

Then you can watch a few of the videos that kind of gives you a hands-on feeling since some of the drag/drop, ctrl-drag are something to see rather than to read and keep in mind. Rory Lewis and AzamSharp videos helped me a lot while Ray Wenderlich book gave some nice step-by-step instructions.

Armed with these you basically should start a real project of yours so you can learn things on the fly and those would last in your memory longer than any tutorials. Good luck! Believe me....it's hard but not crazy.


You need a "pet project" that you want to build. Then build it. I wouldn't worry about making money from it. Just build something you want to have on your iPhone.

For resources, I've found that once you get through either the first few Stanford classes or a good book or two, Google and Stackoverflow are the only references I need. For getting started though, the tutorials (and forums) at Ray Wenderlich's site are also a great resource: http://www.raywenderlich.com/tutorials


You can learn iOS development online at: http://www.hackrocket.com. Hackrocket will soon launch an immersive three-month program to teach absolute beginners how to build iPhone and iPad apps (I am the co-founder) http://teamtreehouse.com/ http://www.lynda.com/iOS-tutorials/iOS-SDK-Essential-Trainin...


The Stanford videos are great. Another good resource for screencasts is http://nsscreencast.com/

Also if you're looking for a good book about iOS http://www.amazon.com/gp/aw/d/1430236051/ref=redir_mdp_mobil...

For learning the ins and out of objective c I've heard this is a good book: http://www.amazon.com/gp/aw/d/0321706285

Good luck!


Personally, I had to take a different route than online videos/tutorials. Between doing web development full-time and having a family at home, I couldn't find the time to focus on becoming competent at iOS development.

So I took a week off and went to Chicago for one of the Pragmatic Studios courses (http://pragmaticstudio.com). Being able to focus on that was exactly what I needed.

YMMV of course, but I thought I'd throw in an alternate option.


Hi, I really like the idea of doing a course similar to the Pragmatic Studios course - but that's a pretty steep price for a junior in college like myself. Are there any other similar courses conventions similar to that that I could attend?


I haven't seen any that are under $1k ...


This is a very good program.. I might take a look at this and make some decisions. Thanks for this info.



Seems.. easy enough. Are these videos good enough?


Depends on how you learn, I think the videos are very informative. They're not going to teach you everything, so buying a book or two would help a lot.

http://www.amazon.com/Beginning-iPhone-Development-Exploring...

The book is kind of dated, so I would recommend looking for something more recent.


http://www.amazon.com/Programming-Objective-C-Edition-Develo...

This seems like a pretty good book, I bought the one I linked above, but reading isn't really my thing. I learn better through seeing.


Yeah I agree, Heh. This is good info, thanks.


I would highly recommend Stanford's iOS programming course: http://itunes.apple.com/us/itunes-u/ipad-iphone-application-...

The professor is very good, the lectures are current as of iOS 5, and they've made the slides and code available as well.


Is it possible to develop an iPhone app without owning one? I have a copy of Mac OSX running virtualized but I never had the courage to learn all this stuff while jumping trough so many hoops and creating something I can't even test myself.


Not a native iOS dev , but I have had a good experience by building apps using PhoneGap http://phonegap.com/ .


Everyone here has given me very helpful information and given me some of the best tools for me to start this journey. Thanks everyone, highly appreciated.


All you really need is Apple's developer tools and tutorials. They have a wealth of example apps and free books to download. You can also get WWDC videos from recent years, also free, if you have a free ADC account. This is how I learned.

I also bought a bunch of iOS development books but never ended up needing any of them. Between Apple's tutorials (and the skeleton apps built into xcode- check those out they are correctly designed) you can learn a lot and do anything you want. Every feature has a tutorial or example program (and you can search the example code by API call to find the relevant ones.)

Also, these days with Storyboards its a whole lot easier to develop the UI for your apps.

It really isn't that hard-- in fact, it is, by far, the easiest to develop for UI I've ever seen. (easier than Mac OS and a whole lot easier than Windows or Swing.)

All the other resources listed in this thread are good too-- just pick what works best for you. The stanford course, for me, for instance, was too slow, I am always wanting to learn a specific thing at any given point in time and don't have the patience to work thru the course--- but if you want to work thru the course by watching a video each day without firing up Xcode because you spend your days writing code elsewhere, that might be the best way.

Any competency in C++ will mean you shouldn't have too much of a problem-- hardest part is going to be using C++ again after the glory that is Objective-C!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: