Wednesday 26 March 2014

Keep Talking

Somone once told me that if you speak about something you are interested in and passionate about, then someone else will always be interested in what you have to say. We all move in different social and cultural circles, and whilst it is true to say that there will always be someone out there who wants to hear what you have to say, you need to pick and choose your audiences carefully. 

If I speak about my favourite movies and tv shows in front of a bunch of art critics or zooologists, it will probably fall on deaf ears. Unless of course they are shows about art or natural history. I have two active Twitter handles for this very reason. Not everyone wants to know what I thought of last nights football match or the latest episode of a TV show.

Last nights Sheffield Tester Gathering afforded me the chance to talk about Security testing. It's an aspect of testing that I am very passionate about, not only because it is complex and varied, but because the challenge of it seems almost endless. There is lots to learn; lots to share with other people.

The people who I was speaking to were other testers, test managers, managers who test (thanks Peter Nairn for that one). There were also one or two developers, and also testers who do some development. They came along because they wanted to learn something new, explore an idea, or speak to other like minded people.

Peter Nairn spoke to us about 'The Ideal Tester', which was his notion of what a tester should be. He wants testers to be; part of the community, passionate about their craft, learning new skills and sharing them with others, use humility and honesty in their approach but also celebrate their achievements. A whole host of other behaviours and capabilities were on the list. Too many to list here. He also that the ideal tester does not exist.

Blogging by no means makes me an ideal tester. I love sharing, talking and being part of a dynamic team. But some of my colleagues, and certainly my wife might agree that I can't stop talking...usually waffling about some irrelevent trivia. This is part of the challenge I face on a personal level...how do we share our passions, creativity, knowledge and ideas without coming across like Hermione Grainger (look, another pop culture reference) or even worse...Jeremy Clarkson.

At one of the many warm up events and gatherings before TestBash this evening, I've gotten to meet some really passionate testers who I've never met before, some who I've been following on Twitter, some folk that have been on my testing radar for a long time. All of them have different stories to tell,  varied experiences to share, and different goals they want to achieve.

Meetups, conferences and gatherings are my absolutely favourite way of generating ideas as well as sharing them. Without events like this, and pioneers in the test community to organise, promote and champion them. We might not be ideal testers, but we are all making changes, engaging and learning so that we can be the best testers we can be. And that has to be worthwhile.

I hope that those of you going to TestBash this weekend have a great time, take home some learning from it, maybe meet and talk to some interesting and influential people. And don't forget to have fun. Just like Rosie here.

Friday 7 February 2014

Hackathon! Working with new people on cool stuff!

The last couple of days have brought an entirely new experience. Every quarter the R&D team at New Voice Media has a whole 2.5 days where the team can work on their own ideas that will add value to the business that are outside of the normal day to day feature development. The plan is that developers, testers and product owners come together to learn, create and innovate.

Earlier this morning Rob Lambert wrote in his blog (http://thesocialtester.co.uk/hackathon-how-can-testers-take-part/) about how the testers were getting involved with the Hackathon. Historically it has been difficult for testers to get involved with these kinds of events here, as sometimes there were competing priorities, a lack of engagement on the part of both developers and testers alike, or perhaps a view that our skills and expertise weren't needed for such a short term project, that might not even make it in to production code.

This time round I was determined to get involved (last time, I was a contractor) as I felt it would be a great way to engage with members of the team that I don't usually get to work with. As a newbie to the team, I felt it would be key to make sure that I could develop my skills and help others do the same. Also it was a chance to work on actual code that would make it in to production that would help our Professional Services team, and ultimately the customers. I normally work on the infrastructure side, security testing and other bits and pieces; rather than features and user functionality.

In the last couple of days we have collaborated on creating our acceptance criteria, developing a great suite of unit and automated tests, refactoring and improving the UI, performance tuning of the database, as well as some really exciting exploratory testing that facilitated the mentoring of a new member of the team who is completely new to testing. 

It's been one of the most exciting and interesting times of my career, where the feedback from exploratory tests have been greatly welcomed by the team, exposing some interesting bugs which were then fed back in to the developers to ensure the delivered product was as good as possible in the time allowed.

We also got to see how the other teams got on, the products they produced and how they worked together. There were some really exciting projects and ideas knocking about, where the team really got to stretch their legs, bring together interesting technologies and processes. We all voted at the end for best in show, pushing the envelope and the epic fail :) (no one fails really, its just a bit of a laugh). It's also a great time for the team to socialise and to get to know each other.

