One of my favorite phrases is "Do things, tell people". I came across it in Carl Lange's eponymous post and could instantly relate.
Carl argues — and I wholeheartedly agree — that you need to do only two things to put yourself in a position to encounter interesting work: make something cool and then tell people about it.
Opportunities start appearing out of thin air. Make a cool little project, post it to Hacker News, receive job offers. Write some code to simulate your favorite RPG, go talk about it a local meetup, gain new friends and expand your network.
If all that seems overwhelming to you, realize that "telling people" can come in the form of a simple blog post.
The level of commitment is ridiculously low. It takes 10 minutes to setup a blog and start writing. But sharing what you are doing is incredibly rewarding.
I started this blog as a sort of "developer notebook". If you look back at the first ten or so posts, they are titled "Weekly Noise". I was interested in learning Node.js (the hotness at the time) so I just wrote about what I learned each week and what I was planning to do next week.
Later on, I wrote about an app I was building that used the GitHub API. Two years later, I still get several hundred hits a month on those posts. I've gotten about 20 different emails or tweets from people asking me about the project. These opportunities didn't ever turn into anything, but they easily could have.
Not too bad for an hour of work to document my learning.
I wrote a post about my side project queue that was read by a local developer. We meet for coffee (which was odd since I don't drink coffee...) and wound end up co-organizing a weekly meetup that has been running for over a year now.
Through that group, I've meet dozens of other developers and learned all about the cool stuff they work on. And it all started by just telling people what my list of potential new projects was in a 500 word post.
This past month I set a goal to write 20,000 words and tracked it with Beeminder. I had a small backlog of post ideas that I wanted to knock out, mostly opinion pieces of software. I ended up throwing several posts away; writing deep posts about abstract topics is hard stuff!
But I've found a huge source of material in my recent projects. I wrote three posts about my UX process for a work project, two posts about my open source RSS reader, and two more posts about general lessons learned from building a handful of personal projects over the past year and a half.
The writing was easy to do and the response has been very positive. Don't think that your blog has to be the next Joel on Software or Rands in Repose — just write about what you've done recently. Even if it doesn't seem that interesting to you, it will very likely be interesting to someone else.
I sometimes joke around with friends about my "super popular" blog. It isn't really super popular. But I have had some neat things happen as a result of writing on this blog.
I've had managers and co-workers tell me about how they enjoyed reading it. It has led to a string of desirable work projects, simply by demonstrating my ability and initiative in things like product development and Ruby.
I occasionally post my stuff to Reddit or Hacker News — sometimes it gets on the front page and I get 30k views in a day. I wrote a post that was in a magazine. Some of my stuff has been in Ruby Weekly and Sidebar. I have a couple hundred RSS subscribers and Twitter followers as a direct result of my blog.
It wasn't really difficult. And like I said, I'm not the next Coding Horror or anything.
But it is still pretty crazy. I'm just some dude in Indiana trying to write good code and share what I've figured out.
All I did was "Do things and write about it"...and you should too.