HELP- Want to learn how to code ios apps /create iphone apps

Discussion in 'iOS Programming' started by jaalle, Jan 25, 2014.

  1. jaalle macrumors newbie

    Joined:
    Jan 25, 2014
    #1
    ok you experienced folks,

    i want to start creating apps and make money from it like Instagram or Snapchat. But i have NO experience in coding anything- I did try html coding but I have not even got close to mastering it.
    i was extremely inspired by these young new app developers like Nick D' ,spiegel and others and i want to emulate them.

    i have not chosen wether i want to code for android or iphone and i am quite lost> i have no mac no android/ iphone device just a windows operator,,,,

    i have good ideas to rival existing spps but i dont know how how to coooooooooooodeee.:(:(:(:(:(:(:(:(:(:(:(:(:(:(

    im serious and any help is much recommended
     
  2. ArtOfWarfare macrumors 604

    ArtOfWarfare

    Joined:
    Nov 26, 2007
    #2
    If you want to develop for iOS, you're going to need a computer running OS X (which more or less means you need a Mac,) and an iOS device.
     
  3. Duncan C macrumors 6502a

    Duncan C

    Joined:
    Jan 21, 2008
    Location:
    Northern Virginia
    #3

    Your enthusiasm is admirable. Now you've got a lot of hard work ahead of you. Pick a platform, buy a computer that is able to run the development tools, buy at least one target device, roll up your sleeves, and start studying. Expect to spend at LEAST 6 months of intensive work in order to get a base level of proficiency.

    If you decide to pursue iOS, you'll need a Mac that can run Mac OS 10.9, at least 4 GB of memory (more is better) at LEAST 512 GB of disk space (more is better) Xcode, and an iOS device that can run iOS 7. I suggest an iPhone 4S or later, and probably and iPad 2 or later. (You should be able to pick these up fairly cheaply on eBay since they are several generations out-of-date).

    If you've never programmed in a C family language before, you might want to start with "iOS Programming: The Big Nerd Ranch Guide (4th Edition)"

    It will teach you C and Objective C programming, using Xcode.

    Then you'll need to study iOS and the Cocoa Touch frameworks. This is where you'll spend the most time in your studies.

    Android OS and iOS are both big, complex OS'es with huge numbers of APIs. It takes a while to learn your way around them and learn the basics of manipulating UI controls, handling strings, managing memory, etc.

    I don't know much about Android development, but there are TONS of books on iOS development. After you've finished the Big Nerd Objective C book, find a large bookstore that has a variety of iOS development books and spend an afternoon studying them to find one who's style works for you.

    I recommend a book that has specific exercise for you to do, and recommend that you complete them all, especially the ones that you get stuck on.
     
  4. Twimfy macrumors 6502a

    Twimfy

    Joined:
    Sep 11, 2011
    Location:
    UK
    #4
    Erm why would he need that much disk space? I'm fairly sure my 32 published apps have been created fine on my 128GB hard drive??

    Anyway to the OP. It is a lot of work but don't feel you need to start completely from scratch.

    Once you've got your Mac setup with Xcode do some searching for an open source version of an app you'd like to build.

    Open it and study it, see how it works, change something and find out why it does what it does from that point.

    I made my very first app this way, I got a few open source projects and hacked them altogether in 2 weeks, along with a lot of help from stack overflow, a few forums and a couple of books (Big Nerd Ranch Objective-C is a good one...sadly didn't exist at the time, Beginning iOS Dev by Jeff LaMarche is also a good one).

    After 3 weeks the app I produced topped the UK App Store paid charts and I made a fair bit of money. BUT things were different then (this was 2009) and success was a little easier.

    Only after that first app came out did I then hit the books and refine my skills, prior to then I knew very little about coding apart from some of the basics I'd picked up from trying to learn C++ was I was about 13.

    I guess my point is, try and do the enjoyable thing first, editing some existing code and getting your first app up and running (even if it's in simulator) will give you a sense of accomplishment that will give you the motivation to do and learn more.

    However starting from the very first line of code in a totally alien environment can seem like an uphill struggle and will easily put a lot of people off.

    Lastly I'd also recommend you take a trip to http://www.CodeAcademy.com and do a few tutorials. While they don't offer courses in C++ or Objective-C (which are the primary iOS languages) a journey through the Java tutorial will help you understand the basics of how to read and write code.
     
  5. ArtOfWarfare macrumors 604

    ArtOfWarfare

    Joined:
    Nov 26, 2007
    #5
    Those requirements are quite a bit higher than what I develop iOS 7 apps with.

    I have a MacBook Air with 2GB of memory, can't run anything newer than OS X 10.7 (Lion), and only has 120 GB of disk space. The app targets both iOS 6 and 7 and I keep all the resources Xcode 4 compatible so that I can continue using the air. Once I'm out of debt (hopefully within the next 3 months) I'll have a new laptop be my first luxury purchase.
     
  6. saintforlife macrumors 6502a

    Joined:
    Feb 25, 2011
    #6
    Great post! Extremely helpful. Thanks!
     
  7. firewood macrumors 604

    Joined:
    Jul 29, 2003
    Location:
    Silicon Valley
    #7
    learn to program first

    Learn to write programs first, and not necessarily in Objective C or C, or for iOS. Learning programming is hard. Lot's of people flunk or drop out of easy programming classes. So, don't make it any harder than necessary.

    I suggest books on computers for kids or schools (from your local library). Maybe on Basic or Logo or Python. Move on when that seems way too easy.

    The other people answering you here already know how to program, and thus are almost completely clueless about how hard this is to learn programming for the typical human. Lot's of people flunk or drop out of easy intro to programming classes. If any of you had TA'd such courses, or job interviewed people who claimed to have "passed" such courses, you would understand.

    Learning to program, by itself, is hard.
     
  8. Duncan C macrumors 6502a

    Duncan C

    Joined:
    Jan 21, 2008
    Location:
    Northern Virginia
    #8
    What you say is absolutely true. Further, I would say that some people have an aptitude for it and some don't.

    I took to computers like a duck takes to water. I love the logic puzzles that computer programming provides, and I like creating things. I started doing it when I was 12, on an Apple II. That is not to say it was easy. It was hard - really hard. I enjoyed the challenge though, and threw myself into it.

    However, it took me years to get really good at it - decades even.

    By comparison, I can't draw, paint, or sculpt to save my life. I just don't have that aptitude. I wish I could, but I can't, and never will be able to. I don't have that aptitude.
     
  9. ArtOfWarfare macrumors 604

    ArtOfWarfare

    Joined:
    Nov 26, 2007
    #9
    I disagree. It's hard to teach people to program, and it's hard to find people to teach you, but learning it is easy (so long as you have a good teacher.) I've had good teachers. I've had bad teachers. This is actually my attitude towards everything - nothing is hard to learn with a good teacher. Everything I ever struggled with I had a lousy teacher for.
     
  10. firewood macrumors 604

    Joined:
    Jul 29, 2003
    Location:
    Silicon Valley
    #10
    Have you stopped to consider that lots of other people (perhaps even the OP) may not be a smart as you, or have the same aptitude for coding as you?

    Everybody is different. Even if you are or consider yourself to be average average, that may mean that around half of your country's population is less capable than you of learning this stuff as easily as you did, even with good teachers.

    Programming is hard. There does exist a fraction of the population that can learn to do hard stuff (play Vivaldi on the violin, pilot multi-engine aircraft, code correct multi-threaded multi-processor apps, etc.) Key word is "fraction".

    ----------

    Drawing is hard. Learning to draw as an adult is harder because your target is stuff that looks good to an adult.

    Start with a kid's coloring book (or kid's drawing app these days), spend 10,000 hours working your way up from there, and you'll probably eventually find an aptitude for drawing semi-decently. Don't start your first week by trying to sell viable commercial art (the equivalent of a decent paid app), or do cover artwork for the New Yorker (the equivalent of a top-50 app).
     
  11. chown33 macrumors 604

    Joined:
    Aug 9, 2009
    #11
    For drawing, you have to unlearn a lot of things first. Drawing what we actually see is hard, because to do it, we have to stop perceiving the dimensionality (depth) and draw the perspective "flattened". That's hard because of what we know, as distinct from what we see.

    I suggest the book "Drawing on the Right Side of the Brain". Even if you ignore the brain hemisphere stuff, it's a good book on learning to draw, and the exercises are worthwhile. It's a book that many public libraries will have, in one edition or another.
     
  12. Duncan C macrumors 6502a

    Duncan C

    Joined:
    Jan 21, 2008
    Location:
    Northern Virginia
    #12
    My problem is not unlearning what I think about drawing. My problem is that I can't draw a straight line, an even curve, or a circle. I don't have the fine motor control needed for such things. My handwriting is awful, for example, and always has been.
     
  13. 1458279 Suspended

    1458279

    Joined:
    May 1, 2010
    Location:
    California
    #13
    You might want to just buy a book or watch some Lynda.com videos to see if you REALLY want to get into this.

    A few things to consider. The app market is very competitive and can change in short order. Example: if you have a target app that you want to improve, by the time you get to the point where you have a finished product, someone else might have made the improvements you had in mind.

    Android vs iOS. iOS has just a few devices, it's not that hard to cover all the important versions of those devices. iOS devices cover a nice share of the market and this will likely continue.

    Android is very different, I saw a pic of all the Android devices, it was HUGE with none of them having a firm grasp on the lead. They have every size you can think of, and can have very different specs. They have several versions of the OS that are still in heavy use and you have to account for that if you want market share (unless you have a system that takes care of that for you like Unity).

    Historically Android users don't pay nearly as often as Apple users.

    I started with Android then dropped it after learning about the lack of money and all the different devices.

    Some take a different path. Instead of ObjC/Xcode they use an app scripting type tool like Corona and many others. There's a bunch of these app dev engines that have easier languages. I don't care for these, but some take that path.

    If it's a game, you can use something like Unity and it (as I understand) takes care of all the android devices.
     

Share This Page