Click here to Skip to main content
15,884,917 members
Please Sign up or sign in to vote.
1.50/5 (2 votes)
See more:
I am studying my bachelors degree in IT and I am really getting into programming, so far I have beginner experience in VB, c#, JavaScript and PHP/mySQL. I enjoy the concept of programming that your mind is the limit but in my case I lack the logic side of things. For example I can solve simple tasks like running loops etc... but I have trouble when it comes to thinking of other efficient ways to solve a problem such as accessing other libraries to use their functionality inside the framework. With php I have trouble thinking logically how it accesses HTML elements and uses them to invoke a certain method.

I really enjoy programming and don't want to give it up. I try to learn but I become disheartened when I fail to understand something that looks easy enough for anyone to understand.

Are there any suggestions how I can improve my programming skills?

Thankyou for your help!
Posted
Comments
Sergey Alexandrovich Kryukov 30-May-14 17:24pm    
Too general question I would say...
—SA
[no name] 30-May-14 17:31pm    
"how I can improve my programming skills", study, practice, study more, practice more.
Sergey Alexandrovich Kryukov 30-May-14 17:33pm    
I finally decided to put a formal answer...
—SA

1 solution

As I say, too general question. Maybe some general advice:
  1. Spend most time on fundamentals, less on present-day detail. Remember: you need real education, not training. Don't get me wrong: training is important, but it comes by itself, with work. Still learn to pay attention to fine detail; it does not contradict to the idea of focusing on fundamentals.
  2. Learn not to put on your plate more that you can eat, start with smaller things. Don't take me wrong: don't be afraid of ambitious problems either. In fact, you are going to make mistakes of getting yourself the problem are are not ready to solve. What to do? Don't be afraid of such mistakes and failed project; this is a normal part of the process. With time, you will learn to estimate too difficult problems better and waste less time on them. Don't sorry about failures too much; you still learn something on them.
  3. Work more, don't just to final results, don't afraid of spending a lot of time on learning the lessons from your work.
  4. Get your work reviewed and criticized by best professionals, as much as possible. Learn not to take criticism too personally by used it constructively for improvement.


I recently found a wonderful passage from a book I use to learn some industrial design. It is written by a very famous designer, the owner of the successful leading design studio represented in several countries, often getting very expensive orders. Even though it mostly appeals to young designers, it is very well applicable to students in any creative field of activity, and very much to programming:

Most problems are solved in a wonderfully simple way: you need to take it and make it. For example, young designers often write to the author, asking him to give them a test task, so they could show themselves. The author always gives them all the same task: create your own task and do it. If a designer really worth something (it means, can solve problems), this person will simply bring the samples of excellent works. And, where to get such samples? You need to make them. And, how to make them? Start with something simple, for example, organize the food in your own refrigerator. And what if there is no any food in the refrigerator? Take a pencil and draw it. And what if you have no pencil? From this point — you are on your own.

Kovodstvo, § 149
[Translation into English is mine — SA]


My own advice I provided in the past, could be considered as some detailing of Artemy's simple conception. Please see:
Please suggest a good concept for my .NET project ?[^],
JAVA final year projects[^],
Need Project Ideas Help me Plz[^],
Can you suggest a topic for my Senior Project? Programming[^].

—SA
 
Share this answer
 
v2

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900