If you are a tester, part of a development team and you aren't getting a chance to take part in these sorts of activities then get involved by championing your skill set, collaborating with your peers, making connections and generating great ideas that make your customers happy and want to use your products. 

If your team isn't doing a Ship it, Hackathon or similar, then how about setting something up yourself. You won't regret it! Trust me - I'm The Test Doctor!

(here's the team during our Show and Tell this afternoon!)

Tuesday 21 January 2014

A year of change and new beginings

2013 - What a year! Both personally and professionally. The last few months especially have been a huge challenge, and those that know me well will understand why. This year has presented a number of huge challenges, and has presented a whole new range of opportunities.

In 2010 I made the huge decision to go contracting, especially where in the South West of England there was a dearth of decent contract roles. However at the time I felt that this was the right move for myself personally and professionally. It has had its ups and downs, but has never been boring. I would heartily recommend it to those who aren't afraid of change.

However the last six months has brought an even bigger challenge...which is what I would like to share with you now.

Since June 2013 I have been working as a Contract Test Engineer at New Voice Media in Basingstoke. NVM produce great solutions for business to manage their contact and customer service centres, including a raft of call centre applications and services. As part of my work in the development team there has been the opportunity to grow and develop my testing skills, specifically in exploratory and security testing.

The technical and professional challenge is huge, with a steep learning curve. Exposure to a DevOps environment has meant that upskilling and knowledge sharing has been key to developing the test capabilities within the team. Without that, we would be always be on the back foot.

If the environment I was invited into hadn't been so exciting and interesting, then I wouldnt have felt that moving away from contracting would have been a step forward. Instead, I find myself now a pemenant job in a fantastic team of people, both developers and testers. Sure, some personal circumstances have been a driver to this decision, but at this moment I feel it has been a positive step.

I can hear the cries of derision from my colleagues in the contract market, who would say that I would be resting on my laurels and trying to get comfortable, missing out on the big bucks. Not a bit of it. Skill development and knowledge sharing within a great, positive environment were a major motivator in this decision to go back to permenant work. 

I had a good run at contracting, with several great contracts, including one ongoing for sometime. I'd developed a good, but not great reputation, for reliability, solidity and innovation at other organisations in the past. Resting on my laurels would be to soley rely on that reputation, to remain static despite having the nomadic life of a contractor. This I feel would eventually lead to some kind of professional inertia, where I was only considering my daily rate; not my daily learning.

During the time I was contracting, I felt disconnected with the community of testers. Being based predominately in the south west hasn't exactly helped with this, but now there is a burgeoning testing community in the Bristol area who are active in their desire to learn and develop from each other. 2013 brought with it the challenge of interacting and egaging with the test community much more. It opened doors to challenges and opportunities not necessarily open to me in the contract world. 

I'm now working with a team of highly skilled people, but also people who don't get comfortable. It is a team that is constantly trying to find ways to improve how they work and do their jobs, in order to help make fantastic products. I'm also going to get to mentor other testers, whilst not exactly new to me, hasn't always been my first priority. Now on top of my other work, it is a key part of my role, and one that I am looking forward to greatly.

2014 is going to be very hard work, both professionally and personally. But I know that the community is there for you to support your learning and development, if only you are willing to take that deep breath and big step into giving back to it. 

This photo of Crooklets Beach in Bude sums up what I feel right now...under the crystal blue skies, new beginings and a huge open space to play on. I can't wait.

Tuesday 19 November 2013

Gaming! - Playing to be a better tester?

I'm a tester. I love it. But without doubt the pastime that first got me into IT as a career, and latterly testing, is undoubtedly gaming. I owe those early home computing pioneers a debt, like many of us in IT careers now. I first played games on the ZX Spectrum and Commodore Amiga machines, and this is where I first learned to program in BASIC, from all those dog eared copies of code printed in magazines. It was a joy. 

Latterly, as a PC gamer I was a member of clans on various games such as the Jedi Knight and Soldier of Fortune series. Since then I have had various home consoles, such as the Wii, X-Box and PS3...which are all now reaching the next stage in their evolution in home entertainment.

Now many of you might question the value of gaming as a pasttime. I can agree that it is a distraction from more serious and worthy pursuits. However it does provide a degree of relaxation and a way of blowing off steam following a day at the office that a work out, game of squash or a walk in the countryside cannot provide. I only play for a few hours per week, unlike hardcore gamers who will go for days at a time without interacting with another human being.

Recently I have been playing the fifth title in the Grand Theft Auto series. This series of games has introduced a number of controversial themes and scenarios to gamers over the last 10-15 years, but they are without doubt one of the most successful game franchises of all time. I will not be discussing the associated social and political problems with such games as part of this post, but will instead be looking at them in terms of their value as a software product. I'm not going to justify my choice of hobby here.

Firstly, the budget. This is reported by various sources to be in the region of $170 million. This would make it the most expensive video game ever made. But riding on that budget is a reputation for gameplay, narrative and quality that has more than surpassed its peers, such as the Call of Duty or Batman Arkham franchises. 

If you further question its validity as a software product worth discussing, then within 24 hours of release it earned approximately $800 million in sales, and $1 billion within 3 days. This surpasses any entertainment product, from the most successful games to the massive blockbuster movies such as Titanic, the Harry Potter series or the most recent James Bond movie. In a word, this is big business. The game producers, Rockstar, needed to ensure that not only did the game sold well, but that it exceeded the bar in terms of quality.

Whilst playing the game one evening, I thought of a testing challenge I have recently been a part of. I considered the potential elements of the game that would need to be explored by the Rockstar testers (of which there are many)..and this quickly became a morass of thoughts in my head within only a few minutes. 

Similar to the task of exploring a large commercial software product I was new to, I attempted to mind-map the game, in terms of it's functionality, gameplay elements, user interface and so on. As much as anything this was an exercise for me in learning to use mind mapping as a process for me to understand the scope of the application under test, and potential areas of interest for testing.

It might surprise you that I had not used mind mapping as a test tool before, so this process was new to me. I am now using this process to derive exploratory and security tests on a daily basis. Its a powerful process, that if used well can help to visualise the challenge of exploratory testing for all sorts of applications. I'm using it more and more now, and I am still learning how to do it better. 

I know that by no means have I explored all the game using the mind map (I simply don't have that much time to play the game) and that I have barely scratched the surface. The learning process I went through whilst playing the game I felt went beyond the simple pleasure of following the narrative, interacting with the characters and gameplay elements. 

At this stage I have not derived any tests that I could explore and execute, but merely those elements that might need exploring further, the relationships between elements of the game such as gameplay, characters, environments, user interfaces and so on. I found this a really useful exercise as I have attempted to explore the game and find new things in it to enjoy once I had completed the main narrative.

Through additional gameplay I might come to develop further ideas regarding how to explore the game from a testing perspective, but I don't want this exercise to detract in my enjoyment of the game. I need to strike a balance.

It may seem that through doing this I am somehow trying to justify the number of hours I have put into playing the game, but I am not apologetic. It is a hobby like any other, and hobbies are important. 

The mind map I have developed so far is attached so you can take a look. I'd welcome any comments and suggestions. 

Friday 8 November 2013

The journey starts here...

Welcome to my new blog...



I've been testing for a while now. Some 12 years. Only in recent years have I felt the need to give something back to the testing community that for a while I felt disconnected from...and now is the time to make that desire a reality.

Anyone who knows me will understand why I have chosen the moniker The Test Doctor (@thetestdoctor on Twitter), but rather than filling your feeds with useless geekery, this blog and any posts from this twitter feed etc. will be entirely testing, IT and other related topics. 

I am currently a contract software tester (@drbconsulting) and my current client is a firm in Basingstoke, Hampshire in the UK. I work with a lot of great people, with a huge amount of knowledge and experience to share. It's fast paced and growing, with a huge challenge for developers and testers alike. But because the team work so well, those challenges can be shared and reflected on in a very positive environment...something that was lacking earlier in my career.

In the last six months I have learnt more about software development, the testing challenges that face us as a community, and myself as a tester than I have in the last ten years. Too much to include in this initial post, but over time I hope to be able to share what I have learnt with the community.

I hope to write periodically over the next few weeks and months as time allows. Like all of us, I have a lot of family and personal commitments and outside interests. So anything I post will be largely dependent upon those factors getting priority.

Firstly a little bit about me as a person. 

I currently live in Frome, Somerset, not far from the city of Bath. I am originally from Burgess Hill, near Brighton in East Sussex. I have been married to my wife Rae for 8 years.

I run a Cub Scout pack in Frome, Somerset, and also I am Assistant District Commissioner for Cubs for the Frome, Wells and Shepton Mallet area. It's a huge mental, emotional and physical challenge; but it teaches me new things about being a human being in a community of other humans every day. I have to work with adult leaders, other volunteers, parents and children to make sure they have great adventures.

I studied as a Primary School Teacher at Bath Spa University (yes, Bath has an 'other place' too) but during my final year decided that this particular vocation was not for me.

I started my IT career whilst working at the AOL/CompuServe call centre that was then in Bristol. Within the year I found myself testing screen pop and cased based reasoning tools whilst handling calls, and eventually a full time promotion to the Tools team, where I started on localising and testing a new CRM tool for the business.

Following this initial foray into testing, I worked for various companies such as Capita, Yell.com and Northgate Public services. For anyone who is interested, my Linkedin profile can be found here: http://www.linkedin.com/in/danielbilling

I started contracting in 2010. The dual motivation of choosing my own clients and developing my own future challenges appealed to me. But partly because I felt somewhat adrift in my career, with what I perceived as a lack of focus and perhaps commitment. It had become a  means to an end, rather than a career in which I was interested in and wanted to develop.

In the last couple of years I have found a new impetus to learn more, develop myself as a tester, learn from other people in the software industry and the testing community as a whole. I may have been testing a while, but for a long time I had blinkers on...just getting the job done, looking for that next rung on the ladder so I could improve my lot. 

Learning new tools, techniques and processes is all very well. But unless you have some sort of personal framework or context in which these learnings can be utilised, they just become bullet points on a CV. Meaningless! 

Unless you can prove yourself as a competent, learning and developing member of the testing community, these skills are not worth the paper they are printed on. Sure, I have taken those courses we all debate about, and worry about their validity and use, but to be honest I don't want to work for organisations where having letters after your name are a prerequisite to getting a job. I want to discuss things with my peers, develop great ideas, materials and resources to share with the community. 

In the last year I have been given a metaphorical and physical kick up the back side by attending just one or two events with my peers. Alongside that, I have worked within a couple of organisations recently where you really needed to raise my game in order to stay ahead of the testing challenge. 

I could reel off a list of influential people who have helped me back onto a new path where I feel happy to contribute to a vibrant and exciting community. But that would be name dropping. Those people I hope know what they mean to me. To them I say thank you. To the rest of you, I hope to meet you soon, learn from you, maybe help you learn something too.

I've got some great ideas in my head. I want to get them out there to share with you. If they are flawed, I want to know. If they need challenging, then throw them back at me. I look forward to meeting you!