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

pchipchip

macrumors regular
Original poster
Sep 7, 2011
131
0
What programming languages should I start with? Just as basics and then I can branch out to others. What are the core programming languages that are worth learning? What programming languages can I make the most money with? I am just thinking for the future and I appreciate any help.
 

robvas

macrumors 68040
Mar 29, 2009
3,240
629
USA
Ideas and marketing, not programming is where the money is.

If you haven't programmed before, many people will suggest you start out with a language such as Python.
 

pchipchip

macrumors regular
Original poster
Sep 7, 2011
131
0
If you haven't programmed before, many people will suggest you start out with a language such as Python.

Thanks! This is what I was looking for. I still would like more suggestions though just to see what other people have to say.
 

robvas

macrumors 68040
Mar 29, 2009
3,240
629
USA
Your language choice is also going to be related to what you are trying to make:

You wouldn't use Python or Javascript to write an operating system, and you wouldn't use assembly or C to write a web-app. And if you're trying to target a certain phone or other device (Nintendo DS for example), you might not have any choice in what you can use.

Do you know what you want to make yet?
 

pchipchip

macrumors regular
Original poster
Sep 7, 2011
131
0
Do you know what you want to make yet?

I was thinking of iOS apps at first, but I wanted to explore other kinds of programming. Also doing some web design. I am taking a class on GML next year at school (it is one of the only programming classes at our school).
 

chrono1081

macrumors G3
Jan 26, 2008
8,451
4,149
Isla Nublar
I was thinking of iOS apps at first, but I wanted to explore other kinds of programming. Also doing some web design. I am taking a class on GML next year at school (it is one of the only programming classes at our school).

For iOS apps this is a great start and requires no previous programming experience:

http://www.amazon.com/Objective-C-Programming-Ranch-Guide-Guides/dp/0321706285

Follow that book up with this book:

http://www.amazon.com/Programming-Objective-C-Edition-Developers-Library/dp/0321811909/ref=dp_ob_title_bk

Get good at both of these and you can hop to any number of iOS books. I personally like the Big Nerd Ranch books.
 

xlii

macrumors 68000
Sep 19, 2006
1,867
121
Millis, Massachusetts
Having been in this game since 1977 I'll tell you this: by the time you learn the current 'it girl' language, there will be a new 'it girl' language to replace it.
 

robvas

macrumors 68040
Mar 29, 2009
3,240
629
USA
I was thinking of iOS apps at first, but I wanted to explore other kinds of programming. Also doing some web design. I am taking a class on GML next year at school (it is one of the only programming classes at our school).

You still didn't answer my question, what app or what web site do you want to make?
 

softwareguy256

macrumors regular
Jun 5, 2010
131
0
These questions are easily answered by learning from success. What languages does the most innovative company in the world use?

What programming languages should I start with? Just as basics and then I can branch out to others. What are the core programming languages that are worth learning? What programming languages can I make the most money with? I am just thinking for the future and I appreciate any help.
 

chown33

Moderator
Staff member
Aug 9, 2009
10,740
8,416
A sea of green
What programming languages can I make the most money with?

Probably COBOL, because all the coders who've been using it for decades are retiring or dying, and it's cheaper to replace them and keep the legacy system going than it is to rebuild the legacy system.

You'll probably have to be a real wizard at it, and have contacts in industries that rely on it, but if COBOL is your thing, you can cultivate the contacts.
 

thundersteele

macrumors 68030
Oct 19, 2011
2,984
9
Switzerland
Useful to learn

- Python: quick success with simple programs, platform independent, extensive libraries
- C: basis for modern languages like Objective-C (OSX/iOS apps) and C# (windows apps)
- C++: great basis for many things
- Java: web stuff, platform independent GUI


To make some money:
Objective-C/Cocoa for iPhone, iPad apps
C++/Python (or whatever one uses for Android apps)
Java/PHP/mySQL web stuff

To make a lot of money:
Become really really good at programing (language doesn't matter so much), so that companies will pay you a lot of money. Or, have really good ideas for apps or websites, and make money from that. The programing language is mostly secondary here, and you don't even have to write good code, as long as it works. Once you are rich you can pay other people to improve or fix your code ;)
 

firewood

macrumors G3
Jul 29, 2003
8,107
1,345
Silicon Valley
Here's one 4-5 step plan:

Start with Python until you're comfortable with writing your own programs, maybe at least a few hundred lines long. After you learn the basics, learn how to use Python objects and classes.

Learn enough Javascript to make some web pages do something interesting. Learn the Javascript asynchronous callback pattern. Maybe learn some PHP to learn how to serve a few interesting web pages.

Learn some C, enough to know the limitations of various data types and the dangers of allocating, using and potentially corrupting memory. Bonus points if you can figure out how to debug things if(when) you do the latter, as well as make one of your Python or Javascript programs run 100X faster.

Then learn Objective C and Cocoa Touch to write your iOS game.

This will give you a background in both interpreted and compiled languages, dynamic and statically typed languages, as well as embedded device (iPhone) and networked applications (web apps front and back).
 

pchipchip

macrumors regular
Original poster
Sep 7, 2011
131
0
Here's one 4-5 step plan:

Start with Python until you're comfortable with writing your own programs, maybe at least a few hundred lines long. After you learn the basics, learn how to use Python objects and classes.

Learn enough Javascript to make some web pages do something interesting. Learn the Javascript asynchronous callback pattern. Maybe learn some PHP to learn how to serve a few interesting web pages.

Learn some C, enough to know the limitations of various data types and the dangers of allocating, using and potentially corrupting memory. Bonus points if you can figure out how to debug things if(when) you do the latter, as well as make one of your Python or Javascript programs run 100X faster.

