Stack Overflow and the Zeitgeist of Computer Programming (priceonomics.com)
An anonymous reader writes: Stack Overflow remains one of the most widely-used resources in the developer community. Around 400,000 questions are posted there every month. The Priceonomics blog is using statistical analysis to ask, "What does the nature of these questions tell us about the state of programming?" They see tremendous growth in questions about Android Studio, as well as more generic growth in work relating to data analysis and cloud services. Topics on a significant decline include Silverlight, Joomla, Clojure, and Flash (not to mention emacs, for some reason). The article also takes a brief look at the site's megausers, who receive a lot of credit for keeping the signal-to-noise ratio as high as it is, while also taking flack for how the Stack Overflow culture has progressed. "Others are worried about how Stack Overflow has impacted programming fundamentals. Some critics believe that rather than truly struggling with a problem, developers can now just ask Stack Overflow users to solve it for them. The questioner may receive and use an answer with code they do not truly understand; they just know it fixes their problem. This can lead to issues in the long run when adjustments are needed."
For me, I use stack overflow for library related issues, not language related. Dealing with bullshit subtleties of things like jQuery, instead of fucking around for hours trying to figure out why a particular function has a weird ass edge case, someone else has already figured it out and documented it. It just so happens that said documentation is the comments within StackOverflow.
The complaints remind me of the old usenet groups, especially C and perl programming. A few people appointed themselves to be the arbiters of what could be posted, and flamed anyone who didn't meet their personal standards.
On the other hand, take away that moderation and the site quickly degenerates into what /. has become. Given the choice, I'll take StackOverflow the way it is.
This is probably not going to be a popular opinion here, but I have a low view of developers who spend an hour writing code they could have copied off the internet in 5 minutes. Yes, there is no replacement for discernment. You shouldn't Ctrl+V code you don't understand. But to not even try Googling it indicates, to me, someone who is more interested in padding their hours than getting shit done. The solution, once arrived at, is probably not novel or better than what's out there, anyway.
Duplicate questions are discouraged on the site. This is problematic because the accepted answer will remain the apparent authority even while languages evolve or APIs change. I see it happen a lot with jQuery, for instance.
"Others are worried about how Stack Overflow has impacted programming fundamentals. Some critics believe that rather than truly struggling with a problem, developers can now just ask Stack Overflow users to solve it for them"
It's pretty rare that someone will discover on their own a better solution then a more experienced developer. I have learned quite a lot looking at other's solutions to a problem... in particular where the tool is not the best for the job.
love is just extroverted narcissism
Struggle up to a certain point. I had an algorithms professor who said, "spend 30 minutes on a problem", then when/if you get to a dead end after 30 minutes...
Doesn't mean "don't try this problem because this looks hard". Do try, but don't run around in circles.
I find it more interesting that some questioners will twist themselves into a pretzel to hide the fact that they want someone else to provide the answer to their homework problem.
I caught one of these miscreants by posting a solution with a non-obvious bug for a course in which I was a TA. When it came time to grade the assignments low and behold the verbatim answer appeared in no less than 100 students. Despite the warning posted on StackOverflow saying the code should be tested before use. None of the one hundred bothered running the code. Lazy bastards.
Yesterday there was a post titled "The History of SQL Injection, the Hack That Will Never Go Away ".
Someone raised a good point that the problem was more economics than technology.
Employers, with no clue about technology, "employing monkeys and paying them peanuts" to produce something that looks visually ok but hacked into existance underneath.
We, programers, work in an unregulated profession which keeps it dynamic, fast paced and forever evolving.
Regulation = stagnation
So, yes, there's a lot of crap code out there and it won't go away - live with it.
Without Stackoverflow years of man hours would be wasted struggling to figure out some problem that has already been solved by someone else.
Wasn't that the idea behind the free software movement, not having to re-invent the wheel each time?
What about re-debugging, re-attaching, the wheel each time?
If the strength of our profession is in the fluidity, speed of adaptation and evolution then something like Stackoverflow is essential.
If you really need the accreditation of a regulated profession then ask an interviewee for their Stackoverflow account to see what questions they've ask and answered.
Stackoverflow is the best thing that's happened to our profession that I can remember in my 25 years as a programer.