Re:Why it's impossible to become a programming expert
by Novash on Saturday September 12, 2009 @11:06AM
(#818988)
When I studied C in College, I could tell you all functions on the ANSI library. More often than not, it meant that I knew if a library had something already done so we wouldn't need to do it again. Even simply things like using freopen to redirect standard output to a file, or using sscanf to parse an user input where outside of the class curriculum that I only got to know because I studied the language somewhat in depth. Now that I work with C#, nearly everytime I need a class that is somewhat uncommon, I am forced to do a research, and it usually DO exist in the framework (exception in mind, double indexed lists) somewhere. But I do not know it. Even the expert C# guys do not know it. We need to research. Because the framework is too big, it is not possible to know it. And because it is not possible to know it, every time I am coding, I feel like blind because of the possibility that of what I am doing is actually already there and I don't know it because I didn't think of the right words to research it for.
Re:Why it's impossible to become a programming expert
by gaius on Saturday September 12, 2009 @11:11AM
(#818995)
I wonder if we're any more productive - whether we spend more time doing research to find a library routine than it would take to just code it.
This is one problem in the OCaml community. Uptake of the new "standard" libraries is lukewarm because everyone has already half-written their own standard library.
Re:Why it's impossible to become a programming expert
by Novash on Saturday September 12, 2009 @11:26AM
(#819014)
We are more productive. It is not simply a matter of have/not have the routine. It is also a matter of usability. If you did the routine yourself, you would make it specific. When you needed it again, you would need to either write it again from scratch or modify it. The framework has its methods coded in ways to be the least specific possible so to avoid rewrite (in an ideal world, everything would be like it).
Re:Why it's impossible to become a programming expert
by johnwatson11218 on Saturday September 12, 2009 @04:00PM
(#819347)
Does anyone think this would be an interesting problem for AI? I mean while you are coding have some software watch what you are doing and suggest standard libs that you might want to have a look at?
It seems like standard information management techniques are already being applied to the documentation. While I'm coding in java I can get java doc for the class I'm working with to come up as mouse over.
Maybe it could work like a recommendation engine for libraries.
Re:Why it's impossible to become a programming expert
by silentbicycle on Saturday September 12, 2009 @04:26PM
(#819383)
A good first approximation already exists: Searching by function type in languages (such as Haskell[1]) that have sufficiently expressive type systems. There might be integration with e.g. the Emacs mode for Haskell* , and if not, it would certainly be feasible.
[1]: Hoogle: http://www.haskell.org/hoogle/
* I haven't used Haskell for a while, though, so I don't remember if the Emacs mode currently supports searching by type.
Re:Why it's impossible to become a programming expert
by xilun on Saturday September 12, 2009 @07:13PM
(#819576)
And do you think that _just_ knowing every function that already exists and how to use it would you make an expert ???
A little more productive maybe, but this is indeed neither a necessary nor a sufficient condition to be called an expert.
Higher levels considerations are far more important.
If you define "expert" as someone who has memorized all possible syntax, then the only experts would be autistic and would need help getting dressed.
OTOH, if an expert is someone who knows how to find the right tool to get the right job done, then OP is clearly already there. As are many of us too, I suppose.
That's the difference between theory and practice.