'Experience' form experience
Thank a lot siavoshkc, for your suggestions. It was useful. But I differ a lil bit wrt the concept of ‘experienced programmer’. I know this is not a place to post my bio-data or any family matters, but forgive me for this time.
I don’t know the age of any of the members here. Also I don’t have any idea about their programming experience. I am 39 years old. Was mostly in the field of Accounts and then business. I did my first computer course in an IBM PC 286XT (dBase III Plus -a package beautifully written in C), about 15 years back. And I have done many simple programs in dbase (which included lots of printing jobs) to help my own work, in the initial years. Then I lost touch for a very long period, during which I was using custom made applications and I learnt more hardware and networking stuff than programming.
Now I took up a course where C is a must as per the syllabus (so, I don’t have any choice). My wife is a very experienced database (Oracle/SQL) programmer who works with one of the top IT companies in the world. I am telling this just to make it clear that I know what experience means.
When this doubt came, I first asked my wife. She said she doesn’t know.. I didn’t ask her ‘then what the hell you people are doing there? Cant you even write a silly program in C which prints hello world?’. Why? Coz, her core skill is Oracle and not C. I asked her coz, ‘just in case’ she knew it, my problem is solved.
And that’s why I came to this place, where the meeting of exclusive C pple happens. That means, it is understood that anybody who gives an answer has knowledge in C. When I use the word ‘experience’ in this section of the forum, it becomes ‘C experience’ by default. If any doubt in other topics arises, I won’t ask it here.
From my experience, it is easy for an experienced programmer to find out a solution (even if it is finding out a ‘not standard function’) than a beginner. It also has something to do with the knowledge about the functions (in this context) that are available, else he will try to write own library, instead of using the existing one (a possibility). I don’t mean that one should always remember all those things, but the knowledge of the possible functions comes through experience (eg: when looking for a particular one, one might have come across 10 others and this comes as a ‘flash’ when you actually need one of them from that 10, at a later period) He/she can find it very fast too. This ‘quality’ is additional to his/her other skills mentioned by others here. One develops this ‘quality’ by experience and not by mugging up all functions or syntaxes.
Whenever I needed some ideas/suggestions in connection with electrical installation, I used to consult one of my relatives who is in the field from his teens, though he is very younger to me. I too was dealing with electrical stuff (but products) and hence I could really make out what his ‘experience’ counts.
So, programming experience is not just knowing the structure , logic and the ability to do own research, but it ALSO IS. SlyMaelstorm was very much right when he said “….and perhaps more importantly, how to do their own research when they need syntax.” . When somebody asks a doubt in a forum, it becomes ‘own’ problem for everyone who really want to help by giving a reply. Thus they come out with solutions faster than a beginner. (At least I have done my own research just to give a reply, in some other place and context).Otherwise why should we waste our time and money? Nobody in this world do anything just to satisfy others.
This is a place where people share their knowledge and experience unlike in many other places where people hesitate to share their knowledge due to professional jealousy and internal politics (which I observed from my practical experience).
What if only SlyMaelstorm can give the right answer to my next thread? I will be very happy. I just expressed my disagreement with his opinion this time (or better say, I added some more points ). It wasn’t personal or permanent. I would like consider this place as a place where friends (with different opinions and attitudes) meet and not as a battle field where only one can win.