Hi everyone,
I have a decend understanding of both Windows and Linux, but I feel I have the
desire to learn more about it's inner workings.
I want to learn programming as well, but I want to do it the right way. I don't
really know where to start...
Should I familiarise myself with using the commandline of the OS's I'm running
before I atempt to learn any programming languages, or should I do it the other
way around?
Are the two very closely related? I know people who study programming and know
various programming languages but have less knowledge about using the commandline
than I myself do at this point, which is nil at best.
Does anyone have any suggestions on where to start? There is just so much to learn
that I can't figure out a solid path to follow. How can I improve my knowledge without
creating any misconceptions due to learning the wrong things.
Thanks in advance,
Richard.
ps: I would also like to add that I do know about all the tutorials and finding them isn't my
problem. It's just more about which one to start with :confused:
30 replies to this topic
#1
Posted 13 January 2012 - 05:45 AM
|
|
|
#2
Posted 13 January 2012 - 05:58 AM
command line and programming are pretty much unrelated.
My suggestion is to first make sure you understand the concept of programming, then choose a language. Once you learn your first language, the rest are pretty much the same with mostly the same syntax with a few differences in what amounts to spelling and punctuation,
The concept of programming is deceivingly complex.
What it boils down to is the restatement of any real world task into a definitive sequence of unambiguous imperatives. Once that makes sense choose a language.
The most general purpose is PHP and javascript. That lets you write powerful software that runs on both web servers and the client computers. C++ is very good, but the software you write must be installed on the machine where it will be used.
All programming languages do the same thing. They provide a means to test conditions and conditionally assign the values returned by functions which work on arguments to named variables. Thats it. Everything else is merely a more complex restatements of those fundamental building blocks.
I am probably getting into more than you want. But the subject is very interesting to me. If you want, I am teaching my brother to program and would be glad to help you along with two or three beginner lessons
Jerry
My suggestion is to first make sure you understand the concept of programming, then choose a language. Once you learn your first language, the rest are pretty much the same with mostly the same syntax with a few differences in what amounts to spelling and punctuation,
The concept of programming is deceivingly complex.
What it boils down to is the restatement of any real world task into a definitive sequence of unambiguous imperatives. Once that makes sense choose a language.
The most general purpose is PHP and javascript. That lets you write powerful software that runs on both web servers and the client computers. C++ is very good, but the software you write must be installed on the machine where it will be used.
All programming languages do the same thing. They provide a means to test conditions and conditionally assign the values returned by functions which work on arguments to named variables. Thats it. Everything else is merely a more complex restatements of those fundamental building blocks.
I am probably getting into more than you want. But the subject is very interesting to me. If you want, I am teaching my brother to program and would be glad to help you along with two or three beginner lessons
Jerry
#3
Posted 13 January 2012 - 08:33 AM
You shoul pick a programming language and just learn. Learning about the OS you use you can do at the side of learning programming.
Think my post we're usefull? Please take your time and press the Like button at my post, Big Thanks!
For great C# & Android tutorials visit my blogg: http://www.thecompboy.com/
For great C# & Android tutorials visit my blogg: http://www.thecompboy.com/
#4
Posted 13 January 2012 - 09:57 AM
In today's world learning to use the cmd line is not on the top ten list for programmers. However the cmd line has its uses and its advocates, so it would be one more 'skill' in your arsenal if you learn to use it efficiently. My primary O.S is Ubuntu, so I use it all the time for a whole bunch of stuff but hardly for programming. If you want to learn more detail about a particular O.S you should follow and eventually contribute to their support forums. For example ubuntuforums.org.
Perfection of means and confusion of ends seem to characterize our age. Albert Einstein :confused:
#5
Posted 13 January 2012 - 09:58 AM
@ jerrywickey:
Thank you for your reply. It helped me choose what path to follow and
I decided, after consulting a few friends of mine as well, to start with
learning C++.
I've installed a compiler and found a website that provides what up till now
seems to be a good tutorial for beginners. It explaines things very clearly,
which is great since english isn't my native language.
Thanks so much
Thank you for your reply. It helped me choose what path to follow and
I decided, after consulting a few friends of mine as well, to start with
learning C++.
I've installed a compiler and found a website that provides what up till now
seems to be a good tutorial for beginners. It explaines things very clearly,
which is great since english isn't my native language.
Thanks so much
#6
Posted 13 January 2012 - 11:11 AM
jerrywickey said:
command line and programming are pretty much unrelated.
This is not 100% accurate. Command line scripting, in shells such as bash for example, can be thought of as a form of programming, even "pseudo-programming" if you will. While you'll never be able to produce applications as sophisticated as with other programming languages, I have in fact seen some clever little apps written entirely in bash. Command line scripting languages typically have all the control structures and variable manipulation that's indicative of more "sophisticated" programming languages.
If all you've got is a command line shell, don't think you can't do some simple programming just with what you've got. :)
Hofstadter's Law: It always takes longer than you expect, even when you take into account Hofstadter's Law.
– Douglas Hofstadter, Gödel, Escher, Bach: An Eternal Golden Braid
#7
Posted 13 January 2012 - 01:29 PM
For understanding your OS, I'd suggest learning C as a starting point.
#8
Posted 13 January 2012 - 04:01 PM
jerrywickey said:
The most general purpose is PHP and javascript. That lets you write powerful software that runs on both web servers and the client computers. C++ is very good, but the software you write must be installed on the machine where it will be used.
You'd need software for PHP as well: the PHP interpreter, or a web server with a PHP module built in.
Latinamne loqueris?
#9
Posted 13 January 2012 - 04:13 PM
Almost all web host servers offer php now. Even the free ones. Compiling and running from the compile folder is really no more trouble than ftp uploading and running from a browser, so both are pretty much the same level of convenient.
If you know C, you can learn php and java with no problem. good luck
Jerry
If you know C, you can learn php and java with no problem. good luck
Jerry
#10
Posted 16 January 2012 - 12:31 AM
Am I correct in understanding that learning the Linux BASH is a very usefull skill, whereas
learning DOS is pretty much irrelevant? I heard someone say the other day that there isn't
really much you can do more efficiently by using the command prompt vs using the GUI...
For Linux I already know from some experience that there's loads of stuff that simply can
only be done efficiently from the BASH and many things that can't actually be done from
the GUI at all.
Not that I'm going to focus on learning DOS any time soon, if at all, but I'm just curious.
Improving my knowledge on PC hardware and learning the general principles of programming
have my main attention at the moment. God, I feel like such a noob...
learning DOS is pretty much irrelevant? I heard someone say the other day that there isn't
really much you can do more efficiently by using the command prompt vs using the GUI...
For Linux I already know from some experience that there's loads of stuff that simply can
only be done efficiently from the BASH and many things that can't actually be done from
the GUI at all.
Not that I'm going to focus on learning DOS any time soon, if at all, but I'm just curious.
Improving my knowledge on PC hardware and learning the general principles of programming
have my main attention at the moment. God, I feel like such a noob...
#11
Posted 16 January 2012 - 04:01 AM
I cut my teeth on DOS and became fairly proficient at squeezing amazing functionality into a single command line, but there is no comparison to the functionality of a few lines of code .php, javascript or C++.
Working knowledge of the Command line might be important when installing Apache web servers or installing and configuring video server software. To make the software do something interesting to the average user, (your customer, the who pays you) however, requires writing far more code than a command line allows.
C is a good model for all programming languages, most of which draw on C syntax. But people often forget that while people utilize applications written in C and similar languages much of the time, like word processors, and email clients, everyone always uses web pages all of the time.
The software that drives the very forum on which we are having this conversation is php and javascript. And they did a very very good job. This is an excellent example of programming. I am very impressed by it.
My use of command line is limited to the few occasions when I need to install some esoteric piece of software that helps me write software and which no other average person in their right might would ever need. And while I write both C++ and OO C, the vast majority of my work is php and javascript. They work together. I leave the heavy-lifting to php while javascript manages from the client machine which processes run on the server and where the data goes on the client screen.
So if you anticipate IT work where your job will be to take keep all machines the staff use up and running, command line might be your primary tool. If you anticipate writing software that does interesting and useful things all by itself, then C or php and javascript. Incidentally, it really does little good to learn php without javascript. It really takes a server-client relationship to accomplish something that is noteworthy. All products must first be downloaded and/or installed onto the customer's computer before he or she can use it, whereas, things written in php and javascript are always available to anyone who has access to a computer.
Jerry
I might add. php is one of the best languages from which to learn programming. It is procedural, straight forward and its typeless variables help teach the use of variables rather than getting hung up on declaring them. Don't get me wrong. I find declaring variables and their types very useful. But it might get in the way of learning the concepts of programming. php completely sidesteps that issue. One needn't know javascript to make powerful use of php by itself. Software written in php and uploaded to an Internet server is available for anyone to use on the web. and once any programming language is learned and one grasps the concept of restating real life tasks into sequences of unambiguous imperatives, then learning the other languages is almost trivial. Merely learning some new syntax.
Working knowledge of the Command line might be important when installing Apache web servers or installing and configuring video server software. To make the software do something interesting to the average user, (your customer, the who pays you) however, requires writing far more code than a command line allows.
C is a good model for all programming languages, most of which draw on C syntax. But people often forget that while people utilize applications written in C and similar languages much of the time, like word processors, and email clients, everyone always uses web pages all of the time.
The software that drives the very forum on which we are having this conversation is php and javascript. And they did a very very good job. This is an excellent example of programming. I am very impressed by it.
My use of command line is limited to the few occasions when I need to install some esoteric piece of software that helps me write software and which no other average person in their right might would ever need. And while I write both C++ and OO C, the vast majority of my work is php and javascript. They work together. I leave the heavy-lifting to php while javascript manages from the client machine which processes run on the server and where the data goes on the client screen.
So if you anticipate IT work where your job will be to take keep all machines the staff use up and running, command line might be your primary tool. If you anticipate writing software that does interesting and useful things all by itself, then C or php and javascript. Incidentally, it really does little good to learn php without javascript. It really takes a server-client relationship to accomplish something that is noteworthy. All products must first be downloaded and/or installed onto the customer's computer before he or she can use it, whereas, things written in php and javascript are always available to anyone who has access to a computer.
Jerry
I might add. php is one of the best languages from which to learn programming. It is procedural, straight forward and its typeless variables help teach the use of variables rather than getting hung up on declaring them. Don't get me wrong. I find declaring variables and their types very useful. But it might get in the way of learning the concepts of programming. php completely sidesteps that issue. One needn't know javascript to make powerful use of php by itself. Software written in php and uploaded to an Internet server is available for anyone to use on the web. and once any programming language is learned and one grasps the concept of restating real life tasks into sequences of unambiguous imperatives, then learning the other languages is almost trivial. Merely learning some new syntax.
Edited by jerrywickey, 16 January 2012 - 04:10 AM.
additional info
#12
Posted 16 January 2012 - 11:45 AM
jerrywickey said:
I might add. php is one of the best languages from which to learn programming. It is procedural, straight forward and its typeless variables help teach the use of variables rather than getting hung up on declaring them....
For example
<?php
$object = new Fish();
$object->name = "Goldfish";
echo $object->name;
class Fish{}
?>
Would output "Goldfish".
Writing code like this can cause bugs that are very difficult to discover. I think a better environment ('magic-less') for learning programming would be one that enforces rules and requires the programmer to grasp a firm understanding of the underlying details before using 'magic'. Not to be confused I am learning php as we converse and I find it very userful and practical but I think I an appreciation for 'magic-less' languages like C is critical to a programmers development.
Perfection of means and confusion of ends seem to characterize our age. Albert Einstein :confused:
1 user(s) are reading this topic
0 members, 1 guests, 0 anonymous users


Sign In
Create Account


Back to top









