LinuxQuestions.org
Latest LQ Deal: Latest LQ Deals
Home Forums Tutorials Articles Register
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 09-22-2010, 10:30 PM   #1
Ubunoob001
Member
 
Registered: Feb 2010
Location: New Orleans, LA
Distribution: Mint 16 RC, Elementary OS Luna, Crunchbang
Posts: 166

Rep: Reputation: 17
Smile first language: instructive (good learning tool) yet practical for linux ?


Okay so ive seen similar posts however given a specific question I figured I would ask. Feel free to ignore the specifics and forward me onto other posts of this sort where I can do research if you feel like answering would be a waste of time.


Question: I am new (6 months) to Linux and computing in general. Currently I am running Ubuntu 10.04 32bit, and have really enjoyed using command-line based programs (although menu driven) such as alpine etc. I would like to learn a computer language, my first one ever, to satisfy two conditions:

1. Generalization. One that, having learned it, would make it eas(y)ier to transition to other languages. Perhaps fundamental and instructive is what I mean. Even if if is "harder" to learn.

2. Something that can be used to write, simple, but practical programs (cli-based etc) for Linux as I get more comfortable.

Basically something that strikes a balance between usability (as a noob) and teach-ability.


I understand that some might say: "pick one and go with it". But just so I get a bit of feedback, please recommend one that you think adheres best to those two conditions.

Thanks in advance!!!
 
Click here to see the post LQ members have rated as the most helpful post in this thread.
Old 09-22-2010, 11:12 PM   #2
rkski
Member
 
Registered: Jan 2009
Location: Canada
Distribution: CentOS 6.3, Fedora 17
Posts: 247

Rep: Reputation: 51
One letter answer: C
 
2 members found this post helpful.
Old 09-23-2010, 02:53 AM   #3
Sergei Steshenko
Senior Member
 
Registered: May 2005
Posts: 4,481

Rep: Reputation: 454Reputation: 454Reputation: 454Reputation: 454Reputation: 454
"C" + Perl, i.e. two languages.
 
1 members found this post helpful.
Old 09-23-2010, 12:56 PM   #4
theNbomr
LQ 5k Club
 
Registered: Aug 2005
Distribution: OpenSuse, Fedora, Redhat, Debian
Posts: 5,399
Blog Entries: 2

Rep: Reputation: 908Reputation: 908Reputation: 908Reputation: 908Reputation: 908Reputation: 908Reputation: 908Reputation: 908
Since Perl, by design, borrows from, leverages, and inherits many of the standard constructs and notations found in other Linux applications, it would seem to strongly satisfy your requirement of transitioning to other languages. In addition, it can be used in a purely procedural way, but also can be used to write object oriented applications, again building toward transition to certain other languages. The 'P' in the word Perl stands for 'practical', so there is not much left to say about the practicality issue.
Perl may not be the currently sexy language of the day, but it still has many virtues, and it would be hard to argue its usefulness, especially if you aren't focusing on GUI-based applications (and you can build GUIs with Perl, too).

--- rod.
 
2 members found this post helpful.
Old 09-24-2010, 05:49 PM   #5
Ubunoob001
Member
 
Registered: Feb 2010
Location: New Orleans, LA
Distribution: Mint 16 RC, Elementary OS Luna, Crunchbang
Posts: 166

Original Poster
Rep: Reputation: 17
Thumbs up

Quote:
Originally Posted by Sergei Steshenko View Post
"C" + Perl, i.e. two languages.


