Nicholas Skinner

Freelance website and web application developer

Services Offered

I offer a range of services from simple creation of static websites, to coding/slicing Photoshop PSD files, and writing fully functional dynamic websites, web applications with CMS (content management system) capabilities from scratch, i.e. the ability for you to add/edit site content yourself as and when required.


I hand code and validate sites against the W3C XHTML Strict 1.0 standard, testing them in all major browsers (Internet Explorer 7/8, Firefox, Safari).

Validating to standards helps to ensure both good SEO (Search Engine Optimisation) and accessibility.

If the project budget does not permit the use of a designer I can use open source designs from resources such as Open Source Web Design and Open Web Design. Alternatively 99designs offer a contest based service "thousands of designers compete to create the best possible design to meet your needs".

Dynamic Websites / Web Applications

For more advanced websites and web applications where there is a requirement for content to be dynamically updatable, contact forms, online payments, mailshots, RSS feeds, user login, I use the open source scripting language PHP (including object orientated techniques), and the database application MySQL which are widely supported. I am also experienced at using JavaScript (including AJAX) to provide additional front end site functionality.

I have experience in implementing a number of 3rd party APIs:

  • Google Maps / MultiMap / Mapstraction - Location based services (Estate Agents property listings, Vehicle Tracking)
  • PayPal IPN - Online payments and Subscriptions (Shopping / e-commerce websites)
  • Clicktell - Outbound SMS Text Messages
  • txtlocal - Inbound SMS Text Messages
  • Amazon Web Services (AWS) MTurk - Human Intelligence Tasks
  • Google AdWords - Pay-per-click Advertising
  • Right Move - Property Listing directory for Estate Agents
  • PostCode Anywhere - Mapping / Location based services
  • BT Web21C SDK - Voice calls, conferences, inbound / outbound SMS
  • CDYNE Phone Notify API - Voice call application integration, including TTS (text-to-speech)
  • JpGraph Library - Graphs (Website statistics)
  • Asterisk (PBX) Manager - Phone system caller ID management

Secure online payments are handled using SSL certificates, and GnuPG encryption (where a service such as PayPal is not suitable).

Search engine optimisation (SEO) on site is accomplished via the use of Apache mod_rewrite to provide "friendly" URLs (i.e. "technology independent" slash based /home, /services, rather than e.g. ?id=123), validating code to standards, using semantic tags, using relevant anchor text on links, producing Goggle XML sitemaps (dynamically generated if required), allowing for page titles, and meta descriptions to be set on a per page basis, 301 permanent redirecting old versions of pages, 301 permanent redirecting to have a single version of the site (e.g. or not both), setting up Google Analytics, and conversion tracking.

Separate CSS stylesheet / JavaScript files are used to keep code more organised and maintainable. Design changes can be made in a single place rather than through the site.

CSS Print Media stylesheets are used to improve the readability of core information when printed, by removing styling information only valid on screen, and removing unnecessary page elements such as navigation.

Secure coding techniques are used throughout development to prevent vulnerabilities such as SQL Injection, and Cross Site Scripting.

Embedded Hardware

Although primarily focusing on web development, in the past I have worked on a number of embedded hardware based projects including the following.

  • Parallax Basic Stamp 2e integration with RW210 RFID reader for a door entry system.
  • iRTrans (Infra red Ethernet device) web based control software for Sky Digital.
  • Cisco 7960 VoIP phone XML browser services including address book, email, weather information.
  • Telit GM862 GPS / GSM module integration (Python) with web based application for vehicle tracking / reporting using Google Maps API.
  • SMS text message printer 3 LED buttons to indicate open, closed, and message waiting / print message, along with a buzzer new message alert. This project used the Telit EZ863 for which custom Python software was written.
  • Synapse Wireless RF Engine based active RFID people / asset tracking system.
  • Synapse Wireless RF Engine based home automation system including monitoring of sensor inputs, and control of relay outputs via custom designed circuit boards.

Current Status:

Unavailable for new projects due to existing commitments.


Customer Testimonial:

"We have used Nicholas on multiple occasions and will continue to. He is fast, efficient and very knowledgeable. Our ideas are understood and transformed into requirements with no issues. We highly recommend Nicholas to anyone looking for a professional developer that thinks outside the box."

Customer Testimonial:

"Nicholas has implemented the first live version of our online lead management system for both our core and secondary property businesses. We are very excited about the increased productivity that will result from the better service level being offered to our clients. Great job and will definitely be back in touch as and when required!"

London based Investment Company