What programing language is best for complete beginners?

A place to discuss the implementation and style of computer programs.

Moderators: phlip, Moderators General, Prelates

cha0tic
Posts: 8
Joined: Mon Jan 18, 2010 5:02 pm UTC

What programing language is best for complete beginners?

Postby cha0tic » Tue Jan 19, 2010 1:38 am UTC

I've decided to learn how to program but i'm confused as to which language to start with. Can anyone give me some suggestions?

User avatar
PhoenixEnigma
Posts: 2303
Joined: Fri Sep 18, 2009 3:11 am UTC
Location: Sasquatchawan, Canada
Contact:

Re: What programing language is best for complete beginners?

Postby PhoenixEnigma » Tue Jan 19, 2010 1:42 am UTC

What kind of applications do you plan on programming? Also, is this just going to be a bit of a hobby, or do you plan on becoming fairly serious about this? Related to that - are you thinking of learning just one language and sticking mostly to that, or learning several over time and want to know where to start?
"Optimism, pessimism, fuck that; we're going to make it happen. As God is my bloody witness, I'm hell-bent on making it work." -Elon Musk
Shivahn wrote:I am a motherfucking sorceror.

cha0tic
Posts: 8
Joined: Mon Jan 18, 2010 5:02 pm UTC

Re: What programing language is best for complete beginners?

Postby cha0tic » Tue Jan 19, 2010 2:28 am UTC

I'm going to try and learn one language to start with and after i'm fairly familiar with it i'll try and tackle other languages. For now I just plan on coding as a hobby but once i'm fairly decent I may attempt to pursue a career in the field. As to what kinds of applications I plan to be coding i'm not really sure yet :|.

masher
Posts: 821
Joined: Tue Oct 23, 2007 11:07 pm UTC
Location: Melbourne, Australia

Re: What programing language is best for complete beginners?

Postby masher » Tue Jan 19, 2010 2:36 am UTC

Then everyone is probably going to say Python.

User avatar
Earlz
Gets Obvious Implications
Posts: 785
Joined: Sat Jun 09, 2007 8:38 am UTC
Location: USA
Contact:

Re: What programing language is best for complete beginners?

Postby Earlz » Tue Jan 19, 2010 2:58 am UTC

masher wrote:Then everyone is probably going to say Python.


No no, 75% will say Python and 25% will say Ruby..

I happen to recommend Ruby because it's awesome... but I've recently been doing bits of stuff with Python(like the Postgres PL/Python) and it's not bad... just different from Ruby... and I still of course prefer Ruby lol
My new blag(WIP, so yes it's still ugly..)
DEFIANCE!
Image
This is microtext. Zooming in digitally makes it worse. Get a magnifying glass.. works only on LCD

naotom
Posts: 4
Joined: Sun Sep 20, 2009 11:41 am UTC

Re: What programing language is best for complete beginners?

Postby naotom » Tue Jan 19, 2010 2:17 pm UTC

Well, I'm going to have to recommend python in an attempt to drag the statistics back into line.

I'm not a massive ruby fan but have spent similar time with both, and have so far definitely found python more accessible.

User avatar
Berengal
Superabacus Mystic of the First Rank
Posts: 2707
Joined: Thu May 24, 2007 5:51 am UTC
Location: Bergen, Norway
Contact:

Re: What programing language is best for complete beginners?

Postby Berengal » Tue Jan 19, 2010 7:43 pm UTC

Learn them all. Getting stuck on one language is the mind-killer. Once you feel you're starting to become comfortable with one language, switch to a completely different one. When you've learned a couple different paradigms you'll start to see patterns emerge that aren't visible from the perspective of any single language or paradigm alone, and you'll be able to perform greater feats of mental acrobatics that will help you in devising better algorithms and clearer design solutions.

I'd recommend starting with Haskell*. It's not exactly popular, and it's very different from the languages that are, but it won't provide you with confusing details, gotchas or unpleasant surprises. The syntax and semantics are both very regular**, and the confusing parts (which will be everything when you start out, which goes for all languages) will all make sense*** when you figure them out, and never seem like a waste of time****. There's a good (but perhaps a bit short if you're entirely new to programming) introduction over at http://learnyouahaskell.com/ and http://haskell.org/ contains links to just about everything else you need. The irc channel over at irc://freenode.net#haskell is also the best programming language channel I've ever seen*****, and is able to provide tutoring on just about any programming related subject.

