Register FAQ / Rules Forum Spy Search Today's Posts Mark Forums Read
Go Back   MacRumors Forums > Apple Systems and Services > Programming > Mac Programming

Reply
 
Thread Tools Search this Thread Display Modes
Old May 13, 2013, 04:55 PM   #1
WhiteIphone5
Banned
 
Join Date: May 2011
Location: Lima, Peru
Am I too old to start programming?

I have Zero programming/coding experience, no HTML, php, or java. I've been reading a few programming forums and it seems most programmers started at the age of 8+ years old. I came to US from Peru when I was 13, and have not been interested in technology until two years ago when I received my first iPhone. At the beginning of the year, I started to look into programming for iOS, but I know I need a background of programming before I start with Objective-C. But how do I start? I'm 20 years old and feel like its too late as there is tons of programming languages. I know It takes passion and love for programming, which I'm very interested in doing. Not for the money, but for the experience. In next year I will start taking programming college courses, but I want to have some background before I start. So another question would be, how do I start? What programming language do you recommend? Not only do I plan to create iOS apps, but websites as well. Thank you so much, and again I have no experience at all.
WhiteIphone5 is offline   0 Reply With Quote
Old May 13, 2013, 05:06 PM   #2
MegamanX
Banned
 
Join Date: May 2013
Short answer is no you are not.

Also programming languages are nothing more than syntax to me. I professionally develop right now I know and program in I want to say 4-5 different languages and of those 2 of them are professionally. in the next year I am looking to extend that to all of them. Picking up another programming language is pretty easy. To give you an idea I pick up and start producing pretty decent work in object c in 2-3 weeks. When I started in it I had never used the Xcode before or written a line of code in object c.

I had been out of school for about 6 months with my CS degree and been programming in yet another langage that I had never used before I started working. Also I did have a fair amount of java and android dev under my belt from school.

As for age, 20 is still really young. Programming is more about how to think and design. It is not so much being a code monkey. On your own you can get fairly far. Now in the past year my skills as a developer have progress more and more rapidly due to it being professionally and it is very different than school but I still pull on that skill set.

Starting langage Java is fine to start in. I would not recommend object C to start in because to work in object C you need to really under stand object orientated programming first and that is something that most people seem to struggle with until one day they just get it. There is no real in-between. It will just be one day the switch is click and boom it all makes sense.
MegamanX is offline   1 Reply With Quote
Old May 13, 2013, 05:10 PM   #3
Shrink
macrumors Demi-God
 
Shrink's Avatar
 
Join Date: Feb 2011
Location: New England, USA
Short answer...no you are not.

Longer answer...you are 20 years old and worried you are too old!?
__________________
Two things are infinite, the universe and human stupidity; and I'm not sure about the universe. -- Albert Einstein
Shrink is offline   17 Reply With Quote
Old May 13, 2013, 05:18 PM   #4
Digital Dude
macrumors regular
 
Join Date: Oct 2008
Location: Arizona where freedom still means something
I started with Apple products from the very beginning so yes, I am old! You have just started so jump right in! No offense, but after reading your post I subscribe to 'youth is wasted on the young'.
Digital Dude is offline   3 Reply With Quote
Old May 13, 2013, 05:18 PM   #5
maxosx
macrumors 68020
 
Join Date: Dec 2012
Location: Southern California
You are _never_ too old. (to learn anything you want)

Unless _you_ say you are
maxosx is offline   5 Reply With Quote
Old May 13, 2013, 05:28 PM   #6
WhiteIphone5
Thread Starter
Banned
 
Join Date: May 2011
Location: Lima, Peru
Thanks everyone for the comments, but someone has yet to tell me where I should start XD
WhiteIphone5 is offline   0 Reply With Quote
Old May 13, 2013, 06:45 PM   #7
ArtOfWarfare
macrumors 603
 
ArtOfWarfare's Avatar
 
Join Date: Nov 2007
Send a message via Skype™ to ArtOfWarfare
Quote:
Originally Posted by WhiteIphone5 View Post
Thanks everyone for the comments, but someone has yet to tell me where I should start XD
Google "Learn C the Hard Way". It's a free eBook. I suggest reading from it and doing the exercises contained.

If you aren't learning from that style of writing, I'm sure other people have "easier" books to learn from, but I think the hard way is the right way.
ArtOfWarfare is offline   3 Reply With Quote
Old May 13, 2013, 07:17 PM   #8
ChrisA
macrumors G4
 
