New Year's Offer - Bring in the New Year with Style.

For the New Year week only, get the Style Quickie LESS and CSS 'development environment in a block' for the give away price of just $15.

Web Sites

I build web sites using the open source Concrete5 Content Management System. Using a good CMS is the way to future-proof a web site and Concrete5 leads the way in usability, both for site owners and site developers. I offer pretty much anything from complete sites to emergency repairs, specialising in advanced development as a service to projects and for my own portfolio of addons.

Like many busy developers, I am so busy doing stuff that I never quite get round to working on my own site! 

The basis of what you see here was put together in an afternoon, from creating the MySQL database and installing Concrete5 to adding the gradient background, overriding the fonts of the default theme and making the banner slide through random images. 

I used many of the Concrete5 add-ons I have developed to facilitate this process and have generally used this site to showcase my addons wherever I can. Having the right tools to hand makes creating a site easier, faster, reliable and maintainable.

Of course, there have been subsequent changes as I add more support pages for my addons, but hopefully you get the general idea, and by using a CMS the updates are easy to stay on top off. With the right tools, it doesn't take long to have a web site up and running. When it does come to updates, with the right tools you can make changes easily and safely.

Addon and theme packages described on this site include both concrete5.6 and concrete5.7+. This site uses concrete5.6.4 and demonstrates many 5.6 compatible packages.

Documentation for concrete5.7 and v8 packages can be found at


I do magic development stuff with the Concrete5 CMS using php, JavaScript, jQuery, CSS and LESS. This site demonstrates what can be achieved by putting a little bit of that magic to use.

I like making Concrete5 add-ons that are the easy for others to use. Easy user interfaces. Easy to understand. Easy to grasp the concept of. Things that make an otherwise difficult job easier.

The sliding header banner is built using jQuickiejQuickie took care of all the script infrastructure and caught typos that would have broken the whole site if I had tried to do the same with a plain html block. Its a fact of life. Developers make mistakes. I make mistakes. Using the right tools minimises those mistakes and helps us fix them.

I have used a similar trick to tweak the link "concrete5 - an open source CMS" in the footer so as to reference that it came from me. Traditionally, I would have needed to override the theme and edit the php of the footer. Instead I used a snippet of jQuery in a jQuickie block. 

I also used Style Quickie to make easy adjustments to the CSS throughout this site, more about that on the design tab.

Hidden from your view, Front End Uploader is ready to add new images to the banner as and when I feel like it.

Also used throughout this site is Magic Heading to keep metadata consistent with page content and Last Updated to show when main content has been changed. Two site maintenance tasks that are now safely automated.

The tabs on this page use Magic Tabs, an add-on that chops a page into tabs simply by inserting a block where each tab is wanted. It comes back to one of my opening comments. Magic Tabs is easy to use, but behind the scenes has some clever engineering so that site builders can simply get on with their work without worrying about the code behind it.

I have used the Universal Content Puller coupled with Blocks by AJAX to load the community leader badge and mugshot - it wasn't by any means necessary, but it shows the block in action cleverly doing its stuff inside a tab, so this content is not loaded until you actually click the Web Sites or Support tabs.


The theme used through most pages of this site is Magic Yogurt, my own Magic Data enabled wrapper for the default Greek Yogurt theme.

From the Magic Yogurt baseline, which looks just like Greek Yogurt, I then tweaked the appearance using Style Quickie. I could have edited some colours using theme customisation or provided some override style sheets, but using a Style Quickie block in the global header was much more convenient and I could use LESS to get some nice effects working for very little effort. At the same time, it is easy to come back to and make changes and I could even leave comments in the code.

I am not a theme designer in the graphic sense. If all you are looking for is an original theme design, there are theme designers who have a better eye for a new theme design than I do. 

So why am I writing about design? For a web site, design cannot be independant of engineering. Behind a theme design you need good engineering. There are some beautiful Concrete5 themes out there with, behind the scenes, mediocre engineering. There are also some with excellent engineering. I can take a graphic design and turn it in to a thoroughly engineered theme. To put it simply, build a theme into a site that works, that will carry on working, and that a site owner can confidently use.

Many of my Concrete5 add-ons help put the finishing touches to a design. Style Quickie is a quick, safe and easy way to add custom styling to a page or site and tweak a site theme without having to get inside the theme files. It still requires some knowledge of CSS, but the built in LESS compiler, resources and help links make that as easy as possible. Magic Tabs has put the tabs on this page purely by inserting a block where I wanted a tab to start. Magic Toggle works in a similar way and I have more add-ons on the way that do other useful stuff.



BBC Technology News Feed

Even a site with minimal content needs to read well and tell visitors what it is all about. Whether its purpose is advertising or reference, a site has a message. More important than any graphic design or neat tricks with CSS and JavaScript is just getting that message across.

Behind the scenes, all the bits and bobs a site is built from need to be documented so the site can be maintained in the future. The way a site is built is not something to be done once and forgotten. 

With addons for Concrete5, their use needs to be clearly explained and documented so site builders and developers know what they are installing on their site and how to use it effectively.

All of this is where my second career as a photographer and journalist plays its part. I know how to write and show things in a way that others can understand.

Just to spice things up, the news feed shown on the right is added using Universal Content Puller with the Universal Content Puller Sources 2 RSS feed displayed within a qTip styled wrapper from Magic Tipple. So it doesn't keep you waiting for the rest of the page, the feed is AJAX loaded using Blocks by AJAX. Another stylish wrapper plugin is available for Formigo Containers using the Universal Content Puller Formigo Containers Wrapper.



Whether its an entire web site or an add-on for Concrete5, it will need supporting.

My engineering principles mean that you should be able to do much of this yourself. Nevertheless, there are times when help will be needed and my commitment to support is part of the process. Where support has been needed, my support and solutions are consistently fast. 

Take a look at karma and badges earned within the Concrete5 community. These are a measure of support, promotion and development (much of which is supporting development).

On a more general level, I help others out on the Concrete5 Forums, have written some useful how-to's for Concrete5 and am an administrator of the Peer Review Board, the group of developers that makes sure new Concrete5 add-ons and themes are up to scratch. I have even written a how-to to help others Get marketplace submissions through the PRB.

Behind the scenes I have a suite of addons designed to make supporting a site easier. FlexJob Scheduler handles all my regular background jobs including Backup Job for simple database backups. For larger full site backups I use Backup voodoo.

"Any sufficiently advanced technology is indistinguishable from magic." - Arthur C. Clarke.

Last updated: 10 months ago