* Of course I'd recommend Haskell. What else could I?
** Unlike Perl et.al.
*** Unlike C++ and friends******
**** Looking at you Java
***** It's actually helpful, unlike most other channels!
****** and most enemies
It is practically impossible to teach good programming to students who are motivated by money: As potential programmers they are mentally mutilated beyond hope of regeneration.

User avatar
Earlz
Gets Obvious Implications
Posts: 785
Joined: Sat Jun 09, 2007 8:38 am UTC
Location: USA
Contact:

Re: What programing language is best for complete beginners?

Postby Earlz » Tue Jan 19, 2010 8:21 pm UTC

Berengal wrote:Learn them all. Getting stuck on one language is the mind-killer. Once you feel you're starting to become comfortable with one language, switch to a completely different one. When you've learned a couple different paradigms you'll start to see patterns emerge that aren't visible from the perspective of any single language or paradigm alone, and you'll be able to perform greater feats of mental acrobatics that will help you in devising better algorithms and clearer design solutions.

I'd recommend starting with Haskell*. It's not exactly popular, and it's very different from the languages that are, but it won't provide you with confusing details, gotchas or unpleasant surprises. The syntax and semantics are both very regular**, and the confusing parts (which will be everything when you start out, which goes for all languages) will all make sense*** when you figure them out, and never seem like a waste of time****. There's a good (but perhaps a bit short if you're entirely new to programming) introduction over at http://learnyouahaskell.com/ and http://haskell.org/ contains links to just about everything else you need. The irc channel over at irc://freenode.net#haskell is also the best programming language channel I've ever seen*****, and is able to provide tutoring on just about any programming related subject.

* Of course I'd recommend Haskell. What else could I?
** Unlike Perl et.al.
*** Unlike C++ and friends******
**** Looking at you Java
***** It's actually helpful, unlike most other channels!
****** and most enemies



I recommend you start out with assembly so you know everything that is going on...

</sarcasm>

I don't think learning such a different language is the best choice for a new comer. Sure, your absolutely correct, everyone needs to understand multiple language types and mindsets. But, in my opinion, when you are just figuring out what variables are is not the time to switch to a new language. I recommend going with a "Standard" approach with an easy scripting language where the community is very strong for supporting newbies.
My new blag(WIP, so yes it's still ugly..)
DEFIANCE!
Image
This is microtext. Zooming in digitally makes it worse. Get a magnifying glass.. works only on LCD

User avatar
MHD
Posts: 630
Joined: Fri Mar 20, 2009 8:21 pm UTC
Location: Denmark

Re: What programing language is best for complete beginners?

Postby MHD » Tue Jan 19, 2010 8:38 pm UTC

I'd like to state that, honestly, python is maybe too complex for a total newcomer.
Sure, it's useful and you get it kinda fast and you can actually do stuff with it, but it feels too large from my point of view, as a beginner language.

I recoomend Lua. Small, simple, imperative.
No OO, no weird typing, only a few constructs... It's there to help you move on to other languages.
EvanED wrote:be aware that when most people say "regular expression" they really mean "something that is almost, but not quite, entirely unlike a regular expression"

User avatar
Berengal
Superabacus Mystic of the First Rank
Posts: 2707
Joined: Thu May 24, 2007 5:51 am UTC
Location: Bergen, Norway
Contact:

Re: What programing language is best for complete beginners?

Postby Berengal » Tue Jan 19, 2010 11:24 pm UTC

Earlz wrote:I don't think learning such a different language is the best choice for a new comer.
Different from what? When you're just starting out learning programming, everything's different.
Earlz wrote:But, in my opinion, when you are just figuring out what variables are is not the time to switch to a new language.
I'd say stick with a language a month or two, perhaps three. In that time you should've been able to learn the language itself rather thoroughly, or at least thorough enough that you would learn more by learning a new one. There is some overhead in learning the syntax and exact terminology at work when learning a new language, but if the language's worth learning those will be minor in comparison to the the concepts you'll learn.
It is practically impossible to teach good programming to students who are motivated by money: As potential programmers they are mentally mutilated beyond hope of regeneration.

User avatar
40degreeday
Posts: 32
Joined: Tue Sep 29, 2009 7:18 am UTC
Contact:

Re: What programing language is best for complete beginners?

Postby 40degreeday » Wed Jan 20, 2010 12:31 am UTC

I recommend C# or JAVA

people will disagree..

mouseposture
Posts: 42
Joined: Tue Sep 15, 2009 2:42 am UTC

Re: What programing language is best for complete beginners?

Postby mouseposture » Wed Jan 20, 2010 1:06 am UTC

cha0tic, if you do decide to take Berengal's advice, please consider blogging a diary of the experience. I'm sure I'm not alone in wondering whether a functional language like Haskell seems difficult to a person with no preconceptions. Even more interesting would be an account of learning your second language (assuming it wasn't also functional).

