---
comments: true
date: 2013-11-04 11:18:23
last_modified_at: 2025-06-02
layout: post
slug: code-reviews-as-service
title: Code reviews as a service
categories:
- Workshops
tag:
meta: "A new service I’m offering: remote code reviews"
hide-hire-me-link: true
---
With [my recent move to self employment](/2013/10/lets-work-together/),
one of the things I am most keen to do is ‘educational’ work. That is to say, I
want to carry on being a developer, but spend more time educating and imparting
my knowledge. This is taking the shape of more [talks and workshops](/speaking/)
([two](http://makedo.in/leeds/css-workshop/)
[upcoming](https://shop.smashingmagazine.com/smashing-workshop-planning-building-front-end-zurich.html))
but also consultancy work; going into peoples’ offices and spending time with
_their_ devs on _their_ products looking at how best to tackle _their_ UI
problems. This work is very specific to the clients’ needs, not something that
can necessarily be picked up from examples used in talks or workshops.
However—as is often the case—budgets, locations, timeframes and a lot more can
mean that getting someone on site for a number of days is sometimes unfeasible.
This is a shame, but inevitable. These constraints, however, gave me an idea…
## Remote code reviews
Earlier this year—at [CSSconf.eu](http://2013.cssconf.eu/)—[Jed Schmidt](https://twitter.com/jedschmidt)
described me as a human CSS linter. I really loved this phrase because it
nicely sums up a lot of the work I do: I spend a lot of my time assessing,
rationalising and planning front-end projects, spotting potential pitfalls and
teaching people how to circumvent them.
I had an idea of a way to fuse my desires to work in an ‘educator’ role (I use
scare quotes as I feel that without them I would just sound really pretentious)
with a variety of clients in far-flung locations: remote code
reviews and [performance audits](/performance-audits/).
As of, well, now, I’m offering the same level of consultancy—on _your_ products
to solve _your_ problems—but with fixed deliverables in a fixed timeframe and at
a fixed price. You grant me access to your codebase—however you see fit—and I
spend a day scrutinising it, writing up a comprehensive review document,
providing refactored and improved examples, suggestion for alterations, and a
general critique of the code as a whole, and then we have a Skype call a few
days later to discuss it all, and answer any questions you may have. This isn’t
just me saying ‘this is good’ or ‘this is bad’; it’s a comprehensive, documented
review of your full site’s CSS, with a list of detailed changes necessary to
improve scalability, sanity, architecture and a lot, lot more.
## The result
The outcome of all of this is twofold.
Firstly, and most obviously, the quality of your code on the reviewed site or
app will be improved. The product itself will see benefits from a maintenance
and scalability point of view. There is a direct benefit to the product, site,
or app, in question. Talks and workshops are all well and good, but they only
ever deal with deliberately chosen examples that may have no application or
relevance to _your_ product. A review of your own code can deal with nothing
_but_ realistic examples.
Secondly, and _far_ more importantly, the review will give you and/or your team
a detailed review of the way you work in general. The review will act as a
lesson of sorts, tailored around examples of your own, on code _you_ wrote. This
means that, as well as improving the quality of the reviewed codebase, it will
improve the work you do on _all_ sites. Sure, the review will make the codebase
in question better, but it will make the work you do day-to-day a lot better
too. It will fix problems in the code I review, but it will also prevent you
making the same mistakes in future. By looking at the way you and/or your team
currently work, we can figure out a way of rolling out the improvements across
all of the work you do.
{% include promo-case-studies.html %}
## In a nutshell
* I get to work with people who clearly care a lot about the products they
produce (why would you order a code review if you didn’t?!).
* You improve the immediate quality of the codebase being reviewed.
* You learn how to circumvent and avoid making any of the same mistakes on
future projects, improving yourself as a developer.
For more information, or to arrange a review, head to [my work
page](/services/).
Arrange a code review!