Put your lips together and blow

When I first heard about Tacit Knowledge, I had a vague idea what it was. The word “tacit” sounded a bit like “tactile” so I guessed it was knowledge that you could touch.

I was a bit off the mark.

Normally, I try to avoid starting my posts with definitions, it reminds me of those dreary debates we had at school where everyone started their discourse by using the dictionary definition.

I’m making an exception in this case as I think its important that we all understand what tacit knowledge is, so here is the wikipedia definition (Don’t be lazy, click on it)

This morning my son had a bit of a crisis going to school. As some of you know, we’ve moved country and continent. For my kids, this means new school, new friends, new environment. It can be a tough challenge for an eight year old.

Suffice to say, he needed a bit of cheering up, so I suggested he look on the bright side of life. Cue Monty Python Bright Side of Life

Well, it sort of worked especially when I tried to teach him how to whistle.

Have you ever tried to teach someone to whistle?

Lauren Bacall had a go, in the movie “To have and to have not”

But you know what? As Alex found out, if you do put your lips together and blow it doesn’t mean you can whistle!

Actually being able to whistle is pretty hard.(I’m sure many of you have memories of trying to whistle in vain!)

But why is it so hard? The basic facts were explained and it seems quite simple. What vital peice of information is missing from Becall’s instruction?

That my friend is tacit knowledge. Simply put, its the knowledge you can only learn by doing.

And so to software testing.

The reason why software testing is so hard to teach is because it requires the student to learn by doing.

To learn software testing you must….software test!

Yes, you can read and learn the peripheral stuff around testing. For example you can learn what a IEEE829 test process is. You can learn how to write a test plan, how to create a test script, but that is not testing.

Testing is the doing bit. The bit where you have to think, judge and act on a testing dilemma. Thats why some companies when interviewing for testers will ask you to test something. They know, intuitively, that testing is about doing, not writing.

My Skype coaching sessions on software testing are based around this principle. You won’t find me “sharing my experience” in the sessions because that’s not how you learn about testing. Instead, you get a challenge, puzzle or dilemma that I work through with you.

To really understand testing, you must do testing but also you must be aware of what you are doing while testing. Why? Because awareness brings about discovery. You discover assumptions you make in testing. You discover conflicting ideas and you discover your bias in testing. From that awareness comes learning and improvement.

I think thats pretty damn cool.

Now all together…

“Always look on the bright side of life…”

(my skype coaching sessions are free, contact me on skype id charretts with the word coaching in the request)

Not a conference but a CASTalyst

Firstly, apologies for the terrible play on words, its got to be one of the worst pun ever! Put it down to a lack of imagination.

I’m going to be busy at CAST 2011 this year as not only am I attending but I’ll be holding a workshop and a track session.

The 1/2 day workshop is on Career Management for Software Testers and the  track session is on Skype coaching.

You can find out more about the details about all the tutorials here and the track sessions here. There are some great talks on this year and I’ve earmarked a few, hopefully there not on the same time as me!

Any tester who is serious about testing needs to consider going to CAST. It’s a conference that you will not forget. Trust me.

I had the opportunity to go to CAST 2010, sponsored by the software testing club and I wrote about the experience here and here

Its been six months since then, and on reflection, going to that conference wasn’t an event but more a catalyst to learning and experiencing more about testing.

Rebecca Fieldler has on her Skype profile the following quote by Will Durant: ” Education is a progressive discovery of our ignorance.” and I think that sums up nicely my feelings on CAST. It wasn’t so much what I learnt, but the realisation on how little I knew.

Since then, I’ve made a real effort to up my game. My book library has exponentially grown and I’ve even read some of them!

I made a commitment to myself at CAST 2010 to start speaking a conferences.  I’ve spoken at a few conferences since then, and speaking at CAST 2o11 is like coming full circle on that promise.

I’m also making more of an effort to keep in touch with other testers I met at the conference, people like Karen Johnson and Fiona Charles.

So, you see, what I mean when I say catalyst!

I hope to see you there,

Anne-Marie

Update: If you feel its the right time for you to start speaking at conferences, CAST is offering an emergent session run my the indominatble Matt Heusser. You can get all the details on this blog

