Live data from Hacker News

Ask HN: Experienced programmer, beginner to iOS (objective-C). Where to begin?

news.ycombinator.com

21–30 of 37 posts

Re: Ask HN: Experienced programmer, beginner to iOS (objective-C). Where to begin?

#21
post #17

I keep getting stopped up at the first step: Buy an Apple Computer. If I can ever build IOS apps on Linux, I may move on to step two.

Can anyone specify the absolute minimum requirements I should be asking for if I'm looking for a dev Mac on craigslist or the like? As a (mostly) web developer there's a good chance I'd build most of my app in HTML/CSS using something like PhoneGap and only do the final compile step on the Mac. A) Does that sound like a good plan? B) Does that impact significantly on the minimum system requirements?

I'm not very familiar with how PhoneGap works, and how much it depends on you, but from the docs it seems you still need the classical toolchain.

But anyway, if you want to save yourself some hassle, find something that can run Lion. XCode 4 doesn't run on older OS (or at least not easily), and most current docs are aimed at it (I'm not even sure older XCode versions cover the current iOS versions).

So, you need at least something with a Core2Duo. Older Core Duo might work, I'm not sure. I have some old white Macbook (13" from 2009), who mostly does the job. Not blazing fast, but since I only use it for iOS development, it's enough.

Re: Ask HN: Experienced programmer, beginner to iOS (objective-C). Where to begin?

#22
post #16

Start with the Stanford course. It's the best free resource out there. Find a local meetup. Go to a couple hackathons. re: other comments - Apple's docs aren't great, in fact I hate them. Haven't put my finger on why. I like some of the controls at http://cocoacontrols.com I wouldn't start with Arc. Especially since you're comfortable in C.

The apple docs are pretty comprehensive. I think of it as you're not going to learn English by reading a dictionary.

The specific example apps that apple provides that demonstrate one particular thing are great though.

Re: Ask HN: Experienced programmer, beginner to iOS (objective-C). Where to begin?

#23
post #15

I was two years out of school working on C# and WPF when I was tasked with writing an iOS app. My first steps to gain knowledge of the syntax/structure/etc of the language was to watch the Standford CS139p lectures ( http://itunes.apple.com/itunes-u/ipad-iphone-application-dev... ). I only had to watch the first six or so before I had a good knowledge of the language and the starting point of UIKit. From that point I…

That's all good advice, but I'd like to point out that ASIHTTPRequest has been abandoned for about a year now. I think most people have switched to using AFNetworking ( https://github.com/AFNetworking/AFNetworking ) which came out of Gowalla. As a nice bonus, AFNetworking doesn't require you to implement delegates but instead allows you to use blocks, which simplifies things somewhat.

The delegates are exactly what I factored out of ASIHTTPRequest when I made my own version. Good to see someone has taken the ball and ran with it.

Re: Ask HN: Experienced programmer, beginner to iOS (objective-C). Where to begin?

#24

I was two years out of school working on C# and WPF when I was tasked with writing an iOS app. My first steps to gain knowledge of the syntax/structure/etc of the language was to watch the Standford CS139p lectures ( http://itunes.apple.com/itunes-u/ipad-iphone-application-dev... ). I only had to watch the first six or so before I had a good knowledge of the language and the starting point of UIKit. From that point I…

Thanks a lot for the detailed reply. Much appreciated.

My pleasure. If you have any other questions about specific frameworks or nuances of UIKit don't hesitate to ask.

I always like talking about Objective-C and UIKit. Keeps me sharp.

Re: Ask HN: Experienced programmer, beginner to iOS (objective-C). Where to begin?

#26
I am going through the exact same thing. Last weekend I decided iOS would be my project for May and started digging in.

There is a TON of information out there. Too much. Most of it is outdated, and while the Apple documentation is a great resource, it is just not structured in a way for beginners.

Enter the Big Nerd Ranch.

http://www.bignerdranch.com/book/ios_programming_the_big_ner...

I think I got the kindle version for $22. It is perfect. Just released a little over a month ago, it uses Xcode 4.3. The first few chapters have no iOS stuff as they bring you up to speed on Obj-C and from there you start building the bases of iOS.

I love that they make you strip out all the code from the iOS templates and make you do it yourself. It really is a structured learning experience rather than just an information dump.

I'm only about 1/3 the way through so far - but so far it's been exactly what I needed.

Re: Ask HN: Experienced programmer, beginner to iOS (objective-C). Where to begin?

#27
post #26

I am going through the exact same thing. Last weekend I decided iOS would be my project for May and started digging in. There is a TON of information out there. Too much. Most of it is outdated, and while the Apple documentation is a great resource, it is just not structured in a way for beginners. Enter the Big Nerd Ranch. http://www.bignerdranch.com/book/ios_programming_the_big_ner... I think I got the kindle versi…

Aah thanks! Looks like many people like Big Nerd Ranch! I am going to spring the $22 then :)

