Testers sans frontières

I’ve had this blog for a week and have already come up with several new ideas for posts, which is great. Turns out that even just having set up a blog is making me more aware of the times when I do have interesting thoughts or ideas about testing!

Thanks to John Stevenson‘s inspiration which I mentioned last week, I’ll explain how Carlos Ble and I collaborated across international borders on our “Testing, Hacking and Debugging Javascript” workshop at London Tester Gathering Workshops a couple of weeks ago.

How I met Carlos and got involved with LTGW

Carlos is a Javascript developer based in Tenerife, the Canary Islands, Spain. I’m a tester based in London, England. I met Carlos when I attended his talk on Behaviour-Driven Rich Internet Applications with Javascript at SkillsMatter in London last year. My colleague and I went with Carlos and some other attendees to the pub afterwards, where I sadly failed to convince him of the merits of British ale :(.

I then attended his workshop at the 2013 London Tester Gathering Workshops and found myself helping a few of the other testers out with the practical exercises. This was not because I’m a Javascript expert (by any means), but with my coding background I was able to pick up the workshop material fairly quickly. I also asked Carlos some questions which I hoped would clarify aspects of the workshop material for the others, which he told me was a useful contribution.

One thing Carlos and I have in common is being keen to receive and give feedback, so we chatted after the workshop about how we thought it went. We thought it went well but could be even better in 2014 :). So he asked me to team up with him to give a tester’s perspective on the content and also to lend a helping hand during the workshop itself.

How we designed the Javascript for Testers workshop

About a week(!) before the workshop we chatted on Skype to try to work out what we should cover. Carlos created a Google doc where we could start sharing ideas, and included a number of topics from his experience of training developers. The question I wanted to answer though was why a tester might want to come to a workshop about Javascript; what would a tester’s-eye-view of Javascript be?

I remembered that there had been quite a range of coding experience at last year’s workshop, and guessed that there would be quite a few people who would be interested in testing Javascript (i.e. testing websites which use Javascript), and a smaller number who would be interested in testing using Javascript (e.g. as a scripting language to automate testing tasks, or writing or reviewing automated tests for Javascript applications).

My original opinion was that we should focus mainly on the developer tools for the benefit of those testing Javascript. Carlos could then run some practical exercises and koans to introduce those who wanted to test using Javascript to the basics of the language. Meanwhile anyone who wanted to continue learning about the developer tools could split off into a separate group with me.

However, I wanted to test my assumptions that these were the main things testers would want to know about Javascript, so I set up a quick survey for attendees. The results told me that in fact most attendees had at least some coding experience, and some had some quite specific things they wanted to learn around using Javascript for browser automation. Carlos and I continued to share ideas asynchronously via our shared Google doc and came up with a better plan which took the pace of the workshop a bit faster and allowed time to cover specifically requested topics at the end.

On the day itself

Unfortunately, we didn’t quite manage to answer the question of who would run which parts of the workshop until the day itself, which left me a bit worried that I was vastly underprepared (as I said, I’m not a Javascript expert, and the survey results gave me the impression that the attendees had high expectations)! In the end I stuck to what had been useful the year before (helping people with practical examples and chipping in with a few questions to rephrase or clarify Carlos’s points). Luckily it turned out that our plan of splitting into different groups to allow people to learn more at their own pace seemed to work quite nicely. Overall I felt I was adding value both by helping to steer the content of the workshop to be more focused on testers’ needs, and by helping make the pace of learning more flexible for attendees, so I’m pleased with my contribution.

Lessons I would draw from this experience:

Know thy user

I’m ashamed to admit that I underestimated the average coding knowledge of the workshop attendees (or perhaps my survey which asked about coding experience put off people who didn’t have any – I hope not!). The survey results were incredibly helpful though in designing a better workshop – one which I believe met more attendees’ needs – compared to the original plan Carlos and I had. Similarly, reading user reviews, running user surveys (e.g. via surveymonkey), or finding other ways to get in touch with users will allow you to help your team create a better application – one which better meets your users’ needs.

Be a tester sans frontières

The charity Medecins Sans Frontières (Doctors Without Borders) send doctors overseas, away from the comforts of their own homes, to countries in which the need for medical care is greatest.

As testers, we can benefit from getting involved with the developer community and trying to learn more about their world. I appreciate this may be easier for me to say as an ex-developer than for some, but even if you don’t know how to code there are still plenty of interesting talks being given by developers about higher level topics such as Agile, architecture, and even testing! Or consider it the other way around; perhaps the developers might benefit from having someone with a testing mindset asking them questions. If you’re interested then check out Test Invaders from the Software Testing Club, or have a browse of meetup.com.

Remote communication is useful, but face-to-face even better

Living on a relatively remote island, I think Carlos is used to working remotely with others. His idea of using a shared Google doc was really helpful; it allowed us to both continue working asynchronously on the plan and suited our busy lives as a way of communicating. However I still worried a lot about how (under)prepared I was for the workshop; yet when Carlos and I met face-to-face in London all it took was a few quick words to put my mind at rest! For me it was about getting that trust and understanding of how we would work together, and it was a lot quicker and easier to achieve this face-to-face.

That’s it – as mentioned, I like to receive feedback, so would be interested to hear your thoughts in the comments. I’m also aware this is quite a long post; is it too long?