LinuxQuestions.org
Share your knowledge at the LQ Wiki.
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
 
LinkBack Search this Thread
Old 01-06-2005, 11:35 AM   #1
trey85stang
Senior Member
 
Registered: Sep 2003
Posts: 1,090

Rep: Reputation: 41
i want to learn to program...


I've tried learning this before and I usually fail. I am a reading learner, I like to read to learn how to do things.

However, with reading programming booksp; it does not work for me... I generally lose interest because of the steep learning curve that learning a programming language has in the beginning.

Now.. I consider myself a simple but bright person.. so I know i could learn how to do it.. I just dont know the appropriate direction to take..

So this post is geared for the intermediate/novice programmers who can throw together some working code and have a program afterwards....

What programming language should I start with and what resources should I utilize to go about learning this on my own?? (i would perfer to program in linux obviously.) And remember I am a complete newbie, I do not have any starting foundation to apply to learning a language.

Thanks,
Trey


EDIT: One more questions geared for the more advanced programmers... When you began coding how much time each day did you spend studying to learn a language?
 
Old 01-06-2005, 12:15 PM   #2
PBSchmidt
Member
 
Registered: Aug 2004
Location: Aachen, Germany
Distribution: Debian Sarge
Posts: 129

Rep: Reputation: 15
Learn by doing

trey85stang,

just don't dispair - Learning offline from books alone never worked for me. You need your box by your side, try each example from "Hello World!" To "SAP" yourself and play around with it - if you don't have fun, you won't learn.

For I am an old f*rt, it has been a long time since I wrote my first lines of code. The first boxes I was on had no Hard disk, no Floppy disks, no tapes (because they were awfully expensive!), so switching on any VC20 (those were the days), I had to type the program to fiddle with myself. From "Guess the Number" to "Meteor Storm" - actually, I kept a folder where I wrote down the hundereds of lines to type. Took several days and nights at neighbor's computers, I can tell you.

BUT: Programming is not coding. If you do not have a clear idea _what_ to code, you will never be able to code it. Sounds simple? Well, I started learning to program "professionaly" using only a pencil and paper. The coding of the concepts I developed was always the final topping, but the Programs control flow was done before one line of code was written.

So, now, how to start? Get yourself a good tutorial, try it ourself, and when you have learned the semantics, you should proceed to learn how to analyze a real world problem and how to get a control flow from this to put on a computer. Anything in your hobby you need a program for, but did not find it? Go and type it yourself!

If you want fun at once, try php as first language (BASIC is sorta out of fashion), but you should soon switch to something like Java or C++ to get the knack.

My EUR 0.02

HTH,

Peter
 
Old 01-06-2005, 12:33 PM   #3
vxc69
Member
 
Registered: Jul 2004
Distribution: Ubuntu
Posts: 385

Rep: Reputation: 33
Re: Learn by doing

Quote:
So, now, how to start? Get yourself a good tutorial, try it ourself, and when you have learned the semantics, you should proceed to learn how to analyze a real world problem and how to get a control flow from this to put on a computer.
Here's a nice tutorial I'm going through right now. It'll teach you python as well as the basics of programing.

vxc

Last edited by vxc69; 01-06-2005 at 12:34 PM.
 
Old 01-06-2005, 12:35 PM   #4
itsme86
Senior Member
 
Registered: Jan 2004
Location: Oregon, USA
Distribution: Slackware
Posts: 1,246

Rep: Reputation: 56
There are many different languages, and each has its strenghts and weaknesses. In order to suggest a programming language to learn, it's helpful to know what kind of programs you'd ultimately like to work on/create.
 
Old 01-06-2005, 12:43 PM   #5
csfalcon
Member
 
Registered: Jun 2004
Location: MD
Distribution: Fedora Core
Posts: 269

Rep: Reputation: 31
Reading is essential, but learning how to program takes a lot of practice. It is very hard to find what to program though, I recommend checking out http://www.topcodercom/tc, topcoder holds weekly coding competitions where they provide different coding problems. It should keep your interest going if you are competitive :-)
eventually try to start some projects of your own when you get some ideas, those are the most interesting things you can do while practicing coding.
 
Old 01-06-2005, 12:49 PM   #6
trey85stang
Senior Member
 
Registered: Sep 2003
Posts: 1,090

Original Poster
Rep: Reputation: 41
Quote:
Originally posted by vxc69
Here's a nice tutorial I'm going through right now. It'll teach you python as well as the basics of programing.

vxc
thanks for the link and suggestion

Quote:
Originally posted by itsme86
There are many different languages, and each has its strenghts and weaknesses. In order to suggest a programming language to learn, it's helpful to know what kind of programs you'd ultimately like to work on/create.

well, I'd eventually like to do it for a living.. I do not know what i want to program or code or what kind of apps I would want to create Id like something to get me started though
 
Old 01-06-2005, 12:50 PM   #7
trey85stang
Senior Member
 
Registered: Sep 2003
Posts: 1,090

Original Poster
Rep: Reputation: 41
Re: Learn by doing

Quote:
Originally posted by PBSchmidt
trey85stang,

just don't dispair - Learning offline from books alone never worked for me. You need your box by your side, try each example from "Hello World!" To "SAP" yourself and play around with it - if you don't have fun, you won't learn.

