LinuxQuestions.org
View the Most Wanted LQ Wiki articles.
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > Programming
User Name
Password
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.

Notices

Reply
 
Search this Thread
Old 11-06-2011, 06:10 AM   #1
asipper
Member
 
Registered: Oct 2011
Distribution: Fedora 17
Posts: 138

Rep: Reputation: 0
Good first programming language to learn.


What's a good first programming to learn? Is C good? I'm thinking it's a good first language because it's powerful and the syntax is like C++ and I think java? Also what are good books to learn it. Also I only have Linux/Mac machines so I can't learn Visual Basic.

EDIT:I really just want to have a fun easy language that is useful. Also I heard python is a bad first language because the syntax is a lot different than other languages so it makes it hard to switch.

Last edited by asipper; 11-07-2011 at 05:18 AM. Reason: To get better answers.
 
Old 11-06-2011, 06:18 AM   #2
sycamorex
LQ Veteran
 
Registered: Nov 2005
Location: London
Distribution: Slackware64-current
Posts: 5,561
Blog Entries: 1

Rep: Reputation: 1023Reputation: 1023Reputation: 1023Reputation: 1023Reputation: 1023Reputation: 1023Reputation: 1023Reputation: 1023
It all depends what you want to do with a programming language, but obviously C is a very good language.
As far as I know, this is one of the best books on C.
 
Old 11-06-2011, 06:48 AM   #3
SigTerm
Member
 
Registered: Dec 2009
Distribution: Slackware 12.2
Posts: 379

Rep: Reputation: 233Reputation: 233Reputation: 233
Quote:
Originally Posted by asipper View Post
What's a good first programming to learn?
Any language.
 
Old 11-06-2011, 07:07 AM   #4
hen770
Member
 
Registered: Oct 2010
Distribution: Arch
Posts: 136

Rep: Reputation: 7
I have made a research about it lately, tye best answer i have found (all.around the net), is to start with python.
I am don't recommend to you start with C since it is very detailed language with a lot of power, but as you start learning a programming language you have to get a reflects from.the programs you write, and this reflect is your motivation so with C it is very hard to get these kind of reflaces since it take a lot of time to learn and debug untill you can run something.
(that is my pilosofy about why to start with Python).
So start with Python first.
 
Old 11-06-2011, 11:29 AM   #5
cheesus
Member
 
Registered: Jan 2005
Location: Munich, Germany
Distribution: SuSE
Posts: 183

Rep: Reputation: 25
Usually the "Teach yourself ... in 21 days" books are quite good.

And the best programming language to learn is the one that some people you know also know or are learning right now :-)
 
Old 11-06-2011, 11:45 AM   #6
Cedrik
Senior Member
 
Registered: Jul 2004
Distribution: Slackware
Posts: 2,140

Rep: Reputation: 242Reputation: 242Reputation: 242
Quote:
Originally Posted by sycamorex View Post
It all depends what you want to do with a programming language
+1, if you're programming web apps and your hosting provider only support PHP and Perl, learn another language would be pointeless somewhat, if you're programming software with QT graphic interface library, better learn C++ etc...
 
Old 11-06-2011, 12:00 PM   #7
Nylex
LQ Addict
 
Registered: Jul 2003
Location: London, UK
Distribution: Slackware
Posts: 7,464

