Computer Science Canada When do you know When you've mastered a language? |
Author: | BigFat [ Sun Sep 06, 2009 8:45 pm ] |
Post subject: | When do you know When you've mastered a language? |
I'm in high school, and recently finished my computer Programming 1 class (which focused on the Qbasic language). And now I'm in computer programming 2 and we are about to begin learning VB . And i just want to know when can you say you've mastered a language. Even though i spent a whole year learning qbasic i still don't think i could just think about something and create it. But my teacher has told us that by the time we do our finale project in computer programming 2(make a program about anything for 2 months) we will have the knowledge to create anything we can think of (our only constraint will be time). and i just want to know when can say you've mastered a language. |
Author: | DtY [ Sun Sep 06, 2009 9:18 pm ] |
Post subject: | RE:When do you know When you\'ve mastered a language? |
I heard that once you've spent about 100 (I think) hours with a language, you've mastered it (as a very rough guide, your first language will take longer than any others, once you've "mastered" two or three, you can pick up new ones really easily) My opinion though, is that when I'm at the point that I can write a program without having to look at documentation to find out what a function is called, or what certain syntax should look like (for standard & often used functions), I've mastered it. |
Author: | saltpro15 [ Sun Sep 06, 2009 10:01 pm ] |
Post subject: | RE:When do you know When you\'ve mastered a language? |
When you can write a compiler for that language, you've mastered it is the general rule I've heard |
Author: | BigFat [ Sun Sep 06, 2009 11:41 pm ] |
Post subject: | Re: When do you know When you've mastered a language? |
Well, say i want to get a job in computer programming. How well would i have to know a language to be successful and know what im supposed to do on the job? |
Author: | wtd [ Mon Sep 07, 2009 1:38 am ] |
Post subject: | RE:When do you know When you\'ve mastered a language? |
You don't need to master a language to be successful.
|
Author: | bbi5291 [ Mon Sep 07, 2009 9:59 am ] |
Post subject: | Re: RE:When do you know When you\'ve mastered a language? |
saltpro15 @ Sun Sep 06, 2009 10:01 pm wrote: When you can write a compiler for that language, you've mastered it is the general rule I've heard
BF is easier to compile than to write. |
Author: | btiffin [ Mon Sep 07, 2009 10:36 am ] |
Post subject: | Re: When do you know When you've mastered a language? |
old guy rambling Think Chess; The rules of the game are one thing, but mastery being a completely different level of play, beyond the rules. Or any craft; periods of apprenticeship can carry on for years before the student can replace the master. I use this number a lot; 10,000 hours. 10,000 hours is a benchmark that determines whether someone can be called expert in the field. For work related professions it can also be 10 years of full-time. http://en.wikipedia.org/wiki/Expert In my humble opinion, many many experts can't really be called Masters, so take that time estimate along with other factors when grading someone's mastery of a language. DtY's 100 hours seems low to me, but I'm slow. ![]() Recently I've put a few hundred hours of Python programming behind me. Clueless noob. Perhaps you will know when you've mastered the BASICs when you don't feel like asking the question anymore? Cheers |
Author: | A.J [ Mon Sep 07, 2009 10:59 am ] |
Post subject: | RE:When do you know When you\'ve mastered a language? |
See, I believe that there are people who haven't even came close to coding for that many hours and can be called an expert. What is 'mastering a language'? I don't think that there's a set condition, after which being fulfilled, one can call himself an 'expert'. If you are able to do what you do well enough, you are an expert. Having said that, I believe that the phrase 'mastering a language' is kind of vague, and can be interpreted in many ways. |
Author: | DtY [ Mon Sep 07, 2009 12:30 pm ] |
Post subject: | Re: When do you know When you've mastered a language? |
btiffin @ Mon Sep 07, 2009 10:36 am wrote: DtY's 100 hours seems low to me, but I'm slow.
![]() That number was probably wrong, I just remember reading that on another message board, and having a number that was a power of ten. I have no idea, can't even estimate, how many hours I've used a given language.. Maybe I should write a gedit plugin to time how long I type with each seperate syntax highlighting mode. |
Author: | [Gandalf] [ Tue Sep 08, 2009 6:05 pm ] |
Post subject: | RE:When do you know When you\'ve mastered a language? |
btiffin, I've got to be honest. I find the 10000 hours figure ridiculous. I mean, do you have a stopwatch timing you each time you load up your editor? Or does it really take over a year of 24/7 learning a language to know most of it's reasonable quirks? What exactly counts as time spent "programming", anyway? Personally, I don't care about "mastering" anything. There are different levels of proficiency, but if you're saying that you can predict every possible branch of code in that language then you're kidding yourself. Likewise if you think you're not a competent programmer after 1000 hours in a language (41.67 days straight). Personally, such figures bring about images of people wasting away hunched over the computer in the dark, getting the next few hundred hours of programming in, so they can be an "expert". |
Author: | Zren [ Tue Sep 08, 2009 8:29 pm ] |
Post subject: | Re: When do you know When you've mastered a language? |
I'd say that when you've learned and can implement all the programming concepts that can be done with a language that are widely used in the field it's used for, that is when you've mastered it. It doesn't matter how you learned it or how long but rather that you know all those weird things they taught you in school, work, Internet, and can apply them. However, if you'd like to put a big time limiter on this, I'd say look to the pros and what their looking for. Say blizzard wants this guy: http://www.blizzard.com/us/jobopp/cinematic-tools-programmer.html He needs 3 years minimum in a language. Say you worked for another job and got the experience that way. For full time work (stats taken from random googling) 3 years * 260 work days a year * 8 hours a day = 6240 hours Now that's round 6000 hours that you might of spent at a computer hacking that C++ together to make a movie maker. Well maybe 4000 (I dunno, do people actually work at their jobs all the time). Truthfully, the only language I could say I've mastered would be Turing, and that's a stretch even then, but I still feel that my first line was what makes a master differ from the weak. bbi5291 @ Mon Sep 07, 2009 9:59 am wrote: saltpro15 @ Sun Sep 06, 2009 10:01 pm wrote: When you can write a compiler for that language, you've mastered it is the general rule I've heard
BF is easier to compile than to write. I thought that saying was to be able to write a compiler using the language itself, maybe not? Anyways, try that in BF. |
Author: | jernst [ Tue Sep 08, 2009 10:18 pm ] |
Post subject: | Re: RE:When do you know When you\'ve mastered a language? |
[quote="[Gandalf] @ Tue Sep 08, 2009 6:05 pm"]Personally, such figures bring about images of people wasting away hunched over the computer in the dark, getting the next few hundred hours of programming in, so they can be an "expert".[/quote] +1 I know many people who claim "expert" status because they spend all day on their computers, however in reality they just try to use big words, try to sound smart and mislead people more than help them. Theres a difference between spending time messing around with something and learning. |
Author: | btiffin [ Wed Sep 09, 2009 12:06 am ] |
Post subject: | Re: When do you know When you've mastered a language? |
Gandalf; Well, the 10,000 hours thing is a somewhat soft target in terms of expert, and a very soft target when measuring mastery. But for expertise, the world really does set the bar pretty high and expects prolonged experience and deliberate practice. And yes, if you are conscience of it, it may involve hunching over in the dark glow. Perhaps, those with the knack for programming may think themselves masters. Until they meet a Master and see the difference in tone, quality and correctness of works. I've met quite a few programmers. Lots and lots that I'd sanction as expert. Only one that I'd call Master. And I know of at least three others from working with them on the net. Four. One being in person. Cheers And Gandalf, this is really only a personal opinion (backed up a little bit by "wikipedia experts" ![]() |
Author: | [Gandalf] [ Wed Sep 09, 2009 7:22 pm ] |
Post subject: | Re: When do you know When you've mastered a language? |
Fair enough, btiffin. It's unfortunate that expertise is measured in time spent rather than skill and experience, which is vastly different than time spent. Mainly though, I just dislike the semantics behind your opinion. To me, there are programmers that are good, better, and even better. However, as far as I can tell there is no International Federation of Programmers that gives out "Expert" and "Master" titles to those who spend 10000 hours at work in a language. ![]() ![]() *shrug* |
Author: | btiffin [ Fri Sep 11, 2009 10:49 pm ] |
Post subject: | Re: When do you know When you've mastered a language? |
Gandalf; Excuse the over explaining... Yeah, the 10,000 number is what "they" guess it takes for the brain to attune to the patterns that allow an expert to make (more) correct choices under extreme variants of the topic at hand. They can cover more bases. But it's not a hard number and I don't know what the guess is for programming. I do think it is years to decades of full-time professional practice. And the hundreds of hours deliberately spent hunched in the dark, won't be the "last" few hundred hours, 'cept perhaps those rare few that get the eureka half way through an all nighter web site publish or sort-merge problem. And will a kid come fresh out of school and blow the expert away in productivity? Probable. ![]() The same graduate up against a Master? Improbable. Left in the dust, while benefiting from the exposure. Cheers |
Author: | Roman [ Tue Sep 22, 2009 3:50 pm ] |
Post subject: | RE:When do you know When you\'ve mastered a language? |
I'd say the 10,000 hours isn't a "rule" as such, more of a symbol for 5-10 years of devotion to a particular craft. I don't think doing something 2 hours a day for 5,000 days would be the same as doing something 10 hours a day for 1,000 days. And time spent is normally related to the degree of expertise one has in what they're doing. Granted, it's not the only factor. I think there are some people who can grasp in one day what others can't grasp in a year. But, in general (and re-stating my first sentence), once you spent a significant amount of time delving into the mysteries of your chosen craft (or language) there may well be an arbitrarily defined point at which you cross some sort of line into mastery. Essentially, the 10,000 hours rule, to me, is a re-statement of the good ol' "practice makes perfect." And in answer to the original question: I don't know >.> Cheers, -Roman |