Software Testing

Robotics Challenge

I have my first software testing article published in the testing trapeze. The article is about the Robotics Challenge that I ran at Tyro. I also talked about this challenge at the Agile Australia conference.

Software Testing

“Manual Testing”

I have an issue with the word “Manual Testing”. Say we compare a “Manual Tester”, an “Automatic Tester” and a “Developer”. When a developer builds a tool that helps them program it is not called “Automatic Programming”, it might be called a “Compiler” or some other new word. Developers do manually write code with their hands but it’s not called “Manual Development”, they use the tools and resources that are available to get the job done. Testing is the same; we use the tools and resources available to help get the job done. “Automatic Testers” manually write scripts with their hands, why are they different from “Manual Testers”? We test with our minds just like developers create with their minds. I’m a tester first and foremost; my goal is to find issues in software. What are your views?

(As a side note, this rant is heavily influenced by James Bach)

Software Testing

What makes a “good” tester?

I am talking about software testing but these ramblings could be expanded to other types of product based testing.

First of all, what is a “good” tester? I think it is someone who finds issues with software and is able to make someone else understand that issue. Some people say testing is about providing quality of software. In response; I say, “bah humbug”. The way I get a sense of “confidence” about the quality of the software, is by thinking up scenarios that I think will test the boundaries of the software yet still cover the majority of the functionality. If I test the boundaries and find no major defects then I will be relatively confident that the software does what it is intended to do. I say relatively confident because no one can ever completely guarantee that software works as expected.

In no particular order, I find the following qualities make a “good” tester:

Curiosity: Is being eager to learn about the product you are testing, ask lots of questions, be curious about testing a theory/idea/hypothesis that you have about the functionality of the software. CAUTION: curiosity might lead to passion. (*gasp* Can someone actually be passionate about testing?)

Rescourfulness: Being able to find/confirm information from several sources. Sources can be ambiguous, boring to read, hard to find etc.

Letting your voice be heard, don’t be a push over and sit quietly while people talk about the product. If you think a detail has been overlooked, raise it

Being able to humbly receive constructive criticism, acknowledge everyone makes mistakes (even you) and learn from them, this leads to good team work

Communication: If you cannot explain an issue effectively, how will you make someone else (with minimum effort on their behalf) understand that issue? Try to always improve your communication skills so people are less likely to misinterpret what you say.

Creativity: Being able to think up the most amount of scenarios that will test the most coverage in the least amount of time. Making testing fun is a challenge because by gollies testing can be mundane, repetitive and infuriating (at times). I had fun moving Darth Vadar into Tasmania and installing an electricity meter on his death star, as even Darth Vadar has to pay for electricity. If you get the chance to make up test data, have fun/be creative with it.

Obsessiveness/attention to detail/pedanticness: this can be both a good/bad thing. Attention to detail is good, helps pick up on issues/defects that might have been missed, obsessiveness means when I want to understand something fully, I won’t be happy until I’ve satisfied that learning itch, often giving me a better understanding of how it works but I might spend the whole day trying to understand GPS coordinatates and spherical approximations of the earth to try and calculate the straight line distance between two GPS points, making my own excel spreadsheet with the formulaes when there was a simple webpage that already did that for me.


All these will help the tester gain an understanding and to find issues, thus achieving the goal of being a “good” tester.

Technology Roadtrip

Idea Evolution and for profit vs non-for profit


The website/content idea has taken over the robotics Road Trip idea.

First of all let me tell you about how this idea started. It started as me wanting to take robotics workshops all around Australia so I could travel to see what was in my own backyard and I could say I was doing something substantial along side it. This was something I thought I could do as a volunteering holiday for a year under Robogals. maybe call it the Great Australian Robogals Roadtrip (GARR for short ^_^). Then it involved maybe creating content and workshops along side it. Now it has become more about the free creative commons education resource that I want to create.

There are many great free online resources out there for learning. Dr Graeme Robotics Tutorials, khanacademy and codecademy are just to name a few. My biggest concern is they all are protected by copyright. I’m fortunate enough to live in the same state as Dr Graeme and he has offered my some advice in this area. However there is a video on his site I use quite a fair bit and would love to update but I don’t want it to be copy righted. A quick search for creative commons educational resources yields ample of results. I haven’t found something that reflects what I want to do yet though.

Now this brings me back to what I want to do. I want to make an online resource where I can publish robotics workshops/lessons and technology based workshops/lessons for both teachers and students. I want the content released under a creative commons license and I want people to be able to modify my content and to be able to create their own. I would also release lesson plans along side under creative commons as well. I could start off as just a youtube channel/ open education wiki media content and see if it takes off from there.

One of the ways I could make money out of this idea is to say to schools, “Hey, look at this awesome resource I’ve created that you can access for free, you can pay me to come to your school with all of the required hardware to run a workshop/taster/career talk or you can donate so I can take workshops to remote areas in Australia” or maybe I could get into the consultation/teacher training space to generate income.

I’ve been volunteering for Robogals for a few years now and I think what they are doing is great. We definitely need more females in Engineering and Technology professions. If only to create more diverse teams that come up with better solutions and are more innovative (there are a few studies to support this statement, I’ll dig them up later). As I changed from an Engineering course to a Computer Science course I saw a similar issue in IT. This has changed my focus to promoting Engineering and Technology.

As I’m still in the ideas phase I don’t really have much content yet. I’m hoping to spend the first 6 months next year focusing in this area. I’m happy to let anyone else take reign of the website component (or even the idea completely) as long as people stay true to the vision of general openness and open education. Maybe I should have a vision statement?

Another thing I have to figure out is how to make is sustainable. I’m willing to put at least the next 3 years of my life into this project and I need to be able to put food on the table from it. I like the donation-esk idea but it comes back to the issue of running it as a for profit or a non-for profit. I don’t think for-profits can ask for donations but non-for profits can’t really access the option of crowd funding. I would like to run it as a hybrid of the two (for profit enough to pay for my food but all of the extra profits will be going into rural initiatives and expanding the idea) but I think the law requires me to label myself with one or try to manage a mash up of the two.

Thank you for staying with me on such a long post. Any advice would be greatly appreciated.

Hackathons Technology

GovHack 2013

GovHack sounds like people hacking the government. Which is somewhat right but it’s with governments’ approval. GovHack is about governments opening up their data and seeing what a big bunch of developers and likeminded people can do with that data over the space of a weekend. There were over 1000 participants and observers nationwide and there were 135 teams formed. There were some amazing projects that came out of the weekend and $170,000 worth of prizes up for grabs.

Our Team, “The Tasmanian Tiger Team” produced a web based app where you can see a storm water map feeding into the Derwent River. We’ve tried to provide functionality where people in the community can monitor their own water ways by uploading pictures and tagging the map. Our presentation can be viewed here. It’s mostly a proof of concept and there is a fair bit more we could implement. However, we managed to walk away with 3 local prizes.

There were two Tasmanian teams that both received national prizes. One of my favourite apps is called, “Marvellous Ultimate Appliance” and it is a card based game where you get to pitch you house hold appliances against your neighbours to see who wins. Attack and defence are based on energy efficiency. Have a play here. Some other projects that I think are shiny are Australia in Review allows you to scroll through recent Australian History, Impress Me allows you to assess your carbon footprint and Deathmatch me is a fun way of comparing and displaying cause of death facts.

All of these great ideas are just some of the possible applications of providing open data to people and no we’re not likely to find any government’s deep dark secrets just by data mining sensis data.