Then learn Objective C and Cocoa Touch to write your iOS game.

This will give you a background in both interpreted and compiled languages, dynamic and statically typed languages, as well as embedded device (iPhone) and networked applications (web apps front and back).

Thanks! That sounds like a great idea. I have already learned a little bit of Objective C and made some simple iPhone apps. Should I skip steps or go back to Python?
 

throAU

macrumors G3
Feb 13, 2012
8,817
6,985
Perth, Western Australia
Realistically, i'd be learning javascript and HTML5, if you had to start out somewhere.

You can use javascript to write dashboard widgets and HTML apps for the iOS devices.

Google are showing that some pretty amazing things can be done with javascript these days, and it will run in any browser (not just an iOS browser) - which means you can write cross platform web apps that will run on iOS, Android, Windows, etc...

its also likely easier to start out with than objective-C (no pointers, weak typing) which is the language you need for fully native iOS apps - and you can also use it for regular website development.

here wouldn't be a bad place to start:

http://www.codecademy.com/
 
Last edited:

rutledjw

macrumors member
Aug 11, 2011
65
0
Probably COBOL, because all the coders who've been using it for decades are retiring or dying, and it's cheaper to replace them and keep the legacy system going than it is to rebuild the legacy system.

You'll probably have to be a real wizard at it, and have contacts in industries that rely on it, but if COBOL is your thing, you can cultivate the contacts.

A lot of companies were throwing this over the pond to India. Maybe that's changed, but as of 2-3 years ago, that was the MO.

There are a lot of good jobs in PHP as well. But learn the LAMP stack, branch out. As much as I'm kinda over Java, that has good demand as well. Look at contract rates, that'll give a good idea of how much each pays. but also choose a language that you enjoy coding in, that makes it a lot easier...
 

PrismaticRealms

macrumors member
Apr 5, 2006
43
19
Whitby, ON, Canada
I would recommend you learn a very common, well rounded language that provides you with a good introduction into the world of programming and that gives you easy access to help because many others are doing it.

Generically, I would start with C and then move on to C++. But whatever your choice of first language, get a good understanding of data structures, patterns and object oriented design/programming. Once you learn these things, then the language itself becomes less important because you'll be able to apply your techniques to any language without much struggle.

In terms of making a lot of money, that's tougher to answer. You can be an expert at C++ (or whatever language) and work at some dismal IT position in some corporation somewhere and earn an average salary. But that same expert can decide to quit that job, and write an application that millions of people buy and make plenty moolah. This of course requires ingenuity, skill and luck. The expert can also completely fail that and have to live of their parents while recovering.

In my experience, it isn't the language that earns you the money, it's experience, how good you are at writing software and your ability to solve problems. You can switch languages any old time.

If you're looking for good money, though, SAP programmers earn a mint! But not right off the bat.
 

gnasher729

Suspended
Nov 25, 2005
17,980
5,565
Probably COBOL, because all the coders who've been using it for decades are retiring or dying, and it's cheaper to replace them and keep the legacy system going than it is to rebuild the legacy system.

You'll probably have to be a real wizard at it, and have contacts in industries that rely on it, but if COBOL is your thing, you can cultivate the contacts.

A few years ago I bought a COBOL book. Because it was cheap (£5 down from £49 or something like that and because it was curious). When I read through it, I just couldn't believe how bad the language was. (I mean the programming language, there was no swearing in the book :) You couldn't pay me enough money to write COBOL code.
 

naples98

macrumors member
Sep 9, 2008
95
3
Houston
I always laugh when someone posts a question like this. Nothing against someone wanting to learn but it is such a hard question to answer without more details.

Every programming language was created for a reason. All of them have positive and negative aspects so it matters more about what you want to do than which language is worth your while.

For example, if you ask me which spoken language you should learn, I'm not going to tell you Spanish if you are moving to France. Or if you ask which tool to use for a home improvement project, I'm not going to tell you to use a screwdriver if you are looking to hammer a nail.

As for COBOL, a friend of mine was working on her PhD a couple of years ago and apparently a lot of the Weather Modeling software out there is written in COBOL so she had to learn some (not happy about it either).
 

MacCruiskeen

macrumors 6502
Nov 9, 2011
321
5
Probably COBOL, because all the coders who've been using it for decades are retiring or dying, and it's cheaper to replace them and keep the legacy system going than it is to rebuild the legacy system.

You'll probably have to be a real wizard at it, and have contacts in industries that rely on it, but if COBOL is your thing, you can cultivate the contacts.

30 years I ago I had a job writing documentation for a COBOL consultant. The irony of course is that your statement was just as true then as it is now.
 

notjustjay

macrumors 603
Sep 19, 2003
6,056
167
Canada, eh?
For example, if you ask me which spoken language you should learn, I'm not going to tell you Spanish if you are moving to France. Or if you ask which tool to use for a home improvement project, I'm not going to tell you to use a screwdriver if you are looking to hammer a nail.

(This is a bit of a thread resurrection; I hope the OP is succeeding in learning whatever languages they chose.)

It's also key to understand that learning the language itself does not make you a good programmer. It does not guarantee success, or earn you lots of money. A good software developer is good because they can take concepts, like design patterns and methodologies and debugging skills, and move from a design "on paper" to something that works well in a computer. And that could happen in any number of programming languages. Indeed, as a professional software developer, you will likely end up working in multiple languages, but using the same underlying skills each time.

To continue the analogies, you might ask what language to speak if you want to become a successful businessman. I might suggest English or Mandarin Chinese. But if you're not also learning to be good at business and salesmanship and networking and negotiating and whatnot, knowing how to speak Chinese is only going to get you so far.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.