--- 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!