I think it should be a combination of both GitHub and StackOverflow. GitHub is great to see if the person can code, and a very crucial part of hiring. StackOverflow is great to see if a person can communicate, which I think is as important as having the ability to code.
I've come across many programmers that can code well, but had horrible communications skills. It's always difficult to interact with these programmers. I spend more time extracting the meaning of what they're saying rather than getting work done.
StackOverflow primarily exposes their addictive game-playing, not their communication skills. The rep/badge bullshit encourages inane responses, and the wiki aspects cover the tracks.
It seems to be more about the detailed and correct answer voted up the most that you find from searching something on Google, for that it works really well, not being part of the community there I don't care about that other 10 half assed replies for badges/points
They have a very visible group of users that post a no-assed answer as fast as possible and start doing the same google searches the asker did to pad out their answer. Their bullshit answer will be at the top initially, so they'll have the means to cannibalize the knowledgeable users who follow.
The reality is that many people cannot communicate anywhere, so if they are writing good stuff on Stack Overflow, they are probably going to have some ability to explain to their team how their code works. (But it also means that they are the type of person who is happy to waste an hour replying in detail to some dumb person on the Internet.)
GitHub showcases communication skills via project documentation (the documentation for bottle[1] is great), commit comments (kangax[2] often has concise, prescient suggestions for changes), and the like.
What happened to people who can write successful products but not yet been open sourced?
This happened to John Carmack, Jamie Zawinski. They are probably too busy in making stuffs work then writing answers on Stack Overflow or committing code to GitHub.
Some people are plenty mentally stimulated at work and don't feel the need to work on their own projects in their spare time. And sometimes your professional accomplishments are significant enough that a side project is not likely to make you a much more attractive candidate. The people who "do both" often don't fall in these categories.
Also a lot of companies don't want their employees to write code for anyone else and will actually see open source contributions as a major red flag.
Also a lot of companies don't want their employees to write code for anyone else and will actually see open source contributions as a major red flag.
FUD. I work for a very large corporation, and open source was definitely not a negative when hiring me. Many very important parts of our business are based on open-source technologies. (And many aren't, FWIW.)
But if the code has copyrighted issues, then how can I show publicly? I usually have a copy of repository for my past projects and I don't mind to show it to people who interview me.
Also I think if I need to put code on GitHub, it has to be some software for more generic tasks.
I've come across many programmers that can code well, but had horrible communications skills. It's always difficult to interact with these programmers. I spend more time extracting the meaning of what they're saying rather than getting work done.