Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

saintforlife

macrumors 65816
Original poster
Feb 25, 2011
1,045
329
I am a engineer but do not have a computer science or programming background. However I would like to learn how to make iOS apps for the iPhone and iPad for use internally within my division at my company as a personal side project.

What is the best place to start for a novice like me? Can you share some links to free resources tutorials, documents, books etc. to help me get started with iOS development?

Thanks in advance!
 
download the iOS Dev Class from Stanford program on iTunes U. This class will get you started and you will learn a lot.
 
For me, I know c++ and c# and objective C syntax wise is hard to wrap my fingers around but basic concepts of all programming languages are the same.
 
Thank you both for the tips.

Just wondering, how hard is it to learn Objective C? Can you pick it up easily?

I know HTML and CSS well, and have basic knowledge of Visual Basic. I find Objective-C is harder to learn... but that's just me.
 
The biggest impediment is one needs a Mac as far as I can tell. You can't develop on windows, although strangely iTunes runs on windows.

Apple makes one program for Windows (well that and Quicktime I suppose). That program has nothing to do with application development whatsoever. Not to mention that the vast majority of apps that Apple does development are Mac only.

It only makes sense that their native developer tools are Mac only.

Apple making a few Windows apps has nothing to so with that.
 
You don't use iTunes to make apps.

You use Xcode. Which doesn't work on Windows

Thank you. That's my point. You can happily send money via Windows to Apple through iTunes windows...but when it comes to the operating system that runs 75% of the worlds computers, apple somehow does not have a development environment for it? How ironic.
 
That's one way of driving Mac sales... by pushing developers buy a Mac. It's a marketing strategy and makes sense.
 
Thank you. That's my point. You can happily send money via Windows to Apple through iTunes windows...but when it comes to the operating system that runs 75% of the worlds computers, apple somehow does not have a development environment for it? How ironic.

Do you see Visual studio on a mac? No. Argument closed.

Edit: besides running it on a Virtual Machine/Bootcamp
 
Do you see Visual studio on a mac? No. Argument closed.

Edit: besides running it on a Virtual Machine/Bootcamp

I see office on a mac.

Visual studio is designed strictly for for windows environments, why would it be on a mac.

Does android have a windows environment dev environment? Blackberry? IOS is not mac or windows based is my point. Why they don't offer xcode is windows has me scratching my head. It doesn't matter...I'll go into developing android apps instead.
 
I see office on a mac.

Visual studio is designed strictly for for windows environments, why would it be on a mac.

Does android have a windows environment dev environment? Blackberry? IOS is not mac or windows based is my point. Why they don't offer xcode is windows has me scratching my head. It doesn't matter...I'll go into developing android apps instead.

My point being is that Xcode is also strictly designed for macs...guess what apple engineers had to use to build iTunes on windows? Apple needed Visual studio to build it. And guess what Microsoft had to use to build Office Mac? Xcode...
 
Thank you. That's my point. You can happily send money via Windows to Apple through iTunes windows...but when it comes to the operating system that runs 75% of the worlds computers, apple somehow does not have a development environment for it? How ironic.

It's not ironic at all. You are creating for a specific environment, Apple produced hardware and software, no shock you make that stuff within the environment.

iOS and Mac OS are from the same basic language which is a polar opposite to Windows. Apple is not obligated to make tools to make it work. If you just really insist on using a windows machine you can sort out installing a VM, etc

----------

I see office on a mac.

Consumer program. Totally different world

Visual studio is designed strictly for for windows environments, why would it be on a mac.

And? Xcode to Mac is the same thing. Apparently to you it's okay for Windows to deny Mac users the ability to code Windows programs but not the opposite. That makes no sense.

IOS is not mac or windows based is my point.

Actually iOS is Mac based. As stated by Steve Jobs way back before they even started calling it iOS.
 
Last edited:
It's not ironic at all. You are creating for a scenic environment, Apple produced hardware and software, no shock you make that stuff within the environment.

iOS and Mac OS are from the same basic language which is a polar opposite to Windows. Apple is not obligated to make tools to make it work. If you just really insist on using a windows machine you can sort out installing a VM, etc

----------



Consumer program. Totally different world



And? Xcode to Mac is the same thing. Apparently to you it's okay for Windows to deny Mac users the ability to code Windows programs but not the opposite. That makes no sense.



Actually iOS is Mac based. As stated by Steve Jobs way back before they even started calling it iOS.

I really don't care, I had a fork in the road to make to supplement VS. The fork now goes to android. No corporation is obligated to do anything. Onward and upward. I clearly am not buying a mac to do IOS development nor am I breaking license agreements by running osx under some windows virtualization environment.
 
I really don't care, I had a fork in the road to make to supplement VS. The fork now goes to android. No corporation is obligated to do anything. Onward and upward. I clearly am not buying a mac to do IOS development nor am I breaking license agreements by running osx under some windows virtualization environment.

Which is all really noble but rather beside the point. You bashed on Apple that one can't, by Apple's choice you seem to believe (not technology etc but a 'screw you Windows' attitude) to allow someone to create for iOS without a Mac. And yet no such ire for Windows and Visual Studio which is the same way. And yet rather than admit the bash you just shrug it off as 'well i'm not going to buy a Mac so there, I just won't make iOS apps'

Begs the question, if you don't have a Mac etc as it sounds, why are you even on this board. Seems like it would be a waste of your time
 
