Bitbucket is in many ways a better option than GitHub for code hosting. In particular, Bitbucket gives you the choice of Mercurial or Git, allows private repos on the free plan (so you can start developing in private then switch the access to public when the code is ready), and only charges you for the number of users who can access your private repos vs. number of repos. And Bitbucket is much cheaper than GitHub.
I disagree with the push for newbies to overshare on Github. Some of the code I wrote when I was learning how to program in middle school was completely awful. I'm pretty happy that it's not used as a representative sample of what I am capable of today.
It's one thing for a recruiter to say "hey, I saw you have a GitHub account..." It's quite another when the recruiter forwards your profile to a seasoned engineer and they make a DailyWTF post out of your code!
Also - you've received offers out of the blue, do you mean offers to interview, or offers to just join the company w/o interviewing?
I can see where you're coming from, and on one hand I agree because I like to keep a tidy profile, however I think it shows great character to see improvement in code over time.
I would assume that your poorly coded projects haven't been updated in some time, so they will likely be much further down on your Github profile. If you have much more mature projects to compare those old crappy projects against, it shows a real passion for learning, which is massively important to a recruiter.
Also: I added a clarification to the blog post at the end regarding your question.
It's not the old code that I'm talking about, it's more like newbie programmers not being fully aware of their limitations. They might put up code that they think is hot shit but is actually laughable to experienced people.
Or maybe that's a good thing - it helps prevent potentially bad hiring situations from happening?
Had a fellow developer not pushed me to just get on Twitter and install TweetDeck, I'm not ever sure I would've ever "gotten" it. Just like I hesitated trying Facebook because it seemed like a fancier MySpace, which itself wasn't (conceptually, to a non-user) different than when we built our own homepages by hand.
I'm glad I did get on it, though...I don't get as much utility socializing on it as some of my colleagues do, but it's been a great way to connect to random people whom I likely never would've reached/been reached by. It's also taught me the lesson to "just try it" for every promising service. Pinterest doesn't seem like anything much different than Tumblr + the masonry.js plugin, but the details in its implementation are worth appreciating, and only noticeable when maintaining your own account.
Good advice, but I don't understand why writing a book is the "quickest way to get ridiculed". If a developer wrote a book that provides value, is accurate, and contained very useful code samples, I can't see how that wouldn't increase opportunities.
EDIT: Totally misunderstood that the OP meant it figuratively. Apologies.
So I get that you misunderstood the original intent. But that's not gonna stop me from a small rant on writing a tech book. In a word: don't do it unless you really know what you're getting into. Writing an average/mediocre book is a massive undertaking, and if you want to write a quality book, take that and multiply it by 2 and add 20%.
Yeah, that's exactly what I meant. If you wrote an actual book on programming, then that's pretty awesome. Writing a book for a résumé, however, is not.
See https://bitbucket.org/plans to https://github.com/settings/billing for details.
(FWIW, I'm not affiliated w/ Bitbucket, but use it every day in my job and am quite happy w/ it. I also have a GitHub account.)