2017 Year in Review: WordPress


CC 2.0 image courtesy Jonathan Keller on Flickr

With the new year upon us, it’s always worthwhile to reflect on the previous year. So, just like I did last year, I compiled a list of general stats about this WordPress blog from 2017:

Read more of this post

2016 Year in Review


With the new year upon us, it’s always worthwhile to reflect on the previous year.

So, just like I did last year, I compiled a list of general stats about this blog from 2016:

Read more of this post

2015 year in review

2015 WordPress blogging stats image

The WordPress.com stats helper monkeys prepared a 2015 annual report for this blog.

The concert hall at the Sydney Opera House holds 2,700 people. This blog was viewed about 39,387 times in 2015. If it were a concert at Sydney Opera House, it would take about 14 sold-out performances for that many people to see it.

Some other general stats:

  • 40 new posts published.
  • 31,950 visitors each having 1.23 page views per visit.
  • 204 pictures uploaded.
  • The busiest day of the year was April 27th with 511 views. The most popular post that day was Microsoft Azure Essentials free eBook series.
  • The top referring site of 2015 was Stackoverflow.com.
  • There were visitors from 174 countries. More than one third of all page views came from the United States, followed by India and the United Kingdom.

Top 5 posts written in 2015

These five posts, written in 2015, received the most traffic:

  1. Microsoft Azure Essentials free eBook series (April 2015)
  2. Azure PowerShell cmdlets version updates (May 2015)
  3. Custom Telemetry Events with TrackEvent in Microsoft Application Insights (June 2015)
  4. Using Microsoft Application Insights in an MVC application (April 2015)
  5. How to enable line numbers for C# in Visual Studio 2013 (July 2015)

Top 5 posts of all time

These 5 posts have received the most traffic overall:

  1. Export an ODBC Data Source from the registry (July 2012)
  2. Using Notepad++ to write C# code (March 2014)
  3. Extending PhoneGap for Visual Studio to Android devices (August 2012)
  4. PowerShell: Invoke-WebRequest and URL links (December 2014)
  5. Creating a developer’s blog (March 2012)

Syncfusion Essential Studio license winner

For the past six weeks I ran a contest on my blog where one lucky winner would get a Syncfusion Essential Studio license of their choice.

I have since made the draw and today I am happy to announce the winner. It is:

Jawahar R. of Canada

Congratulations Jawahar!. He has chosen a license for the WinRT (XAML) controls. I hope you enjoy building some awesome Windows 8 apps with your prize Jawahar!

Thanks to everyone who entered and to Syncfusion for sponsoring the contest!

I hope to run more giveaways in the future so keep checking my Twitter feed and keep following this blog through WordPress.

Win a Syncfusion Essential Studio license

I am pleased to announce that I will be running my first giveaway on my blog. Syncfusion has generously donated an Essential Studio license for me to raffle off.

Syncfusion creates components and tools for the Microsoft .NET platform. The selected winner  will be able to choose a set of controls for ASP.NET, ASP.NET MVC, Mobile MVC, Silverlight, Windows Forms, Windows Phone 8, WinRT (XAML) or WPF. The controls also includes one year of support and updates. The Actual Retail Value of the prize is $995 USD.

This Contest is open to legal residents of Canada (excluding Quebec) and the United States who are over the age of majority in their province/state of residence. Please read the rules listed below thoroughly before you enter.

Click Here To Enter

