28 October 2015, by Chris Arnott
There have been a lot of stories about how there are many benefits to standing all day rather than sitting in an office. But how about a walking desk?
We’ve offered employees the opportunity to use standing desks for a while now, which we provide using some carefully selected IKEA parts (a coffee table and a shelf) and with a small amount of effort result in a great desk for this purpose.
However, recently we decided to take this a step further and set up a walking desk. There are lots of commercial options out there, but as they are quite expensive, we decided it would suit our needs better to build our own. Fortunately we have a very good handyman who helps out with minor tasks around the office, and so we tasked him with building us a desk that:
- Fit over the existing treadmill in our gym
- Had a large work area
- Was adjustable, so that it would be practical for people of all heights
We’ve been using this desk for a while now, and personally, I find it great for maintaining focus, and particularly useful for finally getting round to that task you haven’t been looking forward to all week.
Walking and working helps brings clarity to my thoughts and although it makes my handwriting near illegible, my typing is barely affected. The walking quickly feels natural and it’s perfectly easy to do an hour or so walking along at a slow pace.
The disadvantage of the walking desk is that it can be quite noisy. We got around this by installing it in our gym to begin with and we’ve now moved it to a more permanent home in one of our meeting rooms.
Overall, we think that walking desks are a great idea, and although no employees have planned to switch to one on a permanent basis, it works very well as a hot desk. So if you have the time and skill (or money) to try one out. I’d definitely recommend it!
21 October 2015, by Jiang Yingxin
At Softwire, we’re committed to educational outreach because it’s important to give children from all backgrounds the same opportunities, particularly in the tech sector. So we’ve been pretty excited by Code Club Pro, a new opportunity to contribute really efficiently to how coding is taught in every UK school.
A new primary school curriculum introduced last year requires children to learn coding from the age of 5. But most teachers don’t know how to code, so Code Club (a non-profit organisation running coding clubs in schools) set up Code Club Pro to help fill that gap. Code Club Pro recruits volunteers with computing skills (that’s us!) and gives them the training and materials they need to deliver training sessions to teachers. Essentially they teach us how to teach teachers to teach computing. The volunteers then organise sessions with schools through Code Club Pro.
Our own Jamie Humphries championed the cause internally and encouraged people to get involved, successfully persuading a large number of the company to sign up as Code Club Pro trainers, starting them off on the process.
Our first session was in April at a primary school in Manor House. This was slightly intimidating; we were trying to teach a class full of experienced teachers, and teaching is after all what they do all day! A guy from the local authority showed up to see how it went, which didn’t help with the nerves either. But we shouldn’t have worried – everyone was really nice and seemed very engaged with the session, and we got lots of encouraging feedback.
One lady in particular said she’d been worried by how difficult and tiring this session might be, especially after a long day at work. She wasn’t very comfortable with technical ideas, but during the session was clearly taking things on board. Afterwards she came up to us and thanked us for making the topic less scary to her.
We realised that despite not being teachers ourselves, we could genuinely reach out to children by sharing with these teachers our expertise and, just as importantly, our enthusiasm for coding. We hope that some of that passion will be passed on to lots of children, many of whom would otherwise never have learned to code!
16 October 2015, by Chris Arnott
What is it
OpenStack is open source virtualisation software that can be run on generic hardware, allowing you to build your own cloud. In order to provide high availability, several servers can be clustered together. This allows resources from several servers to be pooled into one place when deploying machines.
14 October 2015, by David Simons
The tech community as a whole is not as diverse as society. Thousands, if not millions of words have been written about it trying to explain and rectify this problem. Every one of those words is worth reading, so I’m sorry for throwing yet more in to the mix!
One thing I’ve seen is that people with exposure to technology and programming in their family life or education are more likely to consider careers in the tech sector. There’s no surprise there: it’s hard for people to aspire to something they haven’t seen. My Dad worked in IT, and I always knew it was an option. When I applied for programming jobs, he had advice about CVs and interviews. I’m aware that these all gave me an implicit advantage that many people may not have had.
There’s a lot of thoughts about how to undermine these systematic issues, but one way that we can begin to challenge these effects is introducing themes around careers in tech to many people that may not otherwise see it.
To that end, we’re proud to have been working with Tech City Stars for the last few years.
Tech City Stars work with young people from areas that have higher rates of youth unemployment – the eponymous stars. They run ‘reboot camps’ that introduce relevant skills and ideas to the young people before hooking them up with a range of employees to enter apprenticeships. This is tackling the heart of the issue: taking young, motivated people and making sure their background doesn’t hold them back.
Although we’ve not yet had the opportunity to take an apprentice, we’ve worked with them to ensure that their camps and syllabuses accurately reflect the real experience a person may face when entering the technical world.
One area in particular that we find surprise people who aren’t used to the tech sector is analytical questions at interviews. We use these sorts of questions, that look at candidates’ thought processes when faced with an unfamiliar problem, to give us an idea of a candidate’s ability rather than hearing many rehearsed answers.
This is exactly where exposure to our practises can start to undermine a difference in privilege between candidates. Although no candidates will have seen the exact problems we use, having an appreciation of the types of questions that get asked by software companies prevents unnecessary stress in an interview situation and allows candidates to perform at their best.
Now, there’s a chance that you’ve stumbled upon this blog post wondering about interview questions that tech firms do actually ask! Naturally, we can’t give away all of our interview problems over the internet – candidates will give us polished answers tomorrow! – but through examination of other companies process, and through aggregation and recruitment sites, we noticed a trend for a number of questions. (Note that we don’t necessarily endorse these questions – but if they get asked often enough, we felt it our duty to teach them.)
We’ve included a few types of questions below, so that anybody can start to think about and prepare for any application – but be warned that this list is not exclusive. The only thing that these sorts of questions will have in common is the need for clear, analytical thought. The advice we give to all the Tech City Stars is to explain your reasoning, keep a clear head, and use logic to break the problem down into smaller steps. Although a programmer’s gut instinct is an important tool in the long run, it’s not going to be impressive to an interviewer if you try and wing every question!
Sample Questions Types
Long-form ‘open’ question: What is the hardest thing that the developers had to, in order to get Siri to work?
Mathematical/Logic question: You have a cube that is made of 64 smaller, identical cubes in a 4 by 4 by 4 arrangement. I paint the outside using paint. How many of the smaller cubes have 0 faces painted? How many have 1, 2, 3, 4, 5 or 6 painted?
Estimation question: How many words are there in total in all seven of the Harry Potter books?
5 October 2015, by Peter Harley
I 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.
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.
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.
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
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.