Discovering Big Trak

Recently, I’ve been reading up on how we approach and report on solving problems. One book recommended to me was Exploring Science by David Klahr.

There’s lots in this book.  Khlar performs experiments in his “Discovery Lab” where participants are observed solving and reporting problems.  He uses a robotic toy called Big Trak. Its a self propelled, self contained toy that can be programmed to move around the floor.

Khlar programs a function (its a repeat function) on the toy. He then asks the participants to figure out the function and report how the program operates.

Its been an interesting read and some of the dialogue that happens during hypothesis and testing fits in nicely with the IM Coaching I’m giving. Its one of the reasons James Bach suggested I read the book.

This experiments were performed in the late eighties, so I was quite suprised to see Big Trak’s been sold in my local bookstore.

I immediately grabbed a couple and brought them home.

I handed one out to one of my kids to see if he could figure out how it worked. Here’s the video.

I’m going to incorporate these new robotic toys into my Exploratory Workshop, if I can just work out how to switch off that really annoying beep sound.

Battleships Ahoy

I had a great day today.

My youngest son, Alex (7) persuaded me to buy him a new game today. Its not hard. I’m easily persuaded. But the game of choice was interesting. It was Battleships.

Now, I remember this game. I played it (and loved it) when I was little.

Battleships requires a good strategy, not different to a testing strategy in fact.

You have to guess where the  ships/bugs are. Sure there are some strategies that are effective, (I confused my kids by placing all but one of my battleships on the outer perimeter).  You might have some idea of where they might be based on experience, but as one of my kids put it.

You basically have to guess first, and then after that start thinking.

sometimes I perform exploratory  testing like that.  I just have a go!

But that doesn’t mean I perform ET without thought.

Whatt my son was trying to say (and incidentally what lots of testers try to say) is that sometimes we have to suspend observation and inference.

Sometimes, what gets us going is a best guess.

Lets not ignore our best guess, because just  like in  battleships,  even if the first decision …A/9 is a random suggestion, after that you will  need a strategy.

What the hell, the kids loved the game. I loved playing the game.

We all had fun.

Dublin Software Testing Automation Morning

I went to the Softtest Software Testing User Group networking session last night. About 10 erstwhile software testers gathered together on a wet and windy night to discuss how to help software testers in Dublin.

We had some great discussions, a lot around automation tools, but also on the topic of up-skilling at little or no cost. I’m a big believer in this. I think it doesn’t have to cost a lot to keep yourself trained up as a software tester, you only need a willingness to learn.

We at Softtest have been throwing the idea around for a while to hold some practical hands on automation testing sessions. The idea is that testers would come (for free) learn a bit about an open source tool (JMeter & Selenium are two considerations), get to ask questions and hopefully get to use the tool a little.

We think a Saturday morning would work, and Softtest would supply a venue, breakfast and strong coffee. But we would need Volunteers.

Software Testers who have open source software testing automation skills willing to come in and share some of their knowledge with others.

So are you a Dublin based software tester, with a bit of spare time on a Saturday morning?

If your Interested in attending or helping out with your automation skills? Leave a comment or email me at amcharrett@gmail.com

Teaching or Learning?

Do you have a focus when giving training?

Sometimes, in my eagerness to ‘teach’ I forget to focus on something important. I forget that the lesson is about the student not me. I become more more concerned in my ability to be able to teach effectively. I want the student to come away feeling they have learned something.

Noble goals perhaps, but its nothing to do with training. Training is about the student, not the teacher.

Much more valuable is to focus on the student and provide a space for learning , giving people the opportunity to learn new things. Focusing on ‘teaching’ is about your ego. Its about you wanting to get something out of the training. I fell into this trap this week.

I wanted to ‘teach’ someone about testing. When their conclusion differed to the one I wanted them to come to, I got frustrated. “How”, I thought, “am I going to be able to teach people about testing, if they don’t learn the lesson”?

But I’m wrong. Its not about me being successful in teaching. Its about me providing a space for them to learn. In this case, they didn’t see it. That ok. Not everyone is going to learn all the time. Thats ok too.

I miss stuff all the time. I don’t get stuff, I miss traps, I fall into traps. I forget to ask questions…often. But thats ok too.