Join Date: Jan 2006
Location: Redondo Beach, California
Quote:
Originally Posted by WhiteIphone5 View Post
...But how do I start? I'm 20 years old and feel like its too late as there is tons of programming languages.....

To old at 20? This is a joke right?

First off like all beginner you confuse learning to write programs with learning some specific programming language. Well of course you need to learn some specific language but THAT is just the first step. Kind of like learning to spell is the first step to becoming a novelist.

Just pick something. Java is not a bad choose. and write some SIMPLE program. Likely it will be a command line program to do something trivial like type back what you enter but backwards.

Another areas of programming you make start with is to buy an Arduino (about $30) and make it blink some LEDs and then control some motors and sensors.

Just write some software to do some really simple things like a command line program to compute postage. The language does not matter at all.

Later after you can write programs in some language, learning a second or fourth language takes just weeks. I started in Fortran and cobol then they invented C and I got into that then C++ came along and Ada and Perl and Java. They are all more alike than different

The bigger thing to learn is the environment. If you write for IOS dec=vices you need to know a lot about IOS. If you are writing firmware for a digital camera you need to know the how the camera works and so on. People tand to specialize on "platforms" not so much on languages

So to get started follow this rule
(1) just DO Something,
(2) repeat #1 as requited.
The exact details matter about 100x less then just doing the above.
ChrisA is offline   1 Reply With Quote
Old May 13, 2013, 07:18 PM   #9
MegamanX
Banned
 
Join Date: May 2013
Quote:
Originally Posted by WhiteIphone5 View Post
Thanks everyone for the comments, but someone has yet to tell me where I should start XD
I say Java is generally a good place to start. Chances are where you take school will do something.

I will strongly recommend against starting in Object-C right off the bat.
MegamanX is offline   0 Reply With Quote
Old May 13, 2013, 08:09 PM   #10
WhiteIphone5
Thread Starter
Banned
 
Join Date: May 2011
Location: Lima, Peru
I have been telling myself that there are steps before picking a language for example. I thought before JAVA you need HTML, and before objective c to do C++. I'm confused, doesnt the advance languages need prior experience? I can't just start straight with objective c right? I need experience before learning it. Idk why some of you tell me to "just pick a language" I don't get it. Thanks everyone I'm a noob at this.
WhiteIphone5 is offline   0 Reply With Quote
Old May 13, 2013, 09:07 PM   #11
saltyzoo
macrumors 65816
 
saltyzoo's Avatar
 
Join Date: Oct 2007
Quote:
Originally Posted by WhiteIphone5 View Post
I have been telling myself that there are steps before picking a language for example. I thought before JAVA you need HTML, and before objective c to do C++. I'm confused, doesnt the advance languages need prior experience? I can't just start straight with objective c right? I need experience before learning it. Idk why some of you tell me to "just pick a language" I don't get it. Thanks everyone I'm a noob at this.
There are no prerequisites. HTML is in a completely different realm than java or C / Objective C.

You'll find it easier to understand the concepts starting with Java or php, but there is no reason you can't start with Objective C if that's your only interest. It will be a little more difficult, but it's certainly possible.

Personally, my progression was Basic -> pascal -> C -> COBOL -> C++ -> Java -> Objective C.

SQL HTML and a dozen others also along the way.

Pick one, learn it well and understand the concepts and you can literally do any of the others with minimal effort. After several decades and a lot of self learning, I can be productive in a new language in a day, and proficient at it in a couple of weeks.

Good luck!
saltyzoo is offline   0 Reply With Quote
Old May 13, 2013, 09:32 PM   #12
WhiteIphone5
Thread Starter
Banned
 
Join Date: May 2011
Location: Lima, Peru
Quote:
Originally Posted by saltyzoo View Post
There are no prerequisites. HTML is in a completely different realm than java or C / Objective C.

You'll find it easier to understand the concepts starting with Java or php, but there is no reason you can't start with Objective C if that's your only interest. It will be a little more difficult, but it's certainly possible.

Personally, my progression was Basic -> pascal -> C -> COBOL -> C++ -> Java -> Objective C.

SQL HTML and a dozen others also along the way.

Pick one, learn it well and understand the concepts and you can literally do any of the others with minimal effort. After several decades and a lot of self learning, I can be productive in a new language in a day, and proficient at it in a couple of weeks.

Good luck!
Thanks! I think I'll go with java>c++> objective c
WhiteIphone5 is offline   0 Reply With Quote
Old May 13, 2013, 09:46 PM   #13
lee1210
macrumors 68040
 
