My Math Forum  

Go Back   My Math Forum > Science Forums > Computer Science

Computer Science Computer Science Forum


Reply
 
LinkBack Thread Tools Display Modes
November 12th, 2013, 07:08 PM   #1
Senior Member
 
shunya's Avatar
 
Joined: Oct 2013
From: Far far away

Posts: 422
Thanks: 18

Beginner's dilemma

I want to learn programming

Which language should I choose and where can I get it?

Thanks
shunya is offline  
 
November 13th, 2013, 12:08 PM   #2
Senior Member
 
Joined: Mar 2012
From: Belgium

Posts: 653
Thanks: 11

Re: Beginner's dilemma

I believe php is a nice one to start with. But it's annoying to use if you don't have your own domain or anything like that.
Many people also learn java because you can do very much with it and it is not really hard. I don't really know where to find tutorials and stuff about it but you can google it.
I think perl is also a nice and easy one to learn. it's just not as commonly used as some others.

Python is a very frequently used programming language which is also quite easy. You can do a lot without having much knowledge because of many 'predefined functions'.
though it is not the best language to start with.
My personal favorite is C++. it's a bit harder than the previous ones but not much to worry about.

In my opinion if you learn java or C++ then you are capable of learning the basics of any other language quickly enough.

Except assembly then but that's a whole different story so I'd suggest not to start with this
gelatine1 is offline  
November 14th, 2013, 06:03 PM   #3
Global Moderator
 
CRGreathouse's Avatar
 
Joined: Nov 2006
From: UTC -5

Posts: 16,046
Thanks: 937

Math Focus: Number theory, computational mathematics, combinatorics, FOM, symbolic logic, TCS, algorithms
Re: Beginner's dilemma

Please not PHP. That deserves to be put to a long, dreamless rest. It was a passable solution for the webpages of yesteryear, but now it's a bloated behemoth not good enough at anything to be recommendable. If the language dies out now, we can remember it fondly as a language of simpler times, rather than curse it as unmaintainable an inconsistent.

Python is good. Ruby is good. Perl... it's a great tool, though it shares some of the maintainability issues with PHP, so I only recommend it for small projects. (Personally I prefer it to Python and Ruby but this may be an artifact of familiarity.)

C# and Java are verbose and a bit clunky, but very popular. They're juggernauts but losing steam quickly (well, actually C# gained year-over-year in TIOBE, but the two together fell). I find Java bloated and ugly and C# to be a more polished clone of that bloated ugly language.

C is hugely popular: for two years running it's been the top of TIOBE despite its venerable age. C++ is a close relative, better in many ways and worse in others. Objective-C is technically an extension of C but it doesn't seem all that similar. It's an incredibly ugly syntax hack on top of C that (I suspect) hides elegant ideas. Of course just like C# ties you to Microsoft, Objective-C ties you to Apple.

JavaScript should not be omitted from this discussion as the common language of the Web. It's everything to everyone and so does nothing in particular well, but lots of smart people have put in tons of work to smooth out the language and improve performance to work around its shortcomings. CoffeeScript and related language largely remove the warts.

Go is cutting-edge: great language, fast growing community. We'll see if the direction they head is a good one, but this is a great language for the confident. (Don't make it your only language, though!)

If that's not enough for you the bleeding edge Dart (a better JavaScript, supported by nobody) and Clojure (beauty and multicore simplicity meet the performance of Lisp running in Java*).

* In case I'm misunderstood, the latter is not a complement. The transition that happened with JavaScript has yet to hit Clojure. Still, it may one day, so don't discount it -- or, on the other hand, make your paycheck depend on it.
CRGreathouse is offline  
November 27th, 2013, 10:54 AM   #4
Senior Member
 
Joined: Aug 2012

Posts: 1,620
Thanks: 411

Re: Beginner's dilemma

Start with C. Get "The C Programming Language" by K&R and work through it one page at a time, understanding every example and doing every exercise.

After that, all other languages are easy and you'll understand what a pointer is.

This is not the easiest path short-term, but it's the best path long-term.

My two cents.
Maschke is offline  
Reply

  My Math Forum > Science Forums > Computer Science

Tags
beginner, dilemma



Thread Tools
Display Modes


Similar Threads
Thread Thread Starter Forum Replies Last Post
Cone dilemma Melody2 Algebra 2 October 23rd, 2013 05:09 PM
Diagonal Dilemma mathmaniac Algebra 20 March 17th, 2013 05:55 PM
The Prison Dilemma: Can you solve it? Bon Qui Qui Math Events 1 June 26th, 2010 12:48 AM
Need Help: A 0/0 Dilemma ipoloton Real Analysis 6 September 16th, 2009 12:45 PM
Diagonal Dilemma mathmaniac Number Theory 2 December 31st, 1969 04:00 PM





Copyright © 2017 My Math Forum. All rights reserved.