Martin Hathaway

Church theme

WordPress theme for church and ministry websites.

This beautiful, responsive WordPress theme has been specifically designed with church and ministry websites in mind. (Coming Soon!)

While developing this theme I drew on my years of experience building church and ministry webites. From its modern aesethetic that will look great out of the box. To the wide range of purpose-built and customisable features, which will help you optimise the design to suit your own church or ministry needs.

The official release date of this premium WordPress theme for church and ministry websites will be in February 2015.

If you would like to receive an email notification nearer the time, click the "Pre-order" button and drop me your email address. (Just the launch announcement. No spam, I promise.)

MediaBlo.gs

Student blogs for AQA & OCR A-level Media Studies.

MediaBlo.gs is a Cloud-hosted WordPress Network platform that currently host 200+ students and and group blogs. These support the AQA and OCR certified A-level Media Studies courses, where students must submit their coursework and learning journals in a blog format. In addition to all of the standard blogging features, this platform also uses BuddyPress to facilitate collaboration and discussion between students and teachers.

When I joined Netherhall, it's Media department were already running a self-hosted WordPress MU installation. However, this was suffering from neglect. It was running a version of WordPress that was 2-years out of date. And it had not been developed to its full potential. After an initial round of upgrades and spring-cleaning I decided to rebuild the platform from the ground up. I sought input from the Media department, learned what student's needed from the platform, and then looked at how the platform could be improved.

Once the new Media Blogs platform was up and running, I looked forwards to further improvements and enhancements. However, I quickly learned that the Media department were happy with the system as it was. There was little appetite for pushing the envelope of what could be achieved, or to develop it into a consumer-grade web application experience. It was also clear that several of the ideas and ambitions that I had for the platform would require significant investment of both time and money. It could be something great, but this was clearly not going to happen on the school's dime.

In 2012 I started exploring the possibility of spinning off a commercial Media Blogs platform using the school's experience as a blueprint. This new commercial venture would be able to justify the investment to develop the platform to its full potential. Including features that, while beneficial to students, were beyond the scope or ambitions of the school alone. There are also several economies of scale that could only be achieved / unlocked by abstracting the platform into a commercial SaaS offering that is used by multiple Media department customers.

Video onDemand

Streaming educational videos directly into classrooms.

When I was at school teachers had to wheel a TV set into the classroom, in order to play you grainy and cringe-inducing educational videos. With the installation of a computer and projector into every classroom that is a thing of the past.

One of the last projects I undertook at The Netherhall School was to overhaul the school's digital video library. Despite the arrival of ceiling-mounted projectors into every classroom, I was surprised to learn that many teachers still keep shelves full of dusty old VHS tapes in their department offices. Even worse, they often had multiple copies of each tape, for lessons where several classes were timetabled to run in parallel.

What the school needed was a centralised, web-based media library, from which teachers could stream videos directly to their classroom computer and connected whiteboard projector.

My predecessor had made a good start in converting and hosting more than 1300+ movies, TV shows and video clips on a simple, internal WordPress blog. However, teachers had started to complain about the poor user experience. It only supported progressive download, which was slow across the school network. And the growing catalogue meant that it was becoming ever more difficult to find the videos they needed.

Here is how it looked like before I started the project...

The objectives for this project where to:

Improve the overall performance of the web application and how it served media across the network.

Re-design the user interface, with a strong focus on improving discoverability.

Implement these changes without any downtime during term time or impacting day-to-day usage.

New hardwareThis was one of the rare occasions where I got to touch bare metal and provision my own server hardware - inclduing upgrading RAM, installing a graphics card and new hard drives. Plus, I got to install my preferred Linux distribution; Ubuntu.

Media-streamingAfter evaluating a copy of Adobe Media Server that we had kicking about the office, I instead opted to use Red5, an open source media-streaming server.

Migration & backwards compatibiltyThe 'no downtime' requirement created some challenging project constraints. Specifically it meant that the new system had to be backwards compatible with the old media player and library file structure. The upside was that the migration could be performed in smaller chunks and without anyone noticing.

Web app user interface (UI)I decided to keep the WordPress back-end to the media library. However, I designed a custom WordPress theme / UI / front-end of the web application. To give it a nice modern aestethic and to make it responsive, so that it could be used by the increasing number of mobile devices within the school.

Advanced featuresIn addition to updating the existing library I also developed a number of new features and functionality to improve usability. Some 'bells and whistles' include:

User authentication using the existing staff / student AD.

Age-restrictions for certain types of content.

New category and tag based library structure.

Curated collections aka 'playlists' of videos.

Improved search facility.

Related videos and inline recommendations.

User ratings of videos by logged in users.

Responsive front-end UI to work across all school devices.

Unfortunately this project is currently hosted on premise by The Netherhall School and it is therefore not publicly accessible.

Web App

FTPvau.lt

Redundant storage for Plesk Panel server backups.

Server backups are definitely not the glamorous side of web development. Yet they are absolutely essential to smooth operations.

During the virtualisation and migration of Netherhall's web systems, I found myself looking into server backups for our new VPS. This ran Parallels Plesk control panel and the built-in options were simply to store backups on the same server, or FTP the backup files to another location.

As I researched redundant storage services I was dismayed at the apparent cost. An ardent Amazon Web Services (AWS) user, I knew that these services were charging more than 10x the actual cost of the storage space. Finally, I decided to try my hand at building my own AWS-based storage solution.

FTPvau.lt was originally created to 'scratch my own itch'. This simple SFTP-based web service has since been modified to allow multi-tenancy, staggered scheduling to reduce CPU needs, automation of backup recycling and other key operations.

It is an elegant solution and a pleasure to use. You simply point your Parallels Plesk backup process at the FTP service, and you can sleep a little easier knowing that you have reliable and redundant storage for your server backups.

Get Rackin'

In an age of virtualisation, Dockerisation and the Cloud there is still a geeky romanticism to handling bare metal and racking your own servers.

These days you are far more likely to find me logged into an AWS console than squirrelled away in amongst the racks of a datacentre. However, as users of these technologies, we still need an appreciation of the core fundamentals. After all, our work is still hosted on physical servers, somewhere.

Get Rackin' is a fun one-page website where you can rackmount different types of servers and other peripherals into virtual 42U racks. All meticulously recreated using only CSS3. It is also a showcase for HTML5 and jQuery drag-and-drop functionality.

Have laptop, will travel.

In 2015 I packed my life into one carry-on suitcase and set off to travel around the world, indefinitely.

I am spending 90-day cycles in each of Australia, New Zealand, Canada and the USA. Living and working remotely from planes, trains and hotel rooms. While also exploring a new city or destination every few weeks.

About me

I am a front-end web developer with full-stack operations experience and passion for crafting beautiful websites and web applications.

Back in 2003, I attended an "Introduction to Web Design with Dreamweaver" evening course. Although I never touched a WYSIWYG editor again, I have spent more than a decade since hand coding HTML, CSS, Javascript, PHP & MySQL.

During that time I have enjoyed working on challenging and varied projects. From simple website redesigns to helping build complex web applications. And been able to see them all the way through from ideation to implementation.