Missing stuff, making mistakes is part of what makes us human. Being human is special, its what we are all about and its something that we all have in common. (Except for Rob Lambert, I suspect he is an alien).

So, go forth and learn. Go forth and create learning opportunities. But you know what? If people don’t learn from you, it doesn’t mean you haven’t taught well. Perhaps its simply that the lesson is for another day.

That was the lesson I learned today.

Addendum

I was chatting to Pradeep Soundararajan online about training. I asked him his view on teaching, and learning. He gave some great reasons why perhaps people fail to pick up a lesson. He agreed to let me post them here:

[09/07/2010 18:16:31] Pradeep Soundararajan: Its not about people getting it always

[09/07/2010 18:16:51] Anne-Marie Charrett: how do you view it?

[09/07/2010 18:17:33] Pradeep Soundararajan: Many ways:

1: I think when people dont get it, they are helping us understand that we have probably not got it either.
2: When people dont get it, they may also have made the choice consciously. So, we don’t need to bother when we identify it was their choice to avoid getting it.
3. When people dont get it, they may require alternatives of explanation. We might want to help them.
4. Learning is not an activity that can be time boxed for everyone. For some people, they need to go back and face a few contexts to get it.
5. I have received emails from people who told they got the value of my workshop not immediately but after an year.

Thanks Pradeep, these are great insights to share.

Rapids Software Testing

As some of you know, I’m in the process of creating an Exploratory Testing workshop. It’s been a bit of a wild adventure, but hey, I’m clinging tightly to my oars as I hurtle down the rapids of ET adventure.

Have you ever been white water rafting? I have, and here’s a tip, don’t bother going if there is a drought.

Trust me, I learned the hard way on the Tully River in North Queensland. Tully is one of the wettest populated towns in Australia with an average annual rainfall exceeding 4000 mm (13.1 ft).

But not the year I went. I went when there was a drought and the water levels on the river had dropped.While the day’s outing was great fun, it never reached the hair raising exhilaration that I had anticipated.

It can be a bit like that in testing I guess.  If you want to have fun and be challenged, it helps to go where the water is deep.

Well I’m in deep testing water and I’m loving it! A day doesn’t go past where I’m not motivated to learn more and to challenge myself. To hell with the life jackets, watch me go!

Why? Because I’m learning something that is fundamental to any tester.

I’m learning how to teach  testing.

Precisely, I’m learning how to teach testing through Socratic Examination. This means, that I’m learning to ask the questions, pose puzzles and push students to struggle through testing principles so they come to a better understanding.

If this style sounds familiar, its because James Bach is teaching me this stuff. Its all part of this new coaching program which I’m aligning myself with. I will also be collaborating with him on a book he’s writing on the topic.

My experience on learning to teach suggests to me that this book is much needed. Practice is key to being a good teacher, but having a few strategies and heuristics to guide you along the way is essential too. This book will go some way to demonstrate that.

So what have I learned so far?

Lesson 1: A Mental Model

When working with a testing exercise you need a mental model of what you are aiming to teach.

Its not an easy task. There is no one strategy or model that fits all students. All students differ in their learning needs and in temperament. what works for one person, may not be suitable for the next, yet your mental model needs to cater for each individual.

You need to know your outcome, and where you are taking the exercise and still allow the student capacity to explore and come to some learning outcome.

I’ve noticed that James starts his coaching sessions with a mental test. He uses that to observe a tester’s thinking. He then frames his coaching session around a key thought or lesson, allowing  the tester to explore, yet always bringing them back to the intended final outcome.

All without one powerpoint slide.

I’m learning how to do  that too.

Lesson 2: Observation.

The coaching sessions may seem unstructured and ‘ad-hoc’, but as I mentioned there is always an underlying model or framework in use.  I’ve been observing some of these coaching sessions, and I’m starting to see patterns of behavior. I asked James about this and his comment was this:

Anne-Marie Charrett: When you are having these conversations do you consciously have an idea of the types of patterns you are going to use?

James Bach: Yes

James Bach: I’m trying to become more conscious of them and to make them easier to teach

James Bach: that’s what I’m using you for.

