/home-page /about-us /our-work /work-with-us /contact /blog /terms-and-conditions /privacy-policy /cookies /what-we-do

Programming at sea

By Matt Stringer 8th October 2019

A couple of months ago, SimpleClick released the new Fred. Olsen Cruise Lines app. Our developer Matt talks about an experience most developers wouldn't ever get; developing and bug testing on a cruise ship.

In the months leading up to the launch of the new Fred. Olsen Cruise Lines mobile app, it was really important to test in the same environment that the app would be used in - on board the ships themselves.

It wasn't all plain sailing and in this blog, Matt shares his experiences and some of the challenges that they had to overcome.

Cruise #1 - 5 nights to the Netherlands and Belgium

Terri, the project manager from Fred. Olsen Cruise Lines, and I were booked on to a 5 night cruise to the Netherlands and Belgium with the aim of testing the app on board Braemar. This was essential as we had to test the app’s connection to the on board systems.

I've got to start this by saying that even though we work on a cruise website regularly, I'd only been on a single cruise prior to being asked to go and work on one for a week.

The first step was to pack everything I was going to need whilst I was away and being a cross platform app developed using Xamarin on a Windows PC mean that I had to take my PC, a monitor, and the Mac mini, along with multiple mobile and tablet devices for testing. Thankfully, Terri had hired a big enough car so we were able to fit everything in without any issues, alongside our suitcases.

When we arrived at Southampton, our suitcases were taken by the concierges so they could be delivered to our rooms but what I hadn’t thought about was how we were going to carry everything else on board. Or, how far we’d have to walk with it all. Let’s just say we certainly got some funny looks from the other passengers carrying these huge boxes of equipment. And it wasn’t any better when we were onboard because the monitor box and box with the Mac and testing devices in was only just narrow enough to fit down the corridor. This was definitely a lesson learned for the following test cruise.

Thankfully we arrived at the room without dropping anything and started to set everything up. Fred. Olsen had arranged for us to use one of the spare balcony cabins as our office for the duration of the cruise. Another thing I hadn’t thought about when I was told I’d be set up in a room on board was that there wouldn’t be a proper desk. I ended up using a desk that was only just big enough to fit my monitor on and resting the keyboard on my knees for most of the journey, which wasn’t ideal. As a developer, most of us are used to having a reasonably large desk with multiple monitors. It was a very strange experience working on a small desk for a week with only a single monitor.

As mentioned before though, we had a balcony room and it was amazing to be able to sit at a desk and literally watch the world go by. And isn’t Holland scenic? Having never been before, it was an amazing opportunity to see some awe-inspiring sights whilst I worked. The other way we managed to escape for a bit was, because we didn’t have a kettle easily accessible like you would in most offices, we had a good excuse to stretch our legs when we went down to the café to get a coffee. It was nice to be able to sit with the other guests for a short time and talk to them about their cruising experiences.

One of the biggest challenges I had whilst away was the internet speed. In our office we are lucky enough to have very fast internet, and whilst I knew the internet on board wasn’t going to be quick, I didn’t realise how slow satellite internet really is. I felt like I was back in the early 90s with dial-up (for those of us old enough to remember those days). Going from a world where information is available at your fingertips to one where you might not have any internet at all in the middle of an ocean was something that took a couple of days to get used to. Luckily, I was often able to get enough signal in the ports and I was able to talk to the team back in the office to do things I wasn’t able to do, such as use our build tools.

We also found that with only two of us on board, when Terri would find a bug, I would then have to stop development to see if I could replicate and discuss how Terri would like any strange features solved which broke up the actual development more than we’d have liked.

Cruise #2 – 10 nights to Denmark

A couple of months after my first cruise, I was asked to go onto another cruise, this time a 10 night cruise to Denmark, so that I could test the features that had been added and fixed following the first cruise. This time, Terri and I were joined by Naomi, a project manager from SimpleClick, to help with the testing and overall management of the project.

I’d learnt a lot from my first cruise and so the first thing we did before embarking on this cruise was buy a pull along trolley so that we could put all of the equipment into it to transport it onto and around the ship. And what a purchase! We still got some funny looks though and a lot of guests were asking if we worked on the ship, but it was so much easier than carrying everything by hand.

This time there were no balcony rooms available to use as the office and so we had an outside room instead, which is a room with a window. The lack of outside space and air meant that we needed to take regular breaks - there was a danger of us going a little stir crazy with all three of us working in the room every day. It was very helpful from my point of view that Naomi was there as it allowed issues to be replicated and discussed and only involve me when an agreement had been reached. This allowed me to continue working for longer periods and make greater progress.

The other issue I had on this cruise, was that the weather was considerably worse on a couple of the days and we had to finish working earlier than planned. I don’t normally get seasick but trying to concentrate on reading code whilst rocking was too much for me.

Otherwise this second cruise was a lot more successful, and being twice the length allowed us to sort a lot more of the issues that could only properly be tested on board due to the interaction with the ship’s onboard  systems.

What an experience.

Testing on board was such an interesting experience, and one that I would be happy to do again. Whilst the challenges were plentiful as there are many things you don’t consider when developing outside of an office/home, we still managed to make a fantastic amount of progress on the app whilst we were away and wouldn’t have been able to properly test as much of the functionality if Fred. Olsen hadn’t allowed us to work onboard their ships.

Cruising with Fred.

One thing I’ve not had a chance to mention yet is what’s it’s like to be an actual guest of Fred. Olsen Cruise Lines, and whilst I spent most of the days working, I was able to spend a bit of time around the ship when I took breaks and in the evenings, even getting to go into port for a couple of hours when we were docked and I can definitely understand why people go on cruising holidays. Firstly, I’d love to say how interesting and friendly the other guests were. We had conversations with many of them and they all had interesting stories to tell and it’s nice to hear how many of them are loyal to Fred. Olsen. Secondly, I’d like to commend the staff on their service which was consistently impeccable; from the maids who refreshed our rooms daily to the bar staff who had learnt most of the customer’s orders within the first day. And a special note to the band in the Coral Club and the whole entertainment team. We went in there most evenings to relax after working and they always put on a good show.

Additionally, due to there being bad weather on the second cruise, we had a change of itinerary and it was very well handled by Fred. Olsen staff, and it also meant that we were in Copenhagen at the same time as Boudicca and we went on a tour of that ship whilst we were there which was really cool to see one of the ships I hadn’t seen.

All in all, whilst there were many difficulties it was definitely a worthwhile trip. We couldn’t have finished the app without having the ability to test onboard and as a dev it gave me an interesting experience working outside the office.

All in all, whilst there were many difficulties it was definitely a worthwhile trip. We couldn’t have finished the app without having the ability to test onboard and as a dev it gave me an interesting experience working outside the office.