Beware arrow function overuse in React

Beware arrow function overuse in React components

There are lots of things to love about ES6 arrow function. The syntax is short and sweet and there’s no binding of this or arguments. Take the extremely simple function double below for example.

1
2
3
const double = function (a) {
return a * 2
}

Now here’s it is written as an arrow function using concise syntax.

1
const double = a => a * 2

You’ll note that the brackets around any single argument are optional, the curly brackets are optional, and the return is implied.

Keep Reading

Unit Testing with Sinon.js

When writing unit tests for javascript code, there may be a time when you need to stub part of your code in order to isolate and test a particular functionality of your code. This is where Sinon.js is a popular tool to help developers test their code.

Keep Reading

Isomorphic / universal React at Gousto

About half a year ago, we decided to build our new frontend stack using isomorphic/universal JavaScript leveraging React and its rich ecosystem both on client and server side.

Initially, we started out using React to create single page applications (SPA). This worked quite well, we had a clean and scalable JavaScript codebase removing the need for jQuery and other libraries.

Keep Reading

My first byte at Gousto

I joined Gousto in January this year and I thought it would be helpful for any developers who are interested in applying to hear what it’s like to work with us. When I applied I was working at a digital agency for a little over a year where I mainly worked with PHP CMS’s such as Drupal, alongside jQuery. And given that this is the first startup that I have ever worked for, I did not know what to expect. Nevertheless I was eager to have my first startup experience to learn something new and challenge myself in a fast paced environment.

Keep Reading

Unleash your data capabilities (with Snowplow Analytics)

Here at Gousto we are very customer and product focused, tailoring our service to customers all the time. For example, last year we were the first recipe delivery kit company to introduce shorter lead time, enabling our customers to receive their boxes 3 days after ordering, rather than 10 days as before. This year there is much more to come - I’m sure you will notice it.

Not only are such initiatives heavily data-driven, e.g. to ensure shorter lead-time being viable we need to forecast the demand very accurately, but we also strongly believe that data is voice of our customers and therefore (almost) all our decisions are based on and validated by data, no matter whether it’s in marketing, operations or food team.

To empower all our teams to produce a tailored made product, we’ve been working hard to set up state-of-the-art analytics pipeline providing them very granular and reliable data.

Keep Reading

Avoiding Callback Hell

As a Front End Engineer I’m always looking for an opportunity to dive into some javascript. We are currently in the process of migrating the existing Gousto web front end into a set of React.js components, transpiling ES6 with Babel and leveraging Redux data stores to manage state. Some very cool stuff.

Many of our API’s have been built as microservices. Recently, I had the task of inheriting one of these microservices, a legacy Node.js codebase. It’s always great working with a service that is brand new to you, but nothing quite prepares you for the feeling that hits you when cloning the git repository, locating the primary app entry point only to be greeted with:

Keep Reading

Welcome to TechBrunch

At Gousto we aim to make it as easy as possible for our customers to cook delicious meals at home. We offer customers the ability to choose up to 4 recipes for 2 or 4 people every week. We deliver all the ingredients needed in exact proportions with easy to follow, step-by-step recipe cards.

Technology is at the heart of our business and since starting in 2011 we have been developing a technology platform to drive the business forwards and provide the best possible experience to our customers. We haven’t spoken publicly about our technology before but we’d like that to change. We feel that we gain a huge amount from the transparency and openness of the tech community and we’d like to start contributing back to that community where we can.

So I hear what you’re thinking, “Another tech blog, why read this one?”

Keep Reading