First programming language
-
- Posts: 355
- Joined: Sun Dec 30, 2007 3:28 am
- Location: Cleveland, Oh
First programming language
So i'd like to learn a programming language. I'd prefer to use my mac, and i already own textmate. I do know some of the web programming languages, but i'd like to learn something that runs programs locally. I would like to dive right into something that is current. Any recommendations on a language to start learning?
Re: First programming language
You can get the whole dev kit from Apple (XCode) for free, by signing up as an individual developer. It has a whole bunch of programming languages to choose from, great documentation, etc. You can even target the iPhone and iPad from it (using the real thing or simulators). It's a great development environment. If you want to program GUIs under it, then you need to learn Objective C. I use C++ and mix Objective C with it, which the environment lets you do freely. Basically, if you want to use that environment, then you need to learn C and Objective C or maybe C++ and Objective C.
Another possibility is to simply start at the command line (no GUIs) using the GNU compiler (gcc). That's in some ways a better way to learn programming, because it's a much less complicated environment. You can print data to the screen (Terminal program), read and write data to/from files, etc. I write most of my code that way, because it's for my own use and I don't need a GUI for most of what I do.
Yet another possibility is to learn something like Python, which would let you play with the Live API. I'm not especially fond of that language as a beginner's language, because I think it hides too much of what's going on with the computer itself that it makes it harder to become a proficient programmer. But lots of folks like it. It's quite fast to get stuff working there.
hth,
-Luddy
Another possibility is to simply start at the command line (no GUIs) using the GNU compiler (gcc). That's in some ways a better way to learn programming, because it's a much less complicated environment. You can print data to the screen (Terminal program), read and write data to/from files, etc. I write most of my code that way, because it's for my own use and I don't need a GUI for most of what I do.
Yet another possibility is to learn something like Python, which would let you play with the Live API. I'm not especially fond of that language as a beginner's language, because I think it hides too much of what's going on with the computer itself that it makes it harder to become a proficient programmer. But lots of folks like it. It's quite fast to get stuff working there.
hth,
-Luddy
-
- Posts: 5788
- Joined: Wed Nov 24, 2004 11:05 pm
- Location: Melbourne Australia
- Contact:
Re: First programming language
Or you could start small with a scripting language?
If not, I'd personally recommend C# as it's not as 'hard' as C, C++, but if you ever feel the need to do something in C, C++ in the future, a lot of it will feel familiar if you have a grasp of C#.
C# is windows based for the most part though, not OSX. I'm actually learning some XCode, Objective C now for a work project. I've been a Microsoft developer for 14 years now. :S
If not, I'd personally recommend C# as it's not as 'hard' as C, C++, but if you ever feel the need to do something in C, C++ in the future, a lot of it will feel familiar if you have a grasp of C#.
C# is windows based for the most part though, not OSX. I'm actually learning some XCode, Objective C now for a work project. I've been a Microsoft developer for 14 years now. :S
-
- Posts: 420
- Joined: Fri Mar 19, 2010 2:08 am
Re: First programming language
you need to identify what you want to do first.
choose something with an inbuilt garbage collecture, as memory management can be arse.
choose something with an inbuilt garbage collecture, as memory management can be arse.
Re: First programming language
Ruby on Rails for grownup apps. Java for marketability.
Re: First programming language
gurumonkey wrote: I'd prefer to use my mac
Re: First programming language
+1luddy wrote:You can get the whole dev kit from Apple (XCode) for free, by signing up as an individual developer. It has a whole bunch of programming languages to choose from, great documentation, etc. You can even target the iPhone and iPad from it (using the real thing or simulators). It's a great development environment. If you want to program GUIs under it, then you need to learn Objective C. I use C++ and mix Objective C with it, which the environment lets you do freely. Basically, if you want to use that environment, then you need to learn C and Objective C or maybe C++ and Objective C.
Another possibility is to simply start at the command line (no GUIs) using the GNU compiler (gcc). That's in some ways a better way to learn programming, because it's a much less complicated environment. You can print data to the screen (Terminal program), read and write data to/from files, etc. I write most of my code that way, because it's for my own use and I don't need a GUI for most of what I do.
Yet another possibility is to learn something like Python, which would let you play with the Live API. I'm not especially fond of that language as a beginner's language, because I think it hides too much of what's going on with the computer itself that it makes it harder to become a proficient programmer. But lots of folks like it. It's quite fast to get stuff working there.
hth,
-Luddy
Register for the free Apple Developer thing and you get a huge amount of resources ready to use - there's lots of beginners 101 stuff, lots of code examples that work straight out of the box with Xcode. Having worked with many different development environments, I'd say that what Apple gives you for free with Xcode is amazing, the most beginner friendly and, hate to say it, but it does just work, especially compared to stuff I used in the past where you're faffing around for hours installing stuff and configuring your system, instead of actually programming.
Re: First programming language
timothyallan wrote:Or you could start small with a scripting language?
If not, I'd personally recommend C# as it's not as 'hard' as C, C++, but if you ever feel the need to do something in C, C++ in the future, a lot of it will feel familiar if you have a grasp of C#.
C# is windows based for the most part though, not OSX. I'm actually learning some XCode, Objective C now for a work project. I've been a Microsoft developer for 14 years now. :S
I'm a C# dev in my day job, and I agree that it's not as hard as the true c-style languages (C, C++, ObjC). However, it's also about a gazillion times more powerful, since the .net API is fricking amazing.
If you don't have a dual-boot windows on your mac, you can run C# using MONO, if you do have the dual-boot then just grab visual web developer (free visual studio, basically) and get on with it
I wouldn't recommend learning something like Python first, you'll end up very confused if you do ever move onto something that doesn't have the training wheels (used to happen to most of the newbies when I was at Uni, they were doing well with Python then they'd get chucked bollocks-deep in a C++ program and basically have a nervous breakdown and die[ish]). Also, Python really stuggles with the Object-oriented stuff that you are going to need to learn how to do properly if you have any hope of understanding other people's code.
Some stuff, and some other stuff. Honest.
Currently on a huge and mostly pointless promotion drive, come play:
Soundcloud!
Facebook!!
Twatter!!!
Currently on a huge and mostly pointless promotion drive, come play:
Soundcloud!
Facebook!!
Twatter!!!
Re: First programming language
Why restrict yourself to proprietary Microsoft languages and protocols? Especially C#, MS Java me-too.Ed J wrote:timothyallan wrote:Or you could start small with a scripting language?
If not, I'd personally recommend C# as it's not as 'hard' as C, C++, but if you ever feel the need to do something in C, C++ in the future, a lot of it will feel familiar if you have a grasp of C#.
C# is windows based for the most part though, not OSX. I'm actually learning some XCode, Objective C now for a work project. I've been a Microsoft developer for 14 years now. :S
I'm a C# dev in my day job, and I agree that it's not as hard as the true c-style languages (C, C++, ObjC). However, it's also about a gazillion times more powerful, since the .net API is fricking amazing.
If you don't have a dual-boot windows on your mac, you can run C# using MONO, if you do have the dual-boot then just grab visual web developer (free visual studio, basically) and get on with it
I wouldn't recommend learning something like Python first, you'll end up very confused if you do ever move onto something that doesn't have the training wheels (used to happen to most of the newbies when I was at Uni, they were doing well with Python then they'd get chucked bollocks-deep in a C++ program and basically have a nervous breakdown and die[ish]). Also, Python really stuggles with the Object-oriented stuff that you are going to need to learn how to do properly if you have any hope of understanding other people's code.
Re: First programming language
Java is currently massively out of date (no functions as first-class objects, which means no functional-style programming or lambdas. that sucks big fat donkey balls), C# was originally a Java-a-like, but now it's much, *much* better.vicz wrote:Why restrict yourself to proprietary Microsoft languages and protocols? Especially C#, MS Java me-too.Ed J wrote:timothyallan wrote:Or you could start small with a scripting language?
If not, I'd personally recommend C# as it's not as 'hard' as C, C++, but if you ever feel the need to do something in C, C++ in the future, a lot of it will feel familiar if you have a grasp of C#.
C# is windows based for the most part though, not OSX. I'm actually learning some XCode, Objective C now for a work project. I've been a Microsoft developer for 14 years now. :S
I'm a C# dev in my day job, and I agree that it's not as hard as the true c-style languages (C, C++, ObjC). However, it's also about a gazillion times more powerful, since the .net API is fricking amazing.
If you don't have a dual-boot windows on your mac, you can run C# using MONO, if you do have the dual-boot then just grab visual web developer (free visual studio, basically) and get on with it
I wouldn't recommend learning something like Python first, you'll end up very confused if you do ever move onto something that doesn't have the training wheels (used to happen to most of the newbies when I was at Uni, they were doing well with Python then they'd get chucked bollocks-deep in a C++ program and basically have a nervous breakdown and die[ish]). Also, Python really stuggles with the Object-oriented stuff that you are going to need to learn how to do properly if you have any hope of understanding other people's code.
Just cus Microsoft are a big corporate set of bellends doesn't mean they have the best framework and language tools.
Also, Sun are WAY more evil than microsoft, it's just that they're less obvious about it.
Flame wars are pointless: I suggested C# cus it's a very powerful language that's well supported on sites like StackOverflow and has a good set of standards and free downloady stuff, which makes it easy to pick up. If you want to suggest something else and justify it with some actual information as opposed to shameless fanboi/anti-m$/whatever-ism the go ahead, it'll be good if the OP can get a feel of the level of support for a language.
Some stuff, and some other stuff. Honest.
Currently on a huge and mostly pointless promotion drive, come play:
Soundcloud!
Facebook!!
Twatter!!!
Currently on a huge and mostly pointless promotion drive, come play:
Soundcloud!
Facebook!!
Twatter!!!
-
- Posts: 355
- Joined: Sun Dec 30, 2007 3:28 am
- Location: Cleveland, Oh
Re: First programming language
So are any of these languages useful for developing cross platform stuff?
C# requires windows or something similar, right?
how large is the apple developer kit?
C# requires windows or something similar, right?
how large is the apple developer kit?
Re: First programming language
For cross-platform you're basically looking at Web stuff these days (although Java is also a reasonable option). The problem is cross-platform is that it's not in the platform's interest for things to work on their platform and others too, so it tends to be difficult!gurumonkey wrote:So are any of these languages useful for developing cross platform stuff?
C# requires windows or something similar, right?
how large is the apple developer kit?
C# works fine on Mac, most Linux flavours and Windows (you need MONO for the *nix ones though [mac and linux]).
Can't tell you much about the Apple dev stuff I'm afraid, took a look at their ObjC stuff at college and decided I'd rather just use C++.
Some stuff, and some other stuff. Honest.
Currently on a huge and mostly pointless promotion drive, come play:
Soundcloud!
Facebook!!
Twatter!!!
Currently on a huge and mostly pointless promotion drive, come play:
Soundcloud!
Facebook!!
Twatter!!!
Re: First programming language
^yes, Java is best for anything you want to run locally on multiple platforms. The GUI elements are what are more platform specific in the "C language family" realm.
which web programming languages do you know? that can indicate the application programming language you might pick up most readily.
which web programming languages do you know? that can indicate the application programming language you might pick up most readily.
UTENZIL a tool... of the muse.
Re: First programming language
Could that be because a Mac......gurumonkey wrote: I'd prefer to use my mac