User avatar
headprogrammingczar
Posts: 3072
Joined: Mon Oct 22, 2007 5:28 pm UTC
Location: Beaming you up

Re: What programing language is best for complete beginners?

Postby headprogrammingczar » Wed Jan 20, 2010 1:14 am UTC

mouseposture wrote:cha0tic, if you do decide to take Berengal's advice, please consider blogging a diary of the experience. I'm sure I'm not alone in wondering whether a functional language like Haskell seems difficult to a person with no preconceptions. Even more interesting would be an account of learning your second language (assuming it wasn't also functional).

I would also be very interested in reading this.
<quintopia> You're not crazy. you're the goddamn headprogrammingspock!
<Weeks> You're the goddamn headprogrammingspock!
<Cheese> I love you

User avatar
Earlz
Gets Obvious Implications
Posts: 785
Joined: Sat Jun 09, 2007 8:38 am UTC
Location: USA
Contact:

Re: What programing language is best for complete beginners?

Postby Earlz » Wed Jan 20, 2010 1:16 am UTC

mouseposture wrote:cha0tic, if you do decide to take Berengal's advice, please consider blogging a diary of the experience. I'm sure I'm not alone in wondering whether a functional language like Haskell seems difficult to a person with no preconceptions. Even more interesting would be an account of learning your second language (assuming it wasn't also functional).


+1 for this. In fact, I think I now want you to learn a language like Haskell to see how you approach a procedural language when as your second language :)

40degreeday wrote:I recommend C# or JAVA

people will disagree..


C# is one thing, Java (JAVA is so ugly looking) is another thing...

In witnessing people learning Java in my AP class at high school as a first language, I say that C# would probably be easier to learn. The big thing being the long ass name of "System.out.Println("hello world")" and other long names for simple things(which tend to confuse people almost as much as overly short names) And the whole "You are going to eat your objects and you are going to like it!" bit is a bit crazy... and at first people don't seem to understand the object-to-action link... and the hello world program being like 10 lines of code doesn't help at all.

