If you are a programmer and don’t have a blog, then there is no better time than now to start one. Every developer should have a blog, for a very simple reason – Otherwise all your work is just going wasted!. I can bet that the best of your code or ideas would either be in some old email that you hardly have access to or archived or in some backup hard-disk waiting to be formatted or already formatted and all gone. All the thought, research and creativity that you would have spent would be lying just wasted and with little or no use. Having an online presence has really become a necessity in today’s connected world, and a blog is the best place to show your presence. I started off answering mdsn forums and then figured that most of the people had similar questions and I was giving the same answers many a times, which gave me the thought of blogging answers and posting links to them. So anytime someone asks you something or you do something awesome blog it, so that your work does not get wasted and more people would find it useful. As with the rule of three for refactoring, with blogging it’s just rule of one – _**blog it always **(even this blog is because some one asked me after I recently moved on to a self hosted blog)._ I have had a taste of blogspot and WordPress blog web hosting service, before moving on to a self-hosted blog here. I think you would have guessed which one I would suggest you to get if you are starting your blog – a self hosted one. Indeed there is some effort that goes in to maintain the blog, but its worth every effort that you put.
I use WordPress as the blogging software and am running it on a Linux server (had to change over from windows, as there were a lot of compatibility issues that I faced). WordPress is a very popular blogging engine and so has an immense collection of themes, plug-in and add-on that are available to enhance yours and your readers experience. Once you get your wordpress installed on your self hosted domain, which should be as easy as clicking a button, install the below plugin’s.
The first thing would be to **connect with [jetpack**](http://jetpack.me/). This would give you a lot of features including stats, social integration, publicize options and many more.
Integrate with** **Google analytics, if you want more detailed statistics than the one provided with jetpack. Once you get your code, you can use the plug-in to integrate with your site. This will add the necessary code in all your pages header.
Make sure you have a backup plan, as you would not want all your data to vanish off if something happens with the hosting server. You could either use vaultpress or use freely available plug-in to back up to popular cloud storage like Dropbox, Skydrive or Google drive.
Get a good theme for your blog, there a lot of free and paid ones out there.
Now that you have most of the things setup, it’s time for you to put up your first page, About me. This is very important as it gives a sense of credibility to your readers, so make sure you have one. For creating content on to your blog, you can either use the online editor or use some offline editor. Personally I use Windows live writer. I love using this and all my blogs are written using this. The one plug-in that you would want to get, if you are a developer is PreCode, which makes inserting code really easy. There are a lot more things that your blog would need, you would soon find that out and when you do, please leave a note of it in the comments section below. Happy Blogging!
Edit: Couple of people were asking about getting started with a free blog. Wordpress.com or Tumblr would be a very good option to start with. Personally I used Wordpress as I felt that better. The advantage with tumblr over wordpress is that you can link your custom domain name with tumblr for free while worpress charges for linking a custom domain. (You would need to pay for the custom domain in either cases). But then I ended up hosting all myself after moving away from Wordpress.com.