Rep: Reputation: Disabled
The OP may not know what kinds of programs they want to write yet and may want to learn programming because it's a useful skill. In that case, Python's probably a good choice since it's easy to learn and not as complicated as, e.g. C++. There's a free book for Python available (legally, I might add!) here. I think it assumes no programming knowledge whatsoever, so it might be good (I found it a bit too basic, but I'd done programming before).
 
Old 11-06-2011, 12:30 PM   #8
SigTerm
Member
 
Registered: Dec 2009
Distribution: Slackware 12.2
Posts: 379

Rep: Reputation: 233Reputation: 233Reputation: 233
Quote:
Originally Posted by Nylex View Post
The OP may not know what kinds of programs they want to write yet and may want to learn programming because it's a useful skill. In that case,...
...in this case, it will be a better idea to wait and postpone learning programming till he figures out what kind of programs he wants to write. If OPs doesn't know what he wants to write, he doesn't have necessary motivation to learn programming - to learn programming, you must NEED to learn programming, "want" is not enough.

Anyway, for a first language, assembler might be a good choice - it will give basic understanding of how computer works. If not assembler, then C. In the long run it doesn't matter that much anyway.
 
Old 11-06-2011, 12:33 PM   #9
cheesus
Member
 
Registered: Jan 2005
Location: Munich, Germany
Distribution: SuSE
Posts: 183

Rep: Reputation: 25
I still have the floppy disks of my first selfmade C64 programs somewhere, when I was still in school.
I certainly didn't "need to" learn it.

I see this completely opposite, unless you meant to say something like "you need to DO programming" (practice on a concrete issue)
 
Old 11-06-2011, 12:38 PM   #10
Nylex
LQ Addict
 
Registered: Jul 2003
Location: London, UK
Distribution: Slackware
Posts: 7,464

Rep: Reputation: Disabled
Quote:
Originally Posted by SigTerm View Post
to learn programming, you must NEED to learn programming, "want" is not enough.
Each to their own, I suppose. I learnt because I wanted to.
 
Old 11-06-2011, 12:53 PM   #11
SigTerm
Member
 
Registered: Dec 2009
Distribution: Slackware 12.2
Posts: 379

Rep: Reputation: 233Reputation: 233Reputation: 233
Quote:
Originally Posted by Nylex View Post
Each to their own, I suppose. I learnt because I wanted to.
My point was, that to learn ANY kind of skill well, you need some kind of strong driving force. You could have a strong desire to learn the skill, or you could have problem you HAVE to solve, or you could be having a lot of fun while learning, or you could really hate somebody and channel emotion into study. It doesn't matter what it is, but if you don't have the driving force, you're very unlikely to ever advance beyond toy problems. In my opinion, people that ask "what is the best language" already do not have enough motivation. Another thing is that choice of first language isn't that important - there are common principles/patterns that apply to nearly all languages at once. If you learn one language, you'll have easier time learning another.
 
Old 11-06-2011, 01:12 PM   #12
hen770
Member
 
Registered: Oct 2010
Distribution: Arch
Posts: 136

Rep: Reputation: 7
hey you guys,

don't you ever heard that you shouldn't start with the hard level but with the easiest?
any body that is learning a computer language, it is like to learn a spoken language but much harder, because you can't make any falls with the syntax, and there isn't always somebody to correct you if you spell something wrong, i am suggesting to you to start with Python because it has the both of the worlds, easy to learn & powerful language, that the results from whatever you would build with it will give you the desire to keep learn and advanced.

@SigTerm: you are right that you need motivation to learn a programming language, and especially how to program correctly, but if somebody ask that question on a forum, and looking for answer i assume that he has some motivation to do so, i think that most of the self thought people who learn programming, start to do it from curiosity and some spare time, they didn't hate or anything extraordinary.
 
0 members found this post helpful.
Old 11-06-2011, 01:12 PM   #13
suicidaleggroll
Senior Member
 
Registered: Nov 2010
Location: Colorado
Distribution: OpenSUSE, CentOS
Posts: 2,725

Rep: Reputation: 975Reputation: 975Reputation: 975Reputation: 975Reputation: 975Reputation: 975Reputation: 975Reputation: 975
My first was the rudimentary form of Basic that runs on TI's graphing calculators. I spent about half of my classes in high school programming games on my calculator so could make it through the other half of my classes without killing myself.

I don't thnk it really matters where you start. Most languages are very much the same (ignoring Assembly, VHDL/Verilog, and a few others)

Last edited by suicidaleggroll; 11-06-2011 at 01:13 PM.
 
Old 11-06-2011, 01:27 PM   #14
cheesus
Member
 
Registered: Jan 2005
Location: Munich, Germany
Distribution: SuSE
Posts: 183

Rep: Reputation: 25
Well, at one point in time I was tasked to teach something to our apprentices, and I did PHP with them.
I'ts easy to use, teaches basic HTTP and internet stuff, and is actually useable for some tasks.
 
Old 11-06-2011, 01:44 PM   #15
SigTerm
Member
 
Registered: Dec 2009
Distribution: Slackware 12.2
Posts: 379

Rep: Reputation: 233Reputation: 233Reputation: 233
Quote:
Originally Posted by hen770 View Post
hey you guys,

don't you ever heard that you shouldn't start with the hard level but with the easiest?
I would not recommend python for the first language. C, ASM, Pascal, Perl, PHP, shell scripts, but not Python. The beauty of languages like C/ASM (that you think are "hard") is that you have limited number of instruments on your hand and can do almost anything with them, which, in my opinion, makes them a good starting point.

Anyway, it doesn't matter. You should start with ANYTHING and switch languages as you go.

Last edited by SigTerm; 11-06-2011 at 01:48 PM.
 
  


Reply

Tags
easypeasy, program


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
What is the best programming language to learn jax8 Programming 25 04-04-2010 10:21 AM
What are some good resources to learn assembly Language? theunixwizard General 16 07-24-2008 03:27 AM
Which Programming Language to Learn? BlahBlah_X Programming 6 06-19-2007 08:12 AM
Is Python a good language to learn for a newbie to programming? prophet621 Programming 2 05-19-2003 03:48 PM


All times are GMT -5. The time now is 09:53 PM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration