Softwire Blog


Speed Coding 2016 – Q1


6 April 2016, by

Here’s the first question from our speed coding competition 2016. We’ve already held the event, so there are no prizes, but if you want to play along at home, see how quickly you can solve the challenge.

(more…)

Speed Coding 2016 Intro


30 March 2016, by

In case you didn’t hear through our twitter or facebook accounts, we recently held our 2016 speed coding competition. Questions were devised by the last competition’s runner-up Rupert Wood, with help from John Ginger.

The format of the evening was:

Question 1 – 20 minutes

Question 2 – 30 minutes

Question 3 – 40 minutes

Pizza – 30 minutes

Question 4 – 1 hour

In the upcoming series of posts, we’ll be releasing the questions, quickest answers as well as some hints and tips on interesting techniques that people took in their solutions.

Food Provenance at Softwire


23 March 2016, by

At Softwirlunch3e they’re very lucky to have freshly prepared lunches cooked for us every day by our amazing kitchen team, Helen, Dom and Massimo. Undoubtedly this is something that hugely contributes to what makes Softwire such an awesome place to work and helped us achieve 14th in this year’s Best Small Companies to work for.

Our kitchen team is committed to sourcing the best and most sustainable fresh ingredients for our lunches. When they are not cooking for us they are always looking for new ideas, suppliers and products to enhance and improve the lunches on offer.

Lunch2Apart from baking bread and making pasta (actually they do sometimes do this as well!) the kitchen team pretty much prepare and cook everything we eat in the Softwire kitchens. They use fresh herbs, seasonal ingredients and quality suppliers to deliver lunches that are a highlight of our day.

In order to consistently offer us such high quality, all food is sourced from local North London suppliers; eggs are always free range and from reputable producers (Clarence Court or Black Farmer), fresh chicken, pork, lamb and beef is always free range (supplied by Meat Naturally) and fresh vegetables delivered daily. Seasonal vegetables are used whenever possible to minimize food miles and to maximise flavour and value for money. Cheeses and dried goods are sourced from Carnevale (Italian supplier) and Ocado. Our kitchen team always select the products that offer the best quality and flavour and will use organic whenever possible to produce roughly eighty delicious lunches every working day.

 

Encouraging women in(to) technology


16 February 2016, by

IMG_7268Following on from our managing director Zoe Cunningham’s blog post on getting more women into technology, I thought I’d share some of my own recent experiences around encouraging women in, and into, technology.

(more…)

Ice Skating at Somerset House


12 January 2016, by

As is becoming increasingly traditional, just before Christmas Softwire took a winter trip ice skating to Somerset House.

The turnout was record breaking – 33 of us (plus a smattering of guests) opted in, and all headed off one Monday afternoon to the rink. Not only that, but the group consisted of a great spread of people, from new starters, the members of the sales and admin team, developers – the MD even came along! Though most surprisingly, most of us managed to stay upright the whole time! (I may withhold my own records, there…)

While it might not have been a great winter all round (too warm and wet for my liking, though I may regret saying that in the weeks to come), we were blessed by perfect weather, and ended up skating around the rink as the sun set. Afterwards, most of us headed back out for hot drinks and a warm room, with a few finally peeling off to share a dinner of the most Christmassy food – burritos.

Happy new year from Softwire!

iceskating

Getting more Women into Technology


9 December 2015, by

9378548_origAs a successful woman working in technology, I often get asked how to attract more women into tech roles. I get asked by diversity officers of large corporates like BT and I get asked to share my experiences as a women with young people through organisations like STEMNet and TeenTech. “Where are the women?” has become a topic across many areas of modern life, such as business, academia and politics, as well as technology. My favourite question on the topic was from a young founder of a tech company: “There are only four of us in the startup and we’re all white males – what do we do?”.

Step one: Don’t panic It’s not your job to fix the whole tech industry. There are fewer women than men in tech right now, and you’re not going to change that by redesigning your marketing materials or having more female-friendly office perks. If there are only four of you and you care enough to accost a speaker to ask what you can do differently, your company make up likely reflects the industry and you will be OK.

Step two: Realise that there is no magic “women thing” that you can do One mistake that crops up time and time again and will alienate rather than attract women is the tendency to think of them as a homogenous group. I’m a mid-thirties woman without children so painstakingly outlining your maternity policy will not make me feel more welcome, whereas for some women this will be a key factor in considering where to work. Similarly booking in “girly” events or perks without finding out what your female employees like can seriously backfire. As one of our developers said recently “women in tech don’t tend to want manicures”. (Of course I’m not saying that generalisation is true either – just remember that different women like different things.)

Step three: Find information specific to your business What do the women who work for you already think you do well, or not so well? Perhaps even more tellingly, why do women leave your business? Make sure you hold exit interviews and when you do try to ascertain whether you are finding out what people really think. Consider using a member of the HR team or someone who hasn’t been involved in the day to day work of the exiting team member, to make sure that they are not holding back from criticising the person who is holding the interview.

Step four: And if all that fails… If you are really have problems recruiting and retaining women, here are some suggestions.
• Train all of your staff in relationship building and personal interaction. Soft skills are classically considered female territory, but even more importantly these skills will help you to uncover what people really think and help them to feel welcomed.

• Value diversity. The best way to think of diversity is not whether an employee is a woman, or of a different race or sexual orientation, but whether they actually think differently from you. Hunt out different opinions. Think through the “obviously stupid” ideas for a bit longer – maybe you are missing something. Be suspicious when everyone you hire agrees with you.

• Finally, quotas for hiring are risky for all kinds of reasons, but quotas for shortlists are not. Force yourself to find diverse candidates, especially for senior roles in the company (note that you may find this very hard – don’t give up!) and you may well find yourself surprised to end up hiring a woman.

“Masters of Code” Hackathon


2 December 2015, by

A long time ago, I got a message from one of our clients asking if I wanted to go to the Mastercard “Masters of Code” hackathon: I definitely did, and it finally happened this month.

Hackathons are tihomemes where people from all across the development life cycle get together to make something solving a problem. The catch? It’s in 24 hours. I really enjoy coding and getting something in your hands at the end of it. Hackathons are also a great place to learn loads of different skills (coding, and otherwise) from the wide range of people that attend.

Despite grand plans from a lot of people, we ended up with a target crack team of 2 people. We were challenged to make the day-to-day lives of London Mastercard easier by integrating with a combination of the TfL and Mastercard developer APIs. These are sources of some really interesting data and abilities – letting you plan routes, see the city and make payments with vendors.

24 hours is not a lot of time, and so we set to work straight away on working out what to build. We settled fairly early on using Mastercard’s loyalty offers API, allowing us access to personalised offers of the user that will use the app. All too often, people get these offers but don’t take advantage of them. A higher take-up rate on these offers will benefit both Mastercard and the end-user. The user gets savings, and Mastercard get people using these offers and – in turn – spending more on their card. Win-win.

We used TfL’s journey planner app to help users plan their journey and get advice as to the best route from A to B in London. However, when users change lines or transport routes at various stations, we looked out for opportunities for users to stop off if they had things to do at these interchange points. We went further and advised people how much would be added to their journey if they went out of their way to tick items off their to-do list. If it’s only 10 minutes, then why not make the extra hop and avoid a 2-hour round trip at the weekend?

options2In terms of the technical nature, we decided to write the application in NodeJS, serving a web interface written using KnockoutJS and Bootstrap. It was the technical framework with which we had the most experience – and with only two of us we were working solidly throughout the 24 hours as it was! When we added persistence, I got the chance to play with a new tech I’d been meaning to checkout – Firebase, Google’s distributed Database as a Service platform. It’s lightweight but first to set up and was perfect for our needs!

We were happy with our end product – an MVP and even some of the nice-to-have features that were a pipe dream just 24 hours earlier!

Other applications including a gamified social-media charity app (“Give to charity or I’ll shame you on Facebook”), an app that encourages you to walk by secretly saving the money you would’ve spent on your train fare and eventual winners “All of Us,” – a Night Out as a Service application, that integrates events, journey and tabs across a range friends.

Our product actually came second in the end – which we were happy about (not least because of the $1,000 prize!), but the whole weekend was amazing to learn a lot about APIs and other developers’ mindsets. The clarity of the idea was praised. We’re proud of what we made. We’re going to give the app a bit of distance for a week or so, but we’re excited about the potential of it – we even used it to plan our journey from the venue back home!

How I made my own photobooth


5 October 2015, by

