LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Programming (https://www.linuxquestions.org/questions/programming-9/)
-   -   i want to learn to program... (https://www.linuxquestions.org/questions/programming-9/i-want-to-learn-to-program-274614/)

trey85stang 01-06-2005 11:35 AM

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?

PBSchmidt 01-06-2005 12:15 PM

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

vxc69 01-06-2005 12:33 PM

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

itsme86 01-06-2005 12:35 PM

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.

csfalcon 01-06-2005 12:43 PM

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.

trey85stang 01-06-2005 12:49 PM

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 :confused: Id like something to get me started though :)

trey85stang 01-06-2005 12:50 PM

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?

PBSchmidt 01-06-2005 01:31 PM

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

titanium_geek 01-06-2005 02:04 PM

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

tamoneya 01-06-2005 10:11 PM

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.

tamoneya 01-06-2005 10:18 PM

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

titanium_geek 01-07-2005 09:10 AM

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

Genesee 01-07-2005 01:08 PM

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
:cool:

trey85stang 01-07-2005 01:22 PM

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?


All times are GMT -5. The time now is 04:26 PM.