Re: Ask HN: Experienced programmer, beginner to iOS (objective-C). Where to begin?

#28
post #17

I keep getting stopped up at the first step: Buy an Apple Computer. If I can ever build IOS apps on Linux, I may move on to step two.

Can anyone specify the absolute minimum requirements I should be asking for if I'm looking for a dev Mac on craigslist or the like? As a (mostly) web developer there's a good chance I'd build most of my app in HTML/CSS using something like PhoneGap and only do the final compile step on the Mac. A) Does that sound like a good plan? B) Does that impact significantly on the minimum system requirements?

Make sure you get something that can run the 64-bit kernel, as this will be a requirement for running Mountain Lion when it comes out this summer. You don't want to be stuck on an older OS, as Apple quickly stops supporting them for the latest developer tools. Which models support the 64-bit kernel is not obvious, as it is not the same thing as simply having a 64-bit processor.

A list of Macs that will probably support Mountain Lion is available here:

http://en.wikipedia.org/wiki/OS_X_Mountain_Lion#System_requi...

Beyond that, you want at least 4GB of RAM, with 8GB or even 16GB preferred (Xcode is a severe memory hog), especially if you get a spinning platter instead of an SSD.

I would strongly recommend against something like PhoneGap. iOS users generally don't appreciate non-native interfaces, and it will be extremely hard to achieve the necessary level of polish with HTML/CSS. If you want to use HTML, then you probably might as well just go straight to building a real web app. If you want native apps, it's worth your while to use the native language and tools.

Re: Ask HN: Experienced programmer, beginner to iOS (objective-C). Where to begin?

#29
All compiler structures are sitting in memory waiting to be used. The internal data-structure for compiled classes is available. It's not too bad. Just to make it interesting, I added meta-data to the C+ syntax. You can put format strings into the class definition and other data. Then, you can write code which uses the compiler data applied on members of a class.

My thought was that switching files to work on resources is bad and the resource info should be in the source code class defintiin.

DoForm() is cool.

ClassRep() is cool.

You know how operator overloading seems awesome to a novice, but only good for Vector or Complex data types, if you are not a retard?

God says... C:\Text\DARWIN.TXT

aves work energetically together with their masters in carrying them away to a place of safety. Hence, it is clear that the slaves feel quite at home. During the months of June and July, on three successive years, I watched for many hours several nests in Surrey and Sussex, and never saw a slave either leave or enter a nest. As, during these months, the slaves are very few in number, I thought that they might behave differently when more numerous; but Mr. Smith informs me that he has watched the

Re: Ask HN: Experienced programmer, beginner to iOS (objective-C). Where to begin?

#30
post #28

Earlier quoted context omitted.

Can anyone specify the absolute minimum requirements I should be asking for if I'm looking for a dev Mac on craigslist or the like? As a (mostly) web developer there's a good chance I'd build most of my app in HTML/CSS using something like PhoneGap and only do the final compile step on the Mac. A) Does that sound like a good plan? B) Does that impact significantly on the minimum system requirements?

Make sure you get something that can run the 64-bit kernel, as this will be a requirement for running Mountain Lion when it comes out this summer. You don't want to be stuck on an older OS, as Apple quickly stops supporting them for the latest developer tools. Which models support the 64-bit kernel is not obvious, as it is not the same thing as simply having a 64-bit processor. A list of Macs that will probably suppo…

Thanks for the insight re: PhoneGap and native interfaces. Does the same apply to Appcelerator (or similar)? It compiles to native, but does the interface feel native or HTMLy? At some point I want to play around some, but that requires buying a mac and an iThing, neither of which I have yet.

Re: system requirements - that sucks that I really need to have (moderately) up to date hardware to do iOS development. On a PC I'd probably be fine with a 2004 Dell laptop with a fresh install of Windows. I guess this is my first "welcome" to the walled garden.

Post reply on HN