Continuous Delivery

Jenkins Pipeline on your Local Box to Reduce Cycle Time

I recently got the chance to present at Jenkins World 2017 in San Francisco with Luca Milanesio from GerritForge. The talk was about how we used Jenkins to reduce the life-cycle of software development in our team (video of the talk can be found here).

Continue reading

Analysis

Performance testing images from a customer perspective

Recently we moved Net-A-Porter to use a dynamic product image service created by our Product Management team. Not only will it allow us to improve our customer experience but it will decrease the time to get products to market.

MRP (Mr Porter) and TON (The Outnet) had already implemented the system but at NAP (Net-A-Porter) we were waiting for a few additional features, and also see how it handled the other brands.

Previously NAP had all of the image assets mounted to the web servers with a CDN sat in front, allowing for them to be served extremely quickly. We wanted to make sure that the service creating and storing the images for us wouldn’t degrade performance for our customers.

We wanted to be able to collect performance metrics to compare NAP image performance to the other brands. I created a simple tool to test different image requests in bulk and collect the average response time.

Continue reading

Continuous Delivery

How we do: Deployment

Deployment can be a tricky topic to tackle. You want ease of use, reliability, speed and consistency, right?

The trouble is that many deployment strategies can be burdened by a slew of good ideas that don’t quite work, pipelines that have been set up in the wrong way for your project, or tight coupling to different applications that aren’t always in your control. THE OUTNET Tech team have come up with an interesting approach that has been working very well for our front-end JavaScript bundle applications, which I’d like to show you.

Continue reading

Conferences

Adventures in San Francisco – part four, Google I/O 2016

After my previous visits to Sauce Labs, Google and Keen.io, it was finally time for the main event. I was lucky enough to get tickets for Google I/O through some of the Polymer work we had done over the last year. As I mentioned in part one I have never been to San Francisco before, so I didn’t have a previous I/O to compare it to. However, I know they changed up the format this year, giving it a more “festival” vibe — I assume to differentiate it from other conferences and be more “Google”.

I’m going to cover the bad, the good, the highlights, and the things I learned.

Continue reading

Analysis

Adventures in San Francisco – part three, an introduction and a talk with keen.io

Following on from my earlier visits to Sauce and the Googleplex, before attending Google I/O 2016 I took the time to visit Keen IO.

Keen IO

If you don’t know about Keen, they are an awesome platform, providing analytics for developers. In this post, I’ll show you a couple of ways we’ve used Keen IO, as well as bringing you video of the talk I gave about it during my visit to Google I/O 2016.

Continue reading

Agile

TDD, BDD, and specs2: A testing strategy for Scala

Here at YOOX NET-A-PORTER, we think that testing is an important part of a modern development process. As a new starter in a team working on Scala APIs that provide up-to-date shipping options information, I wanted to write about ideas we’ve discussed on how we write test code. Writing good test code can be as much of a skill as writing good application code, and our team have been looking at tools and frameworks to help us with writing the most readable, reliable and efficient test code that we can.

Continue reading