James Bach: we’ll learn them together

Observing patterns is essential to honing your teaching skills. Only through observation can you identify how you teach, what your natural strengths are or where you are biased. But also identifying patterns, helps you know what pattern (or heuristic) to use next.

Naturally, being taught directly by James Bach is helping a lot too. I think confidence in yourself is critical, both as a tester and a trainer. After all, how can you confidently explain your testing story if you have little confidence in yourself or what think you believe?

So that comes to lesson 3:

Lesson 3: A Testing Story

Teaching testing gives you confidence in your testing story. Yes, I read and study Exploratory Testing, I use Exploratory Testing. But standing up and talking about Exploratory Testing to me is the ultimate test in what you believe. If you can stand up and talk about testing, its a great boost to your testing story. Well , it is for me anyhow.

This confidence comes by first willing to put yourself in a vulnerable position, where you are willing to learn. It was only when I blogged about my difficulties about creating an ET workshop did help arrive.

It also comes through practice. I’m doing that too now, by blogging and testing out by challenges on fellow testers. I’ve already asked a few of you to testing challenges on skype or IM. I need to practise my exercises and puzzles against a variety of people.

If you want to be part of the fun, skype or IM me. I’m happy for anybody to take up my challenges. I need practice to improve my skills.

There’s lots more I’m learning, most of which my mind has yet to digest and formulate into identifiable ideas. But are you starting to see something here?

Teaching testing is very similar to testing itself, maybe a bit more intense…. like ET on steroids perhaps.  I strongly urge any tester looking to improve their skills to consider this option. Even if you never end up teaching formal workshops, the insights you get about yourself, the confidence it builds in yourself and your ideas in testing will stand you in good stead.

Footnote.

I value your thoughts, in particular if you disagree, or question what I’ve said. Every discussion on this helps me refine and consolidate my understanding on the subject.

Blasting off to CAST 2010

It’s my first outing to CAST this year.

CAST has been on my wish list for a couple of years now, but with moving countries, raising kids, and earning a living I’ve found it hard to make it. This year I decided no more excuses, it was time to go.

As well as wanting to attend the conference and meet some great testers, I wanted the chance to complete the BBST Instructors course which is being held as a post conference session. I’ve been assisting in the Black Box System Testing courses for a while now. I find teaching them very satisfying and to boot, I get taught by some great testers on giving courses.

The post CAST session is being run by Becky Fielder a long time trainer and Cem Kaner. So as well as being taught by some of the best, I  get to meet them too. There is some information here on the course.

I was looking for sponsorship for this one though. There was no way I was going to be able to make it on my own. Fortunately the Association For Software Testing stepped in and have sponsored me the conference fees. So a BIG THANK YOU to the AST for that.

The Software Testing Club offered to sponsor my accommodation, so another big THANK YOU to Rosie Sherry and the crew at the STC.   The STC crew work really hard to make a genuine and real experience for many software testers.

I’ve had great support from them in so many areas, from mentoring, recruiting, publishing my articles as well as some great discussions on their testing forum.  It’s also nice to see people bringing fun into testing. I think sometimes we take ourselves way to seriously.

I’m still on the hunt for more sponsorship, so if you know of a company or association willing to support, get them to contact me. I’m happy to wear a T-Shirt at the conference, blog about how supportive they are etc. Another way to sponsor me is to offer me some work!

Below, I’ve included information about this year’s CAST. I hope you can make it!


Attend CAST 2010

The 5th annual Conference of the Association for Software Testing

August 2-4, 2010, Grand Rapids, Michigan, USA

“Skills in Testing”

About CAST

CAST reflects the AST’s core mission: to build community amongst scholars, practitioners, and students for the advancement of the practice of software testing. In 2010, CAST aims to leverage peer collaboration to build an enhanced understanding of how various skills influence tester effectiveness.

CAST offers a unique opportunity to learn and confer with others that simply isn’t found at other conferences. Each scheduled session allocates time for facilitated “open season” discussions that encourage participants to question and challenge the presentation. What takes place in the hallways, at receptions, and during meals and lightning talks truly sets CAST apart; for many attendees, the greatest value is derived from the opportunity to discuss and delve into the topics that matter to them.

