Craig Porteous

Contribute, contribute, contribute!

June 20, 2018 by

A good friend of mine and co-speaker at SQLGrillen this year, Paul Broadwith (@Pauby), said this during a practice run of our presentation, not in a Steve Ballmer way thankfully. Although we were talking about open source projects at the time, the concept applies to blogging, organising and speaking at user groups or conferences, everything Community related really.

It all fell into place when I was talking to a co-worker about starting a blog and I could see she was getting really interested in the idea and thanked me for the inspiration. Why don’t I take my own advice and blog about how I contribute, contribute, contribute! I have been meaning to share lessons learned and advice I received on many topics so I’ll spread this over a few posts starting with blogging.


I started a gaming blog with friends some 10+ years ago that we would post reviews and first impressions of games on, with the ultimate goal of sneaking into large scale industry conferences like E3 under the guise of a journalist. It didn’t last long and amounted to nothing, as you’d expect. That’s also not what I mean by blogging here.

I’m talking about a technical blog.

The What

So, I’ll explain the process I went through when a colleague suggested I start a blog and you can tick the parts that you’re thinking too.

  • What would I even blog about?
  • I don’t know [Subject] well enough
  • Someone’s already posted about [Subject], and in more detail

Firstly, you don’t have to be an expert to start a blog and most people, no matter how knowledgeable, would not consider themselves “experts” when they usually are. Blogging is a tool to help you become an expert. It helps you grow as a professional in your field.

XKCD Comic

Secondly, we’ve all came across that blank or useless search result when we’ve tried to find a solution to something. If you’ve looked for it, I’ll put money on it that someone else has or will. Pay it forward and tell people how you fixed it.

If someone has already posted about a topic you want to write about or a problem you’ve fixed, think of it as a reader. Would you rather have one post explaining a topic a specific way or 5 posts from different authors with different skill levels and methods of explaining a method or process? More is always better. I have experienced this first hand, just not understanding an explanation of a concept then finding another post on the same topic that just clicks right away. You will help somebody, I guarantee it.

The Why

Think first about a problem you overcame, maybe something you couldn’t find a solution to online or your fix was different, (not necessarily better!). That’s your starting block. Take that and write about it. It doesn’t need to be lengthy but explain it the way you would/did to a colleague. You may find you’ll research the details further and learn more about the problem and solution in the process.

This is the WHY. Blogging about a topic increases your understanding and helps others understand it too.

The How

There is a lot of technical preparation to get your blog online but there is also a lot of easy routes to get started quickly.

My suggested route is this:

  • Name – Buy a domain name. Easy enough to do and I’ll echo the section on picking your domain name in Brent Ozar’s great post on this topic: Use your own name. Avoiding technology specific names that could restrict your options in future.
  • WordPress – one of the leaders in blog platforms. You can host a blog with them for free but you are subject to [] in your website name.
  • Hosting – Get a WordPress host. This is another cost but it’s often not significant and you have to invest in your career to move forward, right? I use SiteGroundand I do get paid for that link so feel free to find your own best fit.
  • Create your site – You’ll likely want to spend hours playing with WordPress themes until you get the one that looks just right but I’ll direct you to my next point in that case.
  • Don’t spend time on this. Unless your career is in web design or WordPress theming, these steps should take you no more than a half day of setup.

I have wasted days on tweaking themes, setting up sites just right and fixing layouts when it’s all just procrastination and admin work around what you actually set out to do.

So you’ve now got a basic site online and you’re staring at a blank post with a blinking cursor!

Pace yourself

Start off by setting yourself an easy goal of one post every 2 months. Now you need to start building up some ideas. You might overcome an issue or discover a new way to do something that took you a great deal of time, you don’t always want to blog about it right away. You’ll also have some months where you can’t think of anything to write. This is where you must pace yourself.

Anytime you come up with an idea or fix a problem, write it down quickly and add any details you can, like screenshots or code snippets that you might forget or not have access to later (error messages?). This is the start of your ideas folder.

If you manage to write a few blog posts one month, unless they are time-sensitive (release of new product for example), keep to your schedule. I guarantee there will be months where you won’t have any new ideas to write about or just won’t have the time or interest to write anything.

Tell people

You’ve written your first blog post and it’s up on your shiny new site. What now?

It can take a long time for you to get traffic to your site but you can help it along in a few ways.

Consider SEO plugins for WordPress, these will help your content reach the people who want it when they search on google. I have a single post that seems to get a constant stream of views consistently 200% higher than any other page on my site.

Actually telling people you have blogged is one of the easiest ways to get it out there. SQL related posts have this great hashtag on twitter, #SQLNewBlogger, designed to help new bloggers and will guarantee retweets from community leaders. Post it on LinkedIn too if you have a profile.


So, you’ve got a few posts under your belt and you want to do something more in-depth or maybe you want to just get better at what you’re doing.

Your first port of call here should be other blogs. See how others in your profession are writing, do they use lots of images, code excerpts and links? This is great to try new ways of getting your information across but remember one thing, it doesn’t matter if other posts are better, or longer or more in-depth than yours. It doesn’t matter if someone has already written about a topic or problem you have encountered. The more posts and content on a subject, the more choice readers have to learn in different ways and at different levels.

If you want some more structure consider writing guidelines. I started writing blog posts for SQLShack back in 2017 and they helped the consistency of my writing with their guidelines. Consider setting your own along the lines of:

  • At least 1000 words. That doesn’t mean waffle, take the time to fully explore and explain your topic)
  • Include at least 3 images. A picture paints a thousand words after all.
  • Include at least 3 citations or references. This should be sites you used or maybe references that back up the points you make.

These restrictions are a good start to getting your writing more consistent and refined and may result in larger blogs like SQLShack approaching you for paid contributions.

Try to think about the way you are writing. I am no literary expert and I know I still don’t get this right but you want to lead the user through your topic and keep them engaged. If this is about a problem you solved, share the frustration and the dead ends before revealing the solution but try not to waste the readers time. You don’t want them frantically searching for a TL; DR (Too long; didn’t read).

Happy blogging

Please, please, please reach out if you have any questions or want any more info. The more people I can help to start blogging, the more choice there is out there when I want to learn something new!

Craig Porteous
Professional development

About Craig Porteous

Craig is a Microsoft certified BI Developer & Administrator and has worked with the Microsoft SQL stack for over 8 years. From working with cloud technologies like AWS & PowerBI to managing enterprise level Projects & deployments, Craig is passionate about developing his skills. He enjoys contributing to a personal blog to give back to the SQL community. In his spare time Craig is an avid runner View all posts by Craig Porteous