Programming can be a very rewarding and fun experience. While you are working on your programs you will encounter many challenges, but when you are done and you see the final result of your efforts execute flawlessly, you will be filled with a sense of pride and accomplishment. Whether you want to start programming to open up a new career opportunity or you just want to pursue it as a hobby, the Internet can be a very useful place to start your quest for programming knowledge. But beware, your search can sometimes be confusing and can end up leaving you frustrated after only a short while.
Here are solutions to some common problems people experience while they are learning to program
Problem: You get stuck.
You just got a pile of books, went through several tutorials, created several programs, and were feeling really good about your skills, when you come across a problem that you are having a hard time resolving, and you feel like giving up.
Solution: A never give up attitude is beneficial in most tasks in life, and this is especially true for programming.
Luckily there are a lot of helpful people out there and if you find the right forum to post your question you will probably receive the answer you were looking for. But if after several attempts you cannot find a solution, leave it aside for some time and come back to it. Maybe after you have created several other programs and gained new skills, you can come back to this problem and find that the solution was pretty simple after all. Remember, when the going gets tough the tough get going, so don't quit too early.
Problem: Everyone else seems so much more accomplished.
While you are struggling with some beginner questions, all the forums you visit are full of people using highly advanced technical jargon and talking about high level concepts. It is like an alien language and you think you will never be good enough. These people seem to be eating and breathing computers and programming seems to be innate to them.
Solution: Don't be scared.
Through your quest you may come across people who make it look so easy, only when you try it, it is not. Don't be afraid. They are humans just like you and me. Have a positive attitude, and keep taking small steps forward. Soon you will go from your first "Hello World" program to learning concepts of inheritance and polymorphism. After you have written several dozen programs, you will look back and wonder how you could have let such easy stuff almost dissuade you from your quest for knowledge.
Problem: I am a little cheap!
I looked into several books and compilers and the cost is adding up to several hundred dollars. I don't have that kind of money!
Solution: Programming does not have to be expensive.
You can get started with readily-available, no-cost compilers, and tutorials that will have you programming in no time. If you can, find a local library where you can gather books on the particular language you are trying to master.
Problem: I will work my own way!
You just read five different and wonderful books and have now sat down to write your first program, thinking you are an expert. Turns out you are having trouble getting your first program to compile.
Solution: Practice, practice, practice.
Bad idea! Don't think you can first read a whole book and then begin programming. You will only learn by writing programs while you are learning new concepts. The more you program, the better you will get. Keep experimenting. Find problems and seek solutions. Compare your code with others and see how you can make improvements.
Problem: I wasn't safe, now I am sorry.
You really got into programming and wrote several dozen programs, then just lost interest and forgot about it. Several months later you remember all the good times you had writing those programs and went back to search files on your computer for those programs. Only when you do, you have no idea what your programs do and what all that code means. You feel like a beginner again.
Solution: Comment!
Learn good programming practices early. Pay attention to advice on good coding practices and don't just avoid them thinking that it is not important to accomplishing the particular task you have in hand. This will help you in the future. Comment your code heavily. Even if you decide to leave your quest for a while, you may end up coming back and you will be happy to have all those comments to guide you. Taking classes at a local college can provide you with the strong foundation you need to build your skills on.
Your attitude and determination will determine your success in the programming world. With hard work will come great success.