I'm not sure what it's like programming in C# outside of ASP.Net, so I can't comment very much on it.. from ASP.Net I would strive to say it would be about equal to the learning curve of Java...
My new blag(WIP, so yes it's still ugly..)
DEFIANCE!
Image
This is microtext. Zooming in digitally makes it worse. Get a magnifying glass.. works only on LCD

cha0tic
Posts: 8
Joined: Mon Jan 18, 2010 5:02 pm UTC

Re: What programing language is best for complete beginners?

Postby cha0tic » Wed Jan 20, 2010 10:23 pm UTC

After much consideration I have decided to learn Haskell as my first language woo! Im not so sure about writing a blog though (no idea how to set one up ).

bieber
Posts: 223
Joined: Thu Mar 13, 2008 12:13 am UTC

Re: What programing language is best for complete beginners?

Postby bieber » Wed Jan 20, 2010 10:34 pm UTC

Whaddya say folks, shall we set up a blog for him?

User avatar
Berengal
Superabacus Mystic of the First Rank
Posts: 2707
Joined: Thu May 24, 2007 5:51 am UTC
Location: Bergen, Norway
Contact:

Re: What programing language is best for complete beginners?

Postby Berengal » Thu Jan 21, 2010 12:19 am UTC

Setting up a blog is pretty easy. Just go to https://www.blogger.com/start and create one.

If you don't want to blog about this, that's fine, but I at least find it useful to write about what I'm learning. There are many things I've only understood after explaining them to someone else, or pretended that I have by writing about it.
It is practically impossible to teach good programming to students who are motivated by money: As potential programmers they are mentally mutilated beyond hope of regeneration.

User avatar
Area Man
Posts: 256
Joined: Thu Dec 25, 2008 8:08 pm UTC
Location: Local

Re: What programing language is best for complete beginners?

Postby Area Man » Thu Jan 21, 2010 1:39 am UTC

...
So, Lieutenant Berengal got himself a redshirt.




...just kidding, I'm sure this will be great. Please do blog.

More generally:
Spoiler:
this seems to be a common enough issue (ie. choosing a language, getting into programming); isn't there a chart/matrix, or decision tree, a wiki page or something w'all could hammer out?
Taking account of Coding vs CS vs Hardware angle, dealing with language and system issues, etc., rather than going over this time after time... how terrible is this idea?
Bisquick boxes are a dead medium.

User avatar
Xeio
Friends, Faidites, Countrymen
Posts: 5101
Joined: Wed Jul 25, 2007 11:12 am UTC
Location: C:\Users\Xeio\
Contact:

Re: What programing language is best for complete beginners?

Postby Xeio » Thu Jan 21, 2010 2:41 am UTC

Area Man wrote:This seems to be a common enough issue (ie. choosing a language, getting into programming); isn't there a chart/matrix, or decision tree, a wiki page or something w'all could hammer out?
Taking account of Coding vs CS vs Hardware angle, dealing with language and system issues, etc., rather than going over this time after time... how terrible is this idea?
No, mostly because given all the information about languages, there are still many that overlap, or are nearly the same (especially as far as being totally new to programming). It's mostly down to preference.

Ruby vs Python (Ruby is better, you pythonic bastards :mrgreen: )
Java vs C# (Though, anyone that chooses the former is evil, but the languages are very similar)
Um... Others, you get the idea.

bakadeshi
Posts: 35
Joined: Fri Jan 22, 2010 8:56 am UTC
Location: Dodoma, Tanzania
Contact:

Re: What programing language is best for complete beginners?

Postby bakadeshi » Fri Jan 22, 2010 10:04 am UTC

visual basic! (jk)

Python is better than ruby you deluded rubyphiles ;)

I think any 3rd gen (or later) language will be decent, since at the most basic level learning how to program is simply putting in coherent logical instructions in for a computer to perform. Like my CS profs told me, learn how to program in one language and you're 90% of the way to knowing how to program in every other language, the remaining 10% is learning the esoteric quirks each language has and developing strategies to overcome them.
Image

User avatar
Berengal
Superabacus Mystic of the First Rank
Posts: 2707
Joined: Thu May 24, 2007 5:51 am UTC
Location: Bergen, Norway
Contact:

Re: What programing language is best for complete beginners?

Postby Berengal » Fri Jan 22, 2010 3:14 pm UTC

bakadeshi wrote:at the most basic level learning how to program is simply putting in coherent logical instructions in for a computer to perform.

Nope, that's still just elephants. The turtles are even further down.

