A couple of tips for beginning programmers
Whether it is football, quantum physics, a new foreign language or programming, the beginnings are problematic. What is more, no amount of advice can teach you as much as your own experience. Nevertheless, the following tips will help you avoid some mistakes, save your time and develop good programmer habits from the very beginning.
Practise logical thinking
Although some may laugh at the stereotype of a programmer being a Maths genius, there is no use denying that learning Maths and Logics prepares your brain for becoming a programmer better than anything you do at the high school level. Programming requires logical thinking in isolated systems of commands and in that resembles mathematical thinking. If studying Maths rather than learning a new programming language sounds like a waste of time, treat it as an entertainment and solve equations between other activities or when you get stuck at some point of your programming task. This may help you unlock your brain before your thoughts drift away and your concentration on logics dissolves completely.
Be open to sources
It is true that programming is something that you learn best by practice. Nevertheless, a good read is something that may help you get a grasp of the very basics of your field. There are a number of online introductory courses on programming, for example on Lynda.com and Codecademy. As a beginner you should also make use of more senior Web developers' experience and ask them questions or browse Internet forums devoted to programming. Once you have started trying your skills out, you will find that many of the mistakes you make are already explained on the Web. Of course, finding solutions on your own may be extremely rewarding but when things get really difficult do not try to reinvent America. Just consult Google.
Choose your languages
Before you start browsing the Web for online sources, take a step back and ask yourself what you actually need to learn. To answer this question you must know, first and foremost, what kind of programmer you want to become. That will help you decide which languages you should learn first. Start with the easiest and most available ones like Python. If you aspire to become a Web programmer, you should begin with HTML or CSS. It is best to learn these languages directly from different websites. To check their scripts simply right-click your mouse and choose 'Show source.' While conducting your direct research on these languages' use, remember to choose different kinds of websites so that you learn how to code various bits, e.g. tables, lists, etc.
Ask and verify
Coming back to your human sources on programming, it is certainly a good idea to consult them - much less so to overrely on them. In other words, even if at your stage anyone already working in the industry sounds like an expert, you should not accept their solutions and tactics too readily as your own and finite ones. More often than you think, the advice you get from professionals may be imperfect or simply wrong and by sticking to it you limit your own potential for finding a better solution.
Be accurate and consitent
A good start often determines your future, therefore developing good coding, learning and working habits at the very beginning is a must. Do not be sloppy. Programming is about details and exactness so instead of coding sloppily and having to reread your code multiple times to find what you typed wrong, simply try to write it all correctly in the first place. Beware of common mistakes like bad indentation or typing assignment equals (=) where logical equals (==) should be used. Also, when naming your variables, use most obvious options, ones that you can easily come up with if you happen to forget them and need to find them in your project in the future. Once you have chosen the right names, use them consistently throughout your project.
In a nutshell, if you are just about to embark on your programming adventure or have just done so, be professional, accurate and consistent from the very beginning. Know what you want, and look for your sources. Do not hesitate to ask others but verify their advice in practice and stay open to alternative solutions which may turn out better. Whether you are still a student or long past your school days, do not shun doing a Maths exercise from time to time. Its role in perfecting logical thinking is inestimable.
One piece of source code of Skype. Is this code snippet written by interns?