Thursday, August 07, 2008

Be Your Start-Up

It's impossible not to ponder striking it rich at a start up, but there's another alternative if you're looking to make some good money -- build your brand.

In January of 2005 I created a blog. I truly can't remember why I created it, but I do remember that I was making $60,000 a year. Then in February I joined ThoughtWorks and my blog became part of I had instant readership, but not a lot to say.

Two and a half years and a lot of blog posts later I turned down an offer that was $174,000 a year. This wasn't $174,000 a year because the work sucks. It was a good job, but I wasn't ready to leave ThoughtWorks. It's been a year since then, and I know it was the right decision.

Now, I didn't make millions, but tripling your salary in two and a half years is still quite nice. There's no question that my brand was responsible for my ever increasing salary requirements. In fact, when I was interviewing two of the three interviewers started their interviews with "I read your material, you've got exactly what we need here. So why don't you ask me the questions instead". My brand had already gotten me the job.

Building a brand isn't as hard as you might think. There's really only 3 things you need to focus on.
  • Writing
  • Presenting
  • Contributing
If you do all three of those, you'll have a brand in no time.

But, before you do those three things, you'll need to read two books that will give you the proper guidance.note: both books are required reading whether you are building a brand or not.

Once you have the requisite reading covered it's time to make your mark.

Writing isn't hard. Writing well is hard, but you're a programmer, so you needn't worry about that. No one expects you to be a good writer, they're happy if you are, but they're forgiving if you're not. Don't use your poor writing skills as an excuse not to write.

Don't know what to write about? The answers are all around you. Anything you do that's interesting, there's 100 people searching Google for how to do it. Any question a colleague asks you, someone is searching Google for the same answer. Anything that's valuable to you... yes, someone is googling for it.

Take the time to write the answer in a blog entry. People will remember if your blog consistently shows up in their Google searches.

