LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (http://www.linuxquestions.org/questions/linux-software-2/)
-   -   Help me learn to program. (http://www.linuxquestions.org/questions/linux-software-2/help-me-learn-to-program-789137/)

LazerPhreak 02-14-2010 10:42 PM

Help me learn to program.
 
Hello all!
I am delving into the world of programming head first, but first, I would like input from others. I think I am going to start with python. Good / bad? Why? Good places for tutorials? All I can seem to find a tutorial for is for Windows. Yech.

Thanks!

chrism01 02-14-2010 10:52 PM

If you're on Linux I'd certainly advise getting competent in bash first.
http://rute.2038bug.com/index.html.gz
http://tldp.org/LDP/Bash-Beginners-G...tml/index.html

That being said, everyone has their own idea of the best language.
There are many trade-offs to consider, use the best tool for the job where possible.

A basic understanding of C is very useful (I've found).
http://www.simonhuggins.com/courses/cbasics/index.htm

In the same group of langs as Python, I like Perl.
http://perldoc.perl.org/
http://www.perlmonks.org/?node=Tutorials

YMMV.

penguiniator 02-15-2010 12:13 AM

Python is a good place to start. It has a very consistent syntax and lets you concentrate on the high level issues of your programming problems. It is designed for readability. Perl is designed for expressiveness, which makes sense given that its creator is a linguist. C is good for learning the particulars of how a computer works. It is often described as a high-level assembly language. Shell scripting will help you learn the tools approach that Unix systems are built on. Learning the shell is actually a very good introduction to programming, because much of what you do in a shell is useful in other programming languages. The shell IS a programming language. It's strange, as programming languages go, but it has a lot to teach you about programming and Unix. It is no laggard either. Serious applications can be coded in shell. I once wrote a custom content management system for three web sites entirely in shell.

I suggest you visit the IRC channels #bash, #python, #perl and ##c on freenode. Pay particular attention to the links provided in each channel's welcome message. You will get pointers to tutorials and other useful resources. You should have no problem locating tutorials more pertinent to Linux from each channel.

jstephens84 02-15-2010 12:20 AM

Not much I can add here but, As for starting to program I would probably start with Shell scripting, or Python. Personally I would go for python as you can take the language and use it for windows, linux, or Mac programming.

As for learning it Apress makes some good books on it. Also the python site has very good documentation.

Best way to learn is just set yourself up with a project and go at it. Try making a simple backup solution or maybe a logging utility that will keep track of all your system changes.


All times are GMT -5. The time now is 11:51 AM.