For I am an old f*rt, it has been a long time since I wrote my first lines of code. The first boxes I was on had no Hard disk, no Floppy disks, no tapes (because they were awfully expensive!), so switching on any VC20 (those were the days), I had to type the program to fiddle with myself. From "Guess the Number" to "Meteor Storm" - actually, I kept a folder where I wrote down the hundereds of lines to type. Took several days and nights at neighbor's computers, I can tell you.

BUT: Programming is not coding. If you do not have a clear idea _what_ to code, you will never be able to code it. Sounds simple? Well, I started learning to program "professionaly" using only a pencil and paper. The coding of the concepts I developed was always the final topping, but the Programs control flow was done before one line of code was written.

So, now, how to start? Get yourself a good tutorial, try it ourself, and when you have learned the semantics, you should proceed to learn how to analyze a real world problem and how to get a control flow from this to put on a computer. Anything in your hobby you need a program for, but did not find it? Go and type it yourself!

If you want fun at once, try php as first language (BASIC is sorta out of fashion), but you should soon switch to something like Java or C++ to get the knack.

My EUR 0.02

HTH,

Peter

Thanks for the info, good reading? how long have you been coding/programming?
 
Old 01-06-2005, 01:31 PM   #8
PBSchmidt
Member
 
Registered: Aug 2004
Location: Aachen, Germany
Distribution: Debian Sarge
Posts: 129

Rep: Reputation: 15
You are always welcome

Well, Good reading is a point... It depends on what you are planning to do, which language, whoich targeted type of application. If you are in for C++, get the Book by Bjarne Stroustrup "The C++ Programming Language". And, Database knowledge you will always need - the MySQL Manual is pretty well, if you are not all from the scratch, so keep that in mind for later.

I am in programming since 1978 (I guess), and I learned BASIC, ALGOL, FORTRAN, PL/I, Assembler, Pascal, C, C++, REXX, SQL, some Web stuff (HTML/PHP/JavaScript) as needed - anyway, a new programming language not as hard to learn as a new natural language, you will always find many similarities, and nothing in a "new" language is _really_ new.

Good luck & Happy learning,


Peter
 
Old 01-06-2005, 02:04 PM   #9
titanium_geek
Senior Member
 
Registered: May 2002
Location: Melbourne Australia
Distribution: it died/ macosx
Posts: 2,478

Rep: Reputation: 50
The first one is the hardest. So... when I started I messed around with Basic and HTML and then moved on to JAVA! a real language at last. I learnt about compilers blah blah.. you always say hmmm that's like HTML and that's like Basic and thats completly funky, what is that? so yeah... after you knock down the first one you can more easily learn the "real one"

good luck!! remember that almost any programming question can be asked here.

titanium_geek
 
Old 01-06-2005, 10:11 PM   #10
tamoneya
Member
 
Registered: Jan 2005
Location: MA
Distribution: Ubuntu 7.10
Posts: 558

Rep: Reputation: 30
i agree

I agree start with an easy language.
I also started with HTML. when i started learning how to program i always had trouble getting my compilers installed. for HTML all you have to do is use a text editor and save with the .html extension and then view with a web browser.
For a good resource use the google directory Computers/Programming/Languages this has a really big list. try the ones with more topics first.
 
Old 01-06-2005, 10:18 PM   #11
tamoneya
Member
 
Registered: Jan 2005
Location: MA
Distribution: Ubuntu 7.10
Posts: 558

Rep: Reputation: 30
wait

I almost forgot. if you do not want to create webpages a very easy language is Dr. Scheme, a variant of LISP. It is step orientted unlike java and c++ and is easy to install. Dr.Scheme
 
Old 01-07-2005, 09:10 AM   #12
titanium_geek
Senior Member
 
Registered: May 2002
Location: Melbourne Australia
Distribution: it died/ macosx
Posts: 2,478

Rep: Reputation: 50
however object oriented is the way of the future. Step languages have thier place, but make sure you figure C C++ or Java into your learning somewhere, if you want to get serious about programming.

titanium_geek
 
Old 01-07-2005, 01:08 PM   #13
Genesee
Member
 
Registered: Dec 2002
Distribution: Slackware
Posts: 927

Rep: Reputation: 30
in addtion to the recommendations above, python might be a good choice - it has relatively easy syntax/structure rules, but its also very powerful.

here is a good online/print book I came across that you may find helpful: "Dive Into Python" by Mark Pilgrim

http://diveintopython.org/

good luck

Last edited by Genesee; 01-07-2005 at 01:11 PM.
 
Old 01-07-2005, 01:22 PM   #14
trey85stang
Senior Member
 
Registered: Sep 2003
Posts: 1,090

Original Poster
Rep: Reputation: 41
I started the first python tutorial listed. its free and it seems to be a decent tutorial.

I did decide that I would like (if i get good at this) to do some opengl programs in the future.

any ideas how to get started corrently with opengl?
 
  


Reply


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
Trackbacks are Off
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Learn English with a C program cigarstub Programming 1 09-20-2005 11:53 AM
What book(s) should I read to learn how to write a program for the visually impaired? Dreamcast Linux - Newbie 7 08-23-2004 01:32 AM
What useful [to a pleb] program would be a good starter to download and learn to comp Frybyte Linux - Software 5 05-18-2004 07:32 PM
Want to learn to Program Tenover Linux - Newbie 13 03-28-2003 02:38 PM
any programmers who had to fight hard to learn to program? Flotilla Programming 14 01-21-2003 06:49 AM


All times are GMT -5. The time now is 10:27 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