Go Back   MacRumors Forums > Apple Systems and Services > Programming > Mac Programming

Reply
 
Thread Tools Search this Thread Display Modes
Old Apr 29, 2012, 10:10 AM   #1
pchipchip
macrumors regular
 
Join Date: Sep 2011
What programming languages are worth my while?

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.
pchipchip is offline   0 Reply With Quote
Old Apr 29, 2012, 10:21 AM   #2
robvas
macrumors 68000
 
Join Date: Mar 2009
Location: 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.
robvas is offline   0 Reply With Quote
Old Apr 29, 2012, 10:31 AM   #3
pchipchip
Thread Starter
macrumors regular
 
Join Date: Sep 2011
Quote:
Originally Posted by robvas View Post
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.
pchipchip is offline   0 Reply With Quote
Old Apr 29, 2012, 10:46 AM   #4
robvas
macrumors 68000
 
Join Date: Mar 2009
Location: 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?
robvas is offline   1 Reply With Quote
Old Apr 29, 2012, 10:59 AM   #5
pchipchip
Thread Starter
macrumors regular
 
Join Date: Sep 2011
Quote:
Originally Posted by robvas View Post
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).
pchipchip is offline   0 Reply With Quote
Old Apr 29, 2012, 11:15 AM   #6
chrono1081
macrumors 604
 
chrono1081's Avatar
 
Join Date: Jan 2008
Location: Isla Nublar
Quote:
Originally Posted by pchipchip View Post
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.
__________________
Mac Pro (2010): 3.33Ghz Intel Xeon (6 core) - 24 GB RAM - NVidia Quadro k5000
Macbook Air (2010): 2.13 Ghz Intel Core 2 Duo - 4GB RAM
chrono1081 is offline   1 Reply With Quote
Old Apr 29, 2012, 11:26 AM   #7
xlii
macrumors 68000
 
xlii's Avatar
 
Join Date: Sep 2006
Location: 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.
xlii is offline   1 Reply With Quote
Old Apr 29, 2012, 11:48 AM   #8
robvas
macrumors 68000
 
Join Date: Mar 2009
Location: USA
Quote:
Originally Posted by pchipchip View Post
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?
robvas is offline   0 Reply With Quote
Old Apr 29, 2012, 01:12 PM   #9
softwareguy256
macrumors regular
 
Join Date: Jun 2010
These questions are easily answered by learning from success. What languages does the most innovative company in the world use?

Quote:
Originally Posted by pchipchip View Post
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.
softwareguy256 is offline   -1 Reply With Quote
Old Apr 29, 2012, 01:41 PM   #10
chown33
macrumors 603
 
Join Date: Aug 2009
Quote:
Originally Posted by pchipchip View Post
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.
chown33 is offline   3 Reply With Quote
Old Apr 29, 2012, 03:15 PM   #11
thundersteele
macrumors 68030
 
Join Date: Oct 2011
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
thundersteele is offline   0 Reply With Quote
Old Apr 29, 2012, 03:27 PM   #12
pchipchip
Thread Starter
macrumors regular
 
Join Date: Sep 2011
Quote:
Originally Posted by robvas View Post
You still didn't answer my question, what app or what web site do you want to make?
Probably games for iOS i guess. And I am not sure for a website.
pchipchip is offline   0 Reply With Quote
Old Apr 29, 2012, 05:17 PM   #13
firewood
macrumors 603
 
Join Date: Jul 2003
Location: 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).
firewood is offline   3 Reply With Quote
Old May 1, 2012, 10:37 AM   #14
pchipchip
Thread Starter
macrumors regular
 
Join Date: Sep 2011
Quote:
Originally Posted by firewood View Post
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?
pchipchip is offline   0 Reply With Quote
Old May 1, 2012, 10:47 AM   #15
throAU
macrumors 68030
 
Join Date: Feb 2012
Location: 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/
__________________
MBP (early 2011) - Core i7 2720 2.2ghz, Hires Glossy, 16GB, Seagate Momentus XT 750GB
Mac Mini (mid 2007) - Core2 Duo 1.8, 2gb, 320gb 7200 rpm
iPhone 4S, iPad 4, iPad Mini, HTC One (eval)

Last edited by throAU; May 1, 2012 at 10:59 AM.
throAU is offline   1 Reply With Quote
Old May 1, 2012, 11:09 AM   #16
rutledjw
macrumors member
 
Join Date: Aug 2011
Quote:
Originally Posted by chown33 View Post
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...
rutledjw is offline   0 Reply With Quote
Old May 2, 2012, 04:56 PM   #17
PrismaticRealms
macrumors member
 
Join Date: Apr 2006
Location: 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.
PrismaticRealms is offline   1 Reply With Quote
Old Oct 18, 2012, 09:25 AM   #18
gnasher729
macrumors G5
 
gnasher729's Avatar
 
Join Date: Nov 2005
Quote:
Originally Posted by chown33 View Post
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.
gnasher729 is offline   1 Reply With Quote
Old Oct 18, 2012, 11:41 AM   #19
naples98
macrumors member
 
Join Date: Sep 2008
Location: 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).
naples98 is offline   0 Reply With Quote
Old Oct 18, 2012, 12:16 PM   #20
MacCruiskeen
macrumors 6502
 
Join Date: Nov 2011
Quote:
Originally Posted by chown33 View Post
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.
MacCruiskeen is offline   0 Reply With Quote
Old Oct 18, 2012, 01:11 PM   #21
notjustjay
macrumors 603
 
notjustjay's Avatar
 
Join Date: Sep 2003
Location: Canada, eh?
Quote:
Originally Posted by naples98 View Post
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.
__________________
.
notjustjay is offline   1 Reply With Quote

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

Tags
basics, core, java, mac, programming

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Similar Threads
thread Thread Starter Forum Replies Last Post
New languages for Siri? iMacBooked iOS 7 31 Jun 3, 2014 08:21 AM
Mac programming should be more like iOS programming. moonman239 Mac Programming 13 Feb 17, 2014 01:37 PM
Need an Accredited Online Course on Programming Languages ArtOfWarfare Mac Programming 6 Sep 9, 2013 11:30 AM
Accidentally deleted languages nearfantastica Mac Basics and Help 3 May 14, 2013 08:43 PM
Storyboard and languages ildandi iPhone/iPad Programming 0 Nov 11, 2012 08:24 AM

Forum Jump

All times are GMT -5. The time now is 09:00 AM.

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

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