I think I should give up trying to use "Leveling" as programming experience.
Experience is not just based on years or little test programs.
You cannot say you have experience just because you have "Two years" of experience, because maybe you only did "study" one hour each day, and it equals to:
(Hours a day * Days in year * Years) = 365*2 = 730 hours
Thing that you can reach in just four months and two days, with 6 hours a day:
(Hours a day * Days in month * Months) = 6*30*4 = 720 hours.
It shouldn't be like:
Programmer level 1
Programmer level 2
Neither it should be like:
Programmer, years: 1
Programmer, years: 2
But it should be like:
Programmer that uses good techniques
Programmer that doesn't
@spaceworm: ok, sorry about that.. i took it too seriously
@ibranext: sorry, i take that back
@everyone: thanks for the input, could someone please give me some suggestions for which books/sites/tutorials to read? Thanks :)
I also don't think you can just call him a beginner if he knows x86 Assembly, C, and C++
Based on the snippets in the original post, I'd throw out the C++ part. All I could see was a C programmer using a C++ compiler. All three examples were very short so it would be difficult to judge competency based on them. Particularly on more abstract concepts (beyond syntax).