Author

me.jpeg

I am a web developer specialising in web driven applications using PHP, MySQL, Symfony and Zend and I am currently working for the The Drum in Glasgow, Scotland.

Most days I can be found frantically coding away with EuroDance in my ears and consuming what I hope to be a never ending supply of coffee... happy days!

The Adblock Wars - Stop blaming the victim!

Much to the dismay of the advertising and publishing industry, Adblock is indeed here to stay. But, what is the industry doing about it? For the most part, pointing the finger and accusing the end user of underhanded tactics. To that I say: Pot, meet Kettle.

ad-blocking-article

Over the last few months I have noticed an increasing number of articles surround Adblock usage, most of which are coming from advertisers and publishers perspective.  Within these articles the underlying theme is that Adblock is evil and people using it are:

Read more

How To: Track Outbound Links

Great! You have got visitors on your website, you can see they viewed several articles, but where did they go next?

outbound-link-tracking.jpg

Everyone wants to know why their visitors left their website and this might be for a number of reasons including:-

Read more

Increasing the barrier to entry by simplifying the process

The more we browse the web the more our experiences influence how we design and develop our own products. We isolate and extract the best experiences and replicate them to help guide and inform users as best we can. But are we really in the best position to decide what works and what doesn't? The simple answer is, no!

plan-vs-reality.jpg

Over the last few months I have been working on a major new section of a website and I was recently invited to sit in on one of the user testing session that was set up to test the work I had done.  In the run up to the user testing sessions we had identified that parts of the user journey were quite complicated for new users and decided to pre-empt any confusion by implementing IntroJS so we could highlight the main parts of the product and tell the user what they were expected to do. 

Read more

Installing and configuring Symfony2

Symfony2 is a fantastic framework for developing your web applications and services and installing and configuring Symfony2 is extremely easy.  With the use of composer and the Symfony installer you can get started in just a couple of minutes and with only a few simple commands.

Symfony2 Welcome Screen

Symfony2 uses composer as the package manager for managing all of the dependencies within your applications and is a prerequistie to developing with Symfony2 so we will install this first.

Read more

Easily validate your Schema.org and Open Graph Tags in your development environment

Validating Schema.org tags, open graph tags and testing how sites like Facebook, Twitter and LinkedIn will treat a link from your site has always been difficult to test in development.

localtunnelme.jpg

Some tools have allowed you to copy and paste HTML and although it is not necessarily the most convenience way to do things, it did allow you to progress.  Other tools require you to enter a URL which is crawlable in order to perform the validation but while the code changes reside in your development environment it can be a rather challenging to make these available for testing and generally there have been 3 options available to you: 

Read more

Disqus: How-To notify your authors of new comments

The commenting platform Disqus is really easy to get up and running and a great addtion to your blog.  However, there was one feature I needed for Inside the Agency that didn't appear to be as simple as it sounded.

disqus_logo_-_white_on_blue_background (1).png

An implied feature of any collaborative site (including Inside the Agency) is that each author who contributes to the site is notified of any new comments that were posted on their articles, but this is not a feature that Disqus handles directly.  Disqus can send notifications to each Disqus moderator when a new comment is posted but often the author is not a Disqus moderator so sending author notifications has to be handled outside of Disqus.

Read more

How-To: Tail Apache logs to Ubuntu Notifications

Like many other developers I aspire to write clean, efficient code and while I don't always achieve that goal I am always on the lookout for ways to help me in that pursuit.

error-notification-pic.jpg

It always makes me a little sad when I look at an error log file to try and diagnose a problem only to find it bloated with deprecation and notice warnings which are easily preventable with a little care and attention. I know you can turn off logging for these types of errors but I feel it is better to fix these issues rather than ignore them.

Read more

My Top 10 Linux Commands

Over the last couple of years my role has expanded significantly and I have really had to pick up some good tips and tricks to try and make me as efficient as possible.  One area that has had to grow has been my familiarity with linux, terminal and my comfort with the command line and so I thought I would share my top 10 linux commands which I use on a regular basis. 

work-731198_1280.jpg

Read more

Composer & Git Branch Names - A Doh! Moment

It was one of those moments of clarity followed quickly by a doh! from everyone.

children-593313_1280.jpg

We were trying to include a branch of one of our Symfony bundles in our project using composer but composer refused to see the branch.  We checked the repository and the branch was definitely there so we could not understand why composer was not able to check out the branch.

Read more

Sencha Touch for the PHP Developer

The beginning of the year saw me working on the latest version of the Herald Scotland app (both android and iOS versions were released at the beginning of May) using Sencha Touch and PhoneGap. App development is not one of my primary skills and the learning curve from my comfort zone of PHP to Sencha Touch has been a steep one and one which I'm still far from conquering, however I thought it might be useful to share some of what i have learned and hopefully steers others away from some of the issues I encountered.

traditional-page.jpg

If you only take away one thing from this article then it should be to forget everything you know about web development and start again... Sencha Touch is an entirely different beast to what you are used to.

Read more

Advertisement

Digital Ocean

Chris's Reading List

dev-human

dev-human

Things I was unprepared for as a lead developer

I've been a lead developer for 2 years. It has been quite a ride and there were a lot of things I was unprepared for. I've always been a sof... Read more

Moz

Moz

Great SEO Starts with Your Brand

Taking the time to really understand and define your brand allows you to be much more intentional and focused about the way you market your business online. Read more

TechCrunch

TechCrunch

Codie Is A Fast, Rolling Robot Toy That Teaches Kids Progamming Concepts

A robotics company that teaches kids how to code, Codie Labs, took the stage at TechCrunch Disrupt London this afternoon to show off their fast, rolling and.. Read more

KnpUniversity - PHP and Symfony Video Tutorial Screencasts

Fun with Symfony's Console Component

PHP and Symfony Tutorial Screencasts - with free videos, scripts, and code downloads! Read more

JAXenter

Self-promotion is a skill, but is that the skill you're looking for? - JAXenter

Do you want to hire somebody that's good at self-promotion, or are you looking for a certain skill-set? Perhaps you need to shape your job spec differently. Read more

TechCrunch

TechCrunch

When Crowdfunding Fails The Backers Are Left With No Way Out

A few years ago an enterprising programmer dug through Kickstarter's data to figure out how many failed projects there really were. Thanks to a trick in the.. Read more