lee1210's Avatar
 
Join Date: Jan 2005
Location: Dallas, TX
Quote:
Originally Posted by WhiteIphone5 View Post
Thanks! I think I'll go with java>c++> objective c
This is fine, but there's no real reason for this progression. Java will not specifically prepare you for C++, and C++ will not prepare you for Objective-C. Learning any language will help you be ready to learn another, but it's not like Java is more basic than C++ or Objective-C.

People say pick a language because whatever you pick is only where you start. You're not stuck with the decision, and it is unlikely that it will be the last one you learn. It's better to start anywhere than kill time debating which one is "right".

There are not prerequisites. Just start.

-Lee
lee1210 is offline   0 Reply With Quote
Old May 13, 2013, 09:58 PM   #14
MegamanX
Banned
 
Join Date: May 2013
Quote:
Originally Posted by WhiteIphone5 View Post
I have been telling myself that there are steps before picking a language for example. I thought before JAVA you need HTML, and before objective c to do C++. I'm confused, doesnt the advance languages need prior experience? I can't just start straight with objective c right? I need experience before learning it. Idk why some of you tell me to "just pick a language" I don't get it. Thanks everyone I'm a noob at this.

You are confusing Javascript with Java. The only thing those 2 really share in common is the name java. Hell Javascript is called javascript because at the time Java was the new hot thing so it was trying to ride on its coat tails with the name.

Java has a lot more in common with C than Javascript. Hell Java is C based.

The reason why I do not recommend you start right in with Object C is because object C is VERY VERY object oriented. Something that takes some time for it to click and how to program that way. Plus it does have a weird syntax and set up that just does not follow the others.
Quote:
Originally Posted by lee1210 View Post
This is fine, but there's no real reason for this progression. Java will not specifically prepare you for C++, and C++ will not prepare you for Objective-C. Learning any language will help you be ready to learn another, but it's not like Java is more basic than C++ or Objective-C.

People say pick a language because whatever you pick is only where you start. You're not stuck with the decision, and it is unlikely that it will be the last one you learn. It's better to start anywhere than kill time debating which one is "right".

There are not prerequisites. Just start.

-Lee
THat is more or less true. Honestly once you learn 1 langage it pretty easy to pick up another.

For me my progression went Pascal> VB.net> Java> C#>VDF> Object-C

Right now I program in VDF and Object-C and looking forward a few months I will be doing .net and Java with those 2 at the same time. Just the nature of my work.

I pick up object C with in a matter of weeks. It is just learning how to program is what it takes.

Just start with a hello world and keep going.
MegamanX is offline   0 Reply With Quote
Old May 13, 2013, 10:12 PM   #15
WhiteIphone5
Thread Starter
Banned
 
Join Date: May 2011
Location: Lima, Peru
I'm very interested in objective c and php. But since there are no pre-requisites, I guess il just start off there? Any books?
Like I said I have no experience what so ever.

----------

Also is there a language before c++ like "C" ? Should I do C before objective c?
WhiteIphone5 is offline   0 Reply With Quote
Old May 13, 2013, 10:29 PM   #16
ArtOfWarfare
macrumors 603
 
ArtOfWarfare's Avatar
 
Join Date: Nov 2007
Send a message via Skype™ to ArtOfWarfare
Quote:
Originally Posted by WhiteIphone5 View Post
I'm very interested in objective c and php. But since there are no pre-requisites, I guess il just start off there? Any books?
Like I said I have no experience what so ever.

----------

Also is there a language before c++ like "C" ? Should I do C before objective c?
An approach that's generally more successful than picking arbitrary languages is to pick something you want to make. We'll then suggest which language is best suited for that.

Contrarily to all the BS people are saying about all languages being equally valid starting points, I'm going to say they're all wrong.

C is the language you want to learn first. Nearly every other language that is used today is derived from C. Objective-C is a perfect superset of C, that is, all valid C code is also valid Objective-C code. C++ is mostly a superset of C, meaning that most valid C code is also valid C++ code. Java is heavily based on C++, and so is in turn based heavily on C.

If you learn C first, you'll be at a great spot for diving into pretty much any other language.

Java is an okay first language, but I feel like it shields you too much from seeing how the computer works, so going from Java to other languages would be more disorienting than going from other languages to Java.