Create a blog. Blogger is free and definitely good enough. Here's a few thoughts on blogging.
  • Don't roll your own, you don't need the maintenance headache.
  • Name it something simple, but be sure to include your name. Disco Stu's Ramblings is funny, but you want to build your brand, not Disco Stu's.
  • Buy your name as a domain and put the blog as a directory (I didn't do this correctly). If I had it to do over my blog would be at This is important for Google Page Rank. If you do it the way I did you'll have different page rank for your homepage and your blog. Not the end of the world, but not ideal.
  • Keep it focused. If you want to write about programming and gambling, create two different blogs. Also, avoid "Sorry I haven't written in awhile" posts. People aren't dying for your next post. They're subscribed because they want technical content, not stories about how you've been busy remodeling your home.
  • Keep blog posts short if possible. Anything over 1500 words is article material. If you can't find somewhere to publish the article, then your blog is fine. But, remember that people don't like reading long blog entries (like this one)
At first, stick to writing blog entries. They're not too hard and don't require as much polish. They also let you start building a catalog of material. Once you have enough similar posts, start rolling them into articles to post on InfoQ or other similar sites. Eventually, if you write enough articles, you can roll them up into a book. It will take years, but so does writing a book from scratch and doing it this way allows you to get constant feedback without any deadline pressure.

Of the 3 things you need to do, I think presenting is the hardest to get going with. You aren't likely to pick up a speaking spot at a good conference if no one has heard of you. So, you'll need to rely on your writing to build your brand a bit, then you can present on the topics that you write about. Alternatively, if you create some open source software that generates buzz you can also pick up a few speaking engagements. Getting started is the hardest part, but once you give a few good talks you'll quickly be turning things down because you just can't fit it in your schedule.

If you're serious about speaking I also highly recommend SpeakEasy. I spent two and a half miserable days at SpeakEasy learning how bad I was at public speaking. The experience was priceless. I can't say enough good things about what I learned in those two and a half days.

The last suggestion is the easiest. Contribute some open source software. There's so many ways to contribute.
  • Pick an existing project that you use and create a patch for an outstanding bug.
  • Extract something interesting from your codebase and release it as open source. You don't need millions of adopters. If you create something valuable to 20 people you'll gain 20 people advocating your brand.
  • Be the documentation guy. Almost all open source software suffers from poor documentation. Make it your speciality. You'll quickly make friends if you do the work others don't feel like doing.
  • Join a mailing list for your favorite open source project and be active. Be the guy that's always willing to help the recent adopters.
I'm sure there's other ways as well. It doesn't matter how you contribute, just get out and start contributing.

Oh, and don't submit patches as disco_stus_brother. You're name is your brand, use it.


  1. Unfortunately, two of your suggestions are at odds with one another if you want to have anything on your domain in addition to your blog.

    You can forward a domain ( or a subdomain ( to Blogger, but you can't forward a directory within a domain.

    So if I forward to Blogger, I can only have a blog there. If I forward, I can have other things at, but my PageRank gets split.

  2. Kris Kemper9:10 AM

    I think this is perhaps my favorite post that I can remember reading from you. Thanks for the advice. I would look forward to more posts on this topic, perhaps with more specifics on some of your points, or other example from what you have done (best conferences you've talked at, or greatest impact open source you've contributed to).

  3. @james

    "You can forward a domain ( or a subdomain ( to Blogger, but you can't forward a directory within a domain."

    really? I thought you could. That's a shame.

    I'd consider making your blog then. You can use whatever template you like and add menu items as if it were a homepage.

  4. @kris,

    Thanks for the kind words.

    I haven't been to a conference yet that I didn't enjoy, but QCon does stand out a bit. I love the diversity of QCon.

    I open source as much as I can, but I haven't done anything ground breaking. I'm not too worried about that though. I just build what works well for me, and if it saves other people time, great. Eventually I may create something that saves a larger audience time, but I'm not holding my breath. Again, 20 advocates is better than none.

    If I think of any other tips, I'll be sure to blog them.

    Thanks for the comment.

    Cheers, Jay

  5. This is more or less what I've been recommending to my friends, more or less. So, it's good to hear someone else say :)

    For one's blog, I'm not sure Blogger is the best choice. Never been a fan of the comment interface. Also, I've heard tales of pain when doing code snippets.

    For speaking, I'd also suggest finding a local Ruby group. More often than not, they are fairly open to people speaking that are interested. You can also start small, with a 5-10 minute 'lightning talks'. Speaking for the Boston Ruby Group, I can vouche that we're always in need of speakers (anyone interested in speaking at September's meeting? :))

  6. Your solution of pointing to a Blogger blog with a custom template works well for many simple sites. For non-blog-post pages (like an "about me") can easily just be blog posts with a static tab.

    Blogger doesn't support hosting other sorts of things, like files, so if I want to post about some code, I have to host the code somewhere else. There are solutions for this, such as linking to a GitHub URL or a Pastie.

    Basically, my point is that a one-size-fits-all Blogger blog isn't really sufficient for someone who is trying to develop his or her brand as a programmer, designer, developer, or software engineer or manager.

    It can be a very good starting place, though. (In fact, my blog is hosted at Blogger until I can finish my custom blog application and get all the hosting issues resolved.)

  7. @gaius,

    Ah yes, I see what you mean. I would solve that by having my own hosting as well as blogger. If I need to post something too large for a blog post, I zip it up and put it on

    If you have specific needs a custom blog might be worth it, everything is contextual right? =)

    But, the time you spend on maintaining a custom blog could have been spent creating blog entries or open source.

    I think having blogger and a hosted site is the best solution, but I recognize that your situation may be different enough that you need to roll your own. Also, I like your approach of using blogger for now. I'd hate to see people not blogging because they are waiting till they roll their own blog.

    Thanks for the thoughts.

    Cheers, Jay

  8. Robert P12:18 PM

    Regarding long posts: Really? "They" want short ones? I always find that the longer articles, the ones with substance and debate about the topic at hand (within the article, not necessarily the comments) are always the most interesting ones to read, and the ones I appreciate the most. Bloggers who write shorter posts have a much smaller footprint in my mind.

    Then again, maybe that's just due to my own personal preference to long, thought out discussions instead of quick back and forth communication!

  9. @robert - fair enough. In my experience I find that people complain when I write long posts. Maybe it's not the length but the content of my long posts. =)

    Cheers, Jay

  10. Jay,

    One more thing to add to your list. Jason Calacanis says:

    "In the early days of blogging Peter Rojas, who was my blog professor, told me what was required to win at blogging: 'show up every day.'"

    It's great to see new posts and articles and talks by you. Keep them coming.

  11. great post! definitely inspired me to start putting thoughts into words.

  12. # posted by Jay Fields : 4:37 AM

    Dude, you must be crazy to blog at half past 4 in the morning. =)

    Thanks for the tips, though. I just re-named one of my blogs. And I'm going to change my signature to my name on other blogs. Previously, I was using my site's URL as a signature, but who cares about my site, right? ;)

    Ruslan Ulanov

  13. This is an excellent post, thanks! I really enjoyed reading it and it is a point that needs to be addressed. Writing doesn't have to be hard, it has to be useful. Your stress on brand image is so true as well. It isn't always brought up in how to blog posts. Well done! I hope to read more posts from you.

  14. Anonymous12:33 AM


    What would you suggest to programmers who are in India or elsewhere not America?

  15. I'm not sure I understand the question. Is my advice too biased for Americans?

    Cheers, Jay

  16. Jay, this is a great post. Thank you. I started programming in Ruby and Rails a little over a year ago - as a hobby. I love it and I think it's what I'd like to do for a career. Unfortunately, I don't have an IT degree. Further, my carreer up to know has been in senior management at a telecommunications firm. Can I break into this market (doing the kinds of things you suggest) without an IT degree? To be honest I'm 45 and not likely going to get an IT degree at this stage of my life although I'm eager to learn.
    What do you think?

  17. @Chris,

    I don't have any type of degree, so I think you'll be fine. =)

    Cheers, Jay

  18. Thanks for the food for thought; I've often in the past pursued my "brand" under a nickname/persona. I'm changing that now....

  19. good, very good.
    Can I translate to Portuguese in my blog?

  20. @leonardo,

    Sure, just credit the original, please.

    Cheers, Jay

  21. This comment has been removed by the author.

  22. Great Post!

    Now, I feel more encouraged for create a blog. I will make my brand and will pratice my english

    Thank you!

  23. Hum I'm not sure buying would be a good idea... my name is way too long.

    But thanks for the article anyway, it was very interesting :)

  24. I don't use blogger but in the Advanced Setup it allows you to upload your blog to an ftp location. So it is possible to upload your blog to your host so that /blog can point to it, here's a link that might help:

    And Jay,
    Thanks for the inspiring words, I might just create my own blog! Keep up with the great posts.
    Btw, this post isn't long. Now Steve Yegge's posts are long ;)

  25. Wow that is a fascinating success story. One of my teachers in college said he would get job offers solely off of his blog [] which, fascinatingly, follows your suggestions. Maybe I can make over 100K as a code monkey! Suh weet! Bring it on.

  26. Hello,
    And here's my track to your post :)
    I even wrote a tip in my second post.

  27. Hi Jay,
    Great post, it has inspired me to start blogging and get more involved in the web community.

  28. I think doing a great job delivering is more important than personal brand.

  29. @Ian, me too, but I believe you can (and I) do both.

    Cheers, Jay

  30. Thanks Jay for inspiring entry. I just followed your advice and got my domain registered. I will work on your other two advices of presenting and contributing.



Note: Only a member of this blog may post a comment.