bakadeshi wrote: Like my CS profs told me, learn how to program in one language and you're 90% of the way to knowing how to program in every other language, the remaining 10% is learning the esoteric quirks each language has and developing strategies to overcome them.
Your prof is basically correct, but his numbers are way off. Things like algorithms, datastructures and theory in general carry over, but if you just know one language it's hard to distinguish those from the language and its features. Saying Java is like C++ in quirks mode would be pretty accurate, but saying Haskell is like C++ in quirks mode would be a terrible understatement.
It is practically impossible to teach good programming to students who are motivated by money: As potential programmers they are mentally mutilated beyond hope of regeneration.

User avatar
Earlz
Gets Obvious Implications
Posts: 785
Joined: Sat Jun 09, 2007 8:38 am UTC
Location: USA
Contact:

Re: What programing language is best for complete beginners?

Postby Earlz » Fri Jan 22, 2010 5:58 pm UTC

Berengal wrote:
bakadeshi wrote:at the most basic level learning how to program is simply putting in coherent logical instructions in for a computer to perform.

Nope, that's still just elephants. The turtles are even further down.

bakadeshi wrote: Like my CS profs told me, learn how to program in one language and you're 90% of the way to knowing how to program in every other language, the remaining 10% is learning the esoteric quirks each language has and developing strategies to overcome them.
Your prof is basically correct, but his numbers are way off. Things like algorithms, datastructures and theory in general carry over, but if you just know one language it's hard to distinguish those from the language and its features. Saying Java is like C++ in quirks mode would be pretty accurate, but saying Haskell is like C++ in quirks mode would be a terrible understatement.



I would say it's more like "your 90% of the way to knowing how to program in every other language that follows that paradigm"

Making the procedural -> functional language switch makes you just about start learning how to program all over again... least until you can grasp the "new" way of doing things... which is hard for even the most superb single paradigm programmers.
My new blag(WIP, so yes it's still ugly..)
DEFIANCE!
Image
This is microtext. Zooming in digitally makes it worse. Get a magnifying glass.. works only on LCD

bakadeshi
Posts: 35
Joined: Fri Jan 22, 2010 8:56 am UTC
Location: Dodoma, Tanzania
Contact:

Re: What programing language is best for complete beginners?

Postby bakadeshi » Sat Jan 23, 2010 11:07 am UTC

Oops, forgot about functional languages *shudders*!
Image

User avatar
thoughtfully
Posts: 2253
Joined: Thu Nov 01, 2007 12:25 am UTC
Location: Minneapolis, MN
Contact:

Re: What programing language is best for complete beginners?

Postby thoughtfully » Sat Jan 23, 2010 11:53 am UTC

There's also declarative, dataflow, and stack-based, oh my!
Image
Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.
-- Antoine de Saint-Exupery

User avatar
Berengal
Superabacus Mystic of the First Rank
Posts: 2707
Joined: Thu May 24, 2007 5:51 am UTC
Location: Bergen, Norway
Contact:

Re: What programing language is best for complete beginners?

Postby Berengal » Sat Jan 23, 2010 12:56 pm UTC

Not to mention concurrent, constraint, logic and aspect-oriented. Throw in relational languages as well and we've covered the major paradigms somewhat decently. Well, except for metaprogramming, which is sort of its own thing all over again..
It is practically impossible to teach good programming to students who are motivated by money: As potential programmers they are mentally mutilated beyond hope of regeneration.

User avatar
Earlz
Gets Obvious Implications
Posts: 785
Joined: Sat Jun 09, 2007 8:38 am UTC
Location: USA
Contact:

Re: What programing language is best for complete beginners?

Postby Earlz » Sat Jan 23, 2010 5:25 pm UTC

Berengal wrote:Not to mention concurrent, constraint, logic and aspect-oriented. Throw in relational languages as well and we've covered the major paradigms somewhat decently. Well, except for metaprogramming, which is sort of its own thing all over again..


Meta programming. The only paradigm where instead of creating a program to solve your problem, you create the program that creates the program to solve your problem :)
My new blag(WIP, so yes it's still ugly..)
DEFIANCE!
Image
This is microtext. Zooming in digitally makes it worse. Get a magnifying glass.. works only on LCD

cogman
Posts: 112
Joined: Sun May 18, 2008 2:17 pm UTC

Re: What programing language is best for complete beginners?

Postby cogman » Sat Jan 23, 2010 11:03 pm UTC

lol, I love you guys. Getting a new coming programmer to program in a non-popular language/paradigm for a social experiment, lol :).