Like I said in my prior post, use the free ebook Learn C The Hard Way (google it). If you find it's not working for you, other people here can suggest other books (although as LCTHW discusses in its intro, the hard way is the right way. I agree 100% with dispelling notions that the computer is magical or you need your hand held right off the bat.)
ArtOfWarfare is offline   2 Reply With Quote
Old May 13, 2013, 10:59 PM   #17
WhiteIphone5
Thread Starter
Banned
 
Join Date: May 2011
Location: Lima, Peru
Quote:
Originally Posted by ArtOfWarfare View Post
An approach that's generally more successful than picking arbitrary languages is to pick something you want to make. We'll then suggest which language is best suited for that.

Contrarily to all the BS people are saying about all languages being equally valid starting points, I'm going to say they're all wrong.

C is the language you want to learn first. Nearly every other language that is used today is derived from C. Objective-C is a perfect superset of C, that is, all valid C code is also valid Objective-C code. C++ is mostly a superset of C, meaning that most valid C code is also valid C++ code. Java is heavily based on C++, and so is in turn based heavily on C.

If you learn C first, you'll be at a great spot for diving into pretty much any other language.

Java is an okay first language, but I feel like it shields you too much from seeing how the computer works, so going from Java to other languages would be more disorienting than going from other languages to Java.

Like I said in my prior post, use the free ebook Learn C The Hard Way (google it). If you find it's not working for you, other people here can suggest other books (although as LCTHW discusses in its intro, the hard way is the right way. I agree 100% with dispelling notions that the computer is magical or you need your hand held right off the bat.)
http://c.learncodethehardway.org/book/ ???

It says "This book is intended for programmers who have learned at least one other programming language. I refer you to Learn Python The Hard Way if you haven't learned a programming language yet"

Last edited by dejo; May 13, 2013 at 11:34 PM. Reason: removed double quote.
WhiteIphone5 is offline   0 Reply With Quote
Old May 13, 2013, 11:29 PM   #18
ArtOfWarfare
macrumors 603
 
ArtOfWarfare's Avatar
 
Join Date: Nov 2007
Send a message via Skype™ to ArtOfWarfare
Quote:
Originally Posted by WhiteIphone5 View Post
http://c.learncodethehardway.org/book/ ???

It says "This book is intended for programmers who have learned at least one other programming language. I refer you to Learn Python The Hard Way if you haven't learned a programming language yet"
That's the one. Interesting - I don't recall seeing that note at the start of it. I'm actually not familiar with Python so couldn't say whether it's better to learn it or C first, but since the author of the book I'm endorcing suggested you learn Python first, maybe you should do that.

Last edited by dejo; May 13, 2013 at 11:34 PM. Reason: quoted post edited.
ArtOfWarfare is offline   0 Reply With Quote
Old May 13, 2013, 11:56 PM   #19
WhiteIphone5
Thread Starter
Banned
 
Join Date: May 2011
Location: Lima, Peru
Quote:
Originally Posted by ArtOfWarfare View Post
That's the one. Interesting - I don't recall seeing that note at the start of it. I'm actually not familiar with Python so couldn't say whether it's better to learn it or C first, but since the author of the book I'm endorcing suggested you learn Python first, maybe you should do that.
This site is awesome!
I was just about to start Phyton, then it told me to familiarize myself with terminal, so I'm about do that then Phyton then C and finally objective C
Thanks for guiding me!!
WhiteIphone5 is offline   0 Reply With Quote
Old May 14, 2013, 01:06 AM   #20
naryn
macrumors newbie
 
Join Date: Jan 2009
Watch the Stanford Java course CS106a on iTunes U and learn Java programing games! Great lectures, great assignments.

Lectures:
https://itunes.apple.com/us/itunes-u...gy/id384232896

Coursework:
http://www.stanford.edu/class/cs106a/

Then progress to CS106b, then to their iOS class, job done!
naryn is offline   2 Reply With Quote
Old May 14, 2013, 04:20 AM   #21
Tander
macrumors 6502a
 
Tander's Avatar
 
Join Date: Oct 2011
Location: Johannesburg, South Africa
I'm 24 and have only started learning to program since last year.

I've started my first job as a junior developer which starts next week as I think doing it professionally is one of the best ways to learn

So no, you're not too old.

Since I am going into iOS programming, I have decided to get my C skills up to scratch first, then move over to Objective-C.
__________________
I don't list my Apple devices as no one cares.
"Do what you love (no excuses!)" - Gary Vaynerchuk
Tander is offline   1 Reply With Quote
Old May 14, 2013, 07:17 AM   #22
WhiteIphone5
Thread Starter
Banned
 
