Summary of my top tweeted links during March

Top Tweets sent via BufferApp

Saturday 30th March
WOW!!! RT @ShawnWildermuth: Call me impressed with this HTML5 Canvas example: (tear it up) http://bit.ly/15YqPog
6 Retweets 0 Mentions 12.8k Potential 9 Favorites 140 Clicks

Wednesday 27th March
“Losing pride in what you’re doing turns you into a zombie” http://bit.ly/YeZY7J
5 Retweets 2 Mentions 7.3k Potential 1 Favorite 63 Clicks

Tuesday 26th March
How to hire a product manager – by Ken Norton http://bit.ly/UV6QmD
3 Retweets 0 Mentions 4.6k Potential 2 Favorites 363 Clicks

Sunday 24th March
9 Simple Tricks to Improve the OS X Finder http://bit.ly/YSUa36
1 Retweet 0 Mentions 3.4k Potential 5 Favorites 43 Clicks

Flat UI Design | A showcase of flat UI design http://buff.ly/WYICbL
1 Retweet 0 Mentions 3.6k Potential 6 Favorites 224 Clicks

Saturday 23rd March
Most Startups Should be Deer Hunters http://buff.ly/ZvV8UN
0 Retweets 0 Mentions 3.3k Potential 5 Favorites 102 Clicks

Making my blog suck less – Syntax Highlighting

Following on in the series of how I have improved my blog, its time to address the issue of syntax highlighting. I admit, this is something which I think has really let me down and something which is long overdue.

There are a number of difference approaches available to solve this problem, however the best approach I came across is from http://alexgorbatchev.com/wiki/SyntaxHighlighter. This is a javascript+css library which can be installed on your blog, which thankfully is a very simply task. The CSS you need to reference are the following:

	

The javascript I have referenced in shown below.

		

In my posts, I can then simply wrap the snippet in a pre block and assign the appropriate brush class to highlight the syntax.

public string test()
{
return "abc";
}

The following are a list of brushes for the different languages I have referenced.

C# – c-sharp
CSS – css
JavaScript – js
Java – java
Ruby – ruby
Python – python
Scala – scala
SQL – sql
Xml – xml

For those who are using Windows Live Writer, there is a plugin to make syntax highlighting even easier! This is available to download from http://www.codeplex.com/precode

Hopefully this should make code much easier to read in the future. Another approach I was tempted by is using GitHub Gists. Gists are snippets of code hosted on github which you can then embed into your posts, as shown below.

The reason I didn’t go down this route is that it makes it difficult to insert code when writing a blog ‘offline’ and when GitHub is down. As a result, I decided to stick with the classic approach for now. But what do you think?

Making my blog suck less – Retweet (via @Tweetmeme)

For those of your who haven’t come across Tweetmeme before, they are a Reading (UK) based startup aggregating all the links which are retweeted on twitter. Many say it is ‘digg for twitter’.

While my blog posts generally don’t get retweeted, I wanted to include a retweet button as an experiment to see if it will have any difference on the traffic, tweets of blog posts or my followers count.

To add the tweetmeme button onto my posts, I simply include the following javascript. Note, I’ve made some adjustments, firstly I have gone for the compact style, I have also manually set the url which the button relates to which is set by the blogger platform and finally set the retweet to come from me.

	
		tweetmeme_style = 'compact';
		tweetmeme_url = '';
		tweetmeme_source = 'ben_hall';
	
	

Making my blog suck less

While I’ve been blogging for a number of years, my theme and layout has never really had my full attention. This has resulted in a number of issues, poor experience and finding older content more difficult than it needed to be. As such, I’ve decided to give the site a face-lift. A lot of this has been inspired by Scott Hanselman and the tips he has given to improve his blog.

This post covers the initial changes I have made, why I’ve made them and some tips you could apply to your own site if you wished.

1) Added a notice bar

At the top of every page I have added a notice bar with links to various internal and external pages which I would like my readers to pay attention to and visit. These include various social sites such as GitHub and Twitter with the hope that by having them in the notice bar people will be able to more easily identify them. Of course, there still needs to be excellent content on those sites, but making it easier for readers to access should be a high priority.

2) Making my favourite personal posts easier to find

There are a number of posts which I’m proud of which new visitors might be interested in and as such I wanted to make it easier for people to find. The aim is to reduce the bounce rate of visits from search engines, but also ensure that this content can be accessible to anyone who might be interested in what I have written previously.

3) Clean HTML

One of my personal bug bears at the moment is having clean(ish) HTML and CSS. I used to let this slide, but over time I’ve come to realise just how important it is. Not only does it improve compatibility across different browsers, but it also improves the load-time as the HTML is more streamlined as well as allowing for a more consistent look across the blog. The added advantage being that the html is now in a maintainable state meaning I’m not scared of updating the template like before. The problem with this is that things might not look 100% correct – if you notice any problems with formatting, then please let me know.

If you visit my homepage, you hopefully will notice a number of other changes some of which I’ll cover in later posts. I’m hoping you will find some benefit in my new changes. If you think there is anything else I need to change, then please let me know.

OrcsWeb – Creating subdomains using ISAPI Rewrite

Over Christmas I moved my blog over to OrcsWeb. I had been meaning to move hosting provider for a while, however just never got around to it. However, in order to make the move as transparent as possible, I needed to create a subdomain of benhall.me.uk.  By default, OrcsWeb does not offer support for subdomains, you can map additional domains onto the account as long as you stay within your account limits, but you can only have one site (In terms of IIS).

