Talking robots! Let's talk about APIs

What is an API? API stands for Application Programming Interface, let’s break that down: Interface - Every device we use has some kind of interface. Your TV has a remote with buttons on it, while a light switch has an even more straightforward interface- on or off. We use these interfaces to get the device to do what we want. Application Programming - The Application Programming bit is easier to understand. An API is how applications talk to each other. All software that you can interact with through code has some form of an API. ...

March 11, 2022 · Alex Clifford

AWS S3 UTF-8 Content Disposition

Have you ever tried to make the download filename of an AWS S3 object be in Korean? No…? Being a developer who, until recently, had only written in English, I hadn’t either. However, it turns out using some UTF-8 characters in S3 object request parameters can lead to some interesting errors. How to Change the Filename of a Download When downloading a file directly from the browser using a HTML anchor tag, the download=<filename> attribute can be used. However, the attribute will only work for same-origin URLs and the blob: and data: schemes. For example: ...

February 18, 2022 · Chris Wood

Rolling back AWS Elastic Container Service (ECS) Deployments

What is ECS? AWS Elastic Container Service (ECS) is a fast and popular way to orchestrate containerised applications in AWS’s cloud computing platform. ECS comes with autoscaling baked in and natively runs containers on AWS’s Fargate serverless compute engine. What makes ECS particularly nice to use is that it abstracts away much of the operations management that comes along with rolling your own deployment, either on-site or on cloud-based computing, such as AWS EC2. ...

October 13, 2021 · Chris Wood

Upgrading to Rails 6.0

Introduction Whenever a Ruby on Rails developer hears the phrase “New Rails update!” they will no doubt experience a mixture of excitement and fear. It’s always very exciting to see the new tools that come with a new Rails version and all the new possibilities that go with it. But at the same time, you know that you are bound to have some hiccups with some legacy code or some old gem that you use on your application. Nevertheless, I decided it was time to upgrade our Rails app. ...

September 29, 2021 · Victor Palombo Silvano

A developer team's approach to not having a Product Manager

Back in July of this year, our Product Manager here in the Consumer Team at Resolver moved on to a new job. This was a great loss both for us and the wider company and we knew that it would take several months to find and recruit the right person for the job. During the interim, it was decided that we would try to become somewhat self-sufficient, with our Tech Lead, CTO, and Head of Content all pitching in and directing our efforts over the following few months. ...

September 15, 2021 · Poppy Rodgers

Creating a Gem in Ruby: a Jewelcrafting guide for Developers

What is a Gem? Gems are small chunks of code used to perform specific duties without interfering with, or becoming a direct part of our code. The code required for a gem will still be a part of our project’s ecosystem, but we will ultimately remove some overhead, and avoid unnecessary duplication by using a gem instead of coding it ourselves. Why create a Gem? Gems are a helpful byproduct created when you either have a piece of self contained code, or else when a developer realizes the code might benefit others. If we want to use that code elsewhere or want to share it, that’s when it’s time to make a gem. ...

August 25, 2021 · Alex Clifford

Using Awesomplete for auto-complete inputs

Awesomplete is a front-end autocomplete tool that compares a user’s input to a defined data list, and if it recognises the input will make suggestions for the user to choose from. We chose to use the Awesomplete tool in the Accord team while building the journey to enable users to create and submit their dispute. Awesomplete provided a neat solution to our problem of how to let the user choose the organisation they are raising a dispute against. The simplest solution would have been a dropdown list of all available organisations. However, as we will be working with ADR providers representing potentially hundreds or thousands of organisations, a dropdown list would not have been a feasible solution. Enter Awesomplete! ...

August 10, 2021 · Elise Aston