Photos from the photoboothI was lucky enough to get married last year and decided that my contribution to the wedding planning would be to make a photobooth. This saved on the cost of hiring one and was also a really fun project. Since then the booth has been used at a friend’s wedding and had an outing at the recent Softwire birthday party.

Electronic Components

The main guts of the photo booth are:

  • A laptop, to control it
  • A camera (I used my Canon 450D)
  • A screen to show the images on
  • A printer

Various other bits and pieces were required too:

  • A big push button, to activate it
  • A USB to serial port converter, to attach the button to the laptop
  • A flash for the camera
  • Some lamps, to provide always on lighting
  • A big box full of silly props!

The camera and printer just plug into the laptop by USB. The button was wired over two pins of the serial converter, which then plugs into a USB port. The button presses can then be detected by watching for when the pin goes high.

Photo booth frame construction in progressConstruction

I decided to make an all in one case for all the components based loosely around a combination of various designs I found online. Sadly I didn’t take any photos as I went along, and as you can see from the finished product my carpentry skills are beginner at best! My main regret was going with the curved corners – they were far more trouble than they were worth!

This main box then sits on top of a speaker stand. The whole thing is a little wobbly but not too bad!

For our wedding we just hung sheets from some beams to create a booth around it, but for our annual Softwire birthday party I decided to create a full photobooth experience by constructing one from plastic pipes and covering with sheets.

Software

The camera is controlled using libgphoto2, specifically using a python wrapper called piggyphoto. For the graphical display I used pygame – whilst it is a little out of date now, its fine for something simple like this, and piggyphoto includes examples using it so it was easy to get started.

The most challenging aspect of the software was the interaction with the camera. The protocol is reverse engineered and sometimes unpredictable, and getting reliable results was only achieved with trial and error. If you try to use it with a different camera you’ll probably find it needs its own, slightly different tweaks.

You can get the full code yourself from github: https://github.com/pjrharley/boothy

Results

We had a lot of fun using the booth every time we’ve set it up! The photos have come out brilliantly. The main problem I’ve found is that using an inkjet printer is a bit slow. We also tried a laser printer, but the results were pretty poor quality. Ideally you need a proper dye sublimation printer, but they’re quite pricey.

Softwire’s Tech Workshops


9 July 2015, by

This year Softwire have started hosting events focussed on achieving success in the software industry. Our first event held in March focussed on getting the right talent into your tech team, particularly how to attract younger developers who are keen to expand their knowledge. Our most recent event looked at successful project delivery and how to achieve this on every project.
We had three great speakers come along to present their ideas on the topic.

Kicking off the afternoon, Johnathan Rigby from Fourth sditchpresented his ideas on motivating technical people. He was followed by Rachel Davies from Unruly, who shared some of the ideas her teams use to handle continuous delivery of their products. She presented all the aspects of extreme agile development that they use to keep their products up to date in a rapidly changing tech environment, including pairing and mob development. Finally Alex Wolff from Softwire who talked about making sure you take your projects in the right direction and the need for flexibility when handling an agile project.

Our special guest Bill Thompson hosted the afternoon, also chairing a panel discussion during which the audience were able to present their ideas about successful project delivery as well as getting more specific input from our speakers.

The event was packed out, with attendees coming from the IT departments of many companies across London. Having enjoyed the talks and time for discussion, we ended the afternoon with informal networking and a chance to enjoy the scenery at Shoreditch House. We’re looking forward to hosting more similar events later in the year.

Softwire Comedy Night 2015


11 February 2015, by

A couple of weeks ago Softwire hosted their third annual charity comedy night and it was a rip-roaring success! In an attempt to brighten up blue Monday (the saddest day of the year apparently) and raise awareness of mental health issues, some of Softwire’s very brave staff took to the stage to try their hands at stand-up comedy.

We put on quite a show, which was followed by performances from three professional comedians – a great way to end the evening. This year featured the very witty Hari Sriskantha, hilarious pedant Matt Rees and the ever wonderful Bec Hill. It was a great chance for our amateur comedians to relax post performance.

The final act of the evening was a pie-ing of our Managing Director Zoe, who unfortunately lost a vote between her and two of our other directors, but in the processed helped us raise even money for mind. Between tickets, the voting and the professional comedians very kindly donating their fess we raised over £1000 for Mind. A great effort for a great cause! Well done Softwire!