41 Development projects
Directory for Cooperative Coliving
Website with categorised and filterable listings of coliving spaces for workations.
- Filter flexibility on some classifications as enumerated scales (e.g. outside spaces from terrace to big garden; workspace from bedroom desk to coworking) enabling results to be expanded with degrees of relevence, instead of simply returning unhelpful 'nothing matched'.
- Multi-faceted classification system uses both structured and unstructured tags; which may be grouped by parents, optionally redirecting and hilighting child tags; plus enabling customisation of every view where values are consumed.
- Freeform rates, in which multiple unit classes may be declared with any duration and rate; the system creating summaries of these for common cases (e.g. weekly and monthly rates).
- Unusual mobile UI giving access to an almost fullscreen map with information panel below it as a single swipable view, instead of the more typical multi-modal/click-panel-close interactions. (Usability value to be ascertained.)
- SPA-style client-side mapping and filtering, using a compact base dataset, maintained as JSON, supplemented with per-property JSON data upon user interaction, thus avoiding server-side dependencies and database queries. (Obviously only capable of handling a smaller datasets, though under 75k gzipped for 1500 properties, not likely to be exceeded for many years.)
- Tags for all filter criteria preserved in the URL facilitating sharing. Clicked properties are preserved in the query string thus do invoke a server-side response to permit sharing when first accessed with a property query string.
- Given a huge variety of spaces and users, anonymised and unrated reviews to focus the user's attention upon their own interpretations.
- Fallback client-side rendering, should the server be unable to cache Instagram using a private API.
- The use of tags in a provider-specified order to classify spaces also supports a self-declaration community label/marque using the logo, in which any space may declare itself a "coliving community" by prefixing its core offer or values as tags e.g. «Hub House is a #purposeful #cooperative Coliving Community».
- Data stored in easily edited structured text format (Lua).
- Third-party data sources (e.g. Instagram, Facebook, Google) cached on the server to eliminate additional latency.
- Passable/overridable filters in URL, as well as settable with cookies, this statefulness allows the map and list views to be shared preserving the user input criteria.
- Some data always in-page for instant client-side changes and reduced server processing, and when unspecified shows all spaces in list view with 'disabled' styling thus ensuring all potential results appear on pages for SEO and first-time visitors. If prefs are set or passed the server trims the data set to send a lighter load.
- Unstructured locations and contextual adjustment derived from declared human-friendly strings, e.g. "Barcelona, Spain" only appears as "Barcelona" on the Spain page, but a space may declare it as "near Barcelona" or anything else appropriate for reference instead of displaying simply an unhelpful administrarive name.
- Tags permit optional space-specific custom details, e.g. the "meals" tag can be expanded with free-form text such as "full-board included".
- Friendly URLs e.g: /in/spain /with/pool
- Custom pages can replace or supplement entire categories; CSS can also easily be used to make changes to specific categories.
- Currency conversion with rounding to faciliate user information scanning and consumption.
- Instagram photos only render the two most recent official account photos, also showing both top-ranked and recent location-specific posts (where an Instagram location is known).
2020 — Conception, Web, Content Management
B2B Rental Marketplace for HSS
Bring an existing business and its processes online and up-to-date using a marketplace mediating with third-party suppliers.
- Multiple pricing and comission models to support both owned assets and third-party assets
- Per-class (category, product or variant) cascading inherited attributes, with ancestor and descendant overrides providing a variety of ways to control how suppliers add new items and values
- Mediated messaging, with client-supplier messaging relayed through an operator
- Supplier auctioning with deferred (countdown) booking assignments in cases of unknown availability
- Collection options using geolocation
- Flexible delivery class calculations assignable per-category and postcode
- Geographical search ranking availability of items with delivery constraints
- Ability for an operator to easily swap their CMS view to that of a supplier (delegate authentication) when handling operations by telephone
- Categorised product (and variant) listings with search
- Bespoke CMS handling categories, products and their variants with dynamic attributes
- Booking functionality (not calendared)
- CMS and API for suppliers
- Mobile app with push notifications and messaging for suppliers and customers
- Multi-device and multi-role authentication and notification settings
2014 — Architecture, Web, E-commerce
Product Website for Esofaber
Site to promote and sell a specific product line.
- Bespoke image slider handling multiple content parts (image, title, subtitle, price, inset image) and integrated as the core compoent of the page layout
- Image slider waits for the next slide's image to finish loading before progressing to that slide (a common issue on slower connections with every other slider implementation)
- Shows the name of the next item in the slider
- Responsive design (adapts to screen size and orientation such as for tablets)
- Feature products in the front page slider simply with tagging
- Automatic slider with manual controls
- Web fonts (to match the product aesthetic)
- Localised prices and shipping notices
2011 — Design, Web, E-commerce
Estate agency SaaS for duHome
Provide a customisable website for estate agencies.
- Fuzzy-logic search, gradually widening search criteria scope when not enough matching results are found, i.e. for every non-matching input criteria a corresponding potentially acceptable criteria would be used instead such as 1 bathroom instead of 2, with these criteria being colour-coded (match versus near-match).
- Comprehensive type-ahead search using multiple sources of data (names, telephones, locations, emails, prices), removing need for time consuming paging of adminstrative list views to find relevent records.
- Use of geohash indexes for high-performance geospatial property search.
- Use of deferred slideshow loading to improve performance and usability (almost unheard of at the time, most solutions simply advancing to to half-downloaded images on a timer, or attempting to download all upon page load despite potentially not subsequently showing them).
- Customer-facing functionality including geographic search and display of properties with mapping and slideshow
- Agent functionalities including search, management of properties
- Agency-owner functionality including customisation and configuration of website, and management of agents
- Support for multiple agency locations per site, and agents per-agency
- Activitiy streams with messaging and notifications for each agency, agent and property
- Signup for new agencies (clients) with a default name-derived subdomain
- Automatic geo-location and address completion when adding properties
- Image upload and optimisation for slideshows
- Email notifications when agents are not active on site
- Property owner CRM with agent association
- Editable print view with QR code for window display
- Utilisation of Moonstalk's internationsalistion, geospatial data, type-ahead search, and notification features
2011 — Conception, Web, Content Management
Website for Moonlighting
Manage new member registrations, room bookings and accounts for a combined coworking and accommodation provider.
- Disucssion list emails are handled through a bespoke system that appends a member's presence status and profile to their messages, and also rejects posts from expired members or on lists for which they don't have priveleges, thus removing the usual requirement of additional disucssion list adminstration.
- Automatic checkin using MAC address detection on the LAN when a member connects.
- Member directory and CRM
- Checkin system to indicate daily member presence
- Per-resource (e.g. bedroom) availability calendar
- Member accounts and bookings
- Meal booking and payment
- Staff task views (e.g. to see when rooms are being vacated, and how many meals must be prepared)
- Email and web discussions for members and staff
2011 — Conception, Web, Social
Moonstalk for The Moon Mill
Open-source web development framework and hosting stack using Lua.
- Automated filesystem to URL mapping for sites and applications, with no configuration necessary before use (including web server)
- Includes a bespoke low-latency NoSQL database which shares the web application environment and functions, whilst also supporting a task queue with seperate processes
- Internationalisation and localisation including handling for plurals and GeoIP
- Best-practice handling of script-loading, CDN assets, canonical tags, addressing, salted passwords, microcaching, deployment (via dCVS), etc.
- Many supplementary applications providing functionality ranging from calendaring to geospatial search
2010 — Conception, Server, API
PictureSync Website for Verse
Seperate site with service-provider/affiliate specific branding and downloads via referrer or argument.
- Ability to serve a ready-to-use service-provider specific download, hiding the other supported providers from the user.
Submission Utility for iView / Microsoft
Batch image transfer application for professional photographers using MediaPro / ExpressionMedia and submitting to third-party service providvers such as Alamy, Corbis and Getty Images, following specific procedures. Rearchitected based on several previously developed provider-specific application, to utilise generic behaviours with provider specific plugins.
- Unique cross-platform provider plugins, deployed with a single download and simply double-clicked to install. Easily constructed plugins using ZIP packaging with XML provider configuration and platform-specific processing scripts.
- Clicking an item in the validation checklist selects it in the media catalogue for correction.
- Automatically re-validates after corrections are made.
- Support of submission via disc (postal) or FTP.
- Report generation for printing when submitting via disc.
- Conditional metadata validation and review.
2007 — Development, Desktop, Photo
Aperture Plug-In for Digital Railroad
Upload images from Aperture via FTP.
- Utilised a two component architecture, a plugin gathered metadata, and a seperate standalone application performed the FTP uploads, progress feedback, finishing by updating Aperture's metadata status fields. This architecture was beneficial to avoid blocking the modal Aperture plugin architecture, and additionally allowed the standalone application to handle uploads from other applications, including via Drag and Drop.
- Ability to perform additional exports from Aperture and have them appended to an existing upload
- Saves upload status back to Aperture after upload
- Minimised (menubar) progress view
2006 — Development, Desktop, Photo
Social Networking Site for Indivibe
Design and build a nightlife events publishing and social networking site with regional versions.
- Photo upload with user, location and event galleries
- Location and user profiles with public and private messaging
- Friending with reciprical relationship indication ('strength')
- Simple colour-coordinated navigation
- Options to feature/hilight photos and sponsored events/locations
- Watermarked photos
2006 — Development, Web, Social
Digital Railroad Uploader for iView / Microsoft
FTP image upload application interfacing with iView MediaPro and providing metadata validation via a simplified workflow.
- Included bespoke installer for Windows version
- Metadata validation and file conversion procedures to match DRRs requirements before upload to the server
- Destination FTP folder selection
2006 — Development, Desktop, Photo
Mac Uploader Application for XtremeCamera
Very simple drag and drop JPEG upload application to interface with an existing website (not having an API and using cookies for authentication).
2006 — Development, Desktop, Photo
Mac Uploader Application for Gekko Images
Develop an uploader for a stock-photo service to replace an existing partially automated system of AppleScripts and a multi-step web interface, with a fully automated single-step solution.
- Transfers images and metadata from iView MediaPro catalogs to website, transparently through serveral verification and data transfer steps.
2006 — Development, Desktop, Photo
Mac Uploader Application for Fotografia
Bespoke FTP file and folder upload application for photo service.
- Folder structure verification
- Drag and drop (with custom interface focus)
2005 — Development, Desktop, Photo
MediaSock Protocol for Verse
Lightweight service discovery protocol and web-service API to facilitate handling a user's media assets.
- clients can utilise service discovery not only check with a low cost (i.e. via HTTP HEAD) if a provider supports the protcol, but also what methods and characteristics are supported by that provider (interoperability between clients and servers is notably not guaranteed by the protocol)
- designed from the outset for easy implementation by service providers; could be implemented simply atop existing page forms, using existing cookies for authentication and utilising other common API methods instead of requiring new implementations
- choice of implementation models for service providers
- fixed-string XML and values allow parsing of responses without requiring a heavyweight XML parser
2005 — Conception, Server, API
Website for Verse
Mac software publisher
- Combined version tracking and licence verification protocol (between webserver and desktop application), with an entirely web-based activation procedure (transparent licence key) [see the blog]
- Purchasing integration with PayPal
- Software licence generation and activation
- Software version tracking and usage reporting
Customer Satisfaction Survey for Romec
- User authentication and registration with assignment of multiple surveys
- Data capture forms in multiple parts with user-specific variations
- Dynamic reporting (employing logical filters), and Excel-compatable export",
- innovations = "Modular storage and analysis code base, - extensible, reusable and configurable (via plain text file)
- Recursive analysis (comparison between results)
2004 — Layout, Web, Content Management
PictureSync Mac Application for Verse
Batch upload annotated images to web services
- Optimised service addition and sign-in UI, including transparent post web authentication token retrieval (e.g. OAuth) using a simple 'becomes frontmost' check
- First application to upload both image data and annotations
- First application to interface between both multiple applications and multiple web services
- Comprehensive abstractions for web service behaviours with modular service plugin architecture including per-plugin version checking
- Co-branded builds with default sign-in prompts for service providers using an automated build system, and with provider-specific statistics (via a private website login)
- Only application to be able to upload images and then later sync the annotations (e.g. via Flick API)
- Only application to employ database-free metadata via file system extended attributes (i.e. for service upload IDs)
- Transparent licence activation after purchase on website
- Integral image and metadata manipulation functions
- Support for multiple disparate web-service APIs for uploads with an aggregate progress UI
- Interfaces with the file system and external applications to collect data, including support for standards-based emebedded IPTC/XMP and XMP sidecar files for annotations
- Fullscreen view
2004 — Conception, Desktop, Photo
Works Access Authorisation for DigiPlex
Migrate a paper-based business process management system to the web.
- Fully integrated system with multiple views (manager, reception, contractor) providing process filing and review mechanisms (with per-report activity log)
- Document upload facility
- User registration and authentication
- Multiple languages",
- innovations = "Streamlined the original paper-based process by elminating duplicated data, employing cross-referencing and implementing a status based approval process.
2004 — Architecture, Web, Content Management
OnDeck Mac Application for Verse
View iTunes track artwork and upload to a website
- First and only application to avoid polling iTunes every second or so, and instead more efficiently poll by simply calculating when the track ends, thus avoiding undue CPU load
- Use of variables for configuring metadata preferences
- Creation of JPEG artwork from iTunes PICT wrapper
- First application to provide artwork upload
- Locates artwork from disk, or extracts from iTunes
- Integrated Last.fm scrobbling
2003 — Conception, Desktop, Music
Web Promotion for Brightablind
Promotional site for service provider.
Power Calculator for DigiPlex
Solution for mobile salesforce to calculate utility rates.
- Editable rate tables (per location), inputs for selection of criterion and customer name
- Quotation result screen with print option
- Multiplatform executables
2002 — Development, Desktop,
Continuity Management System for DigiPlex
Online best-practice incident reporting procedure automation for a datacentre.
- Forms guiding a user through the incident reporting process, including providing multiple points of contact according to availability
- Backend databases and administration for locations, contacts (multiple internal and external roles, with individual calendar-based availability and regional holidays)
- Backend reporting for incidents by location with highest severity identification
- Email notifications with normal and priority addresses (for SMS)
- User authentication with anonymous 'SOS' login
- Multi-language support
2002 — Development, Web, Content Management
Website for Information Facilities Management
Upgrade UK industry portal from basic HTML to a dynamic CMS with subscription-based access.
- Integrated support within the CMS and layouts for topicis, related links and other metadata, enabling extensive cross-referencing between content areas.
- Login authentication system preventing simultaneous use of accounts and providing usage statistics for identifcation of potential abuse.
- Winner of multiple Business Services Association awards
- Migration to dyanmic architecture
- Implementation of subscription-based access (user and group based)
- Card payment authorisation system (via gateway)
- News and features CMS (with enhanced metadata support)
- Incorporation and adaption of banner system (off the shelf Perl)
2001 — Architecture, Web, E-commerce
Website for CBX / Sulzer Infra FM / Axima FM
Upgrade of site for service provider.
- Dynamic content selection with fallbacks for overlapping country/language static content employing dynamic URLs and a metadata store
- Publishing of short video editorials
- Visitor survey (bespoke aquisition with off the shelf desktop analysis)
- Automatic what's new feature using the metadata store
- Heirachical structure for 100+ pages with multiple regions and languages
- Press area including image gallery, PDF clippings and video editorials
- Callback request facility
- Registration-only articles
2001 — Design, Web, Content Management
Website for Aspect Education
Redevelop consumer site for international education provider.
- enrollment forms and cost calculator for courses and locations (200+ combinations with 7,000 dates and further options)
- CMS with multi-region and language capabilities, for page content, plus news and jobs
- Course finder (narrows choices through a multi-stage questionaire)
- Co-branded version for affiliates (distinct logo and contact details)
- Messaged board
2001 — Architecture, Web, Content Management
Website for UniqueYou
Consumer relationship support site with extensive articles.
- Highlighting of new content and comments only since last visit
- Online payment aquisition for offline processing using (secured) email
- Heirachical CMS with multiple content types
- User authentication with guest, member and subscriber access
- Card payment aquisition system
- User comments system (per article)
2001 — Architecture, Web, Content Management
Toshiba for Complet Computer Cover
Sales site for computer insurance provider
- Uses the WebShop system (listed elsewhere)
E-Tendering for CBX / Sulzer Infra FM / Axima FM
Auction system for online tendering.
- CMS for users and auctions
- Options for unlisted auctions and anonymous bidding
- Basic auction system with listing, bid history, and place bid function
- Map UI for direct access to pre-defined regional auctions
2000 — Architecture, Web, E-commerce
Online Delivery for Building Economics Bureau
Site for data publishing agency with subscription-based access to retreive datasets online.
- generation of repetitive array-processing code during database updates for execution at runtime (providing improved performance)
- Subscriptions module (usage and time based) for the (seperately developed) WebShop system
- Backend database import/upload with automated dyanamic ToC-code generation (from hand-formatted Excel export)
- Browsing of multiple distinct databases via static/dynamic ToC (depending on database structure) and data record page
2000 — Architecture, Web, Content Management
Website for Student Watchout
Insurance sales site targetted at students.
- Second-place in the Computer Weekly e-Business Awards 2001
- Uses the seperately developed Webshop system
- Affiliate tracking and backroom reports
2000 — Design, Web, E-commerce
WebShop System for Enigma
Comprehensive modular E-Commerce framework for deployment in various client sites.
- Whilst having similar functionality to Miva Merchant v2 (current at the time of development) this bespoke solution provided extensive options for custom integration. See the other E-commerce projects on here for some specific deployments.
- Shopping basket and wish-list supporting custom price calculators with multiple input variables
- Discounts (static and dynamic, from codes or links)
- Subscriptions (time and useage based)
- Affiliate tracking
- User accounts with multiple addresses per-user
- Product-specific supplementary requirements
- Distinct order and payment statuses
- Product availability restrictions (with potential for stock keeping)
2000 — Development, Web, E-commerce
Website for Summit Support Services
Site for service provider
- Dyanmic template loading static pages
- Pasword protected pages for access to standard documents (extranet)
E-Card for CBX / Sulzer Infra FM / Axima FM
Dispatch system for employees to email Christmas cards.
- Form to customise card display and select from several company brands, and option to select a charity to make a donation to (per sender)
- HTML email dispatch with server-side copy in case of viewing problems
- Logging of senders and recipients
1999 — Architecture, Web, Social
Website for ASHTAV
Site for UK association.
- Member database with profile editor
Executive Schedule for CBX / Sulzer Infra FM / Axima FM
Concept system for personnel coordination.
- Multi user calendar with event input
- User authentication and privileges",
- innovations = "Per-user key-based access to features (e.g. viewing, editing of specific calendars and events)
1999 — Architecture, Web, Calendar
Website for S.Com
Multi-country sites for recruitment consultants.
- Use of multiple frames with targetted reload for secondary navigation.
Website for British Institute of Facilities Management
Stakeholder site for UK industry organisation with 16k users.
- User authentication and profiles
- Backend database import and update routines (from MS Access export)
- Member directory (categorised browsing)
- Business directory (search and browse, with selective positioning)
- Staff directory (multiple group memberships)
- Message board (simple threading and archiving, with email notifications)
- Job listings (with agency-specific CMS access)
- Administration functions for all CMS/databases (with ACLs)
- Document storage/fileshare employing WebDAV upload (with ACLs) and per-user public folders
- Document library (categorised browsing)
- Transparent loading of external content (news feed and externally generated pages) into templates
1999 — Architecture, Web, Content Management
Website for CBX / Sulzer Infra FM / Axima FM
First site for service provider.
Website for AGET
Site for language translation agency.
RealTime Electronic Newsletter for European Teleconferencing Federation
Fortnightly email newsletter
- Document size kept under 80KB using minimal formatting and bitmap graphics
1998 — Layout, Miscellaneous,