Well, good luck with functional programming. I'm actually very interested in it, its just, I don't know that that would be my first recommendation for a first language. (not that knowing the procedural/OO Paradigm really helps you with functional programming).

Mainly, I would recommend a non-functional language because you'll have much more resources given just about any procedural language. Plus, if you are looking to be employed for your mad programming skills, very few employers are looking for Haskell programmers.

User avatar
Jorpho
Posts: 6276
Joined: Wed Dec 12, 2007 5:31 am UTC
Location: Canada

Re: What programing language is best for complete beginners?

Postby Jorpho » Sun Jan 24, 2010 12:46 am UTC

I would say the nice thing about Python is the pleasantly large variety of readily-available modules that can be easily adapted to your programming needs. Can you really say the same about Ruby and Haskell?

User avatar
Xeio
Friends, Faidites, Countrymen
Posts: 5101
Joined: Wed Jul 25, 2007 11:12 am UTC
Location: C:\Users\Xeio\
Contact:

Re: What programing language is best for complete beginners?

Postby Xeio » Sun Jan 24, 2010 1:13 am UTC

Jorpho wrote:I would say the nice thing about Python is the pleasantly large variety of readily-available modules that can be easily adapted to your programming needs. Can you really say the same about Ruby and Haskell?
I'm pretty sure all three have plenty of libraries available (Gems for ruby, HackageDB for Haskell (admittedly, I have less experience with Haskell, so there may be a better source of libraries)). Unless you have a specific area in which these libraries are lacking, I'm going to call bullshit. Even the standard libraries for all three languages are pretty big, which is more than enough for a beginner anyway.

Indefinity
Posts: 87
Joined: Thu Dec 24, 2009 7:49 pm UTC

Re: What programing language is best for complete beginners?

Postby Indefinity » Sun Jan 24, 2010 3:13 pm UTC

The difference here isn't just programming paradigm, but also a theoretical vs practical kind. Should we get him into a "pure" language that's closer to the theoretical computer or the practical one? Should he learn how assembly and pointers work so he can produce an efficient program, or should he learn how to program a higher-level language like Python or Haskell that hides away the computer and allows him to create programs that are "right."

Here's my question: Are you a slave to doing things the "right" way, or do you want to be a hacker?



EDIT: Oh, and if one must decide between C# and Java (as both would land you a job more easily than Haskell)... As much as I dislike MS' hold on the language, C# is a much nicer language in general, and there are slightly less restrictions to the language in general. Less jumping through hoops to get what you want.


