Click to See Complete Forum and Search --> : stupid question


inktoast
12-05-2000, 07:32 PM
*gets ready for the flames* here it goes *puts on his sungglasses* what programing language should i learn? I'm a total newbie at programing and linux, and i'v been researching what language i should learn for quite some time now. some people say perl, others pything, C++ and all of those? whats the diffirence between all of them? are they used for diffirent things? i would like to be able to maby write a new kernel some day for linux or maby just make something interseting. Any suggestions are awesome!

YaRness
12-05-2000, 07:57 PM
i'd try searching the forum, prolly quicker than waiting for yet another flame war http://www.linuxnewbie.org/ubb/biggrin.gif

i'd recommend perl btw, it seems to be a good midway between usefullness and ease-of-use.

------------------
"Assembly of Japanese bicycle require great peace of mind."
Registered Linux User #188285 http://counter.li.org/
------------------

Shad
12-05-2000, 08:03 PM
IANAC (I am not a Coder)

All the languages have thier uses, otherwise they wouldn't be used. As for a suggestion on what to learn first, do you know anyone that know a programing language? Learn what they know. Otherwise pick one that will have the most immediate benefit to you.

------------------
Just a Tuna in the Sea of Life

Strike
12-05-2000, 09:37 PM
Yes, what most non-programmers don't realize (and even some programmers don't get) is that with most different languages there are very different programming paradigms. A lot of people think programming is just slopping together commands to do things in a certain order. But that's selling it way short. Each methodology of programming has its own strengths and weakness and its own applications that it excels at. That being said, here's a quick run down of what I know/have coded:

C - fast, can do anything, doesn't always lend itself to pretty code
C++ - modular, really only well-suited for larger projects (or projects that will become larger), produces somewhat prettier code
Java - a lot like C++, but has the added bonus/crutch (depends upon how you look at it) of not complying with C code whereas C++ does
Perl - the slogan says a lot about it (TIMTOWTDI, there is more than one way to do it), its syntax lends itself to being similar to spoken language, quite extensible and not too difficult to pick up

kmj
12-05-2000, 11:05 PM
let's not forget python: A fully featured object oriented language designed for the purpose of teaching people to program. I'll let jemfinch sell it when he sees this topic, since he has more experience with it...

Also, I'll mention that java's main selling points (I think, dru can verify or correct this) are that it is cross-platform, and it is much easier to write cleaner, bug free(relatively, anyway) code, thanks to garbage collection and its extensive built-in library. I'd say that its bonus/crutch is its verbosity.

Iceman
12-06-2000, 07:37 PM
Hi:

PASCAL. While only used in academia, it will teach you key concepts that are essential in any language you learn later. It will also force you to write clean code.

My partner often complains that recent Csci grads have sloppy coding skills as they never did PASCAL. He is correct, IMHO. Unfortunately, most Csci depts have dropped PASCAL from the curriculum in favour of whatever is "sexy" and in demand at the moment. We've a startup we're launching in a few months. Those without a good background in PASCAL will never be more than temps with us. Not trying to start a flame war here, but I'd guess if you asked someone like Ken Thompson he'd agree.

PASCAL will give you a foundation to build on, just as the study of Latin does for language.

That's my two pence, FWIW

inktoast
12-07-2000, 03:49 AM
so how does this sound for a newbie programmer, PASCAL and Python? or should i trade one of these for another one

pdc
12-07-2000, 04:50 AM
Ink,
If you a find a freebie linux version of REXX, that is a good first language. Very forgiving, interpreted, nice structure, does not care about line end things or require funny delimiters i.e. statement ending chars are implied and do/end are equiv to (). A "trace ?all" and the beginning of the program puts you into an interactive trace that allows step by step execution and you can change an already defined variable just to see what will happen.

.ex

x=10
do i=0 to 10
x=i+x
say x
end
prints
10
11
12
13
etc
or

string="I am the eggman"

do i = 1 to words(string)

say word(string,i)
end

prints
I
am
the
eggman

and

say right("dirt",20)
prints dirt padded to 20 chars to the right
and left(x,num) does the opposite.

strip() removes trailing, leading or trailing and leading blank characters

and there is an object oriented version and you can add the network version for socket calls

and you will never need to code a regular expression.....ever.

Paul

jemfinch
12-07-2000, 04:58 AM
I think python is the best first language (and lastl language http://www.linuxnewbie.org/ubb/smile.gif) that I've looked at. I love it more than perl or C, and I know both.

Jeremy

optech
12-07-2000, 07:53 AM
Originally posted by Shad:
IANAC (I am not a Coder)

do you know anyone that know a programing language? Learn what they know.


you've never taught programming have you? i had to teach a high school class (while i was in it) for grade nines how to code in TURING... a crappy little windows languag with no structure that was probably written in BASIC itself... it had 0 structure and was stupid... (i still have a copy of it too on my windows box, and actually sometimes use it just to make a stupid game... it's kinda fun when you don't have to worry about libraries and memory managemetn adn ****... just pure pixel graphics and mouse co-ods!



------------------
"...seldom give ungaurded advice, for advice is a dangerous gift, even from the wise to the wise, and all courses may run ill." J.R.R. Tolkien