People often talk about Programming, Programmers, Developers but lots people don't have a clear understanding about those terms . Generally when people talk about programming they think about computer programming but computer programming is one of the best way to practice programming . Programing is all about better ideas, better organizing with new and optimize problem solving technique than previous . A programmer can be a Doctor, an Architect, wedding planner or may be shopkeeper, in short a better organizer . Then what about Developers? A developer is persons who execute or build something according to the programmer plan . For an example In a wedding the wedding planner is programmer and his practice is programming and those people who organize it in according to the wedding planner is developer .
In short computer programming is a magic and programmers are the magician and the
programming languages,Compilers whatever they using is the tools of magician . Computer programming is not all about doing codes all day long but it is all about how well you organize your codes and how much efficient it is! In short computer programming is all about problem solving . A problem can have multiple solution, an ordinary programmer can pick random one but a good programmer always choose optimal one and this is the main difference between a good and ordinary programmer . Good programming is not over night process . It improve day by day . Problem solving ability enhance our thinking ability which makes you better and better programmer by day by day practice. That is why computer programmer is the best programmers in the world .
This a very common question beginners are often asked . But programming language is just a tool it is not
define how good programmer you are . Only problem solving ability will make you different than others . If someone ask me the question
i will suggest him / her to start with C Programming . Now
lots of people can be disagree with me . I am suggesting because if you want to be a very good software engineer then you must have very good idea about
memory management . Why you need to know memory management? for an example you and you friend make same app
but your friend's app loading very fast but your app loading slowly this is because of proper memory mangement . Now most of the modern language
C is more easier than java to learn and main reason is C has low level access to the memory like pointer but it not available in Java
The concept of memory management will help you a lot when you are started to work in software development domain.
Different people can have their own ideal way to learn programming language but according to me
the best way of learning programming is learn a topic and solve the related problem in different
Online Judge . For an example you learn if_else then solve the if_else related problem
from different online judge as much as you can .
Once complete learnt C programming completely that means you are master of using loops, conditional statements , arrays etc
However the concept of loop, conditional statements, arrays is same for almost all the language so you know 60% concept of other programming languages but may be little change in syntax
. Now you should jump into Learning Data Structure and Learn Algorithm because these will help to pick the optimal
solution of a problem . In here Also you should apply the same
way that you did when you were learning C programming . For an example you learnt DFS solve the relevance problem from
different online judge and participate different online contest like CodeForce, Hackerrank etc
[Note: You must store all the solution where ever you want]
This is a crucial moment for all programmers . Before explain everything i want to mention one thing
the main concept of all programming language is conditional statements, loops, arrays etc is same. However
you have learnt those topics while you was learning C programming so that i can say you are covered 60% of any programming language and you have better understanding these topics
than others because C is structural programming language . So It is comparatively easy to learn and analyze the code .
Differnt people can have different goal like may be someone want to be a Data Scientist,
someone Web Developer or someone want to get a job in big tech company like google,facebook. See the following
table and match your interest and start learning today .