Space is limited Register Today!

More information and Registration: www.CAST2010.org

We can’t wait to see you in Grand Rapids!

It’s time to grow up and ditch the security blanket

One of the hardest parts of working as a software tester is keeping on top of new technologies, techniques in testing and development and software testing tools.  I can sometimes feel quite intimidated at the amount of information that I need to absorb in order to keep on top of the game.

Gavin Davies writes about this feeling of intimidation in his post Software Development: Doing It Scared and how we naturally are tempted to retreat to a place of safety. As he points out though, it doesn’t get the job done.

He gives some tips on overcoming these feelings, I pass them on to you here:

1)      Cut it down to size.

If you have a task that’s overwhelming, cut it down to smaller manageable tasks. I like to set these tasks to dates as it helps keep me focused.

2)      Get Help.

There are lots of places where you can go and ask for help online (my personal favourite is the softwaretestingclub).  Try and keep your questions specific and put some context in the question to help those answering it.
One word of caution though, whilst there is no such thing as a dumb question, your question may have been already asked. Do everyone a favour and search first to see if your question has already been adequately answered.
Also, ask your colleagues and team members for help.

3)      Remember your existing skills.

Remind yourself that you are already skilled in some aspects of testing. Once you have learned your new technology/skill, you will be able to quickly ramp up and apply the new skill to what you already know.  It will get easier!

There’s a bit more on what not to do in the post, which is good reading. Gavin ends with this worthwhile point:

“Software can seem overwhelming. The more we learn, the more we realise how much there is to learn – more than one person can possibly know. As software developers, we will always face fresh challenges. Nevertheless, a life worth living will take you out of your comfort zone time and time again and positive thinking, teamwork, good practise and organisation can help tackle daunting tasks.”

Happy learning!

Software Testing Training of a different kind

Ever dreamed of being personally trained by Cem Kaner? How about Doug Hoffman? No? Ok, maybe Scott Barber is more your style?

Any tester would, but it would be expensive? I mean these guys would typically charge thousands for this kind of training. Besides, they’re all in the states, so airfare, accommodation.  Your company would never pay for it, right? Especially not now the training budget is cut.

Well, I’m being personally trained by these great testers, right now and even better, I’m doing it for FREE. No that’s not an acronym for  Footnote Really Exorbitantly Expensive,(I know its not very good, come up with a better one and let me know !)  it really is FREE.

I’m on the bug advocacy course run by the association of software testing. (note, the website is currently going an upgrade, but you can still become a member etc).

It’s an online course that’s free to all members. Yes you do have to be a member. Yes it does cost money. $85 US dollars for a year. So, if you want to split hairs, you could argue the course costs $85. So what?

Anyhow, I wanted to talk about this course, because its content is really excellent. First of all, lets deal with the title.

Why BUG ADVOCACY?

Because our focus as tester’s is not about raising bugs, but ensuring they get fixed. Its true!  Think about it. That way, not only does the software improve, but we as testers gain credibility too.

So, in order for us to get our bugs fixed, we need to make sure we sell them well and we anticipate and preempt any objections people may have about our bug report.

Its about communication effectively and communicating to the right person. Its about creating the ultimate bug report.

There is a lot more than that in the course. I suggest you take the course and find out for yourself.

The recommended hours per week is 6.  I would suggest you allocate more time.   The course content is practical and you are given assessments that involve commenting on actual bug reports. Some of the assessments can take longer if you allow them too. You work with testers around the world, some I knew of because of their blogs.  Personally, I’ve learned as much from other testers feedback as I have from the trainers.

Make no bones about it though, its a demanding and challenging course and if you are just looking for a piece of paper for your resume, this perhaps is not the course for you. On the other hand, if you’re looking to improve your software testing skills and having a highly respected certificate matters to you, then I suggest you join the AST and take some of their courses.

It doesn’t matter what environment you work in, agile or waterfall, process or exploratory, the skills you learn on this course are relative to all testers out there.

So, if your company doesn’t have a large training budget (or even if it does) this is the perfect solution. Your testers get some really great training, and you get kudos to boot.

Note:  This is my own personal opinion, I get nothing out of posting this on my blog.