Sergei, thanks! Do you find that the combination (additive) of these two languages accompishes together, what no other language does on its own (or that any other two languages together don't)?

Thanks again.
 
Old 09-24-2010, 06:20 PM   #6
Sergei Steshenko
Senior Member
 
Registered: May 2005
Posts: 4,481

Rep: Reputation: 454Reputation: 454Reputation: 454Reputation: 454Reputation: 454
Quote:
Originally Posted by Ubunoob001 View Post
Sergei, thanks! Do you find that the combination (additive) of these two languages accompishes together, what no other language does on its own (or that any other two languages together don't)?

Thanks again.
This is what I mostly am using. For example, Perl for automation, scripting, GUI, and "C" for real time/DSP stuff.

Also, Perl as preprocessor for languages like "C" - http://www.linuxquestions.org/questi...e-like-674387/ . Perl is a much more powerful language than, say, standard "C" preprocessor, and than C++ template engine.
 
Old 09-25-2010, 05:27 AM   #7
H_TeXMeX_H
LQ Guru
 
Registered: Oct 2005
Location: $RANDOM
Distribution: slackware64
Posts: 12,928
Blog Entries: 2

Rep: Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301
It is hard to satisfy the above conditions, but Sergei is right, C would do it. It's just not that great for a first language ... it won't be easy. However, it does satisfy the rest of the conditions.

P.S.
I would have recommended python, because it's easier for a first language ... but then transitioning will not be as easy. I mean a large number of languages borrow C syntax and sometimes even C functions. C is also more efficient and versatile. Python is useful too tho, just because you can do things in a different way, a way that is often easier and more intuitive than the C way.

Last edited by H_TeXMeX_H; 09-25-2010 at 05:30 AM.
 
Old 09-25-2010, 06:07 AM   #8
ghostdog74
Senior Member
 
Registered: Aug 2006
Posts: 2,697
Blog Entries: 5

Rep: Reputation: 244Reputation: 244Reputation: 244
Quote:
Originally Posted by Ubunoob001 View Post
1. Generalization. One that, having learned it, would make it eas(y)ier to transition to other languages. Perhaps fundamental and instructive is what I mean. Even if if is "harder" to learn.
C, just for the "transitional" criteria.

Quote:
2. Something that can be used to write, simple, but practical programs (cli-based etc) for Linux as I get more comfortable.
Python. Its easy to read syntax is most suitable for a beginner/first language.

Quote:
Basically something that strikes a balance between usability (as a noob) and teach-ability. [/B]
Python.

Last edited by ghostdog74; 09-25-2010 at 06:12 AM.
 
Old 09-25-2010, 06:11 AM   #9
Sergei Steshenko
Senior Member
 
Registered: May 2005
Posts: 4,481

Rep: Reputation: 454Reputation: 454Reputation: 454Reputation: 454Reputation: 454
Quote:
Originally Posted by ghostdog74 View Post
C, just for the "transitional" criteria.


Python. Its easy to read syntax is most suitable for a beginner/first language.


Python.
For me absence of lexical scoping in Python (unlike in "C", Perl, Pascal, OCaml) is a killer/deal breaker.
 
Old 09-25-2010, 06:24 AM   #10
ghostdog74
Senior Member
 
Registered: Aug 2006
Posts: 2,697
Blog Entries: 5

Rep: Reputation: 244Reputation: 244Reputation: 244
Quote:
Originally Posted by Sergei Steshenko View Post
For me absence of lexical scoping in Python (unlike in "C", Perl, Pascal, OCaml) is a killer/deal breaker.
Seriously, what you like or dislike is not my/our problem. We are discussing about a suitable first language here for OP to use. Let's just stick to that.
 
0 members found this post helpful.
Old 09-25-2010, 06:27 AM   #11
Sergei Steshenko
Senior Member
 
Registered: May 2005
Posts: 4,481

Rep: Reputation: 454Reputation: 454Reputation: 454Reputation: 454Reputation: 454
Quote:
Originally Posted by ghostdog74 View Post
Seriously, what you like or dislike is not my/our problem. We are discussing about a suitable first language here for OP to use. Let's just stick to that.
Seriously, learning as a first language a degenerated one causes a problem of relearning later, which is much more painful.
 
0 members found this post helpful.
Old 09-25-2010, 06:44 AM   #12
ghostdog74
Senior Member
 
Registered: Aug 2006
Posts: 2,697
Blog Entries: 5

Rep: Reputation: 244Reputation: 244Reputation: 244
Quote:
Originally Posted by Sergei Steshenko View Post
Seriously, learning as a first language a degenerated one causes a problem of relearning later, which is much more painful.
Let me confirm with you which "degenerated one" you are talking about before i report you. So tell us, which "degenerated" language are you talking about?
 
Old 09-25-2010, 06:49 AM   #13
Sergei Steshenko
Senior Member
 
Registered: May 2005
Posts: 4,481

Rep: Reputation: 454Reputation: 454Reputation: 454Reputation: 454Reputation: 454
Quote:
Originally Posted by ghostdog74 View Post
Let me confirm with you which "degenerated one" you are talking about before i report you. So tell us, which "degenerated" language are you talking about?
First report me, and then we'll talk.
 
Old 09-25-2010, 06:57 AM   #14
ghostdog74
Senior Member
 
Registered: Aug 2006
Posts: 2,697
Blog Entries: 5

Rep: Reputation: 244Reputation: 244Reputation: 244
Quote:
Originally Posted by Sergei Steshenko View Post
First report me, and then we'll talk.
No, since you have already mentioned a "degenerated" language. I would like to hear which one first. If you don't dare to say which ones and provide evidence they are "of no use", then why bother making those false claims?
 
Old 09-25-2010, 07:14 AM   #15
Sergei Steshenko
Senior Member
 
Registered: May 2005
Posts: 4,481

Rep: Reputation: 454Reputation: 454Reputation: 454Reputation: 454Reputation: 454
Quote:
Originally Posted by ghostdog74 View Post
No, since you have already mentioned a "degenerated" language. I would like to hear which one first. If you don't dare to say which ones and provide evidence they are "of no use", then why bother making those false claims?
The claims are not false by definition - according to my criteria the language I mean is degenerated, though slowly and painfully it's catching up.
 
  


Reply



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
Good linux chinese language language program? darsunt Linux - Software 1 04-10-2009 12:06 PM
Umbrella - Cae tool practical problems shanthakumarks Linux - Software 0 05-18-2008 02:18 AM
I need a good learning book on Linux royeo Linux - Newbie 8 08-06-2006 08:32 PM
what is a good distro for learning linux? mqazi Linux - Newbie 18 08-12-2005 07:44 AM
learning a foreign language using linux fisher99 Slackware 2 05-20-2003 10:27 PM

LinuxQuestions.org > Forums > Non-*NIX Forums > Programming

All times are GMT -5. The time now is 06:50 PM.

Main Menu
Advertisement
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
Open Source Consulting | Domain Registration