Posts Archive
Here's everything I ever wrote. God help you.
Github Releases are no match for CHANGELOG.md
June 18, 2024
changelog, github, ux
I have noticed a trend recently of library authors abandoning their CHANGELOG.md files, in favour of Github Releases. For a library author, the choice is understandable. A Github Release message contains much the same information as a changelog, so why duplicate effort and risk having no sourc...
Why, after 6 years, I’m over GraphQL
May 24, 2024
ruby, rails, graphql, rest, openapi
GraphQL is an incredible piece of technology that has captured a lot of mindshare since I first started slinging it in production in 2018. You won’t have to look far back on this (rather inactive) blog to see I have previously championed this technology. After building many a React SPA on top of ...
Server Side Rendering for React + Apollo GraphQL Client
January 2, 2019
ruby, rails, react, apollo, graphql
In a previous post I talked about how I set up server side rendering of React components in Rails with Hypernova. I went on to build a complex Ruby based GraphQL data pre-fetcher because I could not work out how to do asynchronous pre-fetching of data in Hypernova alone. Well, it turns out though...
Pre-fetching Data for Apollo GraphQL Client
August 5, 2018
ruby, rails, react, apollo client, graphql
UPDATE: This post has been made redundant by my discovery of a simpler approach. Please see: Server Side Rendering for React + Apollo GraphQL Client. In a previous post I talked about how I set up server side rendering of React components in Rails with Hypernova. One detail I skimmed over in tha...
Rails + React Server Side Rendering, with Webpacker + Hypernova
August 4, 2018
ruby, rails, react, hypernova, ssr, server side rendering
I recently discovered Hypernova, a wonderful tool from Airbnb, making the unimaginable possible: server side rendered React components, in a Rails app, with no Node server required in development, or even production. In the post, I’ll walk you through how to make this a reality in four steps: ...
Easy SuckerPunch Asynchronous Mailers
May 14, 2014
ruby, rails, suckerpunch
For a Rails side project recently I finally had the need for a background task handler. Now traditionally I’d jump at Sidekiq, and for good reason. It’s sexy, relatively simple, and comes with a ton of niceties like automatic exponential back-off retries. For this project however, at least at thi...
I, Car
February 12, 2014
thoughts, futurism
The topic that’s got me - and it seems a great deal of others - hot under the collar lately is that of the ‘self driving’ car. As Google and others further the technology necessary for a world free from steering wheels, one can’t help but wonder just what that world will be like. Many have dabble...
What they don't prepare you for
November 24, 2013
svip, america, chocolate
Time for some serious business. Buzzfeed level serious. Today we’re talking about something a Brit holds dear and oft claims Americans do not. Today we’re talking about… chocolate. One of the many things friends and family repeatadly warn you of before flying out is invariably how shit the chocol...
Pivot early, pivot often
November 13, 2013
svip
This is how the weekend began. Its been a few days since the 48 hour coding grind that was the Launch Hackathon, and I think I’ve caught up on enough sleep to attempt a cohesive paragraph or two. Launch prided itself on being the largest hackathon ever, with 1,500 applicants. They didn’t all s...
Greater than the sum of its parts
October 19, 2013
svip
Up until now I’ve found it hard to articulate exactly what it is that makes Silicon Valley such a different experience to the rest of the world, but after a few weeks of living it, I think I’ve got it now. Let me take you through some of the mad things than happen here that are just considered no...
Cribs
October 13, 2013
svip
[Advanced warning, this is very much a Mum post, don’t expect any philosophical insights!] Several trips to IKEA , and several Amazon orders later, I can finally say that the five of us are looking pretty settled in at 126 Coleridge. Naturally, the house hasn’t quite acquired much in the way of a...
Surreal
September 28, 2013
svip
As I woke up this morning, horrifically hungover from yet another ‘work hard, play harder’ Friday night, to a team of Asian men disassembling all the furniture in our bedroom, I couldn’t help but reflect on what an incredibly brilliant and bizarre few weeks its been. This situation at least is so...
Ubiquitous Design
September 14, 2013
svip
It’s been a while since I blogged but the topic of this post has been on my mind since we landed. I’ve been noticing millions of subtle differences in the design of almost everything in the US compared to Britain. You might think that with no language barrier the experience couldn’t be that jarri...
The First Days
September 3, 2013
svip
The first commute, yesterday, went less than smooth, though I only really have myself to blame. Californian public transport, though surprisingly ubiquitous, is very confusing! Unlike the UK where even if we do have many private companies running the rail, we still essentially have one rail syste...
Inspiration
August 31, 2013
svip
Our first full day in SF started, for almost everyone in my 8 person dorm room, at about 6am. Bodies seemed to come to a consensus that despite all feeling absolutely exhausted, sleep was unnecessary. As such we were all waking up through the night, until most gave up as the sun rose. I don’t rem...
It Begins...
August 29, 2013
svip
I write this first post 3 hours into my 11 hour flight from Heathrow to San Francisco. Several of you asked me to write up my ramblings over the course of this… expedition, for lack of a better word, so do please bear with me as the nature of this blog evolves and hopefully settles down in time. ...
Proper missing image reprocessing with Paperclip + Rails
May 30, 2013
ruby, rails, paperclip
As SNGTRKR is still in its infancy, we find ourselves tweaking the image sizes our models have on a semi-regular basis. Fortunately Paperclip makes that a doddle; just a one line change to the model definition and away we go. Now all thats left to address is the missing copies of this new image ...
Migrating from Paperclip to Carrierwave
April 7, 2013
ruby, rails, carrierwave, paperclip
After experiencing some problems configuring Paperclip to behave the way we wanted with S3, I decided to move SNGTRKR to the Carrierwave gem. I had feared this would be a horrible breaking change, but in reality it wasn’t too bad at all. Nevertheless there were some undocumented or poorly documen...
Deploying Sunpot / Solr with Capistrano
March 13, 2013
ruby, rails, solr
At SNGTRKR we needed something to make fuzzy searching in two models and across multiple fields easy. In other words we needed an indexer. This was my first time setting up any indexing engine, and my research led me to Apache Solr. Part of the reason for choosing Solr over any other solution was...
Hello, World!
March 12, 2013
I have decided, somewhat under the influence of 37signals brilliant book, Rework that its time I start documenting all the even vaguely clever webby things I get up to day to day. This blog is where that documentation will happen. At this stage, I have no idea whether this will be of use to anyo...