Linux - NewbieThis Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place!
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
am new here and i knows nothing about programming, where can i start learning
Welcome. I'll ask three clarifying questions. What appeals to you about programming? What are your longer goals with programming? What to you want to do or make? The different languages are suited to different activities and your interests and goals will steer which language is most appropriate.
am new here and i knows nothing about programming, where can i start learning
Hello and welcome to the forum
One of the first things you will need to consider is what language(s) you want to write with. Here is a Wiki article on some of the differences between languages. I'm not a programmer nor do I have any experience in this field but perhaps those members who are can give more details. On LQ, we also have a tutorials page on this subject which you can find here.
Regards...
Last edited by ardvark71; 06-09-2016 at 06:21 AM.
Reason: Added parentheses/Re-added smiley.
Location: Northeastern Michigan, where Carhartt is a Designer Label
Distribution: Slackware 32- & 64-bit Stable
Posts: 3,541
Rep:
In addition to the above posts, here's some things to consider.
What sort of programming do you want to do? Large systems, data bases, general text manipulation, scientific and technical, graphics (and so on)?
If you're starting out with Linux/Unix programming, you might want to consider shell programming. You can do a great deal of work with the shell in a few lines of code than you can with C wherein you might be programming with a few hundred lines of code to accomplish the same goal.
Which Shell? Well, most systems come with Bourne shell (the original Unix shell -- actually an emulator of it). There is also BASH (Bourne Again Shell) which is the kinda-sorta standard in Linux systems and there is KornShell which functionality was used to develop BASH (BASH grammar and syntax, in most cases, is identical -- exceptions are BASH extensions). There are other shell programs; you don't want to get too far from the mainstream, though, so treat them with care.
Another good one is AWK. You can do a heck of a lot of work with a one-liner. It's worth your time to learn it.
There are quite a few programming languages supported in Linux, but learn the basics first.
I suggest the shell to start simply because the shell is your point of interaction with the system. That means learning the basic utilities that will be most useful over time.
So where do you learn it? Try O'Reilly (http://www.oreilly.com/) for books and materials. Consider your interests and your abilities, read the reviews of the materials and decide which may fit your needs. I would suggest, however, that you buy The AWK Programming Language (from Amazon). It was written by the authors of AWK and is really the one you want (full of working examples for doing useful work).
And I'd really suggest that you learn C (O'Reilly has good materials for that).
VMs are nice for playing and learning to install distros* then the tools go on and on. For a real instal, dual boot or wtv make sure you back stuff up including microcoughed if you want to keep it.
Some fun starts that come to mind: Scratch\Etoys, Robocode, Ruby, Python and so on a good book I've started with was Learn to Program, by Chris Pine some of it is free here: https://pine.fm/LearnToProgram/ ...
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.