Let's face it. We all google/search a lot while programming. I am a new programmer (from the last 2yrs) and I hate it, but when ever I am stuck, I search for quick solutions online.
What about you guys? How can this "problem" be solved? or...its ok?
It depends a lot on the experience/background of the person, as well as the problem at hand. Most programming "problems", like any other engineering field, have already been solved, so there's no shame in turning to a search engine or even better, StackExchange, for solutions. The best coders are the ones that are learning all the time.
On the other hand, there is usually an impedance mismatch between the description of the problem and the actual solution. Take a look at the horror stories on The Daily WTF. http://thedailywtf.com/
Anyway, try to read as much code as possible, both good and bad, find a mentor(s), be able to take constructive criticism, and just persevere, and you should be fine.
My search history page says ~70 queries/day on work days and ~30 on weekends - majority of that stuff is about programming. So yeah it's not a problem.
That said - I don't even bother remembering the links to documentation. When I need something I just go to "python docs multiprocessing" or similar address and hope that I'm lucky. Search is the new URL ;)
I've been programming since middle school and I'm now almost 30 and I google all the time. There's too much to remember, and I wouldn't want to burden my memory with too many specifics. I try to focus on remembering generic patterns, since those are far harder to search for.
More than 10 years in (implies mastery, right?) I still search all the time. However, I'm not looking for solutions per se. Instead, I'm just looking to refresh myself on the available building blocks (whether it be the API or whatever syntactic sugar the particular language at hand provides). In exchange for this constant dependence on external technical reference, you can gain fluency in a large number of languages libraries and tools.
Learn the big, important concepts in a variety of domains, and don't ever worry about memorizing the finicky details (which might very well change in the next release anyway).
I find searching is the fastest way to find documentation for library functionality as well as example code for when the documentation didn't cut it. I don't see why you should hate it. I did a fair bit of Win32 stuff a while back, and still poke around the occasional bit of Windows driver code when trying to make weird/outdated stuff work. The documentation on those is terrible. Searching is the only way. I mostly write Python now, but I still find I rather search modulename+functionname than use help().
Its perfectly ok. A lot of times others have already ran into the particular problem and already solved it. You need to understand the solution, just don't blindly accept some random solution found on the internet. If you do this, then your code will get ugly fast and you will not know what it is doing. But there is nothing wrong with finding a solution, studying it, understanding it, and then using it in your own code.
I remember only 5 years a gruffy old sysadmin preaching "Can't you guys code without googling all the time? Programming is not what it used to be." I listened to his advice for a while & I'm thankful for it. I now try to do big conceptual work in offline mode but google like crazy for all the nitty-gritty details.
I can't remember off the top of my head but it should be ($needle, $haystack) if it isn't because of the appearance order in the English colloquialism "NEEDLE in the HAYSTACK".
Technology changes fast. So fast, that now days the most effective strategy is not to know everything, but to know how to find relevant docs efficiently. Of course you also need basic skills for understanding and using them properly.. Now that, comes from experience.
[+] [-] brisance|15 years ago|reply
On the other hand, there is usually an impedance mismatch between the description of the problem and the actual solution. Take a look at the horror stories on The Daily WTF. http://thedailywtf.com/
Anyway, try to read as much code as possible, both good and bad, find a mentor(s), be able to take constructive criticism, and just persevere, and you should be fine.
[+] [-] viraptor|15 years ago|reply
That said - I don't even bother remembering the links to documentation. When I need something I just go to "python docs multiprocessing" or similar address and hope that I'm lucky. Search is the new URL ;)
[+] [-] jedbrown|15 years ago|reply
[+] [-] jbr|15 years ago|reply
[+] [-] rndmcnlly0|15 years ago|reply
Learn the big, important concepts in a variety of domains, and don't ever worry about memorizing the finicky details (which might very well change in the next release anyway).
[+] [-] Kliment|15 years ago|reply
[+] [-] exline|15 years ago|reply
[+] [-] c1sc0|15 years ago|reply
[+] [-] benkant|15 years ago|reply
or
$haystack, $needle
[+] [-] Throlkim|15 years ago|reply
[+] [-] mikeknoop|15 years ago|reply
[+] [-] clueless123|15 years ago|reply
[+] [-] jwdunne|15 years ago|reply
I think Google is one of the greatest and most useful tools in my very meager toolbox.
[+] [-] spooneybarger|15 years ago|reply
[+] [-] zengr|15 years ago|reply
[+] [-] RACNicole|15 years ago|reply
[deleted]
[+] [-] hackerking|15 years ago|reply
[deleted]