And I'd like to throw JavaScript into the ring, simply because it's easy to get a simple GUI working, there's nothing extra to install to get it to work (just use your browser to run the code), and the language itself is rather simple to learn, and has few little "gotchas" in there. (Gotchas do exist in the language, of course.) Granted, there's a ton of really bad JavaScript code out there on the net, and Douglas Crockford's book is the only decent JavaScript book I've ever seen (and that's not for beginners), so unless you get instruction from someone who knows what they're doing, it's probably not the best language to start off with.

User avatar
Earlz
Gets Obvious Implications
Posts: 785
Joined: Sat Jun 09, 2007 8:38 am UTC
Location: USA
Contact:

Re: What programing language is best for complete beginners?

Postby Earlz » Sun Jan 24, 2010 6:22 pm UTC

Indefinity wrote:
And I'd like to throw JavaScript into the ring, simply because it's easy to get a simple GUI working, there's nothing extra to install to get it to work (just use your browser to run the code), and the language itself is rather simple to learn, and has few little "gotchas" in there. (Gotchas do exist in the language, of course.) Granted, there's a ton of really bad JavaScript code out there on the net, and Douglas Crockford's book is the only decent JavaScript book I've ever seen (and that's not for beginners), so unless you get instruction from someone who knows what they're doing, it's probably not the best language to start off with.


Code: Select all

return
    2 + 2;


returns 4 right? Wrong, returns nothing due to implicit semicolon insertion.

Javascript I would say has a lot of weird gotchas, especially when you mix in the HTML DOM.
My new blag(WIP, so yes it's still ugly..)
DEFIANCE!
Image
This is microtext. Zooming in digitally makes it worse. Get a magnifying glass.. works only on LCD

User avatar
Jorpho
Posts: 6276
Joined: Wed Dec 12, 2007 5:31 am UTC
Location: Canada

Re: What programing language is best for complete beginners?

Postby Jorpho » Sun Jan 24, 2010 10:27 pm UTC

Xeio wrote:
Jorpho wrote:I would say the nice thing about Python is the pleasantly large variety of readily-available modules that can be easily adapted to your programming needs. Can you really say the same about Ruby and Haskell?
I'm pretty sure all three have plenty of libraries available (Gems for ruby, HackageDB for Haskell (admittedly, I have less experience with Haskell, so there may be a better source of libraries)). Unless you have a specific area in which these libraries are lacking, I'm going to call bullshit. Even the standard libraries for all three languages are pretty big, which is more than enough for a beginner anyway.
Are there even equivalents of Pylab?

hooktail154
Posts: 13
Joined: Wed Jan 27, 2010 7:21 pm UTC

Re: What programing language is best for complete beginners?

Postby hooktail154 » Sun Jan 31, 2010 12:28 am UTC

Being a mac programmer, I may not be the right person to jump in on this, but for a true beginner, Objective-C is one of the best

I am also fairly certain that the GCC on any platform supports the compiling of Objective-C (.m) files, although to use anything other than basic functions, a mac and the Xcode Developer Tools are required

'Tis a shame that nobody has yet found a hack to use the OPENSTEP and NeXTSTEP libraries on a Windows PC or Linux, It would make multi-platform programming nearly effortless

User avatar
flying sheep
Posts: 63
Joined: Sun Jan 31, 2010 12:35 am UTC

Re: What programing language is best for complete beginners?

Postby flying sheep » Sun Jan 31, 2010 12:46 am UTC

whats going on with chaotic, the thread starter?
did he get lost?

i started with java and bugfixed some c++ (without really learnig it). then i learned sml (like haskell, but not as good) for university. now i code python and i am more than content. i will start learning haskell and ruby soon, though (c# would be an option, but microsoft-monopolies are a no-go)

PS: java, c++, c# are baaad for beginners. all this stupid low-level stuff. python hides the confusing aspects better (only pointers may get you: l=[[]]*3 and then l[0]=1 yields [[1],[1],[1]]…), maybe haskell is really the best choice for beginners!
PPS: (objective) c? ASSEMBLER? it is really stupid to think that learning it the hard way leads to joy. almost everybody starting to learn programming for fun will quit it really soon this way.
Last edited by flying sheep on Sun Jan 31, 2010 12:54 am UTC, edited 1 time in total.

User avatar
thoughtfully
Posts: 2253
Joined: Thu Nov 01, 2007 12:25 am UTC
Location: Minneapolis, MN
Contact:

Re: What programing language is best for complete beginners?

Postby thoughtfully » Sun Jan 31, 2010 12:52 am UTC

hooktail154 wrote:'Tis a shame that nobody has yet found a hack to use the OPENSTEP and NeXTSTEP libraries on a Windows PC or Linux, It would make multi-platform programming nearly effortless

You mean like this?

Anyway, I had the impression that it went both ways.. GTK and such can run on OS/X, too, I believe. And GTK also runs on Windoze.

The main problem is Windoze isn't very posixy.
Image
Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.
-- Antoine de Saint-Exupery

Indefinity
Posts: 87
Joined: Thu Dec 24, 2009 7:49 pm UTC

Re: What programing language is best for complete beginners?

Postby Indefinity » Sun Jan 31, 2010 1:40 am UTC

I think most people would say that any language that requires manual memory management is probably a bad language to start with. It requires a lot more work to get something "cool" to work. Just taking 2 numbers as input from the user and outputting their sum in a language like C is painful for a beginner. It's also the same reason I wouldn't recommend Haskell. It's not really about which language would be *best* to learn, but really, which one will give you the immediate gratification you need to keep pushing you to learn more. Unless you get very excited over simple little things like getting your program to print a message to the screen, I would start with something a little easier to jump into.

I started a long time ago with a cool program called Game Maker. I haven't used it in quite some time, but the coding behind that was actually pretty decent (a little odd looking back, but good enough for beginners), and it included enough functions like draw_sprite() that let you draw images to the screen quickly without much learning curve. Plus there's a big forum full of people just starting out programming. It's not quite "real" programming in a vague sense of the word, but the problem solving techniques you learn will apply to virtually every other language you might encounter. (Except Haskell :) )

hooktail154
Posts: 13
Joined: Wed Jan 27, 2010 7:21 pm UTC

Re: What programing language is best for complete beginners?

Postby hooktail154 » Sun Jan 31, 2010 4:22 am UTC

thoughtfully wrote:
hooktail154 wrote:'Tis a shame that nobody has yet found a hack to use the OPENSTEP and NeXTSTEP libraries on a Windows PC or Linux, It would make multi-platform programming nearly effortless

You mean like this?

Anyway, I had the impression that it went both ways.. GTK and such can run on OS/X, too, I believe. And GTK also runs on Windoze.

The main problem is Windoze isn't very posixy.


Sort of, but available to build for multiple platforms on one platform

So, in xcode, i might be able to compile for mac, windows, and unix/linux/etc. in one operation

User avatar
Xeio
Friends, Faidites, Countrymen
Posts: 5101
Joined: Wed Jul 25, 2007 11:12 am UTC
Location: C:\Users\Xeio\
Contact:

Re: What programing language is best for complete beginners?

Postby Xeio » Sun Jan 31, 2010 9:52 am UTC

flying sheep wrote:PS: java, c++, c# are baaad for beginners. all this stupid low-level stuff.
Wait... what? Java and C# are low level? Are you crazy?
Jorpho wrote:Are there even equivalents of Pylab?
Honestly, I'm not actually sure what PyLab is. If it's a plotting library (Gathered from reading the page a bit...) there are some alternatives in ruby I found, though most of them haven't been updated in a while. I can't speak for quality either, as I've never used them.

Indefinity
Posts: 87
Joined: Thu Dec 24, 2009 7:49 pm UTC

Re: What programing language is best for complete beginners?

Postby Indefinity » Sun Jan 31, 2010 3:34 pm UTC

Xeio wrote:
flying sheep wrote:PS: java, c++, c# are baaad for beginners. all this stupid low-level stuff.
Wait... what? Java and C# are low level? Are you crazy?
Jorpho wrote:Are there even equivalents of Pylab?

Code: Select all

System.out.println("hello");

Try explaining that to a beginner without using a lot of magic hand-waving.

Code: Select all

print("hello")

Much better.

By low-level, I believe he means lack of a good build-in way of abstracting certain things. Types, for instance, are low level when compared to a dynamically-type language. Having to describe someone what an "int" is distracts them from the main purpose of learning how to actually use numbers and variables in their program. Most people don't see distinctions between different numbers, even if, at a lower level, they can be seen as different types.

hooktail154
Posts: 13
Joined: Wed Jan 27, 2010 7:21 pm UTC

Re: What programing language is best for complete beginners?

Postby hooktail154 » Sun Jan 31, 2010 7:31 pm UTC

I may incur some hate here, but if it weren't for applescript, I wouldn't be doing any coding whatsoever

The simple, non-real-programming-languages and scripting languages can be an excellent jumping off point for beginners


Return to “Coding”

Who is online

Users browsing this forum: No registered users and 9 guests