I’m a hacker. Don’t get me wrong, I’m no expert in any particular language, but, given enough time, I could probably patch together anything you can think of. And Stackoverflow is making me lazy.
Looking at my current stack profile I see 312 questions posed in 2 months, covering PHP, Java, AS3, MYSQL, Ruby, Jquery, c# and Cocoa. 2 Answers given to others. Its just too easy to “cheat”.
For an idea of just how bad it’s become, here’s a normal thought process in the old hacker way and the new “lazy” hacker way:
Old awesome and fun weekend project:
- Have cool idea.
- Try to build.
- Get stuck.
- Read about the area, the language, try to find a hook.
- Find something.
- Try, fail.
- Read more, fail more.
- Repeat until eventually succeeding in making cool idea, having also found 10 new things I never knew existed, which then provide new ideas and inspiration for the next awesome project.
New lazy weekend project:
- Have cool idea.
- Try to build.
- Get stuck.
- Post question on stackoverflow.
- Make tea.
- Refresh question page on stack.
- Copy/paste code from answer.
- Sip tea while it compiles.
- Finish weekend project having actually learnt nothing new other than maybe 3 new PHP functions if I’m lucky.
The new method is quicker for sure (a day for a cool project rather than say two or three under the old system) but the learning is massively reduced. Massively. Its not just the learning that’s reduced, it also takes away a lot of the discovery, which is, many would argue, one of the key components that makes programming so darned interesting in the first place. Finding out there’s not just a PHP function to get A but also to grab B, C and D too, which come to think of it would make it possible to do E!
Nerdr, You’re taking advantage of stack!
Well, I disagree. Stackoverflow relies on 4 types of users (The standard AARM model).
Those who:
- Ask questions (content catalysts)
- Answer questions (content makers)
- Read answers (money train)
- Moderate content (janitors)
All four are required for stackoverflow to be successful. You need the question posers as much as you need the question answerer’s. One good question can easily lead to five times the content in answers and Google bait. One could therefore argue that good questioners are more valuable than good answerer’s based on words they are responsible for on a primary plus secondary level, and hence, monetary value to Stack and the bottom line.
At the end of the day, I’d say Stackoverflow isn’t a bad thing for the Internet, far from it…
But it is making me lazy, kinda stupid and a little less leet.
What do you think? Leave a comment.
I disagree. Before StackOverflow my method was
a) come across problem
b) poke it, get nowhere
c) google for solution
d) find result in SERPs
now it’s:
a) come across problem
b) poke it, get nowhere
c) google for solution
d) find result in StackOverflow
So no more or less work (although I think answers given at StackOverflow work more often than not, whereas before it was mostly the other way around). Any efficiencies gained make me money, in theory.
Maybe I’m just not ‘leet’ enough in the first place ;).
You could also invert this. There are many on StackOverflow who spend ridiculous amounts of time answering those same questions that you and others are asking. Most of the time you can’t just “cheat” to come up with those answers. At the least it would take hacking together a sample, but personally I find myself having to do a lot of googling and using trial and error to come up with the answer and I find that I can learn just by helping others. Don’t get me wrong though, there have been times I’ve asked questions on SO too, but I tend to do it only as a last resort when I’ve exhausted all other options.
You have conveniently phrased the old method to suit the point. In the past when you got stuck, you went to experts exchange and got caught in a mess where the exact question you need is there but you wouldnt be allowed to see the anser.
I would say half the time following a good Googling i’d find an answer in the PHP manual, which would then lead to some other insightful functions and require some actual thought rather than just copy/paste the answer. It really does get that bad on stack at times. Don’t get me started on regex…
Experts-exchange tip everyone must know by now – go back to Google, click cache and scroll to the bottom for your answer :).
Pingback: Stackoverflow Makes Hackers Lazy « Wobbits
It’s not a technology’s fault if you get lazy. If you want the exercise, you’ll still walk instead of taking the car or some other form of transport. The same goes for sites like SO. There is no one stopping you from still doing projects the “old awesome and fun” way except you yourself.
I spend a significant amount of time on SO every day, but I rarely ask questions (2 in 17 month). Unlike you I actually feel like SO does exactly the opposite than making me lazy, because quite often I actually look up stuff I only have a vague idea about to maybe come up with an answer.
Try answering questions, even in your main field of study, to regain that feeling of discovery and inspiration.
Sent from my iPhone.
You can always not use stackoverflow, you know? 😉
All kidding apart, i guess it really depends on how big and/or complex your project is. I doubt anyone will take the time to do a full implementation for you and posted in SO.
One of my last ventures was a prototype with GPS traces and the google earth plugin. Apart from general googling, my main source of documentation was the javascript, jquery, and earth api docs. But i have to say that stackoverflow saved my neck once or twice with a couple of new ideas on how to approach the problems i encountered.
@alimbada exactly my thoughts. If you are the one answering you get exactly the opposite experience.
When your answer happens to be incorrect when you test you await the right answer. Also there are discussions about the best way to do something. Lurking for questions to answer helps you spot other questions that you find interesting and want to see the answer.
Well, I think you have to watch yourself for not abusing it too much.
Sometimes it’s good to be stuck, trying to find a solution and learn from it.
But, many times you’re just doing a mistake but I haven’t realized it yet. This could be easily solved using stackoverflow. Also, you would receive a lot of suggestions. It’s kinda not trying to reinventing the wheel. And like Pedro said, it could be a life saver.
Nonsense! Do you refuse to use books? Not avail yourself of libraries? Don’t wander through (pick your favorite department) the halls of your academic situation? Of course not, that would be majorly stupid. This is no different— in fact what is needed (possible weekend idea coming up here) is something to automate the process… Information is like butterflies— go net yourself some.
Have you been to the rest of the internet? If I want to copy and paste someone else’s shizzy code I could do it anywhere.
SO helps to curate the best answers.
Copy -> pasters are going to copy -> paste(relevant: haters will also hate). With SO or not. People that want to understand what they are coding, and get answers when they are stuck and learn from those answers can now find the best ones that are curated by a huge community.
Your argument is the equivalent of “People that use cars are fat, because they could be walking but they use cars as a crutch.”
People that will be fat will be so cars or not, and people with cars that like to work out can now do so faster and more efficiently.
Stack Overflow is there to help you. In that spirit, since it is your desire to stop being so lazy, there is a new 50 questions per 30 day period limit. You’re welcome!
http://meta.Stackoverflow.Com/questions/89217/50-question-per-month-limit.
I have to disagree (with the post) and agree with most of the comments — Stack Overflow is a tool you can use to waste less time, not learn less. We as developers, and an entire society for that matter, should use anything that allows us to learn from other’s mistakes and build upon work others have done. If we didn’t, we wouldn’t have most of the technological achievements we enjoy today.
Simple Example; if I insisted on writing custom JavaScript for every browser’s quirks every time I wrote an application because I felt using jquery or some other framework made me stupider, I’d be a bad developer/hacker. Oh, and don’t use Google, it makes you less leet at scouring the internet manually for nuggets of useful information.
C’mon, use the tools provided to you effectively. That’s one of the differences between a good developer and a great one.
Pingback: Stackoverflow Makes Hackers Lazy - TextChannels
That is a super-peachy-keen post. Thanks for really blathering on like that! Seriously, I don’t think I could have spent more effort wishing for something heavy to fall on me to erase that nonsense from my mind!.
I’ve been wondering about the similar cofactor myself lately. Delighted to be seeing an individual on the same scale wavelength! Nice article.
Stack overflow suffers from the same problem as yahoo 360 — an avalanche of duplicate questions. When someone asks a question, it should not go to “questions”. It should go to a queue of “can this be answered by a google search”. Each question there is used in a google search by some service and the top 10 results are listed. A few users must select “no, the answer is not in these results” for the question to move to actual question, otherwise it gets kicked back to the asker w/the same google results and a comment like ” google can answer questions like that.”.
Sorry, but your flaw is this step:
Copy/paste code from answer.
Very, very rarely does a question in SO give you such a complete answer that you can just drop in your program. Quite often it gives you a guide, or at least code that you have to modify to fit your program. There’s still a lot of room to tinker. Not to mention, SO is simply a shortcut to the same destination- if you truly get stuck, sometimes no amount of tinkering can yield you an answer. Sometimes there’s no choice but to ask for help- whether from a manual, a mentor, a forum, or SO.
I agree totally, but there’s a small compound to the lazy. It also stops us from really realizing some of the “answers” are just bad..
A question on ruby I read the other day was looking for a way to treat the first element of an array different from the rest.
The “answer” was to check if each item in the array was at index zero.
If(index == 0) then p ‘first’
else…
What followed the answer were more of the same.
I’m sure many copied the answer and never gave the extra processing a second thought.
Yes it’s small (well unless you’re doing it a million times), but it’s endemic.
Many eyes MAKE shallow bugs. :).
So…how should you do it?.
Oh… one last bit.. It is a great tool. I use it almost every day at work, but I agree with the sentiment. Sometimes it’s too easy to sit on it.