However, hats off to the webteam (especially Desirée) at Orcsweb for helping me setup my subdomain, they pointed me towards the direction of ISAPI Rewrite v3 which is setup and ready to go for each site they host. Yesterday, Steve Andrews tweeted about how to do this, so I decided to share the config.

With V3 of ISAPI rewrite, you simply create a file called ‘.htaccess’ in the root of your IIS site. This contains all of your ‘rules’ about how to handle requests.

This is the .htaccess file for my website.

RewriteEngine on

#Redirect rss.xml to feedburner
RewriteCond %{HTTP:Host} blog.benhall.me.uk$
RewriteRule ^(.*)rss.xml$
http://feeds.feedburner.com/BenHall [R=301,NC]

#Fix missing trailing slash char on folders
RewriteRule ^([^.?]+[^.?/])$ $1/ [R,L]

# this rule directs blog.benhall.me.uk to Sites/blog.benhall.me.uk
RewriteCond %{HTTP:Host} ^(?:blog.)?benhall.me.uk$
RewriteRule ^(.*)$ Sites/blog.benhall.me.uk/$1

The most important section is the last block, this defines that if the request has the HTTP Host address as Blog.BenHall.me.uk, then rewrite the request to return the content from /Sites/blog.benhall.me.uk/ adding additional paths onto the end if required instead.

Now, when you visit blog.benhall.me.uk/index.html, the file is actually returned from /Sites/blog.benhall.me.uk/index.html.

However, for a long time I had a problem in getting this to work as I expected. Because I wanted a seamless experience, I didn’t want /Sites/blog… appearing in the browser’s address bar. It turns out the problem was that in the rule, I was including the full absolute path to the resource, instead of the relative path. By having the IP in the Rule (RewriteRule ^(.*)$ http://0.0.0.0/Sites/blog.benhall.me.uk/$1 ), it was causing a 301 redirect to occur which was being detected by the browser. By having the rule as relative, it would happen under the covers – without the user ever being aware of the change.

Technorati Tags: ,

New Blog Theme

As some of you are aware, I’ve recently started a new job at Red Gate Software, which meant moving house and setting up broadband.  This took a little longer than I wanted, my fault for not calling BT.  But tonight, I finally have broadband setup and working nicely.

As it’s a fresh start and I’ve wanted to change the theme of my blog for a while, tonight I’ve finally got around to uploading the new theme.  I think it’s cool!  Hope you like it, it should make reading some of my posts much easier.

Technorati tags:

Bloglines

BloglinesFor a long time now, I have been a solid user of RSS Bandit and it has served me well.  However, with me working more and more on different machines and no RSS reader on my mobile I came across Bloglines and it has definitely changed my RSS reading experience.

First let me explain why I am moving away from RSSBandit.  I am subscribed to about 250 feeds, and when RSS loads up and checks all my feeds, my certainly PC feels the hit. After it has been left open for a while it consumes as much memory as Visual Studio and if I happen to be running a VM and RSSBandit decides to check for new items, my machine becomes unusable.  I could keep opening and closing when I wasn’t using it, but it was painful to load up so I didn’t keep wanting to do it.  The second reason why I moved away, was because all my feeds where in one place. I could have installed the application and shared my feeds across my machines, but then I had would have to mark things as read on multiple machines which would have got annoying based on how I used to manage email.  My final reason was the lack of RSS support on my mobile,  I didn’t want my phone to handle all of my feeds and I didn’t want to be alerted all of the time so a offline application would have not worked for me.  Bloglines solves all of these problems for me.

Transferring from RssBandit to Bloglines was a nice experience.  Both support the OPML format so I could quickly export from RSSBandit and import into Bloglines.  Straight away bloglines displayed me the feed items it already knew about and started processing some of the blogs it wasn’t aware of.  Very simple to switch between the two, and if I didn’t like bloglines I could switch to another reader without a problem.

After a short while, Bloglines displayed all the news items for all of my feeds.  Bloglines does all the work server side, they keep a cache of all the RSS feeds so some popular ones (which as Scott Hanselman’s) will already be in the database so they won’t have to go out and hit the feed just for you. Makes it a lot quicker as you don’t have to wait 5 minutes for the feeds to be updated and processed, instead they are ready and waiting for you – even if you haven’t been on in a while.

The reading experience is surprisingly good. Bloglines have various shortcut keys to help you navigate around. j and k jump forwards and backwards over each unread item in the feed, m collapses the left pane, then n allows you to toggle the keep new status.  This will mark is not as unread, but as something which you should follow up on.  The item is then displayed and the bottom of all your unread items until you remove the flag.  To see past items, you select the range based on a dropdown which keeps the UI clean.  Switching between feeds is also very fast – so lag, no loading screens.

As for reading on my mobile, that’s also great. All of your feeds are displayed in a list, then you go into the feed to display all the items. Clean, quick, lightweight, with all the same features as the main site.

image To make life easier, I have added BlogLines and Sub with Bloglines buttons to my links menu in IE7. Now at a click of a button I can access everything straight away. Its Great!

One thing I wish it would do is a directly Post to Del.icio.us, only feeds with it at the bottom of the item have it at the moment, but having it on all of the items would be great.

Technorati tags: , , ,