Join Date: May 2011
Location: Lima, Peru
Quote:
Originally Posted by Tander View Post
I'm 24 and have only started learning to program since last year.

I've started my first job as a junior developer which starts next week as I think doing it professionally is one of the best ways to learn

So no, you're not too old.

Since I am going into iOS programming, I have decided to get my C skills up to scratch first, then move over to Objective-C.
Awesome!!
What language did you first start with?

----------

Quote:
Originally Posted by naryn View Post
Watch the Stanford Java course CS106a on iTunes U and learn Java programing games! Great lectures, great assignments.

Lectures:
https://itunes.apple.com/us/itunes-u...gy/id384232896

Coursework:
http://www.stanford.edu/class/cs106a/

Then progress to CS106b, then to their iOS class, job done!
Great links. Thank you!
WhiteIphone5 is offline   0 Reply With Quote
Old May 14, 2013, 07:24 AM   #23
dan1eln1el5en
macrumors regular
 
Join Date: Jan 2012
When I saw the headline, I thought it was a 78 year old and I would still have said no.... 20...you might be too young :-P
dan1eln1el5en is offline   0 Reply With Quote
Old May 14, 2013, 08:01 AM   #24
ArtOfWarfare
macrumors 603
 
ArtOfWarfare's Avatar
 
Join Date: Nov 2007
Send a message via Skype™ to ArtOfWarfare
Quote:
Originally Posted by dan1eln1el5en View Post
When I saw the headline, I thought it was a 78 year old and I would still have said no.... 20...you might be too young :-P
I don't think there is such a thing as too young (or too old, for that matter.)

All you need is the will and desire to learn, and to want to do it now rather than later. If you've never touched programming before, but go to university looking to get a degree in it, then you're probably going to make a lousy programmer. Why? Because the ones actually interested in it started learning on their own well before enrolling.

The OP is different from the lousy ones - he's looking to learn on his own, and so though he's making the initiative later than usual, he is making it on his own which I think means he could in time be one of the better programmers of his (and my... I'm also 20) generation.
ArtOfWarfare is offline   1 Reply With Quote
Old May 14, 2013, 08:52 AM   #25
Tander
macrumors 6502a
 
Tander's Avatar
 
Join Date: Oct 2011
Location: Johannesburg, South Africa
Quote:
Originally Posted by WhiteIphone5 View Post
Awesome!!
What language did you first start with?
C.

before that I have not touched any other language.

When I was younger (Around 15 or so ) I started with C but due to leaving the country and life in general I never looked at programming in any real great depth, but always had an interest in it.

I did IT support for seven years and last year I had finally had enough and decided that it was time for a change.

So, I started with Objective-C first and found it difficult as there was C syntax I did not know and that the book I was reading did not explain in any detail as it assumed the reader (me) knew some C skills (I didn't)

So, I took a step back and went to C - I ams till going through my C book (learn C on mac - 4th edition by David Mark's) very good book.

Once I have completed the book I will go back to Objective-C and progress from there.

I was offered a job as a junior dev with the intention of the company "brining me up to scratch" on iOS development and I just couldn't say no.

That chapter of my life starts next week and I cannot wait.
__________________
I don't list my Apple devices as no one cares.
"Do what you love (no excuses!)" - Gary Vaynerchuk

Last edited by dejo; May 14, 2013 at 11:05 AM. Reason: fixed quote.
Tander is offline   2 Reply With Quote

Reply
MacRumors Forums > Apple Systems and Services > Programming > Mac Programming

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Similar Threads
thread Thread Starter Forum Replies Last Post
Best way to start Programming? PoTayToh iPhone/iPad Programming 3 Mar 15, 2014 06:03 PM
Mac programming should be more like iOS programming. moonman239 Mac Programming 13 Feb 17, 2014 01:37 PM
How to start an application automatically without login. App should start with OS danje OS X 10.8 Mountain Lion 13 Mar 26, 2013 01:44 AM
All iPads: How to start programming with Xcode Forzalex iPad 5 Dec 27, 2012 12:34 PM
Want to start coding/programming, what should i learn? gusping Mac Programming 11 Jul 30, 2012 03:44 PM

Forum Jump

All times are GMT -5. The time now is 01:42 AM.

Mac Rumors | Mac | iPhone | iPhone Game Reviews | iPhone Apps

Mobile Version | Fixed | Fluid | Fluid HD
Copyright 2002-2013, MacRumors.com, LLC