Code reviews are an essential part of developing software. And potentially one of the most challenging parts, because it involves exercising skills that aren’t necessary to write code, like diplomacy, tact and judgement.
A problem that can be solved with code might only have one correct solution, but that solution can be written in many different ways. And many of those different ways satisfy other unwritten criteria, such as execution time, capacity for reuse, simplicity, comprehensibility, portability and consistency.
The Test-Driven-Development (TDD) process makes checking technical solutions to problems simpler because it puts an emphasis on identifying problems to be…
The web isn’t what it used to be. Back when I started my career there used to be far more independent, personal, technical blogs, and far more content being created on them and traffic going directly to them. It was the only kind of platform for sharing lengthy discourse, and you more-or-less had to set it up and fund it yourself.
Today the barrier to entry for publishing content on the web is much lower, there are many more voices, and they’ve become more centralised into a selection of platforms. …
I’ve recently worked with the team behind the Derby University website [https://www.derby.ac.uk/] and one of the details that I really like about the implementation of the design is that it features more than just fluid widths, it also features fluid font sizes. I’ll get onto what that means in another post, but for now I want to talk a little about using fluid widths.
There more variations to device size than can be reasonably handled with media queries and fixed or pixel-based widths, so fluid widths are a more practical and thus more useful for website layout and making the…
For all its flaws, I’m happy to say that my first version of RunMaps is online for the world to see at https://psyked.github.io/runmaps/
For posterity, here’s a couple of screenshots of the site as it currently stands, and scroll below for a little more about the reasoning behind all this fancy design work.
In my previous posts I’ve discussed the initial development of my RunMaps side-project and the subsequent switch over to using Overpass API instead of the initial Mapbox APIs. Now it’s time to pick up where we left the original development; improving the visuals by adding place labels and map markers.
Coming up with colour schemes for maps is hard. Fortunately there’s existing map providers like Ordinance Survey which have made their colour schemes easy to access (I grabbed some from this article) and with some effort devoted to mapping those colour schemes to the rendered SVGs I can transform the…
In my previous post, ‘Generating Run Maps with Node.js’, I talked through the winding path that eventually led me to a place where I’d hooked up data from my activities on Fitbit with data from the Mapbox APIs and created a scalable vector image representation of my activity. It’s been a few weeks since that last post, I’ve had the opportunity to develop this project further, and now I’m going to talk about the next significant change; dropping Mapbox.
Mapbox is pretty neat, but it’s an entire ecosystem of tools geared towards delivering custom styled maps, and I wasn’t really…
This tale of a project from hell (from Twitter, above, direct link to the original article) got me thinking this past week.
On the surface there’s the pure technical story, the gory details of a trainwreck of a project that makes for fascinating reading, but reading further into it and what really stands out to me is the efforts at deception that were employed to cover up the ongoing failures.
This is the portion of the article that really got me:
At some point, an official delivery was scheduled, totally independent from any kind of planning set within the…
I joined Deeson as a remote worker about six months ago, and to accompany this change in lifestyle I decided to take up running. Fast-forward a couple of months and I’ve signed myself up for my first half-marathon.
Working on the assumption that I do actually manage to survive the half-marathon I thought it would be a great idea to create a poster — something individual and unique — to commemorate the occasion.
If there’s one thing I’ve learnt from successful projects over the past few years it’s the value of identifying and building the Minimum Viable Product (MVP) and then enhancing it post-release.
Keeping the project scope narrow allowed me to build and release Duotone after a couple of evenings’ effort. (Read my initial post about Duotone here.) I haven’t shown the source code to anyone though, because it’s not exactly portfolio-worthy. However now that the project is publicly-available I can start building up a backlog of enhancement tasks for the core product.
It all started with ^ this Tweet. ^
Whist stumbling through my reading list I was impressed by the image filtering capabilities of the humble SVG, as demonstrated by Lentie Ward’s article: ‘Using SVG to Create a Duotone Effect on Images’ and decided to explore this further.
The end result is a single page application that I’ve imaginatively called Duotone, which allows you to select an image, apply a filter from a selection of presets and then download the resulting image as a new image file.
Achieving this effect isn’t actually too difficult, and involves two steps. The first…