Which is all really noble but rather beside the point. You bashed on Apple that one can't, by Apple's choice you seem to believe (not technology etc but a 'screw you Windows' attitude) to allow someone to create for iOS without a Mac. And yet no such ire for Windows and Visual Studio which is the same way. And yet rather than admit the bash you just shrug it off as 'well i'm not going to buy a Mac so there, I just won't make iOS apps'

Begs the question, if you don't have a Mac etc as it sounds, why are you even on this board. Seems like it would be a waste of your time

No sir, visual studio creates applications for a dot net environment that runs on Windows, there is no mac component. You cannot create a VS application that runs on a mac.

While you can say IOS is a mac derivative, the fact is I don't somehow need a mac to own an iphone...I can sync using Windows itune...that is my point.

So if apple can somehow sync an iphone using windows iTunes, it should be able to somehow release a development environment for windows.

I was initially here to ask a question got my answer, floated an opinion.
 
No sir, visual studio creates applications for a dot net environment that runs on Windows, there is no mac component. You cannot create a VS application that runs on a mac.

While you can say IOS is a mac derivative, the fact is I don't somehow need a mac to own an iphone...I can sync using Windows itune...that is my point.

So if apple can somehow sync an iphone using windows iTunes, it should be able to somehow release a development environment for windows.

I was initially here to ask a question got my answer, floated an opinion.

Apple could port XCode to windows if they wanted to, of course.

But whats the point? There is no incentive for them to do so, since developer interest in iOS remains popular and are happy to buy a Mac for iOS development. And all this drives sales, of course, as pointed out below.

The foundations of iOS is the same as OSX, so there is a lot of commonality between each.
 
Last edited:
No sir, visual studio creates applications for a dot net environment that runs on Windows, there is no mac component. You cannot create a VS application that runs on a mac.

While you can say IOS is a mac derivative, the fact is I don't somehow need a mac to own an iphone...I can sync using Windows itune...that is my point.

So if apple can somehow sync an iphone using windows iTunes, it should be able to somehow release a development environment for windows.

I was initially here to ask a question got my answer, floated an opinion.

I hope you know that you can in fact write applications for windows on a Mac using Monoproject cause theoretically .Net is open source but Microsoft does not create packages on other platforms so it renders .Net useless without a proper IDE for it (Visual Studio).

And why would Apple want to put Xcode on a windows OS? They'll have to put resources towards doing so which does not benefit in their favor. And Xcode is not just used to develops iOS apps...you need it for OSX apps also.

Your arguments here are rather moot, as Microsoft can and could let developers develop windows apps on Mac but Microsoft is not wrong here but Apple is.

Another argument here...why do I need to use Windows to develop Windows phone apps? See what I did there?
 
I hope you know that you can in fact write applications for windows on a Mac using Monoproject cause theoretically .Net is open source but Microsoft does not create packages on other platforms so it renders .Net useless without a proper IDE for it (Visual Studio).

And why would Apple want to put Xcode on a windows OS? They'll have to put resources towards doing so which does not benefit in their favor. And Xcode is not just used to develops iOS apps...you need it for OSX apps also.

Your arguments here are rather moot, as Microsoft can and could let developers develop windows apps on Mac but Microsoft is not wrong here but Apple is.

Another argument here...why do I need to use Windows to develop Windows phone apps? See what I did there?

Yep, no argument from me on Windows phone. VS is a whole other ballgame, there is zero apple component...I think apple was forced to create windows iTunes so it could sell an iphone to a windows user.
 
Yep, no argument from me on Windows phone. VS is a whole other ballgame, there is zero apple component...I think apple was forced to create windows iTunes so it could sell an iphone to a windows user.

iTunes was around long before the iPhone.
 
Yep, no argument from me on Windows phone. VS is a whole other ballgame, there is zero apple component...I think apple was forced to create windows iTunes so it could sell an iphone to a windows user.

Correct. Furthermore, iTunes is a vehicle for selling songs and movies. For a time, Apple was making more from selling music and videos than they were from selling their hardware, so making iTunes for Windows was definitely a sound fiscal decision.

Xcode is for more complicated than iTunes is, and if you don't believe me, you can try writing an IDE. Just porting Xcode wouldn't even be enough - they'd also need to port all of the helper applications, including Instruments and iOS Simulator (which means they would need to get an entire Obj-C and Cocoa Touch framework running on Windows.) It'd be a huge investment to get a handful of developers developing iOS apps who would otherwise be developing apps for other platforms, and it's not like they have a shortage of apps or developers for iOS.

They're better served by putting the effort that could be spent porting Xcode to instead improve Xcode and the OS X frameworks (I can't think of any shortcomings in iOS's frameworks right now… I'm sure others can think of some improvements that could be made.)

I would like to say a single thing though, as someone who has developed for both iOS and Android:

Despite the large number of times you'll see me gripe about Xcode and Obj-C, Eclipse and Java (and Android - I never complain about iOS) are far more frustrating to work with. I could develop an iOS project 3-4 times as quickly as I could develop the Android version, and I probably have more experience with Android than iOS if my top rated answers on SO are any indication. If I had two options for jobs, and one was to develop for iOS at rate X and the other was to develop for Android at rate X * 1.2, I'd opt for the lower pay with iOS, just so I wouldn't have to deal with the frustrations of developing for Android (fortunately, the higher paying jobs are with iOS, which is also the less frustrating job, so all around it's just a win with iOS.)
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.