Syncfusion Essential Studio license contest

  1. Contest Period starts on Monday, March 11, 2013 and continues until Monday, April 15, 2013 at 11:59 p.m. the Contest Closing Date. All times are Eastern. No purchase necessary.
  2. This Contest is open to legal residents of Canada (excluding Quebec) and the United States who are over the age of majority in their province/state of residence. The Contest is subject to all applicable federal, provincial, state and municipal laws and regulations.
  3. A total of three (3) entries are allowed per person. One entry will be awarded when the contest form is submitted. One (1) additional entry will be awarded to each entrant who follows Ken Cenerelli’s Twitter feed (https://twitter.com/KenCenerelli) and who follows Ken Cenerelli’s WordPress blog (https://kencenerelli.wordpress.com/) using the WordPress Follow button. Entrants must select the appropriate checkbox(es) on the entry form when entering to gain these bonus entries.
  4. Any attempt or suspected attempt to garner more than three (3) entries per person, any use of robotic, automatic, programmed or entry methods not authorized by these rules, shall be deemed as tampering and will void all of your entries. Entries that are late, lost, stolen, illegible, contain false information, damaged, misdirected, mutilated, garbled or incomplete, altered or otherwise irregular or that do not conform with or satisfy any or all of the conditions the Contest Rules will be judged void.
  5. One (1) draw will be made the week of April 15, 2013. The selected entrant will be contacted by Syncfusion Inc. with details on how to claim their prize..
  6. If a selected entrant cannot be reached within three (3) business days following the draw, or declines the prize, the selected entrant will be disqualified and forfeits the prize and another entrant will be selected until the prize is awarded.
  7. Participants are eligible to win one (1) Grand Prize, consisting of a Syncfusion Essential Studio License valued at $995 USD.
  8. The Grand Prize must be accepted as awarded and may not be transferred or exchanged.
  9. By entering this Contest, the winner consents to the sharing of their entry data with Syncfusion Inc.
  10. Odds of winning depend on the number of eligible entries received.

Being a Technical Reviewer

I was contacted last month by UK publishing house Packt Publishing about being a Technical Reviewer for their recently-published book WordPress Mobile Applications with PhoneGap (ISBN: 1849519862). I accepted even though I did not know a lot about the subject. However, the whole experience was a learning process for me in terms of both how the publishing world works and about the technologies I was reviewing.

WordPress Mobile Applications with PhoneGap book coverThe book is positioned as a way to:

  • Discover how we can leverage WordPress as a content management system and serve content to mobile apps by exposing its API
  • Learn how to build geolocation mobile applications using WordPress and PhoneGap
  • Step-by-step instructions on how you can make use of jQuery and jQuery mobile to provide an interface between WordPress and your PhoneGap app

The reviewing process is pretty straightforward. The chapters are sent to you by email as the book is being written and they are usually in Microsoft Word format. The chapters are early drafts and usually contain typos and formatting errors. Eventually those will be corrected by the book’s editors. Your job is to review the code and text for technical accuracy. You also make sure the chapter structure is logical and easy to follow for readers. Any corrections/clarifications/notes you make are placed in Comment tags as you do not edit the text directly. After you finish your review you then fill out an opinion questionnaire about the chapter you just read. The editors want to know what you would like to see more of, less of, if there were important topics that were missed and your overall score out of 10.

If you are interested in being a Technical Reviewer for Packt you can check out their Reviewing for Packt information page. Although you do not get paid to be a reviewer you will receive acknowledgement on both the “Credits” page and the “About The Reviewers” page where they will include a short biography about you. This is a great promotional tool for you as you can mention your blog/website address and Twitter accounts if you wish. As well, you will receive both a paper copy and an eBook copy of the book you reviewed. You will also get an eBook copy of any other book in their catalogue.

Being a Technical Reviewer is a great way to learn more about a topic and to see how the publishing industry works. It is also a neat way to see how books are put together and you can learn many useful writing tips which will help your writing in other areas including making you a better blogger. It will also especially help if you are interested in writing a technical book in the future. As a Technical Reviewer you will gain a publishing credit and it might just make your book proposal that much more enticing to prospective editors.

Formatting code on a WordPress.com site

I was recently reading an article by Scott Hanselman entitled How to Post Code To Your Blog and other Religious Arguments. In this post he describes the best way to show your source code on your developer’s blog. Many of the examples relate to using the excellent tool Windows Live Writer (WLW). This application allows you to compose and manage your blog posts. You can import your WordPress theme, write your story, add images and preview how it will look all while you are offline. You can then choose to post a draft to WordPress for final tweaking (something I highly suggest) or you can Publish directly to your blog.

In the article Hanselman talks about the fact that you will probably want to add some code to your blog post to illustrate your article and mentions you could just copy your code right into your HTML. However, it will not have any of the color theming most IDEs incorporate. This will make the code harder to read. He then talks about using some of the syntax highlighters that are available. You can import the highlighters into WLW and the code will appear much like it does on your IDE. However you will need to also use a JavaScript file on your website so that the code can be rendered correctly there as well.

This process will work for any WordPress.org site since you have full control over the code and where it is hosted. With a WordPress.com site though you are limited in how much you can manipulate your blog theme and the posts within it. This includes the fact that you cannot append any sort of scripting file to your site. You can read more about what types of code WordPress.com allows on this support page.

You might be thinking about just inserting images of your code instead of playing around with formatters. This is something I used to do and I found it a much easier process. However I also find it very frustrating when I visit other blogs and I find a code snippet I need that turns out to be an image and not text. Typing this out just adds to my frustration. As Hanselman states in his article placing code as images “…is rude to blind folks, and not useful as GoogleBing can’t see it. Don’t do this. You’re a bad person.” The point about having your code indexed on Google and Bing is especially poignant as you want people to be able to find and use the examples you constructed to illustrate your blog post.

So are we stuck with having unformatted code in our WordPress.com blogs then? No – there is a solution. As part of Alex Gorbatchev’s SyntaxHighlighter project much of the source code formatting used in the WLW plugin and accompanying JavaScript file has found its way into WordPress.com. The sourcecode formatting shortcode can be wrapped around sample code to preserve its formatting and provide syntax highlighting for certain languages. By wrapping your code like this:

[sourcecode language=”csharp”]
RadioButton GetCheckedRadio(Control container)
foreach (var control in container.Controls)
RadioButton radio = control as RadioButton;

if (radio != null && radio.Checked)
return radio;

return null;

you will see output like this when you post your article:

 RadioButton GetCheckedRadio(Control container)
 foreach (var control in container.Controls)
 RadioButton radio = control as RadioButton;

 if (radio != null && radio.Checked)
 return radio;

 return null;

The [soucecode] language attribute can be used with multiple programming and scripting languages including C#, CSS, Erlang, HTML, JavaScript, Java, Perl, PHP, Python, Ruby, SQL, VB, XML and many others. If you leave the language blank then the code will default to plain text with no highlighting.

There are also some configuration parameters you can use to display your formatted code including changing the line numbers, collapsing the code window upon form load and disabling line wrapping. You can also choose to hide the toolbar that displays on mouseover. This toolbar allows your users to copy and print your formatted code.

Note: Placing the sourcecode shortcode tag in your WLW post for publication may cause display issues with your code once posted. Do not trust the Preview tab in WLW since it might not be reflective of your published article. Instead click the Post draft to blog button and perform a final clean up within the WordPress editor.

Finally, the [soucecode] tags will format and display your code exactly how you post it on your blog. So make sure your line spacing and indents are how you like them before you publish.

If you are a WordPress.com user and regularly post code to your blog I suggest you check out the [soucecode]shortcode. As you can see it is not a lot of work to make your code snippets accessible to all users. I and other developers will thank you when we visit your site.